Update Node.js to v26.4.0#94
Merged
Merged
Conversation
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.
This PR contains the following updates:
26.3.1→26.4.0Release Notes
nodejs/node (node)
v26.4.0: 2026-06-24, Version 26.4.0 (Current), @aduh95Compare Source
Notable Changes
cde0daabcc] - (SEMVER-MINOR) doc: updateblockListstability status to release candidate (alphaleadership) #63050b78f5a7537] - (SEMVER-MINOR) fs: support caller-suppliedreadFile()buffers (Matteo Collina) #63634417aacbc36] - (SEMVER-MINOR) http: close pre-request sockets incloseIdleConnections(semimikoh) #63470fbb108be7d] - (SEMVER-MINOR) loader: implement package maps (Maël Nison) #6223945494d5a8a] - (SEMVER-MINOR) net: supportTCP_KEEPINTVLandTCP_KEEPCNTinsetKeepAlive(Guy Bedford) #63825ee29465e77] - (SEMVER-MINOR) tls: add certificateCompression option (Tim Perry) #62217b17817eb2b] - (SEMVER-MINOR) vfs: dispatchnode:fs/promisesto mounted VFS instances (Matteo Collina) #635377bc93a6ac5] - (SEMVER-MINOR) vfs: add minimalnode:vfssubsystem (Matteo Collina) #63115Commits
c7eb83b46a] - benchmark: add child_process async path baselines (Yagiz Nizipli) #63929066fff17a5] - benchmark: remove old alias usage in ffi benchmarks (Anna Henningsen) #63666509cd1b94f] - buffer: optimize Buffer.prototype.copy (Robert Nagy) #6382886e651bbd0] - buffer: use simdutf for two-byte utf8 byteLength (Mert Can Altin) #63639d3f4ed9015] - build: suppress compiler warnings for histogram (Richard Lau) #6398082dd7ddbe6] - build: add QUIC CI job for PRs matching QUIC related paths (Tim Perry) #638751124c0652d] - build: remove redundant intermediate node_aix_shared (Chengzhong Wu) #63747e510ee8087] - build: build codecache and snapshot with libnode (Chengzhong Wu) #636265b583dace5] - build: enable maglev by default on Linux ppc64le (Richard Lau) #63474a2324246b4] - build: remove duplicated node_use_sqlite and node_use_ffi conditions (Chengzhong Wu) #636292a467a5f69] - Revert "build, doc: generate node.1 with doc-kit" (Antoine du Hamel) #64091e01dec45b8] - build, doc: generate node.1 with doc-kit (Aviv Keller) #620442ab9848fe4] - child_process: pass spawn options to the binding positionally (Yagiz Nizipli) #6393004c04c8b5c] - child_process: serialize advanced IPC messages natively (Yagiz Nizipli) #639331eef57293d] - crypto: support non-byte WebCrypto lengths and cSHAKE (Filip Skokan) #63988788a66e147] - crypto: share WebCrypto method and usage helpers (Filip Skokan) #63975f9fdce3f46] - crypto: use EVP_MAC for HMAC on OpenSSL >=3 (Filip Skokan) #639427e9ca87e58] - crypto: make webcrypto aliasKeyFormat directional (Filip Skokan) #63910656e57ebbf] - crypto: fix unhandled error in Hash._transform (Haram Jeong) #6326165536f0d98] - crypto: refactor keyObject.toCryptoKey() and SubtleCrypto.getPublicKey() (Filip Skokan) #63622978f1d2bcc] - crypto: handle cipher context allocation failures (Tian Teng) #635425551e8f773] - crypto: deduplicate X509 subject matching logic (Tobias Nießen) #6364457ae87640a] - crypto: fix warnings in test_node_crypto.cc (Maya Lekova) #634909984b05dff] - crypto: coerce -0 to +0 before native calls (Filip Skokan) #6355688011a3689] - crypto,tls: do not ignore BN_get_word error (Tobias Nießen) #638959a3393d14f] - debugger: lazily wait for initial break output (Trivikram Kamat) #63969b0bfcb9c59] - debugger: defer probe pause handling until startup (Trivikram Kamat) #636088516003953] - debugger: await initialization after run and restart (Trivikram Kamat) #636074438cb5284] - debugger: add --max-hit option to probe mode (Joyee Cheung) #63704238b54ed2a] - debugger: add more logs to probe mode (Joyee Cheung) #63663bbef54b413] - deps: libffi: cherry-pick9ca53a1(Anthony Green) #640409761385dbd] - deps: update libffi to 3.6.0 (Node.js GitHub Bot) #64040373ec2d092] - deps: update acorn to 8.17.0 (Node.js GitHub Bot) #63901e44b5d487e] - (SEMVER-MINOR) deps: update OpenSSL build config to support compression (Tim Perry) #622173ed287a2e2] - deps: upgrade npm to 11.17.0 (npm team) #63857b1b597c797] - deps: add ngtcp2_fmt.c to build configuration (ngtcp2.gyp) (沈鸿飞) #638210bf8e12305] - deps: V8: add CopyArrayBufferBytes API (Robert Nagy) #63828e49d7301a5] - deps: update ngtcp2 to 1.23.0 (Node.js GitHub Bot) #63777e5c079004b] - deps: update nghttp3 to 1.16.0 (Node.js GitHub Bot) #63776d599fa2346] - deps: update googletest to7140cd4(Node.js GitHub Bot) #63775bc09f1508c] - deps: update sqlite to 3.53.2 (Node.js GitHub Bot) #6377460787746c4] - deps: update zlib to 1.3.2.1-motley-3246f1b (Node.js GitHub Bot) #63773971af104f1] - deps: update amaro to 1.1.10 (Node.js GitHub Bot) #63670e17f665444] - deps: update googletest to8736d2c(Node.js GitHub Bot) #636697591949457] - dgram: add synchronous Socket connectSync() (Guy Bedford) #63932d75222d7cb] - dgram: add synchronous Socket.prototype.bindSync() (Guy Bedford) #638380cf8342ae2] - dns: coerce -0 to +0 in lookup and resolver inputs (Filip Skokan) #63556e068299320] - doc: update gcc toolchains togcc-13andg++-13(Louie Llaneta) #6401865178bdcf3] - doc: add aduh95 to last security release steward (Antoine du Hamel) #6398183eedfe85b] - doc: fix typo in util.md (Daijiro Wachi) #6396154948c78e7] - doc: clarify callback exceptions (Matteo Collina) #63939205d0a57f2] - doc: fix incorrect test runner mock examples (Kimaswa Emmanuel Yusufu) #6365644809b176c] - doc: clarify fromReadable() duck-typed contract (Trivikram Kamat) #636829cb15fcc85] - doc: fix typo in cli.md (Daijiro Wachi) #63883394d0bb928] - doc: fix typo in vm.md (Daijiro Wachi) #6388159b7be8193] - doc: fix typo in packages.md (Daijiro Wachi) #6388233c236cea9] - doc: fix a/an article typos in module, util, and dns (Daijiro Wachi) #6376630595da67b] - doc: update npm supported versions link (hojeong park) #636725919ba7e97] - doc: fix AES-OCB IV length in SubtleCrypto.supports example (Anshika Jain) #6371751cab5cb72] - doc: add webstreams to args forpipelinefromstream/promises(David Sanders) #63628ce85b2af88] - doc: fix "used to sent" → "used to send" in http2 (Daijiro Wachi) #63700298735e8df] - doc: mark Node.js 25 as End-of-Life (Antoine du Hamel) #6369256948518b9] - doc: clarify tty raw mode applies to input processing only (Muhammad Zeeshan) #6343832ff731248] - doc: add worker_threads history entries (Bob Put) #63545cde0daabcc] - (SEMVER-MINOR) doc: updateblockListstability status to release candidate (alphaleadership) #63050d29483fc4f] - doc,crypto: mark argon2 and encap/decap as stable (Filip Skokan) #639246e668331d9] - events: improveaddAbortListenerperf by caching options object (Raz Luvaton) #5236797aafe2519] - ffi: add fast support for almost all other platforms (Paolo Insogna) #63941f52cf5eeaa] - ffi: add experimental fast FFI call API for AArch64 and x86_64 (Paolo Insogna) #63068d9461fee05] - ffi: port semi-colon fix for riscv64 (and others) (Stewart X Addison) #637944c8402e0a8] - fs: do not treat EPERM as ENOTEMPTY on Windows (Kirill Saied) #63709b78f5a7537] - (SEMVER-MINOR) fs: support caller-supplied readFile() buffers (Matteo Collina) #636343d0097d489] - fs: prevent spurious recursive watch events on prefix siblings (Marco) #6309514d829cb3c] - fs: ignore deleted dirs in recursive watch scan (Trivikram Kamat) #63686ceba08a1ea] - fs: coerce -0 to +0 in mode flags and watch intervals (Filip Skokan) #635566577d3b282] - http: avoid stream listeners on idle agent sockets (Matteo Collina) #64004417aacbc36] - (SEMVER-MINOR) http: close pre-request sockets in closeIdleConnections (semimikoh) #63470b7fd13a59a] - http2: retain header memory in session accounting (Matteo Collina) #63752e611ccd167] - inspector: fix inspector.close() documented behavior (Chengzhong Wu) #63837a44f51eef3] - lib: fix missing lazyDOMException import (Filip Skokan) #6403327cc4ec598] - lib: add lint rule to enforce use ofkEmptyObject(Antoine du Hamel) #637907ee31b0bf4] - lib: improve control abstraction coverage in frozen intrinsics (Renegade334) #63698078457839a] - lib: add Iterator global to primordials (Renegade334) #6369858837dc4dd] - lib: remove source map deadcode in type stripping (Chengzhong Wu) #63738e7513a8b9e] - lib: makeNavigator#languagegetter throw on invalidthis(Mohamed Sayed) #63601fbb108be7d] - (SEMVER-MINOR) loader: implement package maps (Maël Nison) #62239ea0b8e1dc2] - meta: bump github/codeql-action from 4.35.3 to 4.36.1 (dependabot[bot]) #63724ac90719532] - meta: bump actions/cache from 5.0.4 to 5.0.5 (dependabot[bot]) #628473ed3de3062] - meta: bump actions/checkout from 6.0.2 to 6.0.3 (dependabot[bot]) #63726d08d57bf70] - meta: bump codecov/codecov-action from 6.0.0 to 6.0.1 (dependabot[bot]) #63725e748d192cf] - meta: bump cachix/cachix-action (dependabot[bot]) #6372910554eb131] - meta: bump actions/stale from 10.2.0 to 10.3.0 (dependabot[bot]) #63728791885f2af] - meta: bump step-security/harden-runner from 2.19.0 to 2.19.4 (dependabot[bot]) #6372732d9a407d9] - meta: bump cachix/install-nix-action from 31.10.5 to 31.10.6 (dependabot[bot]) #63723b97c7bed07] - module: enable existing machinery for deferred import of static modules (Maya Lekova) #637124becad2117] - module: use file: URL as sourceURL for type-stripped CommonJS (Joyee Cheung) #63705c71c85b95f] - net: early TCP binding via synchronous net.BoundSocket (Guy Bedford) #6395145494d5a8a] - (SEMVER-MINOR) net: support TCP_KEEPINTVL and TCP_KEEPCNT in setKeepAlive (Guy Bedford) #638253988efa1f3] - net: coerce -0 to +0 in BlockList prefixes (Filip Skokan) #63556484efd1c44] - quic: fix get_reader bug that dropped data on FIN (Tim Perry) #6394604a17fe6f0] - quic: expose QUIC certificates as JS X509Certificate, not raw handles (Tim Perry) #63191b62d5696dc] - quic: fix reader backpressure deadlock on idle connections (Tim Perry) #639503f1c8d7453] - quic: fix broken listEndpoints export, test callbacks & nghttp3 include (Tim Perry) #63874d8538b9deb] - quic: impl. cb for http/3 settings/app. options (Marten Richter) #63558643b19716e] - quic: add listEndpoints API (James M Snell) #635362bce35bea4] - sqlite: do not leave database open after failed open (Yagiz Nizipli) #63854394af52abb] - sqlite: fix stack-use-after-scope with function callback (ndossche) #6364010f03e5958] - src: omit unconvertible names in cjs_lexer::Parse (Yagiz Nizipli) #639431723773d41] - src: keep global list of addon-provided cleanup hooks (Anna Henningsen) #63985ef12e9ea44] - src: guard OpenSSL compression header include (Filip Skokan) #6400948af8a6d8d] - src: handle empty MaybeLocal in cjs_lexer::Parse (Yagiz Nizipli) #638852a672ee9e8] - src: fast path empty native immediate drain (Gürgün Dayıoğlu) #62969db6a31d1a1] - src: do not track weakBaseObjects as childrens ofRealms (Anna Henningsen) #638425fb837ff46] - src: allow tracking children inMemoryTrackerwith weak edges (Anna Henningsen) #638426d22d373a9] - src: use C++14 deprecated attribute forNODE_DEPRECATED(Anna Henningsen) #637557ac3fe1992] - src: add cleanup hooks tonode::ObjectWrap(Anna Henningsen) #63642d82d369155] - src: fix edge case when deflateInit2() fails with Z_VERSION_ERROR (Nora Dossche) #6347603858d152b] - src: remove redundanthandle_field in ffi (Anna Henningsen) #636651682264f6b] - src: add Latin1 fast path in StringBytes::Encode utf8 (Mert Can Altin) #63385cc29696acf] - stream: fix Writable.toWeb() desiredSize for non-object-mode (Matteo Collina) #62986d9967a25b2] - stream: handle falsy push writer fail reasons (Trivikram Kamat) #63569b53f8f75c9] - stream: reduce allocations on WHATWG streams hot paths (Matteo Collina) #63876315ca426d8] - stream: handle setEncoding after buffered data (Matteo Collina) #6397306413cd6bd] - stream: fix Utf8Stream stall after full write of multi-byte data (Daijiro Wachi) #63964a9f9a3dafa] - stream: keep overlapping broadcast reads pending (Trivikram Kamat) #63500009cca11bd] - stream: refine the stream/iter backpressure (James M Snell) #636973f81dcfc99] - stream: only pass the expected number of parameters to callbacks (Antoine du Hamel) #639099a83b5d1fe] - stream: fix dropped first chunk in Utf8Stream buffer mode (Daijiro Wachi) #638330bdf5adea9] - stream: remove transform-writer handling in pipeTo (Trivikram Kamat) #6368410272a94b6] - stream: check done before backpressure in stream reader (Daijiro Wachi) #63699792c410631] - stream: fix pipeToSync byte accounting (Trivikram Kamat) #635643cfafbc54b] - stream: reject pull() reads on abort (Trivikram Kamat) #63498640a8cede5] - stream: fast-path stateless transform flush results (Trivikram Kamat) #63605ece4477872] - stream: optimize pipeTo promise handling (Matteo Collina) #635722cb84c2daf] - stream: handle sync writev completion in pipeTo (Trivikram Kamat) #635617d9fdda5fa] - stream: settle pending broadcast reads on return (Trivikram Kamat) #63603e2aea3aac7] - test: tolerate duplicate watch change events (Trivikram Kamat) #63937ea6300593a] - test: mark test-debugger-run-after-quit-restart as flaky on macOS (Matteo Collina) #64006be1b204fa4] - test: update WPT for url tod4598eb(Node.js GitHub Bot) #63899b3d0d05b05] - test: update WPT for WebCryptoAPI to03a1476(Node.js GitHub Bot) #63900046af2609f] - test: update WPT for urlpattern to23aac92(Node.js GitHub Bot) #63898562b831a98] - test: add tests for 3 methods in utils (Daijiro Wachi) #6376528e3629dd3] - test: mark SEA tests flaky on linux arm debug (Trivikram Kamat) #63743243aa846de] - test: validate ERR_INVALID_THIS for scheduler methods (Daijiro Wachi) #637646bd07df2bc] - test: add coverage outside SEA (Daijiro Wachi) #63744bd67c9d11b] - test: update WPT for urlpattern to2f28df5(Node.js GitHub Bot) #63771e40bfe7081] - test: make Brotli 16GB test wait for backpressure (Trivikram Kamat) #63389444c03fd3b] - test: add regression test for usingObjectWrapin worker (Mohamed Akram) #63642771230df78] - test: accept SIGILL aborts in async-hooks tests (Trivikram Kamat) #636870b3cd8e5e6] - test: add more test cases for pathToFileURL (Rafael Gonzaga) #632930cbc77c60e] - test: update test426-fixtures to2965987(Node.js GitHub Bot) #63668f53dee5fe4] - test: update WPT for WebCryptoAPI to0c413fb(Node.js GitHub Bot) #636473048f8dc1a] - test,debugger: add test for type stripping in debugger probe mode (Joyee Cheung) #637489485caa97e] - test_runner: remove unused shuffleArrayWithSeed (Daijiro Wachi) #6384734433a4a87] - test_runner: fix watch cwd with isolation none (Trivikram Kamat) #636902e7da29b7c] - test_runner: avoid recompiling coverage globs for every file (sangwook) #63675205295a31e] - test_runner: cacheshouldSkipFileCoverageresult per URL (sangwook) #63675ee29465e77] - (SEMVER-MINOR) tls: add certificateCompression option (Tim Perry) #6221757d060ed2b] - tls: route event listener exceptions through error handlers (Antoine du Hamel) #63822d2dc6f8506] - tools: bump piscina from 5.1.4 to 5.2.0 in /tools/doc (dependabot[bot]) #64002b0c418f605] - tools: update sccache to v0.16.0 (Michaël Zasso) #630782af8433bef] - tools: bump js-yaml from 4.1.1 to 4.2.0 in /tools/lint-md (dependabot[bot]) #639488ba5b8574b] - tools: bump js-yaml from 4.1.1 to 4.2.0 in /tools/eslint (dependabot[bot]) #63947325087be5b] - tools: enforce iterator result property order (Trivikram Kamat) #63526314f417db7] - tools: update the llhttp updater script (Antoine du Hamel) #63819c6e4f5a4fe] - tools: avoid test/fixtures/wpt/README.md conflicts (Filip Skokan) #63938363912acc3] - tools: align Bash snippets in GHA withlint-shconventions (Antoine du Hamel) #63829cfd16e973c] - tools: bump @node-core/doc-kit in /tools/doc in the doc group (dependabot[bot]) #637601566872706] - tools: bump the eslint group in /tools/eslint with 7 updates (dependabot[bot]) #6373008437a3a5b] - tools: fix zlib updater script (Antoine du Hamel) #63707e883366172] - url: fix URLSearchParams(null) to prudce null= per spec (Marco) #6378260e83d9bfd] - util: fix scientific notation formatting (Daijiro Wachi) #638235f7f60ac36] - util: fix -0 formatting when numericSeparator is enabled (Daijiro Wachi) #63815af1a11e0dd] - util: remove style caches from styleText slow path (Guilherme Araújo) #63706b17817eb2b] - (SEMVER-MINOR) vfs: dispatch fs/promises to mounted VFS instances (Matteo Collina) #635377bc93a6ac5] - (SEMVER-MINOR) vfs: add minimal node:vfs subsystem (Matteo Collina) #63115584e7527c4] - vm: fix property queries for proxy sandboxes (Brian Meek) #63742a926e72eaf] - watch: print name of changed file that triggers restart (Marco) #6378132a2621ca4] - watch: cancel pending restart on shutdown (Trivikram Kamat) #63383692215d1b1] - zlib: coerce -0 to +0 for crc32 seeds (Filip Skokan) #63556Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.