deps: cherry-pick libuv/libuv@e640dc9 - #65118
Merged
Merged
Conversation
Signed-off-by: ulofiai <[email protected]>
Collaborator
|
Review requested:
|
aduh95
approved these changes
Aug 11, 2026
Collaborator
Collaborator
Collaborator
|
Landed in 38e3955 |
erossignon
added a commit
to node-opcua/node-opcua
that referenced
this pull request
Aug 25, 2026
Neither libuv fix Windows needs is in a released 24.x: the async-close assertion (nodejs/node#61999) and the 24.16.0 fs-event regression (nodejs/node#65118) are both on main only. No pin can be green, so float 24.x non-blocking - it goes green on its own once a release carries both. The 24.19.0 pin this replaces was strictly worse than the 24.15.0 before it, which predates the fs-event regression and so carries one bug, not two. Leak detection drops from five jobs to one. Its checks are JS-level and platform-independent, so the other four repeated a single signal. It gets --expose-gc via NODE_OPTIONS rather than the test:parallel script, keeping that a plain test run for developers; without the flag the detector costs time and measures nothing. parallel_test.js: the CPU=<n> override is honoured again, and the worker floor of 4 applies only to the computed default.
aduh95
pushed a commit
that referenced
this pull request
Aug 25, 2026
Signed-off-by: ulofiai <[email protected]> PR-URL: #65118 Fixes: #63638 Refs: libuv/libuv#5152 Refs: libuv/libuv@e640dc9 Reviewed-By: Antoine du Hamel <[email protected]>
aduh95
pushed a commit
that referenced
this pull request
Aug 25, 2026
Signed-off-by: ulofiai <[email protected]> PR-URL: #65118 Fixes: #63638 Refs: libuv/libuv#5152 Refs: libuv/libuv@e640dc9 Reviewed-By: Antoine du Hamel <[email protected]>
erossignon
added a commit
to node-opcua/node-opcua
that referenced
this pull request
Aug 26, 2026
Neither libuv fix Windows needs is in a released 24.x: the async-close assertion (nodejs/node#61999) and the 24.16.0 fs-event regression (nodejs/node#65118) are both on main only. No pin can be green, so float 24.x non-blocking - it goes green on its own once a release carries both. The 24.19.0 pin this replaces was strictly worse than the 24.15.0 before it, which predates the fs-event regression and so carries one bug, not two. Leak detection drops from five jobs to one. Its checks are JS-level and platform-independent, so the other four repeated a single signal. It gets --expose-gc via NODE_OPTIONS rather than the test:parallel script, keeping that a plain test run for developers; without the flag the detector costs time and measures nothing. parallel_test.js: the CPU=<n> override is honoured again, and the worker floor of 4 applies only to the computed default.
aduh95
pushed a commit
that referenced
this pull request
Aug 27, 2026
Signed-off-by: ulofiai <[email protected]> PR-URL: #65118 Fixes: #63638 Refs: libuv/libuv#5152 Refs: libuv/libuv@e640dc9 Reviewed-By: Antoine du Hamel <[email protected]>
2 tasks
Tobbe
pushed a commit
to cedarjs/cedar
that referenced
this pull request
Sep 25, 2026
…2824) ## Why Windows CI has been pinned to Node `24.15.0` since the libuv file-watcher assertion crash (libuv/libuv#5010) was discovered. That reason no longer applies: the fix shipped in libuv#5152, was cherry-picked into Node via nodejs/node#65118, and first released in **Node 24.21.0** (2026-09-08). Investigating #2146 (recurring nightly Windows CI failures), the dominant signature is a V8 Maglev JIT crash (exit code `3221226505` / `STATUS_STACK_BUFFER_OVERRUN`, tracked upstream at nodejs/node#62260). We already mitigate this for `cedar dev`'s web server via `--no-maglev` (`packages/cli/src/commands/dev/devHandler.ts`), but: - the crash still recurs even with `--no-maglev` present — confirmed upstream on 2026-09-21 that the flag only reduces the crash rate ~5x, it doesn't eliminate it - it also crashes in paths the flag never covers, e.g. `yarn install` itself (observed in a Sept 10 RSC smoke-tests run) One upstream reporter also noted their repro doesn't reproduce on Node `24.19.0`/`22.23.2` while it does on `24.12.0`, suggesting additional relevant fixes landed in that range too — all after our `24.15.0` pin. ## What Drop the Windows-only version override in `set-up-job/action.yml` so Windows tracks the same floating `24` as every other platform, picking up both the libuv fix and any V8/Maglev-adjacent fixes in later 24.x releases. This isn't expected to fully eliminate the Maglev crashes (upstream is explicit that `--no-maglev` alone doesn't), but it removes an unnecessary constraint and may reduce the frequency. Worth keeping `--no-maglev` and extending it to the still-uncovered paths (`yarn install`/corepack, `cedar serve`, api-server-watch, `cedar storybook`) as a separate follow-up if failures persist after this lands. ## Test plan - [ ] Nightly Windows run (`.github/workflows/nightly-windows.yml`) picks up Node 24.21.0+ and completes without regressions - [ ] Watch #2146 for a change in failure frequency/signature over the following nights
Tobbe
pushed a commit
to cedarjs/cedar
that referenced
this pull request
Sep 26, 2026
…2824) ## Why Windows CI has been pinned to Node `24.15.0` since the libuv file-watcher assertion crash (libuv/libuv#5010) was discovered. That reason no longer applies: the fix shipped in libuv#5152, was cherry-picked into Node via nodejs/node#65118, and first released in **Node 24.21.0** (2026-09-08). Investigating #2146 (recurring nightly Windows CI failures), the dominant signature is a V8 Maglev JIT crash (exit code `3221226505` / `STATUS_STACK_BUFFER_OVERRUN`, tracked upstream at nodejs/node#62260). We already mitigate this for `cedar dev`'s web server via `--no-maglev` (`packages/cli/src/commands/dev/devHandler.ts`), but: - the crash still recurs even with `--no-maglev` present — confirmed upstream on 2026-09-21 that the flag only reduces the crash rate ~5x, it doesn't eliminate it - it also crashes in paths the flag never covers, e.g. `yarn install` itself (observed in a Sept 10 RSC smoke-tests run) One upstream reporter also noted their repro doesn't reproduce on Node `24.19.0`/`22.23.2` while it does on `24.12.0`, suggesting additional relevant fixes landed in that range too — all after our `24.15.0` pin. ## What Drop the Windows-only version override in `set-up-job/action.yml` so Windows tracks the same floating `24` as every other platform, picking up both the libuv fix and any V8/Maglev-adjacent fixes in later 24.x releases. This isn't expected to fully eliminate the Maglev crashes (upstream is explicit that `--no-maglev` alone doesn't), but it removes an unnecessary constraint and may reduce the frequency. Worth keeping `--no-maglev` and extending it to the still-uncovered paths (`yarn install`/corepack, `cedar serve`, api-server-watch, `cedar storybook`) as a separate follow-up if failures persist after this lands. ## Test plan - [ ] Nightly Windows run (`.github/workflows/nightly-windows.yml`) picks up Node 24.21.0+ and completes without regressions - [ ] Watch #2146 for a change in failure frequency/signature over the following nights (cherry picked from commit 6923b19)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Cherry-picks the upstream libuv fix for Windows fs-event watchers using 8.3 short paths.
When the watched directory is supplied in short-path form, resolving an event path to its long form can make it no longer share the stored directory prefix. Instead of asserting (or calculating an invalid relative path in release builds), fall back to the filename returned by ReadDirectoryChangesW, which is already relative to the watched directory. The regression test now creates a real directory with distinct long and short forms and tries both the Windows temporary directory and the current directory.
Fixes: #63638
Refs: libuv/libuv#5152
Refs: libuv/libuv@e640dc9