chore: bump node to v24.15.0 (40-x-y)#51087
Merged
Conversation
c37142e to
bdc73b8
Compare
Upstream replaced the hardcoded buffer length limit with a runtime kMaxLength variable, making the patch's regex workaround for sandbox vs non-sandbox limits unnecessary. Dropped the test-buffer-concat.js hunk. Ref: nodejs/node#61721 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Upstream removed Uint32ToName from node_contextify.cc and node_webstorage.cc, and renamed LookupAndCompile to LookupAndCompileFunction in node_builtins.cc. Updated the GetIsolate deprecation patch to match. Ref: nodejs/node#60846 Ref: nodejs/node#60518
The fix_generate_config_gypi_needs_to_generate_valid_json patch applied with "No changes -- Patch already applied", confirming the fix has been incorporated upstream. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Upstream restructured BuiltinLoader to auto-detect parameters by source type, removing the custom parameters overload. Added a new LookupAndCompileFunction overload for embedder scripts and updated node_util.cc to use it. Also suppressed exit-time-destructors warning from builtin_info.h in node_includes.h. Ref: nodejs/node#60518 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The snapshot used `*` wildcards which don't match the actual output. Regenerated with NODE_REGENERATE_SNAPSHOTS=1 to capture the correct concrete frame + <node-internal-frames> output. Ref: https://chromium-review.googlesource.com/c/v8/v8/+/6826001
Ref: nodejs/node#61984 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Ref: nodejs/node#61769 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Guard aes-128-ccm test in test-crypto-authenticated.js behind cipher availability check. Skip Ed448/X448/DSA tests in test-crypto-key-objects-raw.js. Skip AES-KW tests in test-webcrypto-promise-prototype-pollution.mjs. Ref: nodejs/node#62240 Ref: nodejs/node#62455
BoringSSL does not support loading DH private keys from PEM, causing createPrivateKey to throw UNSUPPORTED_ALGORITHM. Ref: nodejs/node#62240 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Upstream Node moved CppHeap creation to run unconditionally before Isolate::Initialize via settings.cpp_heap. The patch's embedder-set params->cpp_heap was being overwritten by the new upstream default. Fold the patch into the upstream block so settings.cpp_heap still wins, an embedder-set params->cpp_heap is preserved, and a default is only created when neither is provided. Ref: nodejs/node#58070 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Electron uses Chromium's brotli (via the unbundling patch), which returns just the NAME from BrotliDecoderErrorString() instead of the full "_ERROR_..." prefix Node's bundled brotli emits. Upstream's web-compression spec-compliance fix (nodejs/node#62107) classifies brotli failures as TypeError via the "ERR__ERROR_" prefix, which doesn't match Chromium's output — so DecompressionStream surfaced a plain Error and the WPT decompression-bad-chunks suite failed for brotli. Normalize the emitted error code on the C++ side so the JS layer works against either brotli build. Ref: nodejs/node#62107
The cherry-pick from roller/node/41-x-y dropped the diff headers for test-tls-client-auth.js and test-tls-peer-certificate.js (leaving their hunks orphaned inside test-crypto.js), and dropped the test-crypto-pqc-key-objects-ml-dsa.js block entirely. This left the exported patch malformed (git am failed with "patch fragment without header"). Restore the well-formed patch body so git am can apply it. Ref: Unable to locate reference Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
node/src/builtin_info.cc (from upstream PR 60518) calls abort() without including <cstdlib>. Upstream Node's own build tolerates this via implicit transitive inclusion, but Electron's stricter Chromium-style build fails with "use of undeclared identifier 'abort'". Add the explicit include. Ref: nodejs/node#60518 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
The test calls ArrayBuffer.prototype.transfer() on the Buffer pool's backing ArrayBuffer and expects a TypeError. On the V8 shipped with Electron 40's Chromium, this code path hits a "v8::FromJust Maybe value is Nothing" fatal error inside ArrayBufferTransfer instead of throwing — a V8 bug that was fixed in a newer V8 revision (the test passes on main/42). This Electron line can't pick up that fix, so skip the test. Ref: Unable to locate reference Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
bdc73b8 to
f69d3b0
Compare
jkleinsc
approved these changes
May 6, 2026
|
Release Notes Persisted
|
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.
Updating Node.js to v24.15.0.
See all changes in v24.14.1..v24.15.0
Notes: Updated Node.js to v24.15.0.