nodejs/node
 Watch   
 Star   
 Fork   
3 days ago
node

2026-09-23, Version 22.23.3 'Jod' (LTS), @aduh95 prepared by @juanarbol

Notable Changes

Commits

  • [44cf27b8fa] - build: update binary-upload to use correct tarball name (Stewart X Addison) #65282
  • [fe2a6b2be8] - crypto: update root certificates to NSS 3.125 (Node.js GitHub Bot) #64746
  • [71feba6b69] - crypto: update root certificates to NSS 3.123.1 (Node.js GitHub Bot) #63527
  • [871167ddfd] - deps: update corepack to 0.36.0 (Node.js GitHub Bot) #65653
  • [2a3548e51c] - deps: update undici to 6.28.1 (mcollina) #65790
  • [59d853a4df] - deps: update archs files for openssl-3.5.8 (Node.js GitHub Bot) #65542
  • [a9cb31129f] - deps: upgrade openssl sources to openssl-3.5.8 (Node.js GitHub Bot) #65542
  • [3376e27de2] - deps: V8: cherry-pick a6eaf7574109 (Camillo Bruni) #65402
  • [b816fc8958] - deps: upgrade npm to 10.9.9 (npm team) #64884
  • [4e4bd1b104] - deps: update timezone to 2026c (Node.js GitHub Bot) #64588
  • [7d82841b4e] - deps: update c-ares to 1.34.8 (Node.js GitHub Bot) #64330
  • [01855a19d3] - deps: c-ares: cherry-pick 8ba37af8e3fb (René) #64110
  • [23fb398c3d] - deps: update corepack to 0.35.0 (Node.js GitHub Bot) #63375
  • [5286330365] - deps: update corepack to 0.34.7 (Node.js GitHub Bot) #62810
  • [6d6c3c98b1] - deps: update timezone to 2026b (Node.js GitHub Bot) #62962
  • [e306521444] - deps: update icu to 78.3 (Node.js GitHub Bot) #62324
  • [d9cb8468a3] - doc: clarify filter option of sqlite.database.applyChangeset (Antoine du Hamel) #63515
  • [c9c5662d91] - doc: add sxa GPG key (ed25519) (Stewart X Addison) #64193
  • [37f21068c4] - fs: restore fs patchability in ESM loader (Joyee Cheung) #62835
  • [7c2df5dd96] - http2: avoid uaf while receiving and sending rst_stream (esgor) #64166
  • [3909ff2c4a] - node-api: support SharedArrayBuffer in napi_create_typedarray (Yilong Li) #62710
  • [66de6349ad] - node-api: add napi_create_external_sharedarraybuffer (Ben Noordhuis) #62623
  • [ce9139107f] - src: escape Windows environment variables in task runner (Antoine du Hamel) #65217
  • [839480a471] - test: fix link-local dgram scope assertion (Filip Skokan) #65629
  • [40eac4a32f] - test: account for varied OpenSSL CCM final behaviours (Filip Skokan) #65542
  • [75098a9e8c] - tools: update gr2m/create-or-update-pull-request-action to v1.10.1 (Mike McCready) #63065
  • [08b6ac0416] - tools: revert OpenSSL update workflow to ubuntu-latest (Richard Lau) #62627
  • [02cafc479f] - tools: fix commit linter for semver-major release proposals (Antoine du Hamel) #62993
  • [6f6cd3768d] - tools: sync mk-ca-bundle.pl with curl (Archkon) #64753
  • [bc5753d438] - tools: remove envinfo from our workflows (Antoine du Hamel) #64259
  • [d68ee9f8a5] - tools: validate version number in release proposal commit message lint (Antoine du Hamel) #64070
  • [38ee2e895f] - tools: avoid test/fixtures/wpt/README.md conflicts (Filip Skokan) #63938
  • [fdc65e489f] - tools: use different branch for tool updates on staging branches (Antoine du Hamel) #63110
  • [e5a6fde002] - tools: update gyp-next to 0.22.1 (Node.js GitHub Bot) #62961
  • [5fbbad6e82] - url: handle unparsable serialized URLs in setters (Matteo Collina) #64651
  • [ed019e4854] - util: preserve function names without source map names (Hiroki Osame) #65108
4 days ago
node

2026-09-22, Version 26.10.0 (Current), @aduh95

Notable Changes

  • [c0a42d23e5] - (SEMVER-MINOR) crypto: add crypto.parsePKCS12() (Brian Muenzenmeyer) #65627
  • [eb4fabe81e] - doc: add araujogui to collaborators (Guilherme Araújo) #66090
  • [64fb33d791] - (SEMVER-MINOR) ffi: load libraries from a mounted VFS (Matteo Collina) #65909
  • [2b1701f810] - (SEMVER-MINOR) fs: add openAsBlobSync (greenhead) #65644
  • [080e76b3d7] - (SEMVER-MINOR) net: support sending net.BoundSocket to threads and child processes (Guy Bedford) #64725
  • [13e61f6ae6] - (SEMVER-MINOR) perf_hooks: implement SlidingWindowHistogram (James M Snell) #65825
  • [a326546094] - (SEMVER-MINOR) perf_hooks: implement qrde analysis support in Histogram (James M Snell) #65806
  • [0306b0a71e] - (SEMVER-MINOR) sqlite: bind undefined to NULL (Trevor Burnham) #65709
  • [3c999edef7] - (SEMVER-MINOR) src,lib: add util.markPromiseAsHandled (James M Snell) #65805
  • [f7d18ec360] - (SEMVER-MINOR) test: expand histogram test coverage (James M Snell) #65825
  • [3ce4d23bbb] - (SEMVER-MINOR) util: implement util.throttle (James M Snell) #65899
  • [336f33ccc1] - (SEMVER-MINOR) util: implement debounce (James M Snell) #65899

Commits

  • [2bf082453b] - assert: fix TypeError on deepStrictEqual with null Map key or Set member (Sergey Sannikov) #64449
  • [c518831d00] - benchmark: add --csv option to compare.js with --analyze (James M Snell) #65922
  • [89bae46e68] - buffer: fix unaligned UTF-16LE decoding (Matteo Collina) #65905
  • [01cee9dcef] - build: do not use bundled simdutf when built with --shared-simdutf (Antoine du Hamel) #65891
  • [20606a4d19] - build: suppress OpenSSL asm warnings with clang (Richard Lau) #66023
  • [a76e97b5c5] - build: derive V8_LOGGING_LEVEL from dcheck_always_on (Joyee Cheung) #65744
  • [ac7fcf0cef] - build: sync cargo/rustc version warnings (Richard Lau) #65912
  • [f24a495b36] - build: fix quiet default for make builds (Shelley Vohr) #65826
  • [c4381765fe] - child_process: clear timeout timer on spawn-time error too (kishore280) #65506
  • [8955781eeb] - crypto: remove redundent std::move call (Antoine du Hamel) #66111
  • [0b88aa5a15] - crypto: read RSA-PSS restrictions from provider (Filip Skokan) #66108
  • [f90d3d3cb0] - crypto: skip private RSA parameters in key details (Filip Skokan) #66108
  • [97828d91db] - crypto: use provider EC group names (Filip Skokan) #66108
  • [3de05da569] - crypto: fetch ciphers for private-key encoding (Filip Skokan) #66108
  • [ca8ee04594] - crypto: decode PKCS#1 keys through providers (Filip Skokan) #66108
  • [54a625e953] - crypto: derive keys through EVP_KDF (Filip Skokan) #66108
  • [971adece6a] - crypto: use names for asymmetric key algorithms (Filip Skokan) #65966
  • [bfb544eb00] - crypto: optimize and benchmark key preparation (Filip Skokan) #65892
  • [c0a42d23e5] - (SEMVER-MINOR) crypto: add crypto.parsePKCS12() (Brian Muenzenmeyer) #65627
  • [c58a4e0ba7] - crypto: add Hybrid KEMs to Web Cryptography (Filip Skokan) #65759
  • [70edf90851] - crypto: avoid EC reconstruction for signature sizing (Filip Skokan) #65908
  • [fab5dddd77] - crypto: avoid EC raw export reconstruction (Filip Skokan) #65908
  • [220a499614] - crypto: export EC JWK coordinates directly (Filip Skokan) #65908
  • [f1295e11db] - crypto: read EC curve metadata directly (Filip Skokan) #65908
  • [775173a5db] - crypto: optimize private EC JWK import (Filip Skokan) #65908
  • [e44669bb7d] - crypto: validate the limit of PBKDF2 iterations (Filip Skokan) #65704
  • [cd5a7611e9] - crypto: use primordials in HKDF info validation (Filip Skokan) #65704
  • [94affce749] - Revert "deps: V8: override depot_tools version" (Richard Lau) #66110
  • [870a366c49] - deps: V8: cherry-pick 95efbaf92a0d (Igor Sheludko) #66020
  • [d62a452738] - deps: V8: backport a0607c5006b8 (Antoine du Hamel) #65891
  • [e8edeffe2d] - deps: update googletest to 8eff9e336692fc95961e096564f1044c600b881d (Node.js GitHub Bot) #66009
  • [eb4fabe81e] - doc: add araujogui to collaborators (Guilherme Araújo) #66090
  • [2fffb3872d] - doc: fix duplicate 'the' typo in node_platform.cc (Muhammad Al-Muzahid) #66058
  • [317abb8131] - doc: clarify sub-1000ms behavior in socket.setKeepAlive (Haram Jeong) #65869
  • [1c12f815c2] - doc: remove obsolete mentioning of cl.exe on windows (Chengzhong Wu) #66038
  • [2cc17dd67c] - doc: note that default signal handling resets the signal mask (Shelley Vohr) #65877
  • [3a69cc1bf4] - doc: clarify QUIC async write backpressure (John Finnerty) #65947
  • [549694349d] - doc: clarify permission model scope for output paths (Rafael Gonzaga) #66004
  • [3325ded3a8] - doc: fix sign-off format in AGENTS.md (Filip Skokan) #65958
  • [89aa2bd10c] - doc: fill in missing zstd docs (James M Snell) #65867
  • [8d1ce4d477] - doc: add inoway46 as triager (Yuya Inoue) #65565
  • [9a3697c5c7] - doc: document windowsHide for child_process.fork (Christopher Buss) #65887
  • [69911bf6b5] - doc: qualify directory read ordering for native fs (Trivikram Kamat) #65868
  • [2d0c3fed12] - doc: add DOMException section to errors API reference (Avocado) #65206
  • [f744023cce] - doc: expand revert commit collaborator instructions (Mike McCready) #65848
  • [412399efd3] - doc: clarify supported Python releases (Mike McCready) #65850
  • [79331f5779] - doc: note that FreeEnvironment() runs a shared event loop (Shelley Vohr) #65691
  • [6ddbb9982f] - doc,test: account for OpenSSL 4.1 behaviours (Filip Skokan) #65956
  • [64fb33d791] - (SEMVER-MINOR) ffi: load libraries from a mounted VFS (Matteo Collina) #65909
  • [07fcf1ed02] - ffi: throw ERR_INVALID_ARG_TYPE for wrong-typed pointer and size (Soul Lee) #65842
  • [b7406b0a9b] - fs: coerce FileHandle.read length like fs.read (Xia Chao) #65521
  • [cb9995be4d] - fs: honor dereference for symlinks nested in cpSync trees (Christian Aurich) #65731
  • [2b1701f810] - (SEMVER-MINOR) fs: add openAsBlobSync (greenhead) #65644
  • [9b3f1aa03f] - fs: throw on existing dir in cpSync with errorOnExist (Daijiro Wachi) #64124
  • [2b502e0798] - fs: support removing read-only files in rmSync on Windows (Sparsh :)) #64453
  • [77d8f17ab1] - http: don't destroy socket after request completes (Barath Raj) #65952
  • [46f76ed57b] - http2: settle pending write callbacks on destroy (Matteo Collina) #66016
  • [205443721d] - http2: fix onread assert when destroying session from stream handler (Sankalp Thakur) #65116
  • [7e1db4724a] - inspector: report an error when DOM storage is unavailable (Avocado) #65973
  • [95110712b8] - inspector: fix abort when two Environments own the inspector (Shelley Vohr) #65877
  • [9fd3e6caa4] - inspector: fix crash when the IsolateData has no platform (Shelley Vohr) #65818
  • [cce2795ad7] - lib: fix AbortSignal.any() abort propagation (Yuya Inoue) #66014
  • [2c0ccc0067] - lib: fix for FileHandle.readableWebStream (Patrick Dähne) #58842
  • [28acafe6a0] - lib: avoid repeat internal receiver checks (Filip Skokan) #65910
  • [b9b0e33923] - lib: avoid unsafe array iteration in cli table (Donghoon Kang) #65838
  • [7f514d3310] - lib: fix shared buffer growability validation (Filip Skokan) #65845
  • [7534117e38] - lib: optimize internal Web IDL dictionaries (Filip Skokan) #65857
  • [bdacc08fbe] - lib: validate sequence iterator objects (Filip Skokan) #65844
  • [5b6ac71fb2] - lib: use Web IDL interface brand checks (Filip Skokan) #65846
  • [da341e2571] - lib,src: apply multiple updates to dtls implementation (James M Snell) #65511
  • [13eb4843d5] - meta: bump step-security/harden-runner from 2.21.0 to 2.21.1 (dependabot[bot]) #66044
  • [0f759174af] - meta: bump github/codeql-action/upload-sarif from 4.37.9 to 4.38.0 (dependabot[bot]) #66046
  • [c75b830082] - meta: bump cachix/cachix-action (dependabot[bot]) #66047
  • [1ada7055a4] - meta: bump github/codeql-action/init from 4.37.9 to 4.38.0 (dependabot[bot]) #66048
  • [1ed8b05742] - meta: bump github/codeql-action/analyze from 4.37.9 to 4.38.0 (dependabot[bot]) #66049
  • [9165abe840] - meta: bump github/codeql-action/autobuild from 4.37.9 to 4.38.0 (dependabot[bot]) #66050
  • [d03e7313cf] - meta: add joyeecheung as v8 currency strategic initiative champion (Joyee Cheung) #65965
  • [53d7592378] - meta: expand on collaborator restoration process (Chengzhong Wu) #65962
  • [fa972d02b2] - meta: add web-standards as webidl owners (Filip Skokan) #65856
  • [080e76b3d7] - (SEMVER-MINOR) net: support sending net.BoundSocket to threads and child processes (Guy Bedford) #64725
  • [0d14c0e507] - path: remove StringPrototypeCharCodeAt from some methods of posix (Wiyeong Seo) #54668
  • [13e61f6ae6] - (SEMVER-MINOR) perf_hooks: implement SlidingWindowHistogram (James M Snell) #65825
  • [a326546094] - (SEMVER-MINOR) perf_hooks: implement qrde analysis support in Histogram (James M Snell) #65806
  • [32401c2229] - perf_hooks: reuse buffer for uv metrics (Donghoon Kang) #65985
  • [5e2fbfe0e5] - perf_hooks: validate import normalization offset (Matteo Collina) #65950
  • [4743cd8d33] - quic: fix two small bugs in HTTP/3 stream internals (Tim Perry) #65970
  • [0df54fb38f] - quic: improve stream cleanup & lookup (Tim Perry) #65944
  • [7cf448889c] - quic: fix timeout regression from 11ed32572b3 (James M Snell) #66028
  • [61a98e6512] - quic: fix readable stream truncation on stop-sending, abort & timeout (Tim Perry) #63967
  • [975cac593c] - quic: add promise to QuicStream for pending strms (Marten Richter) #65862
  • [ae29cc92ea] - quic: split headers out from src/quic/stream.{h/cc} (James M Snell) #65863
  • [833c58d9dc] - quic: fix crash in onStreamClose (Marten Richter) #65861
  • [84ecb21343] - quic: reject zero addressLRUSize (Christian Aurich) #65827
  • [293e69d065] - sqlite: throw on invalid URL path instead of abort (Guilherme Araújo) #66026
  • [6f5fb76d0e] - sqlite: track registered user-defined functions (Trivikram Kamat) #65896
  • [baf112b639] - sqlite: always copy changeset before applying (Trivikram Kamat) #65870
  • [0306b0a71e] - (SEMVER-MINOR) sqlite: bind undefined to NULL (Trevor Burnham) #65709
  • [1f24901c0c] - src: fix -Wextra warning in WriteFileSync (Antoine du Hamel) #66020
  • [b98787fe2d] - src: reuse crypto GetCipherInfo in DTLS session (Ilyas Shabi) #66022
  • [410093dbf7] - src: avoid union type-punning in trace values (Khaidi Chu) #65933
  • [9ec030b1e7] - src: print exception thrown during primordial initialization (Joyee Cheung) #65991
  • [a0f99f1d6c] - src: support building with the V8 sandbox (Shelley Vohr) #62237
  • [27c62235d0] - src: ffi: create fast-call metadata Symbols lazily (Matteo Collina) #66015
  • [5a5abd8fd0] - src: avoid copying SEA snapshot data (Colin McDonnell) #65876
  • [a05023f331] - src: fix crash on empty, foreign or truncated --snapshot-blob files (Shelley Vohr) #65955
  • [4141e22606] - src: don't kill own process group on failed spawn (Lazizbek Ergashev) #65054
  • [05f4e54eda] - src: fix external reference list race between concurrent isolates (Shelley Vohr) #65779
  • [1518b7d67f] - src: keep the first snapshot blob alive for later isolates (Shelley Vohr) #65779
  • [62e2bf025c] - src: detach cppgc wrappers from their Realm before it is freed (Shelley Vohr) #65778
  • [afc3e559d2] - src: fix Stop() terminating the next Environment on the isolate (Shelley Vohr) #65819
  • [f245e53b29] - src: seed V8 from the OS CSPRNG instead of OpenSSL's DRBG (Colin McDonnell) #65796
  • [830ca7df7a] - src: fix null pointer call when running without a startup snapshot (Shelley Vohr) #65820
  • [48158fba8c] - src: stop leaking a CppHeap in CommonEnvironmentSetup (Shelley Vohr) #65792
  • [3c999edef7] - (SEMVER-MINOR) src,lib: add util.markPromiseAsHandled (James M Snell) #65805
  • [e5d2a336bd] - stream: destroy half-open sockets after iteration (Matteo Collina) #65986
  • [4075161405] - stream: destroy Duplex.from async function on early return (Aman Chadha(IVIXMMI)) #65963
  • [7d245cfd8d] - stream: fixup stream/iter to drop at most one entry per share call (James M Snell) #66028
  • [30e1f7651c] - stream: reject unbounded at SyncShare construction (James M Snell) #66028
  • [0372056cd8] - stream: make share budget failures detach before throwing (James M Snell) #66028
  • [36cc238dce] - stream: make Broadcast.from abort its background pump (James M Snell) #66028
  • [3134ca6f8e] - stream: update broadcast to retain buffered data with zero consumers (James M Snell) #66028
  • [04e5c282a1] - stream: fix async iteration of undefined chunks (Caleb Everett) #65969
  • [f81a1483b3] - stream: avoid promise allocation for parked transform writes (Matteo Collina) #65625
  • [aec01c5ae1] - stream: keep webstream stream states in fast-mode objects (Matteo Collina) #65625
  • [898cd55bdf] - stream: reject closed only after sink abort settles (Lazizbek Ergashev) #65727
  • [5661526006] - stream: fix ERR_INVALID_STATE when cancelling Readable.toWeb() (Richard Scarrott) #62773
  • [fb8a97f46b] - stream: improve handling of falsy errors in stream/iter (James M Snell) #65864
  • [cfee7fa3d9] - stream: amortize writable buffer compaction (Gürgün Dayıoğlu) #65847
  • [15605210f8] - stream: create write request objects lazily (Matteo Collina) #64455
  • [619470a9ae] - stream: allocate stream read buffers from a slab (Matteo Collina) #64455
  • [7e79c33354] - test: consolidate crypto provider cache coverage (Filip Skokan) #66108
  • [dcc9c3c02a] - test: avoid call to chmodSync in test-fs-cp-async-file-modes (Antoine du Hamel) #66104
  • [dda22c06d7] - test: deflake test-run-watch-cwd-isolation-none-* (Antoine du Hamel) #66035
  • [d63928dda0] - test: move permission FFI test to native suite (Yuya Inoue) #66059
  • [80c1bf7fb5] - test: deflake user timing WPT assertions (Filip Skokan) #66036
  • [12116d1d70] - test: unskip test-watch-create-isolation-none (Antoine du Hamel) #66041
  • [e90575cb4d] - test: deflake util.throttle tests (Filip Skokan) #66034
  • [f7d18ec360] - (SEMVER-MINOR) test: expand histogram test coverage (James M Snell) #65825
  • [bfa6d49b5c] - test: implement low-risk test optimizations (James M Snell) #65926
  • [c3307ebddf] - test: update WPT for WebCryptoAPI to 55ce71bb9d (Node.js GitHub Bot) #65813
  • [ee29c56993] - test: prevent parser reuse across close scenarios (Filip Skokan) #66017
  • [8a27474044] - test: cover cpSync fast path timestamp preservation (Abhinandan Kumar) #65678
  • [89297305c0] - test: fix stderr Buffer assertion in exec encoding test (greenhead) #66008
  • [d4cb916624] - test: skip test-vfs-real-provider-watch.js on IBM i (SRAVANI GUNDEPALLI) #65987
  • [6515db8ab6] - test: fix RSA/DSA wrong-passphrase flake (Filip Skokan) #65983
  • [fa19ecad9d] - test: improve sequential test performance (James M Snell) #65928
  • [3666d6a238] - test: schedule WPT variants individually (Filip Skokan) #65984
  • [f2aa27d82d] - test: overlap SLH-DSA signature checks (Filip Skokan) #65980
  • [2170207253] - test: unref cancelled broadcast source timer (Filip Skokan) #65980
  • [71a54aaf5f] - test: collect timeout signals explicitly (Filip Skokan) #65980
  • [1a15aff897] - test: skip retries in DNS timeout coverage (Filip Skokan) #65980
  • [5c7e6b4a6e] - test: synchronize ordered runner events (Filip Skokan) #65980
  • [37f24eddc9] - test: reuse fixed primes in DH tests (Filip Skokan) #65980
  • [831ec42bcc] - test: avoid idle HTTP/HTTPS connections (Filip Skokan) #65980
  • [f523342bcd] - test: close WebAssembly test HTTP servers (Filip Skokan) #65980
  • [f23847a122] - test: use named parameters in DH stress test (Filip Skokan) #65980
  • [7131e3b437] - test: reduce ZIP64 stress test I/O (Filip Skokan) #65980
  • [e4ca72a984] - test: avoid allocations in external memory test (Filip Skokan) #65975
  • [7fe64727a2] - test: cover experimental stream iterator builtins (Jungwon Sohn) #65964
  • [88ba17bae2] - test: deflake node-api test-free-called (Christian Aurich) #65948
  • [6eee01fbae] - test: fix flaky common WPT inspector test (Yuya Inoue) #65937
  • [858702e51c] - test: skip C++ symbols in tick-processor-arguments (Philipp Dunkel) #65906
  • [472215ff9b] - test: try fixing windows build replacing WMIC (James M Snell) #65949
  • [7f5168149c] - test: fix flaky test-bench-stream (Matteo Collina) #65874
  • [9f2d544576] - test: move sqlite length validation out of the reentry test (Trevor Burnham) #65769
  • [75a9fa65ac] - test: fix flaky cleanup in http2 test (Tim Perry) #65701
  • [f8cdf05586] - test,benchmark: use OpenSSL feature helpers (Filip Skokan) #65762
  • [88b12c03cd] - test_runner: avoid reusing v8 serializers (Yuya Inoue) #65951
  • [9b3085e660] - test_runner: fix quote escaping in JUnit (Jihwan) #65971
  • [02c2302c31] - tls: propagate singleUse to the secure context (Carlos Vinicius) #66025
  • [2a8b5d9269] - tls: load all CRLs from a PEM bundle (Lazizbek Ergashev) #65577
  • [d141ddb8dc] - tls: defer re-entrant calls to SSL state machine from JS (Tim Perry) #65105
  • [b7fe779632] - tools: update tools/v8 for Python 3.13 (Richard Lau) #66109
  • [6105b37a3d] - tools: bump eslint-plugin-jsdoc in /tools/eslint in the eslint group (dependabot[bot]) #66102
  • [060ed69df9] - tools: disable fortify warnings in test-shared (Antoine du Hamel) #66020
  • [f8b7a2ff41] - tools: clean up handling of shared libs in shell.nix (Antoine du Hamel) #65891
  • [3c9586c1fc] - tools: group CodeQL GHA updates (Antoine du Hamel) #66057
  • [aa531a34f7] - tools: summarize auto-start-ci failures (Filip Skokan) #65979
  • [b7eef15f59] - tools: bump the eslint group in /tools/eslint with 6 updates (dependabot[bot]) #66045
  • [8914947d7c] - tools: update pgo build doc for linux (Chengzhong Wu) #66024
  • [a5b1659d5b] - tools: avoid workflow shell interpolation (Filip Skokan) #66013
  • [caf0ee0d7b] - tools: use self-repository references (Filip Skokan) #66013
  • [d5880dcb05] - tools: correct Slack action version comments (Filip Skokan) #66013
  • [66f182f565] - tools: make checkout credential use explicit (Filip Skokan) #66013
  • [287ece3f22] - tools: pass author to commit message validator (Filip Skokan) #66012
  • [6314ccf93b] - tools: reduce test runner timing overhead (Filip Skokan) #65980
  • [441350a867] - tools: do not download build tools when linting Nix files (Antoine du Hamel) #65961
  • [15f2549f74] - tools: bump js-yaml from 4.3.1 to 4.3.2 in /tools/eslint (dependabot[bot]) #65931
  • [0e449d02a6] - tools: bump js-yaml from 4.3.1 to 4.3.2 in /tools/lint-md (dependabot[bot]) #65932
  • [81eba460b5] - tools: fix commit queue error summary matching (Filip Skokan) #65913
  • [e5bbcfdd78] - tools: lint PR commit messages without approval (Filip Skokan) #65875
  • [07ae602005] - tools: unlabel author ready on base branch conflicts (Filip Skokan) #65872
  • [e3ad68289a] - tools: improve benchmark build cache reuse (Filip Skokan) #65859
  • [46ddc0220d] - tools: apply feedback to and simplify contributor guidance workflow (Filip Skokan) #65785
  • [66fd78803d] - trace_events: fix abort when Node.js does not own the V8 platform (Shelley Vohr) #65954
  • [3cb3c23a19] - typings: add task_queue internal binding types (Seongeun Lee) #65662
  • [c5c7036e7b] - typings: add timeoutInfo to TimersBinding (greenhead) #65811
  • [62fe96c166] - typings: add missing sea binding properties (이혜미) #65815
  • [e51673b4ed] - url: add Symbol.toStringTag to URLPattern (Khaidi Chu) #65925
  • [3ce4d23bbb] - (SEMVER-MINOR) util: implement util.throttle (James M Snell) #65899
  • [336f33ccc1] - (SEMVER-MINOR) util: implement debounce (James M Snell) #65899
  • [16e3e7eff3] - vfs: add --vfs-mount and --vfs-load startup flags (Philipp Dunkel) #65748
  • [c50cb9a553] - vfs: write RealFSProvider files to open fd (Christian Aurich) #65885
  • [1bbc5488a5] - vfs: close the fs hook gaps for mounted paths (Philipp Dunkel) #65852
  • [816790e0e5] - vfs: resolve symlinks when checking rename descendants (Trivikram Kamat) #65904
  • [a9149093df] - vfs: support renaming implicit ZIP directories (Trivikram Kamat) #65752
  • [cf5d4a8fe6] - vfs: reject statfs for missing paths (Trivikram Kamat) #65693
  • [de552bd044] - vfs: return FileHandle from fs.promises.open (Trivikram Kamat) #65730
  • [08f96f142e] - vfs: give ZipProvider option bags a null prototype (Philipp Dunkel) #65853
  • [5c4d319028] - vfs: commit ZipProvider handles the way open(2) does (Philipp Dunkel) #65853
  • [29d3406b6c] - vfs: apply open(2) effects to ZipProvider handles (Philipp Dunkel) #65853
  • [e379c26a92] - vfs: align virtual file handles with open(2) (Philipp Dunkel) #65854
  • [7cdf5f014a] - vfs: answer for unowned paths under reserved root (Philipp Dunkel) #65814
  • [5e55085bc1] - zlib: reject invalid zstd dictionaries (James M Snell) #65867
  • [4cdcf7f6a4] - zlib: fix zstd reset (James M Snell) #65867
  • [678ff3561a] - zlib: improve zstd decoding across chunk boundaries (James M Snell) #65865
10 days ago
node

2026-09-16, Version 26.9.0 (Current), @aduh95

Notable Changes

  • [d414624dce] - (SEMVER-MINOR) crypto: add a generic MAC API (Filip Skokan) #65553
  • [7ac458f802] - (SEMVER-MINOR) crypto: discover ciphers from OpenSSL providers (Filip Skokan) #65484
  • [7c7e95a3bd] - (SEMVER-MINOR) crypto: discover hashes from OpenSSL providers (Filip Skokan) #65484
  • [2d2f4f6d1a] - (SEMVER-MINOR) ffi: enable module by default (Matteo Collina) #65475
  • [657415c6df] - (SEMVER-MINOR) lib: implement node:bench (James M Snell) #65606
  • [ebcfec2f0c] - (SEMVER-MINOR) perf_hooks: implement Histogram meanCI API (James M Snell) #65606
  • [e1913630c3] - (SEMVER-MINOR) perf_hooks: add CBOR export/import for histogram exchange (James M Snell) #65434
  • [8e9151c9f2] - (SEMVER-MINOR) src: let embedders supply a builtin code cache without a snapshot (Shelley Vohr) #65352
  • [889854f18b] - (SEMVER-MINOR) src,lib: implement experimental DTLS API (James M Snell) #63182
  • [5198142c59] - (SEMVER-MINOR) vfs: integrate with CJS and ESM module loaders (Matteo Collina) #63653
  • [5af9d72e7f] - (SEMVER-MINOR) worker: add support for Web Workers (Aviv Keller) #64894

Commits

  • [59dcad3f44] - (SEMVER-MINOR) benchmark: implement node:bench version of bench tools (James M Snell) #65606
  • [6bdb6dd8fa] - benchmark: fix max-regressions detection in compare.js (James M Snell) #65587
  • [49d40091ba] - benchmark: add --analyze option to benchmark/scatter.js (James M Snell) #65594
  • [bd40a9a19a] - benchmark: add crypto class benchmarks (Filip Skokan) #65518
  • [6bff2238f5] - buffer: pad aligned allocations by a multiple of 8 (Lazizbek Ergashev) #65605
  • [37d12946dd] - buffer: prevent abort on indexOf with lone surrogate needle (Rafael Gonzaga) #65430
  • [02f8eb3b2d] - build: add --shared-perfetto flag (Antoine du Hamel) #65614
  • [fe7032ec41] - build: enable V8 gdb/lldb plugin support (Chengzhong Wu) #65786
  • [109f2caf80] - build: allow linking shared dependencies in the GN build (Shelley Vohr) #65797
  • [55213fd8a8] - build: enable the V8 sandbox in shared-cage builds (Shelley Vohr) #62237
  • [120929a1b3] - build: add --shared-highway configure flag (Antoine du Hamel) #65686
  • [c99af0942b] - build: add --shared-abseil configure flag (Antoine du Hamel) #65682
  • [431c2bf0eb] - build: define V8_CONTIGUOUS_COMPRESSED_RO_SPACE for shared cage (Shelley Vohr) #65464
  • [b6b5764c6e] - build: remove obsolete configure flags (Chengzhong Wu) #65456
  • [a623ee29d9] - build,src: make --use-largepages a no-op (Joyee Cheung) #65389
  • [2f494cb7aa] - crypto: fix multi-prime RSA JWKs (Filip Skokan) #65649
  • [501d8ac815] - crypto: cache valid ECDH key pairs (Filip Skokan) #65615
  • [3fd905ea8f] - crypto: add strict mode to --force-fips (Filip Skokan) #65645
  • [54b3cdb805] - crypto: add FIPS indicator diagnostics channel (Filip Skokan) #65645
  • [3e6e931fc9] - crypto: fix public PKCS8 export error (한국) #65609
  • [d414624dce] - (SEMVER-MINOR) crypto: add a generic MAC API (Filip Skokan) #65553
  • [eef579047c] - crypto: validate JWK usages before key_ops (Filip Skokan) #65550
  • [9a9b137a24] - crypto: fix private SPKI export error (Filip Skokan) #65550
  • [9941fb5dab] - crypto: fix RSA-PSS oversized salt handling (Filip Skokan) #65550
  • [09b431596a] - crypto: correct CCM decryption FIPS error message (kyungrae) #65450
  • [e6b34e6f7a] - crypto: harden X509Certificate state (Filip Skokan) #65518
  • [a884b6ccbc] - crypto: optimize key slot caching (Filip Skokan) #65518
  • [fb512086d3] - crypto: add null checks for OPENSSL_INIT_new() (Nora Dossche) #63457
  • [656504ffc0] - crypto: prevent Hmac.digest() from returning uninitialized memory (Matteo Collina) #65112
  • [15e7884732] - crypto: avoid throwing CryptoKey brand checks (Filip Skokan) #65503
  • [3302bec74a] - crypto: avoid throwing KeyObject brand checks (Filip Skokan) #65503
  • [7ac458f802] - (SEMVER-MINOR) crypto: discover ciphers from OpenSSL providers (Filip Skokan) #65484
  • [7c7e95a3bd] - (SEMVER-MINOR) crypto: discover hashes from OpenSSL providers (Filip Skokan) #65484
  • [0539e90110] - deps: update googletest to 283c17563fe7a1111cd7f581aa5d541e8baeff2f (Node.js GitHub Bot) #65833
  • [e34af820da] - deps: update simdjson to 4.6.11 (Node.js GitHub Bot) #65834
  • [5fb7ffebc2] - deps: update zlib to 1.3.2.1-motley-285e94b (Node.js GitHub Bot) #65835
  • [05cdf1db62] - deps: V8: backport 1a0089053443 (Jakob Linke) #65764
  • [8910f7914a] - deps: V8: backport c9c0abfa51f0 (Jakob Linke) #65764
  • [e7fd388424] - deps: V8: backport ebd15783b7ba (Marja Hölttä) #65764
  • [82715158b8] - deps: V8: backport f3d4d458fe59 (Olivier Flückiger) #65702
  • [7003159885] - diagnostics_channel: lazily create tracing context (Romain Lanz) #65513
  • [a97def782f] - doc: clarify node:bench significance policy (James M Snell) #65631
  • [c74091647d] - doc: clarify isolation modes for node:bench (James M Snell) #65631
  • [3ef81a676c] - doc: clarify measurement integrity details of node:bench (James M Snell) #65631
  • [6b565d7b2c] - doc: clarify security triage dispositions and permission boundaries (Rafael Gonzaga) #65436
  • [724981287c] - (SEMVER-MINOR) doc: move histogram.burnRate to correct location in doc (James M Snell) #65434
  • [f8b627c09b] - doc: fix default limit of maxHeadersCount (Aryn H) #65472
  • [aa3d94fc1d] - doc: fix return types for sync methods (Chiang Fong Lee) #58575
  • [fe9f452ddd] - doc: document REPL DEP0185 throws and uncaught-exception behavior (Adrián Estrada) #64993
  • [6b84ee66fa] - errors: validate constructor name (Christian Aurich) #65607
  • [ed1b629901] - events: fix weak listener retention overwrite (Aryan) #64024
  • [7b4c17f723] - ffi: throw on missing memory helper arguments (Soul Lee) #65500
  • [cf78d4260e] - ffi: include SharedArrayBuffer in error message (Donghoon Kang) #65735
  • [2d2f4f6d1a] - (SEMVER-MINOR) ffi: enable module by default (Matteo Collina) #65475
  • [bdcb6def4e] - ffi: validate DynamicLibrary getter receivers (Trivikram Kamat) #65415
  • [5d24a8fe37] - fs: copy directory trees for fs.cp() on the thread pool (Shelley Vohr) #65488
  • [40bdf32d91] - fs: give directories created by cpSync the source directory's mode (Shelley Vohr) #65488
  • [6ac1bc040f] - fs: write files in one thread pool round trip (Shelley Vohr) #65489
  • [b4b89c08c1] - fs: handle recursive watch setup races (Filip Skokan) #65699
  • [54a1311d9e] - fs: apply nocase to literal glob exclude patterns (Yusuke Hayashi) #64817
  • [2130460831] - fs: improve performance of recursive directory read (Aviv Keller) #65524
  • [ab7f4c88b7] - fs: do not descend into symlinks for ** unless following symlinks (RafaelGSS) #65435
  • [e990324e7a] - fs: watch directories, not files, in recursive fs.watch fallback (Shelley Vohr) #65486
  • [b6db21972a] - fs: preserve directory timestamps in cp (Abhinandan Kumar) #65540
  • [d418ca140e] - fs: fix recursive watch error handling (Filip Skokan) #65635
  • [ea372bf9c9] - fs: cancel in-flight stat on abort (Mert Can Altin) #63142
  • [458664073e] - fs: fix rmSync error messages for non-ASCII paths (Yeaseen) #61233
  • [34b38235c3] - fs: add maxDepth option to glob (Alexander Lichter) #64003
  • [e3cc0d9313] - http: fast-forward teardown of unread messages (Matteo Collina) #65732
  • [f9175a212c] - http: coalesce chunked writes during auto-corking (GetThatCookie) #64987
  • [b4a7cd3efb] - http2: fix write deadlock exposed by larger window sizes (Tim Perry) #65440
  • [b7e97f6cfd] - http2: error for incomplete reads on RST, auto-drain, deprecate aborted (Tim Perry) #63249
  • [d62989dbdf] - http2: fix async context loss when trailers carry END_STREAM (Orgad Shaneh) #63814
  • [8aba314f87] - https: limit proxy CONNECT response headers (Matteo Collina) #64545
  • [bea74e1cb5] - lib: put node:bench behind an --experimental-bench flag (James M Snell) #65920
  • [2835523960] - lib: fixup node:bench handling of --require option (James M Snell) #65631
  • [aae83d87a4] - lib: improve diagnostic message support (James M Snell) #65631
  • [ba7baed423] - lib: have runFile honor permissions and accept URL/Buffer paths (James M Snell) #65631
  • [55103db988] - lib: add runFile api to node:bench (James M Snell) #65631
  • [0a4c50eb76] - lib: add context.diagnostic api to node:bench (James M Snell) #65631
  • [476e25e864] - lib: add bench:plan event to node:bench (James M Snell) #65631
  • [67cf0e556f] - lib: clarify mean in node:bench docs (James M Snell) #65631
  • [f85f72ad42] - lib: improve node:bench stream handling (James M Snell) #65631
  • [b32b09f56b] - lib: add runId, fileRunId, entryFile, namePath to node:bench (James M Snell) #65631
  • [4b9b53f958] - (SEMVER-MINOR) lib: add node:bench explicit createRunner (James M Snell) #65606
  • [d9f18171f0] - (SEMVER-MINOR) lib: complete the implementation of node:bench and cli (James M Snell) #65606
  • [c39e20e9ca] - (SEMVER-MINOR) lib: implement bench/reporters (James M Snell) #65606
  • [657415c6df] - (SEMVER-MINOR) lib: implement node:bench (James M Snell) #65606
  • [46863a7f9c] - lib: use Float16Array from primordials (Antoine du Hamel) #65702
  • [cbd0948138] - lib: defer source map payload decoding until first use (Shelley Vohr) #65490
  • [1ddb1c8934] - lib: optimize async context frame activation (Tim Perry) #65519
  • [02f6feef7e] - lib: use validateArray for array arguments (JunHwan Choi) #65344
  • [962795ab8c] - lib: apply minor dtls cleanups (James M Snell) #63539
  • [c07b2ab8a9] - lib,benchmark: address multiple review issues (James M Snell) #65631
  • [54a5e25f72] - module: derive builtinModules from enabled builtin set (Jungwon Sohn) #65418
  • [c93a90cf12] - net: fix BlockList.fromJSON for IPv4-mapped IPv6 rules (Daijiro Wachi) #64125
  • [506d23b76f] - net: recognize bare IPv6 loopback addresses in isLoopback (Daijiro Wachi) #63619
  • [81cd6d7b78] - net: improve dtls cert verification (James M Snell) #64314
  • [51d094e26b] - node-api: make object property arrays const (Yilong Li) #65621
  • [875c7ecee2] - node-api: enter env context for async callbacks (Shelley Vohr) #65406
  • [ebcfec2f0c] - (SEMVER-MINOR) perf_hooks: implement Histogram meanCI API (James M Snell) #65606
  • [09b333bcc5] - perf_hooks: add missing resource timing attributes (greenhead) #65017
  • [e1913630c3] - (SEMVER-MINOR) perf_hooks: add CBOR export/import for histogram exchange (James M Snell) #65434
  • [67a78317dd] - permission: do not enforce fs and addons in audit mode (Issac) #65659
  • [19e69e5f72] - permission: support URL and Uint8Array as has()/drop() reference (Seungmin Nam) #65492
  • [168af4d8d7] - permission: block FileHandle fsync and fdatasync (Rafael Gonzaga) #65431
  • [855fff682f] - quic: stop guarding ngtcp2_recv_stop_sending callback field (René) #65688
  • [d30df2a3e1] - quic: reuse TLS pause machinery to drop event deferral & improve 0RTT (Tim Perry) #65522
  • [fce1b6a482] - quic: remove unused fin flag from blob reader wakeup (trivenay) #65315
  • [c721aabfb7] - quic: apply multiple fixes to flow control signaling (James M Snell) #65309
  • [2c552cd32c] - quic: release stream arenas before cleanup (Trivikram Kamat) #65410
  • [487662717b] - sea: mount bundled assets as a virtual file system (Matteo Collina) #65675
  • [0ec15a2a54] - sea: keep ELF segments on separate pages in --build-sea output (Shelley Vohr) #65564
  • [1627fd6561] - sqlite: re-validate database state after reading options (Trevor Burnham) #65595
  • [18c3867d19] - sqlite: run backup completion in callback scope (Filip Skokan) #65666
  • [a77d738683] - sqlite: copy changeset before applying it (Matteo Collina) #65286
  • [b5f0558c84] - sqlite: reject closing a session from a callback (Trevor Burnham) #65454
  • [5f95032859] - sqlite: keep sessions alive across SQLite callbacks (Trevor Burnham) #65465
  • [2ce0e2eb10] - sqlite: throw on disposal of an in-use session (Guilherme Araújo) #65449
  • [f66ed89136] - src: fix use-after-free in CleanupHookThunkRun (Caleb Everett) #65630
  • [14613fdc3e] - (SEMVER-MINOR) src: fixup histogram and options linting issues (James M Snell) #65606
  • [6db3f662cf] - src: fix startup snapshot reproducibility of InternalFieldInfo (Chengzhong Wu) #65684
  • [8e9151c9f2] - (SEMVER-MINOR) src: let embedders supply a builtin code cache without a snapshot (Shelley Vohr) #65352
  • [760337aa5b] - src: fix live lock between environments with blocked requests (Ilyas Shabi) #65520
  • [f2a588c385] - src: apply IsolateSettings when using a snapshot (Shelley Vohr) #65407
  • [2fd50ae915] - src: add re-entrancy guard to TriggerUncaughtException (Temuulen Undrakhbayar) #64327
  • [e260fd146c] - src: reuse cached strings in CompileSerializeMain (agape1225) #65453
  • [0650dca863] - src: add missing vector include (Filip Skokan) #65622
  • [6e9d44d1fe] - src: disable V8 external memory reasonable size check (Paul Bouchon) #65589
  • [9c46e56303] - src: report libuv error when openAsBlob cannot stat (Paul Bouchon) #65517
  • [a0aaff6b07] - src: list scripts when --run has no command (James Ross) #64606
  • [469590c155] - src: fixup manual new/delete usages (James M Snell) #65348
  • [5902acf031] - src: make the options structs smaller with packed bits (James M Snell) #65145
  • [0c24639a5a] - (SEMVER-MINOR) src, lib: add stats to dtls (James M Snell) #63182
  • [652fbc286e] - (SEMVER-MINOR) src,lib: add dtls interop tests (James M Snell) #63182
  • [889854f18b] - (SEMVER-MINOR) src,lib: implement experimental DTLS API (James M Snell) #63182
  • [76538d519c] - stream: use webidl validation semantics for args (James M Snell) #65658
  • [649a4aba93] - stream: ensure that stateful transforms preserve this (James M Snell) #65658
  • [23220992c0] - stream: fix nested async flushing with infinite sources (James M Snell) #65658
  • [3ad1338139] - stream: ensure from() observes returned rejecting promise correctly (James M Snell) #65658
  • [cafdee6369] - stream: apply source normalization once at call time (James M Snell) #65658
  • [edb83cb620] - stream: make consumer signals on longer alter source precedence (James M Snell) #65658
  • [56bdd765df] - stream: make pipeTo source normalization independent of Writer (James M Snell) #65658
  • [037c07af2b] - stream: pre-aborted pipeTo now applies dest failure handling (James M Snell) #65658
  • [7308492d48] - stream: ensure pre-existing writes drain before EOF and end() waits (James M Snell) #65658
  • [756773477b] - stream: ensure async dispoal after endSync awaits for drain (James M Snell) #65658
  • [042b951312] - stream: ensure factory signals remain active through closing (James M Snell) #65658
  • [2dc09ca9ca] - stream: canWrite and ondrain now reflect physical capacity (James M Snell) #65658
  • [9192fbb6dd] - stream: skip unobserved 'readable' emission at EOF (Matteo Collina) #65749
  • [dc25a61e7a] - stream: avoid per-chunk promises in webstream adapters (Matteo Collina) #65548
  • [82ae196af6] - stream: address stream/iter review feedback (James M Snell) #65652
  • [3b37b48592] - stream: replace object sentinel with symbol (James M Snell) #65652
  • [b6424b6612] - stream: ensure pipeToSync requires synchronous close (James M Snell) #65652
  • [830fc81acf] - stream: cancel active stream/iter pulls (James M Snell) #65652
  • [30606908de] - stream: fix merge settlement tagging and falsy error tracking (James M Snell) #65652
  • [7319198755] - stream: ensure full-close semantics when closed (James M Snell) #65652
  • [bf5acb783f] - stream: defend against re-entrancy in writev (James M Snell) #65652
  • [b01594f93a] - stream: ensure stability of stored metadata (James M Snell) #65652
  • [7bfd81ab09] - stream: fixup writer to terminate on consumer return/throw (James M Snell) #65652
  • [dc2483c38d] - stream: ensure iterator cleanup on done, reject, etc (James M Snell) #65652
  • [f6fac6f7f0] - stream: fixup cancelation handling in pull() (James M Snell) #65652
  • [dfe0617e71] - stream: fix early drain after Utf8Stream reopen (Matteo Collina) #65633
  • [900fae0a24] - test: split test-bench-cli to try deflaking it (James M Snell) #65919
  • [31f4bd73b2] - test: make node:bench test samples survive a coarse clock (Shelley Vohr) #65780
  • [e0fa1893c3] - test: do not dump core in external memory limit test (Shelley Vohr) #65780
  • [00ad283b8d] - test: zero-fill buffers before the string length limit check (Christian Aurich) #65755
  • [70763fcc46] - test: expand test coverage of node:bench (James M Snell) #65631
  • [5a38e6b115] - (SEMVER-MINOR) test: fix node:bench test timing (James M Snell) #65606
  • [536ae0e24b] - (SEMVER-MINOR) test: improve node:bench test coverage (James M Snell) #65606
  • [eec66d529c] - (SEMVER-MINOR) test: update bench tests to not fail on no-crypto (James M Snell) #65606
  • [ce7b349de5] - test: bump WPT webidl and interfaces (Filip Skokan) #65679
  • [ec96f8dc23] - test: update WPT for url to c23755a144 (Node.js GitHub Bot) #65651
  • [ebe2ac248b] - test: fix recursive fs.watch error fixture (Filip Skokan) #65683
  • [a19912ee8f] - test: update streams WPT (Jeong SeokChan) #65638
  • [14b5dfc63d] - test: remove console.log call in node_run_list (Antoine du Hamel) #65572
  • [3f67df139c] - test: expect node:ffi to be enabled by default (Matteo Collina) #65636
  • [b9ee2e67bf] - (SEMVER-MINOR) test: use native builder for legacy SEA tests (Filip Skokan) #65553
  • [53a29d0894] - test: use common spawnSync helpers in more tests (greenhead) #65552
  • [5c680a50f4] - test: add coverage for removeEventListener boolean capture (Lazizbek Ergashev) #65245
  • [6f99474912] - test: deflake fastutf8stream destroy and reopen tests (Christian Aurich) #65554
  • [2342b2bf30] - test: cover Readable.from() sync iterator errors (jakecastelli) #65515
  • [1e455a4ffe] - test: support inspecting WPTs in child processes (Filip Skokan) #65510
  • [1f7cab588e] - test: document WPT runner workflows (Filip Skokan) #65510
  • [d39a902cec] - test: simplify test-worker-heap-profile.js (Donghoon Kang) #65372
  • [90d1b863f7] - test: keep WPT backend checks alive (Filip Skokan) #65320
  • [be60c34b52] - (SEMVER-MINOR) test: enable multi-global WPTs (Filip Skokan) #64894
  • [d04cfcda8e] - (SEMVER-MINOR) test: add opt-in process WPT runner (Filip Skokan) #64894
  • [715c21f805] - (SEMVER-MINOR) test: accomodate multi-global tests in WPT{Runner,TestSpec,Report} (Filip Skokan) #64894
  • [9aa8489a01] - test: fix lint in dtls tests (Matteo Collina) #64902
  • [6a3d8a6d9f] - tls: read the peer certificate chain without consuming it (Tony Gies) #65602
  • [2e519f8fef] - tls,quic: commonize TLS cert handling between tls, dtls & quic (Tim Perry) #64711
  • [2266c14051] - tools: add GHA workflow to test vendored Perfetto (Antoine du Hamel) #65614
  • [19779f121f] - tools: fix the list of globals in ESLint config files (Antoine du Hamel) #65281
  • [b57db8dfd3] - typings: add types for performance binding (Jungwon Sohn) #65574
  • [371e2260f4] - typings: add encodeIntoResults to EncodingBinding (greenhead) #65350
  • [417cdd8a77] - typings: add typing for permission binding (Seungmin Nam) #65385
  • [a82cc7097f] - url: align URLPatternInit dictionary conversion with WebIDL (Piyush Yadav) #65498
  • [0e8f7b96b0] - util: canonicalize namespaced tags in inspect() (René) #63257
  • [acd2bb10ce] - v8: add setHeapProfileNearHeapLimit (Ilyas Shabi) #64676
  • [d0535b1041] - vfs: load native addons from a mounted file system (Philipp Dunkel) #65680
  • [ea6f70ba41] - vfs: fix rename over non-empty directory (Christian Aurich) #65613
  • [b4f6b3798a] - vfs: add ZipProvider (Philipp Dunkel) #64915
  • [5198142c59] - (SEMVER-MINOR) vfs: integrate with CJS and ESM module loaders (Matteo Collina) #63653
  • [38192126e2] - worker: start worker threads from the built-in snapshot (Shelley Vohr) #65336
  • [56144ea80a] - worker: add ref/unref to web workers (Aviv Keller) #65507
  • [7231c13b8a] - (SEMVER-MINOR) worker: add wpt tests for Web Workers (Aviv Keller) #64894
  • [5af9d72e7f] - (SEMVER-MINOR) worker: add support for Web Workers (Aviv Keller) #64894
  • [069a1b1200] - zlib: avoid waiting for paused ZIP iterators (Trivikram Kamat) #65278
17 days ago
node

2026-09-09, Version 26.8.2 (Current), @aduh95

Notable Changes

  • [616bd3fa26] - doc: deprecate Server.prototype._listen2 in node:net (Antoine du Hamel) #65593
  • [ae1801eb55] - meta: refine the security vuln posture for experimental features (James M Snell) #65438
  • [09feba74c8] - deps: update Undici to 8.10.2 (Node.js GitHub Bot) #65788
  • [7efdbe3eb9] - deps: update OpenSSL to 3.5.8 (Node.js GitHub Bot) #65542

Commits

  • [d8aedd6584] - build: skip dockit on riscv64 (Stewart X Addison) #62251
  • [1899c274eb] - build: activate correct default flags for riscv64 (Stewart X Addison) #65708
  • [ec8a3be996] - build: derive NODE_ARCH from target_cpu in the GN build (Shelley Vohr) #65491
  • [b73118a507] - build,win: remove LTO parallelisation limit (Stefan Stojanovic) #65535
  • [09feba74c8] - deps: update undici to 8.10.2 (Node.js GitHub Bot) #65788
  • [e47c432dd6] - deps: upgrade npm to 11.19.1 (npm team) #65573
  • [2fd6ce36a9] - deps: update corepack to 0.36.0 (Node.js GitHub Bot) #65653
  • [49dec2767a] - deps: update googletest to 36ba75f0ad5383a9759f17f3f72fd4661c72cb6d (Node.js GitHub Bot) #65654
  • [676174a071] - deps: update simdjson to 4.6.9 (Node.js GitHub Bot) #65655
  • [2f1b7fa0bb] - deps: update perfetto to 58.2 (Node.js GitHub Bot) #65656
  • [12acd0ad15] - deps: update zlib to 1.3.2.1-motley-5eb4d7e (Node.js GitHub Bot) #65494
  • [48631c80fb] - deps: update archs files for openssl-3.5.8 (Node.js GitHub Bot) #65542
  • [7efdbe3eb9] - deps: upgrade openssl sources to openssl-3.5.8 (Node.js GitHub Bot) #65542
  • [bdc75900ee] - doc: replace node:modules documentation header (René) #65800
  • [44c8a499ba] - doc: clarify return type of fs.mkdtemp* (Antoine du Hamel) #65743
  • [025fb5eeb0] - doc: update changelog-maker instructions for releasing (Juan José) #65707
  • [5f64847afa] - doc: add stability status to crypto.setEngine (Antoine du Hamel) #65746
  • [299dee0cb9] - doc: remove outdated TLS authorized warning (Tim Perry) #65597
  • [e97dcc0278] - doc: fix broken using link in ffi.md (Soul Lee) #65632
  • [2c9cc7d237] - doc: fix some broken links (Antoine du Hamel) #65583
  • [0c330ec329] - doc: fix stale TOC in maintaining-dependencies (greenhead) #65523
  • [9c522a3a69] - doc: refactor the AI guidelines (Joyee Cheung) #65269
  • [46cbf1bf8c] - doc: fix triggerAsyncId() comment in async_hooks example (soreavis) #64583
  • [788904ff78] - doc: fix fsPromises.watch overflow value (Matt Radbourne) #64605
  • [3d06ff19e8] - doc: clarify stream direction in options.stdio note (Avocado) #65236
  • [d334838379] - doc: clarify signal listener behavior (Som Samantray) #65243
  • [d55a2bd56a] - doc: add test reporter event lifecycle diagram (sangwook) #63780
  • [c17dfc87de] - doc: discourage AbortSignal cleanup for long-lived resources (Efe Karasakal) #64342
  • [616bd3fa26] - doc: deprecate Server.prototype._listen2 in node:net (Antoine du Hamel) #65593
  • [4e6d7e0ca6] - meta: cleanup targos emeritus changes (Antoine du Hamel) #65738
  • [a70cfe1747] - meta: bump github/codeql-action/init from 4.37.3 to 4.37.9 (dependabot[bot]) #65714
  • [e43a0ad4ce] - meta: bump github/codeql-action/autobuild from 4.37.3 to 4.37.9 (dependabot[bot]) #65717
  • [99e06288f1] - meta: bump actions/checkout from 7.0.0 to 7.0.1 (dependabot[bot]) #65718
  • [89662762b3] - meta: bump cachix/install-nix-action from 31.11.0 to 31.11.1 (dependabot[bot]) #65719
  • [6b8f078672] - meta: bump actions/setup-node from 6.4.0 to 7.0.0 (dependabot[bot]) #65720
  • [6c6fb18e63] - meta: bump step-security/harden-runner from 2.20.0 to 2.21.0 (dependabot[bot]) #65721
  • [0e002e859f] - meta: bump github/codeql-action/upload-sarif from 4.37.3 to 4.37.9 (dependabot[bot]) #65722
  • [98aaffe4b9] - meta: bump github/codeql-action/analyze from 4.37.3 to 4.37.9 (dependabot[bot]) #65723
  • [d247cb2975] - meta: document collaborator automation (Filip Skokan) #65671
  • [ae1801eb55] - meta: refine the security vuln posture for experimental features (James M Snell) #65438
  • [fab81d15c3] - test: widen the gap in the resolver maxTimeout comparison (Shelley Vohr) #65780
  • [62e2a6265c] - test: fix the thread-spawn handshake in the WASI threads fixture (Shelley Vohr) #65780
  • [7eb20b1810] - test: only count restarts after the write in watch emit-restarted test (Shelley Vohr) #65780
  • [14c3a77bc5] - test: ignore tunnel resets in proxy invalid-char-in-url test (Shelley Vohr) #65780
  • [ebc99e0560] - test: handle EPIPE in closed channel test (Christian Aurich) #65770
  • [5e73a2ca79] - test: deflake test-permission-net-udp-handle (Christian Aurich) #65767
  • [beb669f7de] - test: deflake test-runner-coverage (Christian Aurich) #65728
  • [ef4b6bfa62] - test: set type=none on IBM i for empty source (Abdirahim Musse) #65545
  • [027eef0691] - test: deflake WASI poll timing checks (Filip Skokan) #65672
  • [a352b0e2fe] - test: skip fs-watch-recursive-delete-race on AIX (Antoine du Hamel) #65698
  • [f9ce35aa43] - test: deflake test-inspect-async-hook-setup-at-inspect (Christian Aurich) #65584
  • [32281cec7b] - test: deflake test-watch-mode-restart-esm-loading-error (Christian Aurich) #65623
  • [79be5d61be] - test: avoid orphaned child on Windows abort test (Kirill Saied) #65451
  • [8972b8540b] - test: fix link-local dgram scope assertion (Filip Skokan) #65629
  • [b7cd1d96de] - test: riscv64: skip node-api sea test (Stewart X Addison) #65569
  • [7eeb9d0e57] - test: mark platform-specific tests as flaky (Filip Skokan) #65562
  • [649ac82bda] - test: account for varied OpenSSL CCM final behaviours (Filip Skokan) #65542
  • [050fb1a15d] - tools: bump @humanfs/node from 0.16.7 to 0.16.8 in /tools/eslint (dependabot[bot]) #65757
  • [5314dda396] - tools: bump browserslist from 4.28.4 to 4.28.8 in /tools/eslint (dependabot[bot]) #65758
  • [5938a08929] - tools: do not hardcode yamllint path (Antoine du Hamel) #65747
  • [d8408f7415] - tools: refine contributor guidance workflow (Filip Skokan) #65745
  • [196e372b69] - tools: bump the eslint group in /tools/eslint with 4 updates (dependabot[bot]) #65716
  • [7e986b09f6] - tools: do not flag force push as invalid message (Antoine du Hamel) #65700
  • [837ce2ccef] - tools: do not hardcode path to Ruff (Antoine du Hamel) #65681
  • [1c7149a96a] - tools: retry first-time contributor query (Filip Skokan) #65648
  • [bd310a2bea] - tools: query first-time contributor status (Filip Skokan) #65592
  • [ab7b57e547] - tools: offset GitHub crons by 3 minutes (Michaël Zasso) #65612
  • [62ece28eae] - tools: label PRs lacking second approval (Filip Skokan) #65538
  • [68227b4029] - tools: welcome first-time contributors (Filip Skokan) #65533
  • [490dc93e37] - tools: enable concurrency for eslint (Huáng Jùnliàng) #62352
  • [d794676217] - typings: fix fs_event_wrap start filename type (leah-1ee) #65661
  • [29e2b5a325] - typings: add fs_event_wrap internal binding types (leah-1ee) #65661
  • [6357c8f56e] - typings: add stream_pipe internal binding types (Seongeun Lee) #65664
  • [569720ac7f] - typings: add profiler internal binding types (Seongeun Lee) #65660
  • [52ae89c69d] - typings: add ffi internal binding types (Donghoon Kang) #65734
  • [22c7469062] - typings: update zlib binding declarations (이혜미) #65639
18 days ago
node

2026-09-08, Version 24.21.0 'Krypton' (LTS), @aduh95

Notable Changes

  • [71106e1f17] - crypto: update root certificates to NSS 3.126 (Node.js GitHub Bot) #65495
  • [afca0a912d] - (SEMVER-MINOR) crypto: support loading private keys through STORE loaders (Filip Skokan) #63949
  • [6274fccbd9] - deps: update OpenSSL to 3.5.8 (Node.js GitHub Bot) #65542
  • [53cba013c7] - deps: update Undici to 7.29.1 (Node.js GitHub Bot) #65789
  • [0529772798] - (SEMVER-MINOR) lib,src: improve histogram implementation (James M Snell) #65024
  • [41c7062b81] - (SEMVER-MINOR) net: improve performance of net.BlockList (James M Snell) #64974
  • [5197b5a3c5] - (SEMVER-MINOR) perf_hooks: add statistical hypothesis testing to histogram (James M Snell) #65416
  • [35c635b032] - (SEMVER-MINOR) util: add non-throwing MIMEType.parse (James M Snell) #64965

Commits

  • [84d706cb9b] - assert: improve documentation wording (Kamal Rawal) #64953
  • [90d127db33] - (SEMVER-MINOR) benchmark: add --analyze mode to compare.js (James M Snell) #65416
  • [ad1d7884c3] - benchmark: add test-only and mock timers cases (Luan Muniz) #64097
  • [1d8f045914] - benchmark: apply highWaterMark in webstreams pipe-to (Matteo Collina) #65138
  • [ed7ba3c993] - benchmark: complete the sqlite is-transaction fix (Edy Silva) #65218
  • [c8837e1aa3] - benchmark: add test runner hooks and options (Luan Muniz) #63754
  • [2ba8661e23] - buffer: prevent string write offset overflow (Matteo Collina) #65043
  • [cc9ee6c2ae] - buffer: treat detached ArrayBuffers as empty (Archkon) #64504
  • [5a5d73e4c5] - build: pass target architecture to small-icu genccode (ulofiai) #65095
  • [273e72d1a5] - build: deprecate always enabled --enable-static (Chengzhong Wu) #65103
  • [89a67246e3] - build: check FIPS option value in node.gyp (Filip Skokan) #64982
  • [2d21f41cd5] - build: handle malformed OpenSSL macros (Filip Skokan) #64982
  • [f62bc0f862] - build,win: add PGO workload scripts (Stefan Stojanovic) #63696
  • [33d0c7dc12] - child_process: keep SIGWINCH from killing on Win (Kirill Saied) #64510
  • [71106e1f17] - crypto: update root certificates to NSS 3.126 (Node.js GitHub Bot) #65495
  • [419af8b86d] - crypto: fix missing error checks on ASN1_STRING_to_UTF8() (Nora Dossche) #65200
  • [8029383f3f] - crypto: use available BoringSSL APIs (Filip Skokan) #65423
  • [a9bd780e19] - crypto: remove obsolete BoringSSL shims (Filip Skokan) #65423
  • [7defefad3f] - crypto: read WebCrypto inputs through primordials (Filip Skokan) #65115
  • [6ed1e38627] - crypto: fix disabling FIPS mode (Filip Skokan) #64982
  • [afca0a912d] - (SEMVER-MINOR) crypto: support loading private keys through STORE loaders (Filip Skokan) #63949
  • [9b9dd6e9cf] - debugger: wait for target startup (Filip Skokan) #65194
  • [07faaeeffd] - deps: update corepack to 0.36.0 (Node.js GitHub Bot) #65653
  • [53cba013c7] - deps: update undici to 7.29.1 (Node.js GitHub Bot) #65789
  • [0268ca547c] - deps: update archs files for openssl-3.5.8 (Node.js GitHub Bot) #65542
  • [6274fccbd9] - deps: upgrade openssl sources to openssl-3.5.8 (Node.js GitHub Bot) #65542
  • [6bdcd121fa] - deps: update zlib to 1.3.2.1-motley-8002e91 (Node.js GitHub Bot) #65316
  • [c2aa446b6d] - deps: update simdjson to 4.6.7 (Node.js GitHub Bot) #65318
  • [3e58e48ea8] - deps: update googletest to 49495eacfdbda3f4b6ba219923fedbb2e3f99376 (Node.js GitHub Bot) #65317
  • [670b3665c0] - deps: cherry-pick libuv/libuv@e640dc9 (ulofiai) #65118
  • [ca1c67b021] - deps: float ICU-23262 patch for icu78 (René) #64678
  • [4ad043b0aa] - deps: enable AVX-512 OpenSSL asm with clang (Daniel Lemire) #65136
  • [96b4af109b] - deps: update googletest to d89aac5f0dd4021198d903d39de16f896726de21 (Node.js GitHub Bot) #65153
  • [774f663c56] - dgram: don't swallow bind errors when callback is provided (armanmikoyan) #62602
  • [94b118d62e] - diagnostics_channel: validate before channel activation (Trivikram Kamat) #65313
  • [09788665bd] - dns: validate address type in lookupService (Lazizbek Ergashev) #64878
  • [15f95fc0e2] - dns: validate port range in setServers() (René) #65021
  • [37b9e9a154] - dns: fix crash on setServers with port 0 (Lazizbek Ergashev) #65009
  • [cd6205fa0d] - doc: update AHAFS reference link (Taeuk Ha) #65481
  • [0e6f9ae42e] - doc: fix property names in os.networkInterfaces() example (Jihwan) #65469
  • [034a827b41] - doc: fix broken links in cli.md (Donghoon Kang) #65412
  • [eb364621d4] - doc: remove outdated WASI version fallback (이혜미) #65303
  • [b13f425bf8] - doc: fix broken GYP link in n-api.md (Donghoon Kang) #65413
  • [45c4011067] - doc: document that an empty OPENSSL_CONF skips config loading (Orgad Shaneh) #64949
  • [fde6776c5f] - doc: fix broken TLS security level example (soreavis) #65391
  • [290c1fec04] - doc: clarify socket destroyed behavior (Dayun) #65395
  • [a7e8269947] - doc: update outdated nodejs.org guide links (Donghoon Kang) #65394
  • [7809f11249] - doc: clarify that ipv4 mapped to ipv6 are classified as ipv6 (Vedant Kulkarni) #62117
  • [64cd3a6e95] - doc: clarify how fs.Dirent file types are determined (soreavis) #64532
  • [9b92fdce14] - doc: update security release prepare command (Rafael Gonzaga) #64699
  • [6f9b9df3c1] - doc: clarify copyFile symlink behavior (T) #62941
  • [2480acb550] - doc: document setRawMode write access on Windows (Erik Demaine) #63856
  • [a1e9c3a5db] - doc: add missing return types in fs.md (Chaseton Collins) #65307
  • [4533572040] - doc: add missing return types in buffer.md (Yuya Inoue) #65308
  • [39ecedbbd2] - doc: fix lint clean command (greenhead) #65274
  • [0b1fb8fcd8] - doc: fix typo in onboarding.md (서울민트초코) #65295
  • [3165b5d38a] - doc: add missing added: tags to fs.lchmod (Lazizbek Ergashev) #65283
  • [113b808e59] - doc: fix SQLite changeset constant descriptions (greenhead) #65265
  • [c3eb51d5a1] - doc: document open pull request limit (Matteo Collina) #65250
  • [d7accdcd52] - doc: document http2 header constants (Harjoth Khara) #64548
  • [f47111416f] - doc: create ai-guidelines and include to CONTRIBUTING (Rafael Gonzaga) #62105
  • [c3b120e737] - doc: update synopsis (Augustin Mauroy) #65171
  • [39f4c831fd] - doc: fix broken internal links (greenhead) #64901
  • [be25cdd69e] - doc: report proper return type on urlPattern.test (Brian Muenzenmeyer) #64831
  • [1bf7737810] - doc: fix permission documentation examples (greenhead) #64897
  • [b7932e68a1] - doc: document sqlite parameter binding (Guilherme Araújo) #65089
  • [5234a5169c] - doc: finalize statements in sqlite examples (Guilherme Araújo) #65088
  • [39ea929da7] - doc: document quic stopSending() and resetStream() (Issac) #64888
  • [2ba198db73] - doc: clarify sqlite bare parameter default (Sumit Kumar Das) #62009
  • [314f9b200f] - doc: remove usage of util.inherits (Augustin Mauroy) #60817
  • [d82a61662c] - doc: fix grammar in worker_threads.md (이혜미) #64913
  • [44c0c8ff5b] - doc: clarify OpenSSL FIPS configuration (Filip Skokan) #64982
  • [9b2ca70e0d] - doc: remove --expose-gc flag from CLI documentation (Dario Piotrowicz) #58909
  • [a0a12397b9] - doc: document ArrayBuffer support in pbkd2Sync (kyungrae2002) #64976
  • [b48699e077] - doc: correct default highWaterMark values (Yilong Li) #64617
  • [0312ee133c] - esm: avoid super-linear data URL MIME regex (Sumit Kumar Das) #61951
  • [cd84d55c81] - esm: only register text format when enabled (Efe Karasakal) #64992
  • [c0a8ef611e] - esm: fix wasm import name in error message (이혜미) #64950
  • [e6c34f90c2] - events: inline iterationCondition hybrid dispatch closure (Szymon Łągiewka) #64473
  • [6ee4b40c91] - events: inline createEvent hybrid dispatch closure (Szymon Łągiewka) #64473
  • [367549eed5] - fs: use sized reads for large files in readFileUtf8 (Shelley Vohr) #65328
  • [8a5b1ae4c2] - fs: fix realpath of namespaced drive paths (Jason Zhang) #65378
  • [c9233b950d] - fs: fix glob early return skipping sibling entries (Srinu desetti) #64895
  • [bc54dd8905] - fs: pass symlink type in cp when filter is provided (Jerry Zhao) #62654
  • [fcb4333aca] - fs: allocate FSReqPromise stat arrays lazily (Samuel Attard) #63886
  • [c35876154e] - fs: fix out-of-bounds write in mkdtemp for long prefixes (Hierax_Umbra) #64770
  • [b269616936] - fs: treat std::errc::permission_denied as EPERM error (Kirill Saied) #64698
  • [212fe77e76] - fs: add windowsHandle option to file streams (Kirill Saied) #63851
  • [75df6cb435] - http: improve performance with known-length calls to end() (Tim Perry) #65466
  • [48d9cd4a28] - http: cache maxHeaderPairs per header section (GetThatCookie) #64988
  • [04785c8f43] - http: fix keylog listener setup on existing agent sockets (Shani Singh) #65066
  • [4b90031534] - http: emit drain on socket takeover and avoid stale HWM reuse (Naman Trivedi) #64991
  • [83a27559cd] - http2: adapt receive deferral for Node.js 24 (Matteo Collina) #65093
  • [f43bed0ecc] - http2: avoid uaf while receiving and sending rst_stream (esgor) #64166
  • [b42d664321] - inspector: avoid calling into JS from V8 interrupts (Joyee Cheung) #65028
  • [6bf852197d] - lib: use bracket notation instead of startsWith/endsWith for single char (Taejin Kim) #61500
  • [151ca7e104] - lib: harden webidl dictionary member reads (Filip Skokan) #65115
  • [7e8c2c9f44] - lib: use validateArray for array arguments (greenhead) #64959
  • [424fe2bc5a] - lib: add and test [EnforceRange] in webcrypto dictionaries (Filip Skokan) #65091
  • [0529772798] - (SEMVER-MINOR) lib,src: improve histogram implementation (James M Snell) #65024
  • [186e1b76e8] - meta: move targos to emeritus (Michaël Zasso) #65393
  • [b41b07c72a] - meta: add unified http api initiative (James M Snell) #65139
  • [f85b6ecd67] - meta: move one or more collaborators to emeritus (Node.js GitHub Bot) #65182
  • [8f3d01bdce] - meta: add Aviv Keller to .mailmap (Aviv Keller) #65048
  • [cfad1d5b28] - meta: update sccache to 0.17.0 (René) #64985
  • [349c53c441] - module: report unreadable package.json (Paul Bouchon) #65223
  • [bd21e6706e] - module: cache nearest parent package.json per directory (Shelley Vohr) #65326
  • [961bd04370] - module: fix --check on ambiguous ESM files (Paul Bouchon) #65203
  • [f45ef73420] - net: handle undefined parent in _unrefTimer and _destroy (Shivay-98) #64644
  • [41c7062b81] - (SEMVER-MINOR) net: improve performance of net.BlockList (James M Snell) #64974
  • [5197b5a3c5] - (SEMVER-MINOR) perf_hooks: add statistical hypothesis testing to histogram (James M Snell) #65416
  • [1722ddac28] - permission: enforce addon permission in GetLinkedBinding (Rafael Gonzaga) #65432
  • [dff2b675db] - process: validate resource stats array offsets (Archkon) #65098
  • [f277983e7b] - quic: changes for nghttp3_conn_close_stream2 (Marten Richter) #64574
  • [a4c770c78e] - quic: mark drain promise handled (James M Snell) #65319
  • [2460b171c5] - quic: reset rejected HTTP/3 request streams with H3_REQUEST_REJECTED (trivenay) #65442
  • [18a7ccf302] - quic: write desired size needs update on maxstream (Marten Richter) #64768
  • [9017f4a780] - quic: do not destroy incoming streams that have a consumer (trivenay) #65335
  • [ddc41c1ef4] - quic: fix wake up blob (Marten Richter) #64044
  • [88bee43d7c] - quic: convert incoming :status header to number (Hallison Pereira Melo) #63589
  • [cd776fe97c] - quic: fix infinite loop if STOP_SENDING received on a buffering stream (Tim Perry) #64715
  • [4f6eda3c23] - repl: keep entries added while history file is loading (Mhayk Whandson) #64513
  • [cd1e6ce29b] - repl: add benchmarks (Aviv Keller) #64590
  • [2ba740669d] - sea: avoid dangling CLI option pointers (Archkon) #64755
  • [ec5e2d6856] - sea: handle NUL bytes in asset keys (Archkon) #64773
  • [703b854293] - sea: reject trailing content in config JSON (Archkon) #64774
  • [a61a5fdd1c] - sqlite: prevent reentrant session.close() (Trivikram Kamat) #65349
  • [6ae81be0a3] - sqlite: reject statement-less SQL in prepare() (Trevor Burnham) #65157
  • [043dfe4996] - sqlite: reject statement-less SQL in SQLTagStore (Trevor Burnham) #65157
  • [b8faee02e1] - sqlite: check null returns from sqlite value functions (Nora Dossche) #63288
  • [d6d2a71bee] - sqlite: validate maxSize argument in createTagStore() (Anshika Jain) #63792
  • [61a046309f] - sqlite: reject non-positive backup rates (Trivikram Kamat) #64893
  • [514e3f30fb] - sqlite: clear SQLTagStore bindings (Matteo Collina) #65041
  • [c1542255b8] - sqlite: bind Boolean (mike-git374) #62001
  • [cdb732beb5] - sqlite: fix undefined behaviour in Session::Changeset() (Nora Dossche) #63637
  • [fbe8861111] - sqlite: bind ArrayBuffer (mike-git374) #62061
  • [e3c6bd6bc8] - src: add missing vector include (Filip Skokan) #65622
  • [793cf69df8] - src: fix heap value deduplication in embedder graph (Ilyas Shabi) #64801
  • [ea5935b04c] - src: fix out-of-bounds write when transcoding odd-length ucs2 (nashit hayat) #64512
  • [22e5023f4d] - src: escape Windows environment variables in task runner (Antoine du Hamel) #65217
  • [a0f3c62bd9] - src: simplify c++ diagnostics channel API (James M Snell) #65158
  • [8e831a3d2e] - src: make minor cleanup to permission checks (James M Snell) #65158
  • [968b2ca3a3] - src: use DictionaryTemplate for permission diag channel message (James M Snell) #65158
  • [18e16e7f8d] - src: cache permission strings (James M Snell) #65158
  • [c8625a4b6f] - src: add SetAbortHandler (Max H Fisher) #64684
  • [c990140d60] - src: match cmd.exe case-insensitively in task runner (Archkon) #64907
  • [d7463b9dbc] - src: reuse cached env strings in remaining files (Seongeun Lee) #65039
  • [b055a43b93] - src: expose Windows-only fs open flags (Kirill Saied) #64775
  • [7f21e37496] - src: report why --enable-fips failed (Filip Skokan) #64979
  • [8c11beae27] - src: update repeated use strings to env (James M Snell) #64760
  • [9e2c477e26] - stream: normalize fused stateless transform results (Trivikram Kamat) #65367
  • [107e96dd41] - stream: encode whole chunks in TextEncoderStream (Matteo Collina) #65414
  • [164068279b] - stream: prevent share from eagerly draining source (Trivikram Kamat) #65338
  • [93d822bdc1] - stream: drain pending writes before broadcast end (Trivikram Kamat) #65334
  • [6b8b9c362f] - stream: reuse unexposed managed read buffers (GetThatCookie) #64990
  • [4ec4fab367] - stream: avoid duplicated endReadableNT scheduling (Matteo Collina) #65310
  • [86d1196ebf] - stream: decouple transform backpressure changes (Matteo Collina) #65143
  • [b8a7a75b19] - stream: reject pull on signal abort during flush (Trivikram Kamat) #65346
  • [386ed6a06d] - stream: avoid leaking consumers on signal failure (Trivikram Kamat) #65299
  • [74d53bd73b] - stream: use validateObject for zlib/iter params (greenhead) #65015
  • [3a174ce16b] - stream: use validateNumber for BYOB reader options.min (greenhead) #65014
  • [859ea01cb2] - stream: consolidate non-op algorithm callbacks (Matteo Collina) #65138
  • [c577669825] - stream: cut promise churn in webstreams hot paths (Matteo Collina) #65138
  • [d631e910db] - stream: preserve falsy cancellation reasons (Trivikram Kamat) #64705
  • [f9c21eabbd] - stream: use validateBuffer for BYOB reader view (greenhead) #65046
  • [b89c8f5d1e] - stream: fix recursive WritableStream abort (Jeong SeokChan) #64825
  • [39e0457e86] - test: fix link-local dgram scope assertion (Filip Skokan) #65629
  • [1433cf9d5b] - test: account for varied OpenSSL CCM final behaviours (Filip Skokan) #65542
  • [7d135d24b7] - test: convert forEach to for of test-messageevent-brandcheck file (Nachiketa Pathak) #65279
  • [421ee11715] - test: use spawnSyncAndAssert in windowsHide test (Junsoo Ha) #65351
  • [929d5705bc] - test: remove test-debugger-run-after-quit-restart as flaky on macOS (Yuya Inoue) #65424
  • [f38f154c14] - test: simplify test-timers-interval-promisified.js (Donghoon Kang) #65322
  • [a98e27f2a9] - test: add Headers coverage and benchmark (Yagiz Nizipli) #65365
  • [38fdbb62aa] - test: deflake test-net-listen-ipv6only (sangwook) #64173
  • [06c7684b01] - test: use common/child_process spawnSync helpers (Junsoo Ha) #65377
  • [6438c70004] - test: fix Linux debug skip in SEA test guard (구현우) #63751
  • [fe0e4f1b65] - test: avoid timer race in event loop delay test (Trivikram Kamat) #64728
  • [6ff69baea8] - test: enforce exit code in test-http-server-stale-close (Antoine du Hamel) #65198
  • [ba87603016] - test: convert test-async-local-storage-bind to async loop (freida-code) #65270
  • [8d6b89f454] - test: replace forEach() with for...of in parallel tests (Phillip Markert) #65272
  • [a60572a7bb] - test: convert forEach to for in test-constant.js file (NIxxy25) #65271
  • [f82060c6ce] - test: use for-of instead of forEach (Felix P.) #65268
  • [5ded71f9cc] - test: cover realpathSync resolving symlinks after a FIFO stat (Hendrik Liebau) #65113
  • [ac9835225e] - test: account for [EnforceRange] in test-webcrypto-prototype-pollution (Filip Skokan) #65173
  • [550d24277e] - test: update WPT for WebCryptoAPI to 4c2fd05ed5 (Node.js GitHub Bot) #65150
  • [2aa26559f0] - test: update WPT for urlpattern to 4832db4761 (Node.js GitHub Bot) #65151
  • [d45c010108] - test: fix hidden error in test-http-server-stale-close.js (Meghan Denny) #59357
  • [881f8d092d] - test: avoid deadlock issue in pipeline http2 tests to fix flakiness (Tim Perry) #65079
  • [e4b1e3ee75] - test: allow half-open CONNECT tunnel sockets (Trivikram Kamat) #64973
  • [00f4240d48] - test: update passphrases to comply with the next OpenSSL FIPS mode (Filip Skokan) #65077
  • [cf7680efb7] - test: use libuv clock for immediate queue test (Trivikram Kamat) #64889
  • [b0c12772ff] - test: increase timeout in probe-failure-hang-during-evaluate (Joyee Cheung) #64719
  • [7e279104b4] - test: update WPT for WebCryptoAPI to 82c3d9069c (Node.js GitHub Bot) #64977
  • [ac11f88d16] - test,doc: cover and document multi-byte offset/size in randomFill (kyungrae2002) #64834
  • [67da38cada] - test_runner: match dotfiles in default coverage exclude (semimikoh) #63401
  • [b06c61a08f] - test_runner: print coverage and diagnostic info with dot reporter (mag123c) #61423
  • [7cb9c9c126] - test_runner: use run options with isolation="none" (Sylvester Keil) #62269
  • [339acf4201] - test_runner: mock dual-package with conditional exports (Maruthan G) #62943
  • [e7a68bca08] - test_runner: add classname hierarchy for JUnit reporter (mag123c) #60220
  • [6a248acefe] - test_runner: fix junit report on empty diagnostic (Lazizbek Ergashev) #65357
  • [d01dda79b6] - test_runner: do not tag-filter test file wrappers (Chemi Atlow) #65170
  • [32ead10ddd] - test_runner: fix env option validation (Jihwan) #64865
  • [b0ef155440] - tls: throw on invalid ALPNProtocols instead of aborting (Sankalp Thakur) #65076
  • [dcf65c50ce] - tls: fix authorized state on no-cert TLS1.3 client cert resumption (Tim Perry) #64677
  • [b0f54bda78] - tools: improve commit queue failure comment (Filip Skokan) #65433
  • [bc1f2718d5] - tools: fix max body length handler in create-release-proposal.sh (Antoine du Hamel) #65455
  • [bbe76516a9] - tools: bump brace-expansion in /tools/clang-format (dependabot[bot]) #64984
  • [67697debdf] - tools: make env variables consistent in cron jobs (Antoine du Hamel) #65168
  • [ac8a68ec92] - tools: only include fast-tracked and old enough PRs in CQ (Antoine du Hamel) #65197
  • [6d9999fa2e] - tools: remove skip logic in commit-queue.sh (Antoine du Hamel) #65162
  • [60bfa1694e] - tools: bump js-yaml from 4.2.0 to 4.3.1 in /tools/lint-md (dependabot[bot]) #65129
  • [782748527e] - tools: bump js-yaml from 4.2.0 to 4.3.1 in /tools/eslint (dependabot[bot]) #65130
  • [dac257340f] - tools: fix GITHUB_TOKEN permissions for CQ workflow (Antoine du Hamel) #65192
  • [e624785846] - tools: use the read-only token when filtering PRs in CQ (Antoine du Hamel) #65169
  • [7d9dcfaaa7] - tools: delay removal of commit-queue label (Antoine du Hamel) #65101
  • [0d7c7936e7] - tools: move ncu config to global for commit queue (Filip Skokan) #65132
  • [5e1db5a38a] - tools: prefilter commit queue metadata (Filip Skokan) #64343
  • [f41509b91d] - tools: lazy-abort failed PR merges in CQ (Antoine du Hamel) #65004
  • [ceb0e99acd] - tools: sync mk-ca-bundle.pl with curl (Archkon) #64753
  • [600663b23f] - tty: add raw-vt and io raw modes (Samuel Williams) #64140
  • [a40bfc742e] - typings: add signal_wrap internal binding types (Seongeun Lee) #65229
  • [b103a4a3b9] - typings: add diagnostics_channel typings (Seongeun Lee) #65227
  • [e64de34b89] - typings: add watchdog internal binding types (Seongeun Lee) #65228
  • [c57c83b4d1] - typings: add internal_only_v8 binding typeis (Donghoon Kang) #65071
  • [f15e8c9dcd] - typings: add credentials internal binding types (Donghoon Kang) #65036
  • [a500256b0b] - url: skip unused href reuse comparison (Yagiz Nizipli) #65361
  • [58390f8bec] - url: speed up WHATWG URL parsing (Yagiz Nizipli) #65361
  • [7d5428c812] - url: speed up URLSearchParams (Yagiz Nizipli) #65363
  • [8e2461d819] - url: bounds-check short Windows file URL paths (Archkon) #64788
  • [9ffc0da90c] - url: handle unparsable serialized URLs in setters (Matteo Collina) #64651
  • [fa9d4e075d] - util: allow single-line format when break length is infinite (Hamid Reza Ghavami) #64238
  • [b68a7c3862] - util: fix OSC 8 hyperlink stripping in stripVTControlCharacters (Dushyant Singh Hada) #64319
  • [10cbb6dc00] - util: fix formatting of functions returned from getters (Richard Gibson) #64839
  • [64c20b449e] - util: use more primordials in comparisons.js (Ayoub Mabrouk) #61198
  • [cea9786de8] - util: preserve function names without source map names (Hiroki Osame) #65108
  • [35c635b032] - (SEMVER-MINOR) util: add non-throwing MIMEType.parse (James M Snell) #64965
  • [5858c2ba9a] - zlib: validate pledgedSrcSize for sync zstd (Archkon) #64601
2026-08-27 06:06:10
node

2026-08-26, Version 26.8.1 (Current), @aduh95

Notable Changes

Out-of-band release to fix node --version which was reporting an alpha version.

Commits

  • [ebd35a9eec] - src: revert accidental alpha designation (Antoine du Hamel) #65568
  • [0b0dd87fcc] - tools: fix tools/nix/list-requisites.sh (Antoine du Hamel) #65560
2026-08-26 21:57:55
node

2026-08-26, Version 26.8.0 (Current), @aduh95

Notable Changes

  • [74234ee30e] - (SEMVER-MINOR) benchmark: add --analyze mode to compare.js (James M Snell) #65416
  • [4232997fa2] - crypto: update root certificates to NSS 3.126 (Node.js GitHub Bot) #65495
  • [f0531f1c87] - (SEMVER-MINOR) crypto: enable SIV and GCM-SIV modes in Cipher/Decipher APIs (Filip Skokan) #63411
  • [3f4b80ebb5] - diagnostics_channel: mark TracingChannel as stable (Abdelrahman Awad) #64525
  • [753033c110] - (SEMVER-MINOR) lib,src: improve histogram implementation (James M Snell) #65024
  • [3d7d277493] - (SEMVER-MINOR) net: improve performance of net.BlockList (James M Snell) #64974
  • [9e8e9080fd] - (SEMVER-MINOR) perf_hooks: add statistical hypothesis testing to histogram (James M Snell) #65416
  • [c18b0aa54e] - repl: add basic syntax highlighting (Aviv Keller) #64591
  • [58ea88e1d3] - (SEMVER-MINOR) sqlite: add StatementSync.prototype.close() (Guilherme Araújo) #64232
  • [7c61b08aed] - (SEMVER-MINOR) sqlite: add StatementSync.prototype[Symbol.dispose]() (Guilherme Araújo) #64232
  • [4299cd5897] - (SEMVER-MINOR) util: add non-throwing MIMEType.parse (James M Snell) #64965
  • [df48191061] - (SEMVER-MINOR) zlib: add ZipEntry, ZipFile, and ZipBuffer (Philipp Dunkel) #64339

Commits

  • [162257b403] - assert: improve documentation wording (Kamal Rawal) #64953
  • [74234ee30e] - (SEMVER-MINOR) benchmark: add --analyze mode to compare.js (James M Snell) #65416
  • [2cb96dd462] - benchmark: add test-only and mock timers cases (Luan Muniz) #64097
  • [562168f93f] - benchmark: apply highWaterMark in webstreams pipe-to (Matteo Collina) #65138
  • [fbec4eb386] - benchmark: complete the sqlite is-transaction fix (Edy Silva) #65218
  • [d8acfc45f1] - benchmark: add test runner hooks and options (Luan Muniz) #63754
  • [13e7d54f67] - buffer: prevent string write offset overflow (Matteo Collina) #65043
  • [615273deac] - buffer: support aligned allocations (Robert Nagy) #65003
  • [bc6b630e21] - buffer: treat detached ArrayBuffers as empty (Archkon) #64504
  • [ddf9f9d265] - build: target Power 9 and z14 (Richard Lau) #65439
  • [fda8ee894e] - build: use build-ci for benchmark merge-commit rebuild (Yagiz Nizipli) #65362
  • [03692786ef] - build: add simdutf dir to include path in GN build (Shelley Vohr) #65382
  • [3da555a3ed] - build: pass target architecture to small-icu genccode (ulofiai) #65095
  • [ffe1e7cbea] - build: update binary-upload to use correct tarball name (Stewart X Addison) #65282
  • [50174cb94a] - build: deprecate always enabled --enable-static (Chengzhong Wu) #65103
  • [28f662b424] - build: check FIPS option value in node.gyp (Filip Skokan) #64982
  • [29a2ecefeb] - build: handle malformed OpenSSL macros (Filip Skokan) #64982
  • [6deeef1801] - build: enable perfetto updater (Chengzhong Wu) #64966
  • [312f0c6a7e] - build: add host toolset to perfetto_sdk (Ryuhei Shima) #64751
  • [1a4f5e537b] - build,win: add PGO workload scripts (Stefan Stojanovic) #63696
  • [21655dccbc] - child_process: keep SIGWINCH from killing on Win (Kirill Saied) #64510
  • [4232997fa2] - crypto: update root certificates to NSS 3.126 (Node.js GitHub Bot) #65495
  • [f0531f1c87] - (SEMVER-MINOR) crypto: enable SIV and GCM-SIV modes in Cipher/Decipher APIs (Filip Skokan) #63411
  • [109566a2f7] - crypto: fix missing error checks on ASN1_STRING_to_UTF8() (Nora Dossche) #65200
  • [501f81612d] - crypto: improve SubtleCrypto.supports() accuracy (Filip Skokan) #65222
  • [137ff67fd3] - crypto: use available BoringSSL APIs (Filip Skokan) #65423
  • [0e87576ed4] - crypto: remove obsolete BoringSSL shims (Filip Skokan) #65423
  • [af867ce3e4] - crypto: add mgf1Hash for RSA-OAEP (Adam Mcgrath) #65073
  • [66ee4792bf] - crypto: disable non-FIPS WebCrypto paths in FIPS mode (Filip Skokan) #65172
  • [6a142c03e9] - crypto: read WebCrypto inputs through primordials (Filip Skokan) #65115
  • [92e3110462] - crypto: fix disabling FIPS mode (Filip Skokan) #64982
  • [d69bed2f49] - debugger: wait for target startup (Filip Skokan) #65194
  • [5c7c0b8b15] - deps: update zlib to 1.3.2.1-motley-8002e91 (Node.js GitHub Bot) #65316
  • [4cb6b1335e] - deps: update simdjson to 4.6.7 (Node.js GitHub Bot) #65318
  • [a39ad67482] - deps: update googletest to 49495eacfdbda3f4b6ba219923fedbb2e3f99376 (Node.js GitHub Bot) #65317
  • [46762dad57] - deps: cherry-pick libuv/libuv@e640dc9 (ulofiai) #65118
  • [abb7a15a8d] - deps: update perfetto to 57.2 (Node.js GitHub Bot) #65114
  • [ebd8c6ba52] - deps: float ICU-23262 patch for icu78 (René) #64678
  • [f2cc681109] - deps: enable AVX-512 OpenSSL asm with clang (Daniel Lemire) #65136
  • [f45dc92913] - deps: update undici to 8.10.0 (Node.js GitHub Bot) #65155
  • [4160dfdf81] - deps: update googletest to d89aac5f0dd4021198d903d39de16f896726de21 (Node.js GitHub Bot) #65153
  • [631d3aa37b] - deps: update libffi to 3.8.0 (Node.js GitHub Bot) #65154
  • [788976c626] - dgram: don't swallow bind errors when callback is provided (armanmikoyan) #62602
  • [d286423043] - diagnostics_channel: validate before channel activation (Trivikram Kamat) #65313
  • [3f4b80ebb5] - diagnostics_channel: mark TracingChannel as stable (Abdelrahman Awad) #64525
  • [152a326f92] - dns: validate address type in lookupService (Lazizbek Ergashev) #64878
  • [00c71fec93] - dns: validate port range in setServers() (René) #65021
  • [e9327d1422] - dns: fix crash on setServers with port 0 (Lazizbek Ergashev) #65009
  • [9e227ef20d] - doc: update AHAFS reference link (Taeuk Ha) #65481
  • [5fbf6c57af] - doc: fix property names in os.networkInterfaces() example (Jihwan) #65469
  • [13f16d28d1] - doc: fix broken links in cli.md (Donghoon Kang) #65412
  • [0f36ee3755] - doc: remove outdated WASI version fallback (이혜미) #65303
  • [1ad09f712a] - doc: fix broken GYP link in n-api.md (Donghoon Kang) #65413
  • [24cd694237] - doc: document that an empty OPENSSL_CONF skips config loading (Orgad Shaneh) #64949
  • [dae434132e] - doc: fix broken TLS security level example (soreavis) #65391
  • [96b91dc987] - doc: clarify socket destroyed behavior (Dayun) #65395
  • [9d8d27d444] - doc: update outdated nodejs.org guide links (Donghoon Kang) #65394
  • [65f675086e] - doc: clarify that ipv4 mapped to ipv6 are classified as ipv6 (Vedant Kulkarni) #62117
  • [89aba0c311] - doc: clarify how fs.Dirent file types are determined (soreavis) #64532
  • [3ed0492f52] - doc: update security release prepare command (Rafael Gonzaga) #64699
  • [63583c4e75] - doc: clarify copyFile symlink behavior (T) #62941
  • [abfc51f757] - doc: document setRawMode write access on Windows (Erik Demaine) #63856
  • [4a784cb3e6] - doc: document per-architecture fast FFI argument limits (Seongeun Lee) #65207
  • [262f966155] - doc: add missing return types in fs.md (Chaseton Collins) #65307
  • [695cd896a7] - doc: add missing return types in buffer.md (Yuya Inoue) #65308
  • [676a1228cd] - doc: fix lint clean command (greenhead) #65274
  • [9ea318d4e3] - doc: fix typo in onboarding.md (서울민트초코) #65295
  • [3b6a918ab4] - doc: add missing added: tags to fs.lchmod (Lazizbek Ergashev) #65283
  • [a77b1e61df] - doc: fix SQLite changeset constant descriptions (greenhead) #65265
  • [ab50ae60e4] - doc: document open pull request limit (Matteo Collina) #65250
  • [e2f4ea03a3] - doc: document http2 header constants (Harjoth Khara) #64548
  • [5b5509d0d3] - doc: create ai-guidelines and include to CONTRIBUTING (Rafael Gonzaga) #62105
  • [c63e873073] - doc: fix broken fs.BigIntStats link in vfs.md (greenhead) #65045
  • [d6059e84c0] - doc: update synopsis (Augustin Mauroy) #65171
  • [43f1dc03e7] - doc: document close() error when in a sqlite callback (Trivikram Kamat) #65090
  • [8f5f48ad96] - doc: fix broken internal links (greenhead) #64901
  • [5b64b37739] - doc: report proper return type on urlPattern.test (Brian Muenzenmeyer) #64831
  • [9633bb0f29] - doc: fix permission documentation examples (greenhead) #64897
  • [e52e573fd7] - doc: document sqlite parameter binding (Guilherme Araújo) #65089
  • [fa52f11d3b] - doc: finalize statements in sqlite examples (Guilherme Araújo) #65088
  • [0157c45012] - doc: document quic stopSending() and resetStream() (Issac) #64888
  • [003a913799] - doc: clarify sqlite bare parameter default (Sumit Kumar Das) #62009
  • [c5588d71ad] - doc: remove usage of util.inherits (Augustin Mauroy) #60817
  • [673db40fbf] - doc: fix grammar in worker_threads.md (이혜미) #64913
  • [ee5f72cf16] - doc: fix broken link (Antoine du Hamel) #65078
  • [0450ab6c6a] - doc: update node.1 to fix linter (Antoine du Hamel) #65053
  • [9a256b0693] - doc: clarify OpenSSL FIPS configuration (Filip Skokan) #64982
  • [c321752dcb] - doc: remove --expose-gc flag from CLI documentation (Dario Piotrowicz) #58909
  • [0cf79931bb] - doc: document ArrayBuffer support in pbkd2Sync (kyungrae2002) #64976
  • [3b8a0bacaa] - doc: correct default highWaterMark values (Yilong Li) #64617
  • [be313012e4] - doc: use ffi.suffix in permission example (agape1225) #64914
  • [4a1c9a7ee0] - esm: avoid super-linear data URL MIME regex (Sumit Kumar Das) #61951
  • [b1770bc196] - esm: only register text format when enabled (Efe Karasakal) #64992
  • [f48927fe5b] - esm: fix wasm import name in error message (이혜미) #64950
  • [8d48adf688] - events: inline iterationCondition hybrid dispatch closure (Szymon Łągiewka) #64473
  • [b827c0047e] - events: inline createEvent hybrid dispatch closure (Szymon Łągiewka) #64473
  • [7670c81d99] - ffi: prefer canonical type names (Trivikram Kamat) #65417
  • [1fe7a1c33d] - ffi: validate the value passed to the float setters (Soul Lee) #65342
  • [537feecd0b] - ffi: reject direct SharedArrayBuffer pointers (Trivikram Kamat) #65233
  • [0002f0a718] - ffi: remove dead null check in callback arguments (Trivikram Kamat) #64998
  • [9024ec27b6] - ffi: keep FFI functions non-constructible (Trivikram Kamat) #65184
  • [9b4f349b01] - ffi: refresh cached string buffers on every call (Trivikram Kamat) #65051
  • [eacd65e9c2] - ffi: reject detached ArrayBufferViews (Trivikram Kamat) #65086
  • [be2ab89730] - ffi: reject detached ArrayBuffers as pointers (Trivikram Kamat) #65083
  • [6f9e0846ea] - ffi: validate fast pointer BigInt argument ranges (Trivikram Kamat) #65032
  • [3e6688c5e3] - ffi: reuse the callable created per symbol (Trivikram Kamat) #64971
  • [8b0bdd931c] - ffi: shrink trampoline placement probe window (Trivikram Kamat) #64969
  • [9c282c4532] - ffi: accept pointer BigInts in multi-argument fast calls (Trivikram Kamat) #64964
  • [b98294b57d] - ffi: support SharedArrayBuffer in getRawPointer (Junsoo Ha) #64864
  • [5cac7c2c55] - ffi: reuse libffi call plans (Yilong Li) #64958
  • [262f0ec82a] - fs: stop stat()ing every entry in recursive readdir (Shelley Vohr) #65487
  • [e3ae912e9a] - fs: use sized reads for large files in readFileUtf8 (Shelley Vohr) #65328
  • [bc1e19b4b7] - fs: fix realpath of namespaced drive paths (Jason Zhang) #65378
  • [6673ebadf2] - fs: abort in-flight stat operations (Mert Can Altin) #63143
  • [74dcdbb5f1] - fs: fix glob early return skipping sibling entries (Srinu desetti) #64895
  • [6305a744df] - fs: pass symlink type in cp when filter is provided (Jerry Zhao) #62654
  • [c5cb6bc7e2] - fs: allocate FSReqPromise stat arrays lazily (Samuel Attard) #63886
  • [992af05719] - fs: fix out-of-bounds write in mkdtemp for long prefixes (Hierax_Umbra) #64770
  • [2de845b2dd] - fs: treat std::errc::permission_denied as EPERM error (Kirill Saied) #64698
  • [77fedbd350] - fs: read small files in one thread pool round trip (Shelley Vohr) #65327
  • [810929b6dd] - Revert "fs: fix close listener leak in FileHandle streams" (Mike McCready) #65387
  • [8873b91fce] - fs: fix close listener leak in FileHandle streams (Y1D7NG) #64227
  • [656cfaeb2d] - fs: add windowsHandle option to file streams (Kirill Saied) #63851
  • [c2c31d69fd] - http: improve performance with known-length calls to end() (Tim Perry) #65466
  • [7e9204f4b3] - http: use intrusive lists in ConnectionsList (Matteo Collina) #65296
  • [98e6272c70] - http: cache maxHeaderPairs per header section (GetThatCookie) #64988
  • [6c3516f179] - http: fix keylog listener setup on existing agent sockets (Shani Singh) #65066
  • [dad9548fbc] - http: emit drain on socket takeover and avoid stale HWM reuse (Naman Trivedi) #64991
  • [563cab119b] - http2: avoid uaf while receiving and sending rst_stream (esgor) #64166
  • [099801641b] - inspector: avoid calling into JS from V8 interrupts (Joyee Cheung) #65028
  • [b71d5de0b8] - lib: use bracket notation instead of startsWith/endsWith for single char (Taejin Kim) #61500
  • [e8e2abcc8d] - lib: load fewer builtins when bootstrapping without a snapshot (Shelley Vohr) #65329
  • [3619dc0601] - lib: fix ERR_INVALID_ARG_TYPE with --enable-source-maps (June) #63215
  • [ad7c67026b] - lib: harden webidl dictionary member reads (Filip Skokan) #65115
  • [b5182f0a1c] - lib: use validateArray for array arguments (greenhead) #64959
  • [7f7df06821] - lib: add and test [EnforceRange] in webcrypto dictionaries (Filip Skokan) #65091
  • [753033c110] - (SEMVER-MINOR) lib,src: improve histogram implementation (James M Snell) #65024
  • [8d39d0d660] - meta: add a root-level AGENTS.md (James M Snell) #65493
  • [3770f9baea] - meta: move targos to emeritus (Michaël Zasso) #65393
  • [a9b31dfe30] - meta: add unified http api initiative (James M Snell) #65139
  • [6bffc306aa] - meta: move one or more collaborators to emeritus (Node.js GitHub Bot) #65182
  • [4abd1c8100] - meta: add support for alpha prerelease tag (Antoine du Hamel) #63135
  • [132c578e97] - meta: add Aviv Keller to .mailmap (Aviv Keller) #65048
  • [7aff78d231] - meta: update sccache to 0.17.0 (René) #64985
  • [97a437e7ea] - module: add a read-only mode to the compile cache (Shelley Vohr) #65302
  • [5821362819] - module: do not split a portable compile cache by uid (Shelley Vohr) #65293
  • [eb5d66e856] - module: report unreadable package.json (Paul Bouchon) #65223
  • [43757d07c1] - module: cache nearest parent package.json per directory (Shelley Vohr) #65326
  • [d7805e00dc] - module: fix --check on ambiguous ESM files (Paul Bouchon) #65203
  • [646221a495] - net: handle undefined parent in _unrefTimer and _destroy (Shivay-98) #64644
  • [3d7d277493] - (SEMVER-MINOR) net: improve performance of net.BlockList (James M Snell) #64974
  • [9e8e9080fd] - (SEMVER-MINOR) perf_hooks: add statistical hypothesis testing to histogram (James M Snell) #65416
  • [01a8ae0ce6] - permission: guard UDP handle adoption (Rafael Gonzaga) #65358
  • [ac3c412aaf] - permission: enforce addon permission in GetLinkedBinding (Rafael Gonzaga) #65432
  • [8765afd4c2] - process: validate resource stats array offsets (Archkon) #65098
  • [d0447c93f6] - quic: changes for nghttp3_conn_close_stream2 (Marten Richter) #64574
  • [91393898b5] - quic: mark drain promise handled (James M Snell) #65319
  • [5c9576bf50] - quic: reset rejected HTTP/3 request streams with H3_REQUEST_REJECTED (trivenay) #65442
  • [ec956f2abc] - quic: write desired size needs update on maxstream (Marten Richter) #64768
  • [41c510803d] - quic: do not destroy incoming streams that have a consumer (trivenay) #65335
  • [009e376581] - quic: fix wake up blob (Marten Richter) #64044
  • [4674a10368] - quic: convert incoming :status header to number (Hallison Pereira Melo) #63589
  • [5953165f53] - quic: fix infinite loop if STOP_SENDING received on a buffering stream (Tim Perry) #64715
  • [bb499c312e] - repl: keep entries added while history file is loading (Mhayk Whandson) #64513
  • [825fcfe4d5] - repl: add benchmarks (Aviv Keller) #64590
  • [c18b0aa54e] - repl: add basic syntax highlighting (Aviv Keller) #64591
  • [f32a8631ad] - sea: avoid dangling CLI option pointers (Archkon) #64755
  • [3126ce5779] - sea: handle NUL bytes in asset keys (Archkon) #64773
  • [64a8843ff2] - sea: reject trailing content in config JSON (Archkon) #64774
  • [1d9dd252f1] - sea: reject malformed --node-options values (Archkon) #64803
  • [6ec735c910] - sqlite: reject reentry while binding parameters (Trevor Burnham) #65294
  • [60cb384c15] - sqlite: remove unused column name helper (Trivikram Kamat) #65401
  • [fce6754a83] - sqlite: reject busy statement finalization in authorizer (Trivikram Kamat) #65369
  • [e2f952f2ff] - sqlite: prevent reentrant session.close() (Trivikram Kamat) #65349
  • [0e8af3378a] - sqlite: reuse cached column names in statement all() and get() (Edy Silva) #65276
  • [e6bfec91be] - sqlite: validate StatementSync.run() integers (Trivikram Kamat) #65178
  • [bbb1226dbe] - sqlite: add diagnostic channel (Guilherme Araújo) #62241
  • [6302168de8] - sqlite: add stmt persistent flag (Guilherme Araújo) #62757
  • [2989311d81] - sqlite: reject connection access from authorizer callbacks (Trevor Burnham) #65156
  • [72c37b133e] - sqlite: expose prepared statement statistics (Edy Silva) #64541
  • [3e50a2f1e9] - sqlite: manage sqlite3_stmt lifetime with RAII (Guilherme Araújo) #62419
  • [3ab7e72555] - sqlite: check sqlite3_step() and sqlite3_reset() results (semimikoh) #63319
  • [5e387ce979] - sqlite: reject statement-less SQL in prepare() (Trevor Burnham) #65157
  • [83169e58f3] - sqlite: reject statement-less SQL in SQLTagStore (Trevor Burnham) #65157
  • [7f31f6226e] - sqlite: isolate applyChangeset filter errors (Trivikram Kamat) #64823
  • [c89878c3c8] - sqlite: reject deserialize() while in a callback (Trivikram Kamat) #64796
  • [5a852b22d4] - sqlite: check null returns from sqlite value functions (Nora Dossche) #63288
  • [5cb78ed300] - sqlite: validate maxSize argument in createTagStore() (Anshika Jain) #63792
  • [ca885876f6] - sqlite: refactor error helpers and user function pointers (Ali Hassan) #62794
  • [06b1758dcd] - sqlite: reject non-positive backup rates (Trivikram Kamat) #64893
  • [ce0ca47023] - sqlite: clear SQLTagStore bindings (Matteo Collina) #65041
  • [49fb028714] - sqlite: bind Boolean (mike-git374) #62001
  • [09d0da99e9] - sqlite: fix undefined behaviour in Session::Changeset() (Nora Dossche) #63637
  • [58ea88e1d3] - (SEMVER-MINOR) sqlite: add StatementSync.prototype.close() (Guilherme Araújo) #64232
  • [7c61b08aed] - (SEMVER-MINOR) sqlite: add StatementSync.prototype[Symbol.dispose]() (Guilherme Araújo) #64232
  • [9167ebd32b] - sqlite: bind ArrayBuffer (mike-git374) #62061
  • [5da6eaa8af] - sqlite: prevent database close during callbacks (Matteo Collina) #64743
  • [29d794bc84] - src: fix heap value deduplication in embedder graph (Ilyas Shabi) #64801
  • [b405e9b039] - src: fix out-of-bounds write when transcoding odd-length ucs2 (nashit hayat) #64512
  • [101a215472] - src: use simdutf for two-byte utf8 conversion (Mert Can Altin) #62248
  • [340b98346f] - src: run same-priority platform tasks in posting order (Shelley Vohr) #65353
  • [83a7949c18] - src: define O_SYNC, O_DSYNC and O_DIRECT on Windows (Kirill Saied) #64707
  • [32bb197f2a] - src: use simdutf for two-byte strings in UTF-8 writes (Shelley Vohr) #65324
  • [613be79cf4] - src: add v8::Local specialization for MaybeStackBuffer (James M Snell) #65159
  • [922d47cbd7] - src: escape Windows environment variables in task runner (Antoine du Hamel) #65217
  • [3a47f1f282] - src: apply minor namespace format tweak in permissions (James M Snell) #65158
  • [981cfa537d] - src: simplify permissions with BooleanPermissions (James M Snell) #65158
  • [5954b13f88] - src: simplify includes in permissions (James M Snell) #65158
  • [d4ced88c09] - src: apply a modest performance perf to permissions (James M Snell) #65158
  • [efb649ec26] - src: make permission storage a bit more efficient (James M Snell) #65158
  • [521aaf10fc] - src: apply multiple general cleanups to permissions (James M Snell) #65158
  • [ac920e0d2b] - src: simplify c++ diagnostics channel API (James M Snell) #65158
  • [ec8fe275a1] - src: make minor cleanup to permission checks (James M Snell) #65158
  • [968bdd0135] - src: use DictionaryTemplate for permission diag channel message (James M Snell) #65158
  • [f77aa2f703] - src: cache permission strings (James M Snell) #65158
  • [4018f3a776] - src: shave about 20 bytes off each TLSWrap instance (James M Snell) #65144
  • [b7a23426d9] - src: add SetAbortHandler (Max H Fisher) #64684
  • [3cfe19489c] - src: use concepts where appropriate (James M Snell) #65148
  • [d8a0f288ab] - src: match cmd.exe case-insensitively in task runner (Archkon) #64907
  • [262d88e6c2] - src: reuse cached env strings in remaining files (Seongeun Lee) #65039
  • [ad35fe97f0] - src: expose Windows-only fs open flags (Kirill Saied) #64775
  • [8c4531bbc9] - src: report why --enable-fips failed (Filip Skokan) #64979
  • [a293dbf0e1] - src: update repeated use strings to env (James M Snell) #64760
  • [044402cf0e] - src: use UTF-8 for task runner filesystem paths (Archkon) #64868
  • [5b7d02e401] - stream: normalize fused stateless transform results (Trivikram Kamat) #65367
  • [1d6ec2ddc5] - stream: encode whole chunks in TextEncoderStream (Matteo Collina) #65414
  • [0afda47ca4] - stream: prevent share from eagerly draining source (Trivikram Kamat) #65338
  • [dc51c7926e] - stream: drain pending writes before broadcast end (Trivikram Kamat) #65334
  • [a77f9f7a32] - stream: reuse unexposed managed read buffers (GetThatCookie) #64990
  • [c42fbcc0d1] - stream: avoid duplicated endReadableNT scheduling (Matteo Collina) #65310
  • [9ec9383d1d] - stream: decouple transform backpressure changes (Matteo Collina) #65143
  • [a9dc50d275] - stream: reject pull on signal abort during flush (Trivikram Kamat) #65346
  • [815424db74] - stream: avoid leaking consumers on signal failure (Trivikram Kamat) #65299
  • [6a2e0561e8] - stream: use validateObject for zlib/iter params (greenhead) #65015
  • [4f6f2cfffa] - stream: use validateNumber for BYOB reader options.min (greenhead) #65014
  • [4d297428e6] - stream: consolidate non-op algorithm callbacks (Matteo Collina) #65138
  • [f7e0c81be4] - stream: cut promise churn in webstreams hot paths (Matteo Collina) #65138
  • [5edffb544f] - stream: speed up async iteration of Readable (Matteo Collina) #64447
  • [0876a29bb6] - stream: preserve falsy cancellation reasons (Trivikram Kamat) #64705
  • [374f7e214d] - stream: use validateBuffer for BYOB reader view (greenhead) #65046
  • [6bd15b2ac9] - stream: fix recursive WritableStream abort (Jeong SeokChan) #64825
  • [f33dba704d] - string_decoder: decode UTF-8 via StringBytes::Encode (Shelley Vohr) #65324
  • [6409983a6c] - test: update WPT for WebCryptoAPI to e235e089b4 (Node.js GitHub Bot) #65478
  • [01cb4f99a0] - test: convert forEach to for of test-messageevent-brandcheck file (Nachiketa Pathak) #65279
  • [359369e24e] - test: use spawnSyncAndAssert in windowsHide test (Junsoo Ha) #65351
  • [9304dee833] - test: remove test-debugger-run-after-quit-restart as flaky on macOS (Yuya Inoue) #65424
  • [30f1a19eec] - test: simplify test-timers-interval-promisified.js (Donghoon Kang) #65322
  • [acaf986ad5] - test: add Headers coverage and benchmark (Yagiz Nizipli) #65365
  • [b6852e2b96] - test: deflake test-net-listen-ipv6only (sangwook) #64173
  • [235a0baf8b] - test: use common/child_process spawnSync helpers (Junsoo Ha) #65377
  • [29f010fbb0] - test: fix Linux debug skip in SEA test guard (구현우) #63751
  • [33d7b4c6b3] - test: add closed-library assertions for getFunctions and getSymbols (Anshika Jain) #63769
  • [24a76e18ec] - test: avoid timer race in event loop delay test (Trivikram Kamat) #64728
  • [fdc1e78595] - test: enforce exit code in test-http-server-stale-close (Antoine du Hamel) #65198
  • [c644f2e07c] - test: convert test-async-local-storage-bind to async loop (freida-code) #65270
  • [1d5e5e8f43] - test: replace forEach() with for...of in parallel tests (Phillip Markert) #65272
  • [9346570fed] - test: convert forEach to for in test-constant.js file (NIxxy25) #65271
  • [7af0a96090] - test: use for-of instead of forEach (Felix P.) #65268
  • [63e6f2edc3] - test: wait for FFI background optimization (Trivikram Kamat) #65300
  • [bca3367583] - test: add a simple test for import defer of a CJS module (Maya Lekova) #64694
  • [00b687bc4a] - test: cover ZIP fd lifecycle and add rollback (Philipp Dunkel) #65016
  • [31742f2f42] - test: cover ZIP header-confusion and DoS guards (Philipp Dunkel) #65016
  • [87ee7bff38] - test: cover realpathSync resolving symlinks after a FIFO stat (Hendrik Liebau) #65113
  • [fd7e904433] - test: update tests to run with OpenSSL >= 3.0 FIPS mode (Filip Skokan) #64960
  • [219495fe2c] - test: account for [EnforceRange] in test-webcrypto-prototype-pollution (Filip Skokan) #65173
  • [bf86fab458] - test: add permission fast api test (James M Snell) #65158
  • [cc19107e5d] - test: update WPT for WebCryptoAPI to 4c2fd05ed5 (Node.js GitHub Bot) #65150
  • [69e4fabb29] - test: update WPT for urlpattern to 4832db4761 (Node.js GitHub Bot) #65151
  • [b1aa78a57e] - test: fix hidden error in test-http-server-stale-close.js (Meghan Denny) #59357
  • [59d7e22a12] - test: avoid deadlock issue in pipeline http2 tests to fix flakiness (Tim Perry) #65079
  • [7074ae30fa] - test: allow half-open CONNECT tunnel sockets (Trivikram Kamat) #64973
  • [82b2d9c08d] - test: update passphrases to comply with the next OpenSSL FIPS mode (Filip Skokan) #65077
  • [7f3a42035c] - test: use libuv clock for immediate queue test (Trivikram Kamat) #64889
  • [7ddd853d8c] - test: increase timeout in probe-failure-hang-during-evaluate (Joyee Cheung) #64719
  • [28cad47cef] - test: update WPT for WebCryptoAPI to 82c3d9069c (Node.js GitHub Bot) #64977
  • [74a3e91bb7] - test: prefer in-memory databases in sqlite tests (Paul Bouchon) #64701
  • [7fc8a3ad8c] - test,doc: cover and document multi-byte offset/size in randomFill (kyungrae2002) #64834
  • [4de7e63883] - test_runner: match dotfiles in default coverage exclude (semimikoh) #63401
  • [79c39c217d] - test_runner: print coverage and diagnostic info with dot reporter (mag123c) #61423
  • [cce803b174] - test_runner: use run options with isolation="none" (Sylvester Keil) #62269
  • [797ef40d23] - test_runner: mock dual-package with conditional exports (Maruthan G) #62943
  • [1ad7ca310a] - test_runner: restore directory search for --test (Paul Bouchon) #64637
  • [400d598b3c] - test_runner: add classname hierarchy for JUnit reporter (mag123c) #60220
  • [9572a0b15f] - test_runner: fix junit report on empty diagnostic (Lazizbek Ergashev) #65357
  • [e3fda695fe] - test_runner: extend tag filter with boolean expression DSL (Chemi Atlow) #63054
  • [4e06739c7b] - test_runner: do not tag-filter test file wrappers (Chemi Atlow) #65170
  • [e73f74738d] - test_runner: fix env option validation (Jihwan) #64865
  • [2a0b1ec4cc] - tls: throw on invalid ALPNProtocols instead of aborting (Sankalp Thakur) #65076
  • [15da4a190b] - tls: fix authorized state on no-cert TLS1.3 client cert resumption (Tim Perry) #64677
  • [1864175435] - tls: don't trigger SNICallback or OCSPRequest from the TLS lib stack (Tim Perry) #64827
  • [8f4ee7eda5] - tls: drop hand-rolled TLS client hello parser (Tim Perry) #64827
  • [a457631496] - tools: improve commit queue failure comment (Filip Skokan) #65433
  • [78175c68f8] - tools: improve nix-changes coverage (Antoine du Hamel) #65403
  • [6f0c08bf80] - tools: refactor shell.nix pkcs11 integration to its own section (Antoine du Hamel) #65404
  • [35b18b4455] - tools: fix max body length handler in create-release-proposal.sh (Antoine du Hamel) #65455
  • [88d5f644a2] - tools: bump brace-expansion in /tools/clang-format (dependabot[bot]) #64984
  • [41edd2f214] - tools: make env variables consistent in cron jobs (Antoine du Hamel) #65168
  • [7c09bd5ece] - tools: fix man-page generation on Windows (James Ross) #64886
  • [1a20d27118] - tools: bump undici from 6.27.0 to 6.28.0 in /tools/doc (dependabot[bot]) #65011
  • [ebbe4af869] - tools: fix linter when permittedInsecurePackages is empty (Antoine du Hamel) #65226
  • [17d2b067bf] - tools: update BoringSSL pin on v26.x (Filip Skokan) #65483
  • [be4e7de04c] - tools: only include fast-tracked and old enough PRs in CQ (Antoine du Hamel) #65197
  • [53d52731c9] - tools: fix quote escaping in update-nixpkgs-pin.sh (Antoine du Hamel) #65166
  • [40b1b18839] - tools: remove skip logic in commit-queue.sh (Antoine du Hamel) #65162
  • [5506f77924] - tools: bump js-yaml from 4.2.0 to 4.3.1 in /tools/lint-md (dependabot[bot]) #65129
  • [fc038a0ef5] - tools: bump js-yaml from 4.2.0 to 4.3.1 in /tools/eslint (dependabot[bot]) #65130
  • [10b2c8a873] - tools: fix GITHUB_TOKEN permissions for CQ workflow (Antoine du Hamel) #65192
  • [73de450845] - tools: use the read-only token when filtering PRs in CQ (Antoine du Hamel) #65169
  • [31c1bcb627] - tools: delay removal of commit-queue label (Antoine du Hamel) #65101
  • [89d3905595] - tools: move ncu config to global for commit queue (Filip Skokan) #65132
  • [aa3b598e2e] - tools: prefilter commit queue metadata (Filip Skokan) #64343
  • [4f2c634258] - tools: lazy-abort failed PR merges in CQ (Antoine du Hamel) #65004
  • [8657497521] - tools: fix pkcs11-store-test check (Antoine du Hamel) #65023
  • [0e1a99ac24] - tools: add an OpenSSL FIPS build to test-shared.yml (Filip Skokan) #64960
  • [b6fa9c1819] - tools: sync mk-ca-bundle.pl with curl (Archkon) #64753
  • [f0140d7ebd] - tools: store "default" OpenSSL version in openssl-matrix.nix (Antoine du Hamel) #64962
  • [4c8d8afa99] - tools: remove true from branch name for auto-update automation (Antoine du Hamel) #64961
  • [2dd7d4c56f] - tools: add ./tools/nix/pkcs11.nix to nix-changes.yml (Filip Skokan) #64967
  • [cf395004ed] - tty: add raw-vt and io raw modes (Samuel Williams) #64140
  • [a5e5c7f756] - typings: add signal_wrap internal binding types (Seongeun Lee) #65229
  • [5219e53dd6] - typings: add diagnostics_channel typings (Seongeun Lee) #65227
  • [215223dff1] - typings: add watchdog internal binding types (Seongeun Lee) #65228
  • [eb095a94bd] - typings: add internal_only_v8 binding typeis (Donghoon Kang) #65071
  • [9fc811a0f2] - typings: add credentials internal binding types (Donghoon Kang) #65036
  • [f032c22430] - url: skip unused href reuse comparison (Yagiz Nizipli) #65361
  • [2a64032141] - url: speed up WHATWG URL parsing (Yagiz Nizipli) #65361
  • [c4dbe14ec6] - url: speed up URLSearchParams (Yagiz Nizipli) #65363
  • [001c37c0a2] - url: bounds-check short Windows file URL paths (Archkon) #64788
  • [1a63416b1a] - url: handle unparsable serialized URLs in setters (Matteo Collina) #64651
  • [cb4b89c018] - util: allow single-line format when break length is infinite (Hamid Reza Ghavami) #64238
  • [f644853680] - util: fix OSC 8 hyperlink stripping in stripVTControlCharacters (Dushyant Singh Hada) #64319
  • [eb1ebbb39d] - util: fix formatting of functions returned from getters (Richard Gibson) #64839
  • [f373dab724] - util: use more primordials in comparisons.js (Ayoub Mabrouk) #61198
  • [6ca9c1e078] - util: preserve function names without source map names (Hiroki Osame) #65108
  • [4299cd5897] - (SEMVER-MINOR) util: add non-throwing MIMEType.parse (James M Snell) #64965
  • [1aafd19813] - zlib: roll back a failed add() directory rewrite (Philipp Dunkel) #65016
  • [d29cc0926a] - zlib: let a ZipFile read finish before close() (Philipp Dunkel) #65016
  • [2bda6db916] - zlib: do not hang archiving a FIFO or device (Philipp Dunkel) #65016
  • [55b04957c9] - zlib: reject local/central ZIP header mismatch (Philipp Dunkel) #65016
  • [575260d3b4] - zlib: validate central directory record count (Matteo Collina) #65002
  • [8e848d9be3] - zlib: reject ambiguous ZIP archive ends (Matteo Collina) #65007
  • [df48191061] - (SEMVER-MINOR) zlib: add ZipEntry, ZipFile, and ZipBuffer (Philipp Dunkel) #64339
  • [ee7bf09090] - zlib: validate pledgedSrcSize for sync zstd (Archkon) #64601
2026-08-26 21:57:28
node

2026-08-26, Version 24.20.0 'Krypton' (LTS), @aduh95

Notable Changes

  • [b12bcc9ae1] - (SEMVER-MINOR) async_hooks: add using scopes to AsyncLocalStorage (Stephen Belanger) #61674
  • [e2eb88b36b] - (SEMVER-MINOR) buffer: add end parameter (Robert Nagy) #62390
  • [1fefdda18e] - crypto: update root certificates to NSS 3.125 (Node.js GitHub Bot) #64746
  • [4a158cf1ab] - doc: add MikeMcC399 as collaborator (Mike McCready) #64656
  • [d4cafce076] - (SEMVER-MINOR) lib,permission: add permission.drop (Rafael Gonzaga) #62672
  • [b3cfb55267] - (SEMVER-MINOR) loader: implement package maps (Maël Nison) #62239
  • [cd1eb3e60b] - (SEMVER-MINOR) src,permission: add --permission-audit (RafaelGSS) #61869
  • [28dc85d8d2] - (SEMVER-MINOR) stream: add node:stream/iter implementation (James M Snell) #62066
  • [d31c168740] - (SEMVER-MINOR) test_runner: add context.log() and test:log event (Moshe Atlow) #64389
  • [add1edbc42] - (SEMVER-MINOR) test_runner: report entryFile in TestStream events (Moshe Atlow) #64309
  • [d937c8c6cd] - (SEMVER-MINOR) wasm: enable JSPI (Guy Bedford) #59941

Commits

  • [1822c0f335] - assert,util: fix TypeError on Maps with null keys (Paul Bouchon) #64441
  • [b12bcc9ae1] - (SEMVER-MINOR) async_hooks: add using scopes to AsyncLocalStorage (Stephen Belanger) #61674
  • [984260bf44] - async_hooks: use validateBoolean for trackPromises (Soul Lee) #64731
  • [ba2612cca2] - benchmark: fix calibrate-n option handling (Luan Muniz) #64146
  • [236dc4d2d7] - benchmark: add bytes variant to webstreams async-iterator (Matteo Collina) #64291
  • [b022a1419c] - benchmark: respect stream/iter broadcast backpressure (Trivikram Kamat) #63314
  • [a290f51f15] - (SEMVER-MINOR) benchmark: add benchmarks for experimental stream/iter (James M Snell) #62066
  • [465f2bfb74] - buffer: use Clamp conversion in Blob slice (Donghoon Kang) #64739
  • [74a22cd0c5] - buffer: validate copyArrayBuffer offsets against buffer length (Ilia Alshanetsky) #63904
  • [21e24208dc] - buffer: normalize lone "\r" in Blob native line endings (Daijiro Wachi) #64115
  • [ddacb3ff10] - buffer: fix Blob.stream() leaking source buffer (semimikoh) #63577
  • [49198d2313] - buffer: fix end parameter bugs in indexOf/lastIndexOf (Robert Nagy) #62711
  • [e2eb88b36b] - (SEMVER-MINOR) buffer: add end parameter (Robert Nagy) #62390
  • [e2e5c4fe88] - build: update binary-upload to use correct tarball name (Stewart X Addison) #65282
  • [b78a212553] - build: pin envinfo versions in github actions (Joyee Cheung) #64117
  • [094fb840aa] - build: add QUIC CI job for PRs matching QUIC related paths (Tim Perry) #63875
  • [91f5003cad] - build: fix flags for ngtcp2 on IBM i (SRAVANI GUNDEPALLI) #60073
  • [e83648effd] - build,test: add tests for binary linked with shared libnode (Joyee Cheung) #61463
  • [4a425b41d9] - build,tools: fix shared library cross-compile (Kirill Saied) #63963
  • [fe8fa45ff2] - cli: style node --help output with util.styleText (Adrián Estrada) #64484
  • [3cd1576cb2] - crypto: preserve OpenSSL errors from KDF failures (Filip Skokan) #64776
  • [74b3023565] - crypto: handle XOF output allocation failure (Filip Skokan) #64851
  • [fea0666a1b] - crypto: clarify missing cipher error (Filip Skokan) #64852
  • [33fec91b54] - crypto: reuse X509 issuer result (Filip Skokan) #64852
  • [44c1473348] - crypto: validate key generation options (Filip Skokan) #64852
  • [c2c53a18e5] - crypto: fix Argon2 validation errors (Filip Skokan) #64852
  • [edc1f2126d] - crypto: initialize KeyObjectData mutex eagerly (Filip Skokan) #64851
  • [be8237240c] - crypto: handle DH operation failures (Filip Skokan) #64851
  • [b65a8f3875] - crypto: preserve RSA-PSS legacy pubkey DER (Filip Skokan) #64547
  • [49f2ae204b] - crypto: cleanse provider private key copies (Filip Skokan) #64547
  • [a5d4ac8208] - crypto: handle incomplete RSA private keys (Filip Skokan) #64547
  • [b72c0b9616] - crypto: retain legacy DH validation (Filip Skokan) #64547
  • [24a1be5886] - crypto: limit KangarooTwelveParams customization to 512 bytes (Filip Skokan) #64557
  • [0290e0a61e] - crypto: split OpenSSL 3, BoringSSL, and legacy backends (Filip Skokan) #64211
  • [ba27e72ff8] - crypto: fix Argon2 bypassing FIPS mode (Filip Skokan) #64776
  • [1fefdda18e] - crypto: update root certificates to NSS 3.125 (Node.js GitHub Bot) #64746
  • [c0dd022081] - crypto: use user-facing error for output encoding changes (Archkon) #64692
  • [ff485a9410] - crypto: make --use-system-ca per-env rather than per-process (Aditi) #60678
  • [1329d9b9f1] - debugger: preserve overlapping CDP request state (Trivikram Kamat) #64467
  • [82a02336aa] - deps: V8: backport d259a9e2ead7 (Leszek Swirski) #63865
  • [f0fc82d404] - deps: update ngtcp2 to 1.25.0 (Node.js GitHub Bot) #64944
  • [c4e02f0fbc] - deps: upgrade npm to 11.19.0 (npm team) #64883
  • [d5a57ed4dd] - deps: update nghttp3 to 1.18.0 (Node.js GitHub Bot) #64943
  • [51d413150a] - deps: update minimatch to 10.2.6 (Node.js GitHub Bot) #64945
  • [21f79ce140] - deps: update simdjson to 4.6.6 (Node.js GitHub Bot) #64942
  • [7a4960d6a9] - deps: update acorn to 8.18.0 (Node.js GitHub Bot) #64941
  • [5c423aa113] - deps: update googletest to 1b6f64d659944658a4c685b7bd9f04c1c3b8a39b (Node.js GitHub Bot) #64940
  • [40561e61b0] - deps: update nghttp2 to 1.70.0 (Node.js GitHub Bot) #64939
  • [51090925b0] - deps: update zlib to 1.3.2.1-motley-42c2f19 (Node.js GitHub Bot) #64744
  • [7c534bf8e5] - deps: V8: backport 5177b10891e6 (avivkeller) #64631
  • [7b1898a341] - deps: update ada to 4.0.0 (Node.js GitHub Bot) #64790
  • [9209cc4095] - deps: update sqlite to 3.53.4 (Node.js GitHub Bot) #64745
  • [3833fceff6] - deps: update googletest to fa005b296f90faec4f352d7ab382287bf6548c8d (Node.js GitHub Bot) #64587
  • [bc7ce488d1] - deps: histogram: cherry-pick 62ea52b07ee9b195 (StefanStojanovic) #64296
  • [e3fa05841d] - deps: update histogram to 0.11.10 (Node.js GitHub Bot) #64296
  • [e75bdb9bbe] - deps: update amaro to 1.1.11 (Node.js GitHub Bot) #64586
  • [1e034e6e40] - deps: update timezone to 2026c (Node.js GitHub Bot) #64588
  • [2b8f1f27bd] - deps: update googletest to 8240fa7d62f73e01c7af27d61ed965d6d66698fa (Node.js GitHub Bot) #64439
  • [241ece0417] - deps: enable OpenSSL asm support for riscv64 (Jamie Magee) #62606
  • [215105eb90] - deps: update c-ares to 1.34.8 (Node.js GitHub Bot) #64330
  • [7ac97fc84e] - deps: upgrade npm to 11.18.0 (npm team) #64199
  • [8d4cb9ae46] - deps: update zlib to 1.3.2.1-motley-8b3aa8a (Node.js GitHub Bot) #64295
  • [564c0f4592] - deps: update ngtcp2 to 1.24.0 (Node.js GitHub Bot) #64297
  • [e3304cd31a] - deps: update nghttp3 to 1.17.0 (Node.js GitHub Bot) #64182
  • [345d6ad4eb] - deps: update ngtcp2 to 1.23.0 (Node.js GitHub Bot) #63777
  • [a53db015e6] - deps: update nghttp3 to 1.16.0 (Node.js GitHub Bot) #63776
  • [1f4a5c1c76] - deps: update ngtcp2 to 1.22.1 (Node.js GitHub Bot) #62812
  • [080c4d7cda] - deps: update ngtcp2 to 1.22.0 (Node.js GitHub Bot) #62595
  • [4309e7c82f] - deps: update ngtcp2 to 1.21.0 (Node.js GitHub Bot) #62051
  • [90cf11cfb5] - deps: update nghttp3 to 1.15.0 (Node.js GitHub Bot) #61512
  • [e1f315a554] - deps: update ngtcp2 to 1.20.0 (Node.js GitHub Bot) #61511
  • [9a3f690c9d] - deps: update ngtcp2 to 1.19.0 (Node.js GitHub Bot) #61156
  • [fe88f31764] - deps: add ngtcp2 test binaries (James M Snell) #59946
  • [6d60fce138] - diagnostics_channel: grow native channel storage (Stephen Belanger) #64497
  • [30ae8ab091] - doc: document --permission-audit audit mode behavior (Adrián Estrada) #64791
  • [8cefc6efa8] - doc: fix guaranteed typo (lilianakatrina684-a11y) #62374
  • [2e78e4b120] - doc: add throwIfNoEntry version history to fs.stat (kovan) #62204
  • [c7a04401cb] - doc: fix grammar and punctuation in dgram documentation (Kamal Rawal) #64957
  • [331e5e8f62] - doc: fix grammar and editorial issues in addons documentation (Kamal Rawal) #64952
  • [232287fcc6] - doc: formalize fn/name as part of TestOptions API (Christopher Hiller) #64946
  • [7f9efeb445] - doc: remove references to ca/crl as per-context QuicSession options (René) #64769
  • [b54aa83cc6] - doc: fix typo in maintaining-dependencies.md (greenhead) #64896
  • [f4e427803c] - doc: add RafaelGSS as last security release stewards (Rafael Gonzaga) #64843
  • [f2cd6df3f3] - doc: fix typos in documentation (greenhead) #64900
  • [d5627162bd] - doc: improve TestContext hook descriptions (Kamal Rawal) #64899
  • [72ee03bd2e] - doc: document stream.isDestroyed() (YspritanHyzygy) #64789
  • [995141eb81] - doc: add contributing detail for git Signed-off-by trailer (Mike McCready) #64862
  • [dc30379310] - doc: fix duplicated word in test snapshot docs (Kamal Rawal) #64837
  • [205d4d0472] - doc: remove obsolete cctest node.gyp instructions (Soul Lee) #64814
  • [108b883d0b] - doc: report proper return type on url.format (Brian Muenzenmeyer) #64806
  • [b03bd3a8ed] - doc: clarify tlsSocket.authorized on resumption (soreavis) #64584
  • [093098ad7f] - doc: stabilize --disable-warning (Jean Michelet) #64742
  • [2de1d76d80] - doc: add MDN links for explicit resource management in fs (lluisemper) #59557
  • [2e0f36a891] - doc: mention constructor check in deepStrictEqual (Sumit Kumar Das) #62010
  • [1c9d354d09] - doc: update technical priorities (Jacob Smith) #64505
  • [30c99bf08f] - doc: deprecation add more codemod (Augustin Mauroy) #63175
  • [8a971a09eb] - doc: run license-builder (Node.js GitHub Bot) #63918
  • [707f6eacfc] - doc: clarify rules for adding new built-in modules (Antoine du Hamel) #64648
  • [928208cffc] - doc: mention DEPENDENCY custom field for H1 reports (Rafael Gonzaga) #64634
  • [ee593cadf5] - doc: fix dnsPromises.lookup verbatim default (Shivam S) #64658
  • [9c228b32d1] - doc: fix typo in releases guide (Jihwan) #64621
  • [4a158cf1ab] - doc: add MikeMcC399 as collaborator (Mike McCready) #64656
  • [8125809853] - doc: use promote wording in release guide (Md Muhtasim Munif Fahim) #64371
  • [2a2effadf6] - doc: fix import.meta example for vm.SourceTextModule (Muhammad Zeeshan) #64112
  • [c879f912bf] - doc: mention crypto.hash() for better perf (Steven) #63420
  • [634afda904] - doc: update sea example by fixing wrong code example (Maxence Robinet) #64025
  • [bced1433a3] - doc: fix socket.readyState state descriptions (YuSheng Chen) #64468
  • [4b2c18938f] - doc: replace large tables in crypto.md and webcrypto.md with lists (Filip Skokan) #64582
  • [5207231996] - doc: note --env-file is not applied to --run (Paul Bouchon) #64442
  • [329a2884fd] - doc: fix typo in embedding.md (greenhead) #64425
  • [fab3f56aa1] - doc: fix typos in contributing docs (Donghoon Kang) #64520
  • [cbc2bed4e8] - doc: document TLS alpnProtocol and servername fields (Tim Perry) #64362
  • [dada3ae60e] - doc: fix spelling in devcontainer guide (한만욱) #64459
  • [71343b28aa] - doc: clarify PEM format for signing keys (Harjoth Khara) #64404
  • [0544ec1c78] - doc: fix typo in tls.md (Daijiro Wachi) #64458
  • [8fe58078e7] - doc: document net Socket server property (Efe Karasakal) #64364
  • [d54fd03fa4] - doc: update a Dispatcher undici doc link (Filip Skokan) #64358
  • [1bdebecd41] - doc: fix typos in documentation (Jungwon Sohn) #64466
  • [86bca58641] - doc: clarify fixes and refs trailer guidance (Trivikram Kamat) #64421
  • [b5b84c9394] - doc: add scope overview tables for TestsStream events (Moshe Atlow) #64386
  • [004238d77c] - doc: clarify proxy threat model (Matteo Collina) #64366
  • [6851b8d55f] - doc: add note about restricted CI to pull-requests.md (Stewart X Addison) #64321
  • [662e33714a] - doc: various updates to releases.md (Stewart X Addison) #64198
  • [949bc3cfd3] - doc: remove obsolete --napi-modules doc entry (Chengzhong Wu) #64220
  • [830d16067f] - doc: clarify QUIC stream state wording (EduardF1) #63660
  • [79b6704630] - doc: fix typo in node-config-schema.json (Hamid Reza Ghavami) #64188
  • [9f5bf554db] - doc: fix broken link (Antoine du Hamel) #65078
  • [42b27ed428] - doc: remove unsupported syntax from stream_iter.md (Antoine du Hamel) #64649
  • [f1a9df7f22] - doc: clarify fromReadable() duck-typed contract (Trivikram Kamat) #63682
  • [c7a3d450ac] - doc: improve quic documentation (James M Snell) #63157
  • [cc425bc659] - doc: fix promise nomenclature in stream_iter.md (Antoine du Hamel) #63406
  • [859a02da96] - doc: minor structural stream/iter edits (René) #63089
  • [630b15eb20] - doc: fix doubled word typo in stream_iter.md (Daijiro Wachi) #62916
  • [50791fa8fa] - doc,test: widen fsPromises.appendFile()'s data type, add missing tests (Jimmy Leung) #64279
  • [9e39360a09] - esm: improve ERR_REQUIRE_ASYNC_MODULE (Joyee Cheung) #64260
  • [d2b02e443a] - esm: print required top-level await locations without evaluating (Joyee Cheung) #64154
  • [e8c153f3f4] - events: avoid retaining removed event names (Matteo Collina) #64475
  • [73e1701bad] - events: optimize once() and removeListener() (Matteo Collina) #64373
  • [12f7fc0558] - fs: key glob matcher cache by platform (Archkon) #64571
  • [e5af022302] - fs: add pattern cache for matchGlobPattern() (bq) #63915
  • [63321eeb11] - fs: fix cp symlink and EEXIST handling on Windows (Kirill Saied) #64353
  • [0ad55e5618] - http: fix writableFinished and 'finish' after write errors (Tim Perry) #64847
  • [ee54d9d4d2] - http: avoid aborting IncomingMessage signal on normal close (Archkon) #64392
  • [14cb8b0a06] - http: guard invalid timeout values in checkConnections (Efe Karasakal) #64506
  • [f24177ccc6] - http: propagate highWaterMark to ClientRequest OutgoingMessage (trivenay) #64653
  • [55e2c2da8c] - http: fix perf_hooks detail.req.url port and proxied path (Stefano Baghino) #64311
  • [b57350fe27] - http: remove unused n arg from IncomingMessage._read (Efe Karasakal) #64370
  • [af3a17e0b3] - http2: avoid copying the options in respond() (Matteo Collina) #64265
  • [f11ac0da37] - http2: avoid per-write closures in kWriteGeneric (Matteo Collina) #64265
  • [157bd07b6e] - http2: reduce per-request allocations (Matteo Collina) #64265
  • [b075b33429] - http2: don't throw when destroying socket proxy (Matteo Collina) #64427
  • [445bcce079] - inspector: add --cond to node inspect probe mode (Joyee Cheung) #64328
  • [06b54fe7d3] - lib: fix AbortSignal.any() observed-composite leak (Paul Bouchon) #64481
  • [d8fac094d1] - lib: fix typo in comment in _http_client.js (agape1225) #64729
  • [9ce72fd6fb] - lib: use assignFunctionName util where it makes sense (Antoine du Hamel) #64515
  • [c40d1473e6] - lib,permission: fix addon permission drop (Martin Wagner) #64007
  • [d4cafce076] - (SEMVER-MINOR) lib,permission: add permission.drop (Rafael Gonzaga) #62672
  • [6b09d30a76] - lib,tools: add node-core/func-name-matching lint rule (Livia Medeiros) #57901
  • [d7d4f0e2ac] - loader: enforce path normalization before lookup (Maël Nison) #63917
  • [b3cfb55267] - (SEMVER-MINOR) loader: implement package maps (Maël Nison) #62239
  • [cf425ad935] - meta: bump actions/stale from 10.3.0 to 11.0.0 (dependabot[bot]) #64935
  • [26fa9cc32b] - meta: bump github/codeql-action/analyze from 4.36.2 to 4.37.3 (dependabot[bot]) #64934
  • [c90fa82cd7] - meta: bump github/codeql-action/autobuild from 4.36.2 to 4.37.3 (dependabot[bot]) #64933
  • [314893253a] - meta: bump actions/setup-python from 6.3.0 to 7.0.0 (dependabot[bot]) #64932
  • [6ab711278f] - meta: bump github/codeql-action/init from 4.36.2 to 4.37.3 (dependabot[bot]) #64931
  • [9138f5892a] - meta: bump Mozilla-Actions/sccache-action from 0.0.10 to 0.0.11 (dependabot[bot]) #64930
  • [3ef3f934d4] - meta: bump github/codeql-action/upload-sarif from 4.36.2 to 4.37.3 (dependabot[bot]) #64927
  • [a0a33127ae] - meta: bump step-security/harden-runner from 2.19.4 to 2.20.0 (dependabot[bot]) #64926
  • [4ad2afbf33] - meta: bump ossf/scorecard-action from 2.4.3 to 2.4.4 (dependabot[bot]) #64925
  • [d9b2ee4083] - meta: add @nodejs/url as codeowner for node_url_pattern.* (Efe Karasakal) #64737
  • [2b43b78e82] - meta: lower stale to 3 months (Aviv Keller) #64569
  • [0ffe8352ae] - meta: move one or more collaborators to emeritus (Node.js GitHub Bot) #64315
  • [afd922cd8a] - meta: bump actions/checkout from 6.0.2 to 7.0.0 (dependabot[bot]) #64245
  • [b6149a2976] - meta: bump actions/setup-python from 6.2.0 to 6.3.0 (dependabot[bot]) #64241
  • [8f4a5c622f] - meta: update sccache version in test-linux-quic (René) #64043
  • [9040b08696] - net: support TCP handle transfer on Windows (Matteo Collina) #64460
  • [1216481a09] - net: support AF_UNIX paths in net.BoundSocket (Guy Bedford) #64399
  • [f6bf3f8a5d] - net: support sync connect for BoundSocket (Guy Bedford) #64375
  • [fb8a7e15ca] - net: make TCP Server and Socket transferable across worker threads (Matteo Collina) #64225
  • [224d2c7886] - path: add benchmarks for path.matchesGlob() (bq) #63915
  • [980c651de5] - permission: add unique warning codes (David Evans) #64414
  • [9f9a96030d] - permission: support v8.setHeapSnapshotNearHeapLimit (Ilyas Shabi) #64808
  • [8a00872183] - quic: fix stop sending behaviour & callback (Tim Perry) #64710
  • [7aab0c3183] - quic: fix coverage comment typo (Jungwon Sohn) #64486
  • [b4ecb3040b] - quic: fix segfault after fragmented client hello (Tim Perry) #64720
  • [6386540dad] - quic: serialize stream reset code as string (한만욱) #64577
  • [82717741c9] - quic: defer server session emit until TLS ClientHello is processed (Tim Perry) #64132
  • [7cb3099907] - quic: preserve session stats after close (한만욱) #64489
  • [50e639b578] - quic: add support for TLS certificate compression (Sebastian Beltran) #64434
  • [e2e28292cc] - quic: extract transport logic from Application to Session (Tim Perry) #64127
  • [2ef4b7ebf2] - quic: correct http3 callback and fix revealed errs (Marten Richter) #64289
  • [a682b53456] - quic: fix no onstream handler crash quic (Efe) #64158
  • [9445e2719a] - quic: fix stall datagrams, if no pending streams (Marten Richter) #64303
  • [2ea9d193bd] - quic: fix potential crash from unobserved closed (Tim Perry) #64134
  • [3b7f4fc1fb] - quic: drop version negotiation packets with oversized CIDs (Mohamed Sayed) #64228
  • [bd477a3202] - quic: fixes undefined handle in QuicStream kInspect (Marten Richter) #64170
  • [3dd04b3ec6] - quic: fix get_reader bug that dropped data on FIN (Tim Perry) #63946
  • [4be8abe8f9] - quic: expose QUIC certificates as JS X509Certificate, not raw handles (Tim Perry) #63191
  • [e264c5c0cb] - quic: fix reader backpressure deadlock on idle connections (Tim Perry) #63950
  • [2f749dde18] - quic: impl. cb for http/3 settings/app. options (Marten Richter) #63558
  • [5ca7ef3202] - quic: fix broken listEndpoints export, test callbacks & nghttp3 include (Tim Perry) #63874
  • [147150cfdd] - quic: add listEndpoints API (James M Snell) #63536
  • [3b59d12f5d] - quic: add proper error codes & messages for QUIC failures (Tim Perry) #63198
  • [b68f8eadb9] - quic: support hostname verification (James M Snell) #63483
  • [7652bd9c6d] - quic: add stream idle timeout (James M Snell) #63483
  • [e493f04214] - quic: add block list support for endpoints (James M Snell) #63483
  • [6d6cd45f8b] - quic: improve peer cert verification (James M Snell) #63483
  • [dbe0b371ee] - quic: handle h3 max header size option (James M Snell) #63483
  • [39dca4150c] - quic: add rate limiting docs (James M Snell) #63483
  • [c726a893d6] - quic: cache timestamp for address lru cache (James M Snell) #63483
  • [11778a7925] - quic: add session creation rate limiting (James M Snell) #63483
  • [8107f1b3ed] - quic: refine rate limiting (James M Snell) #63483
  • [3f0d7371e0] - quic: flip preferred address policy default to 'ignore' (James M Snell) #63483
  • [97c8a96774] - quic: add doc note about certificate size limitations (James M Snell) #63483
  • [42aa3f6612] - quic: add applicationOptions to session (James M Snell) #63267
  • [4c00ab9d29] - quic: add getters for local and remote transport parameters (James M Snell) #63267
  • [858b636576] - quic: improve recv coalescing test sizes (James M Snell) #63267
  • [84d3100256] - quic: add initial RTT option to session options (James M Snell) #63267
  • [a2b6a81c66] - quic: enable recvmmsg batching in Endpoint (James M Snell) #63267
  • [46a0868994] - quic: improve stream header collection performance (James M Snell) #63267
  • [bc7f4efdb7] - quic: coalesce received data into fewer buffers (James M Snell) #63267
  • [f727efb8b2] - quic: apply multiple additional minor improvements (James M Snell) #63267
  • [ee0a0f1540] - quic: fix tests that are missing serverEndpoint close (James M Snell) #63267
  • [f8a1fdad07] - quic: fixup some v8:: qualifiers (James M Snell) #63267
  • [c66605609c] - quic: fix premature unref of endpoint when listening (James M Snell) #63267
  • [9a72949b0b] - quic: fixup UAFs in bindingdata, streams, and app (James M Snell) #63267
  • [a4db12198e] - quic: fix UAF in Application::OnTimeout() (James M Snell) #63267
  • [0a11b2ccde] - quic: improve the quic js structure (James M Snell) #63267
  • [1bc25d2a03] - quic: improve internal structure of QuicStream (James M Snell) #63267
  • [69e48aed02] - quic: add aliased struct arenas (James M Snell) #63267
  • [6b7185351b] - quic: add handshake timeout and default connection limits (James M Snell) #63267
  • [91e3c39097] - quic: fix crash in early handshake failure (James M Snell) #63267
  • [098e3d715d] - quic: eliminate per-received datagram allocation (James M Snell) #63267
  • [53b05e2ab2] - quic: cache the timestamp on send and receive (James M Snell) #63267
  • [1592a11219] - quic: add support for future ECN marking (James M Snell) #63267
  • [80e6bf9539] - quic: improve batching of packet sending (James M Snell) #63267
  • [ff0cd5b95f] - quic: improve backend quic packet processing (James M Snell) #63267
  • [c4eb6a95da] - quic: send correct OpenSSL alert for ALPN mismatches (Tim Perry) #63193
  • [575dc7d100] - quic: fixup quic stream variable chunk len (James M Snell) #63230
  • [2551f9e6dd] - quic: remove unused env_ variable in session_manager.h/cc (James M Snell) #63177
  • [bea62a14b3] - quic: ignore coverage for quic files (James M Snell) #63149
  • [9788bbff97] - quic: complete the internal implementation of QUIC (James M Snell) #62876
  • [54c094d245] - quic: continue working on quic api bits (James M Snell) #60123
  • [ea82bc418d] - readline: reduce createInterface overhead (Matteo Collina) #64585
  • [90a8b23db0] - sqlite: invalidate sessions when closing database (Trivikram Kamat) #64783
  • [6abd00ed65] - sqlite: check database state before calling SQLite (Trivikram Kamat) #64812
  • [c2a52514d6] - sqlite: fix crash when a session outlives its database (Mohamed Sayed) #63797
  • [f9126923ef] - sqlite: fix use-after-free in Exec() and ApplyChangeset() (Matteo Collina) #64535
  • [c010131bc3] - sqlite: read column count after step in StatementSync.all() (Guilherme Araújo) #64219
  • [782ad5d5b0] - src: implement MemoryRetainer protocol for ByteSource (Filip Skokan) #64660
  • [4afc15bf1d] - src: avoid redundant KEM encapsulation copies (Filip Skokan) #64553
  • [37085f850d] - src: fix crash when writing odd-length hex string via Writev (RajeshKumar11) #63658
  • [f58ac8224c] - src: avoid using ToLocalChecked in crypto_hash (James M Snell) #64668
  • [05ec9c4771] - src: fix libuv assertion on windows (liuxingbaoyu) #61999
  • [308a589ee9] - src: avoid redundant DataPointer reallocations (Filip Skokan) #64552
  • [3650fabcb4] - src: fix comment typos (Jungwon Sohn) #64509
  • [06b3441ea2] - src: zero-initialize cap_data in node_credentials.cc (Samuel Kapust) #64347
  • [bb24a88b99] - src: fix some typo errors and rename some variables (Archkon) #64301
  • [ba36ab71fd] - src: make node.config.json throw at unknown fields (Marco Ippolito) #62992
  • [fbb3960189] - src: show original file name in FileHandle GC close errors (Anna Henningsen) #60593
  • [d53d582be7] - src,permission: do not throw on denied access in audit mode (Adrián Estrada) #64426
  • [cd1eb3e60b] - (SEMVER-MINOR) src,permission: add --permission-audit (RafaelGSS) #61869
  • [b1596c2b65] - stream: cut per-chunk allocations in pipeTo (Matteo Collina) #64890
  • [2cfa96f5cb] - stream: preserve push signal abort reason (Trivikram Kamat) #64798
  • [fc80ff5f7a] - stream: skip zero-byte broadcast writes (Trivikram Kamat) #64772
  • [486cff4c08] - stream: honor AbortSignal in Writer.end() (Trivikram Kamat) #64727
  • [59ef1789f7] - stream: use validateString for consumer encoding (Jungwon Sohn) #64754
  • [8aba47536a] - stream: use the ring buffer for pending BYOB pull-into descriptors (Matteo Collina) #64818
  • [b20217cb56] - stream: fix uncatchable error closing half-open Duplex.toWeb() writable (Mohamed Sayed) #64161
  • [8accb0c4c0] - stream: abort pending single-source merge reads (Trivikram Kamat) #64445
  • [ed5b04027c] - stream: use RangeError for broadcast overflow (Trivikram Kamat) #64420
  • [136d4e7628] - stream: skip null output from stateful transforms (Trivikram Kamat) #64462
  • [193091f1ba] - stream: update iterable streams to use budget backpressure (James M Snell) #64464
  • [e2b32fce77] - stream: remove custom CloneableDOMException implementation (Antoine du Hamel) #64469
  • [d77788eafe] - stream: fix drop-newest behavior in share() (Trivikram Kamat) #64417
  • [de4ca2c962] - stream: fold desired-size check into WHATWG backpressure update (Matteo Collina) #64451
  • [2a3babb8d7] - stream: validate writer options signal (Trivikram Kamat) #64385
  • [0ab8f269b0] - stream: reject push iterator.throw() with error (Trivikram Kamat) #64380
  • [262e6545d1] - stream: simplify nested PromisePrototypeThens (Antoine du Hamel) #64470
  • [0ddfc6af91] - stream: use the ring buffer for WHATWG stream request queues (Matteo Collina) #64431
  • [a5e7d89f9e] - stream: validate writevSync chunks before queuing (Trivikram Kamat) #64300
  • [8044f895bf] - stream: speed up reads and iteration over default WHATWG streams (Matteo Collina) #64320
  • [d4dfb66bdf] - stream: copy SAB-backed chunks in iter consumers (Trivikram Kamat) #64382
  • [9c9ade337f] - stream: reject nested async streamables in from() (Trivikram Kamat) #64352
  • [271c7454f4] - stream: avoid draining merged iter sources (Trivikram Kamat) #64293
  • [cbb2568a04] - stream: use ring buffer for WHATWG stream queues (Yagiz Nizipli) #64312
  • [67688cc651] - stream: hoist repeated loads in readable paths (Yagiz Nizipli) #64312
  • [3f8b446a67] - stream: prefer sync iterator in fromSync (Trivikram Kamat) #64294
  • [3043b2a68a] - stream: speed up async iteration over WHATWG byte streams (Antoine du Hamel) #64291
  • [870273ccde] - stream: reject iter consumers on abort (Trivikram Kamat) #64066
  • [8a4a997f3e] - stream: fix merge abort for pending sources (Trivikram Kamat) #64013
  • [ac5e5d5dec] - stream: refactor unnecessary optional chaining away (Antoine du Hamel) #64253
  • [cb298cfb15] - stream: normalize Broadcast.from() byte inputs (Trivikram Kamat) #64082
  • [bbbb4aadef] - stream: observe abort while awaiting pipeTo source (Trivikram Kamat) #64015
  • [4387ad412f] - stream: respect iter consumer abort signals (Trivikram Kamat) #63997
  • [4ba1fa0062] - stream: handle falsy push writer fail reasons (Trivikram Kamat) #63569
  • [3b8c30c096] - stream: handle setEncoding after buffered data (Matteo Collina) #63973
  • [97ef13c84e] - stream: keep overlapping broadcast reads pending (Trivikram Kamat) #63500
  • [a46ddad9fa] - stream: refine the stream/iter backpressure (James M Snell) #63697
  • [557bf99245] - stream: remove transform-writer handling in pipeTo (Trivikram Kamat) #63684
  • [24b7831a1a] - stream: fix pipeToSync byte accounting (Trivikram Kamat) #63564
  • [3b5f1b56bc] - stream: reject pull() reads on abort (Trivikram Kamat) #63498
  • [e48e287633] - stream: fast-path stateless transform flush results (Trivikram Kamat) #63605
  • [f0ee316f45] - stream: handle sync writev completion in pipeTo (Trivikram Kamat) #63561
  • [fbed90b2fb] - stream: settle pending broadcast reads on return (Trivikram Kamat) #63603
  • [568dcc250f] - stream: serialize concurrent share consumer reads (Trivikram Kamat) #63478
  • [5e2b4c4ade] - stream: fix lint error (Antoine du Hamel) #63598
  • [74bd0cd35a] - stream: reject pending reads on iterator throw (Trivikram Kamat) #63555
  • [45780df841] - stream: wait for push writer end fallback to drain (Trivikram Kamat) #63503
  • [217b495e0a] - stream: flush each fused stateless transform (Trivikram Kamat) #63468
  • [2e8685592e] - stream: avoid duplicate writes in toWritable (Trivikram Kamat) #63360
  • [88a3392a78] - stream: propagate abort reason in share and broadcast (Trivikram Kamat) #63358
  • [fce3df74e9] - stream: disallow writing string chunk with 'buffer' encoding (René) #63062
  • [5658c631fa] - stream: align Readable.toWeb termination with eos (ikeyan) #62394
  • [02a51a746b] - stream: add sync iterable fast path to pipeTo (Trivikram Kamat) #63318
  • [4c9f3edb64] - stream: fix merge handling for object-like sources (Trivikram Kamat) #63356
  • [c50d8e49cc] - stream: limit iter from sync iterable batches (Trivikram Kamat) #63324
  • [1d7c86d577] - stream: cache minimum cursor count in broadcast (Trivikram Kamat) #63322
  • [ec2666edbe] - stream: avoid retrying accepted pipeTo writes (Trivikram Kamat) #63297
  • [f63143fd83] - stream: validate broadcast writer writev chunks (Trivikram Kamat) #63300
  • [944470b08a] - stream: uncork fromWritable writev on chunk error (Trivikram Kamat) #63295
  • [ae79f2b67a] - stream: validate fromWritable() options before cache (Trivikram Kamat) #63278
  • [c98cc67f33] - stream: optimize single-slot push queue drain (Trivikram Kamat) #63274
  • [9a45ff5d8f] - stream: preserve toReadableSync batch after backpressure (Trivikram Kamat) #63276
  • [eb72fe94fc] - stream: cache minimum cursor count in share (Trivikram Kamat) #63262
  • [b57b51eeed] - stream: minor stream/iter implementation edits (René) #63132
  • [274b3a2ea1] - stream: remove redundant method check from iter.pipeToSync (René) #63099
  • [baf98faa06] - stream: add stream/iter to classic stream adapters (James M Snell) #62469
  • [28dc85d8d2] - (SEMVER-MINOR) stream: add stream/iter Implementation (James M Snell) #62066
  • [125c19da43] - stream, quic: update iterable streams backpressure (James M Snell) #64464
  • [11d1bd3ba7] - test: split test-embedding.js and run tests in parallel (Joyee Cheung) #61571
  • [e59346b704] - test: ensure assertions are reached on all tests (Antoine du Hamel) #64716
  • [42a967d7ed] - test: unflake debugger and REPL tests (Matteo Collina) #64718
  • [d80a45fdc4] - test: update WPT for url to 4832db4761 (Node.js GitHub Bot) #64829
  • [7264efb21b] - test: update WPT for url to b63305b743 (Node.js GitHub Bot) #64790
  • [539f5dc8f9] - test: cover worker throwing primitive values (varshitha) #64365
  • [087d9e8dd0] - test: mark test-repl-user-error-handler as flaky (Aviv Keller) #64612
  • [dd1e7139a5] - test: update quic tests for stream/iter update (James M Snell) #64464
  • [eee0e84537] - test: fix flaky http2 socket proxy test (Tim Perry) #64673
  • [a5ce44dd75] - test: apply correction to comment (Rich Trott) #64524
  • [da8508c5a0] - test: keep finalization before-exit ref alive (Tim Perry) #64521
  • [14b710c415] - test: copyedit test-tls-psk-alpn-callback-exception-handling (Antoine du Hamel) #63485
  • [99b7382c6a] - test: fix stale async-context-frame status entries (Kirill Saied) #64141
  • [6da6ca730d] - test: update WPT for urlpattern to 5847ee5cfa (Node.js GitHub Bot) #64436
  • [73bf0f07f1] - test: update WPT for WebCryptoAPI to ec2fee39a4 (Node.js GitHub Bot) #64435
  • [9a7ec52e6f] - test: fix flaky http2 maxOriginSetSize test (Tim Perry) #64407
  • [59af7e0ed9] - test: fix 2nd flaky blob test case (Tim Perry) #64391
  • [7fd5f66376] - test: fix flaky watch + cwd + argv test-runner test (Tim Perry) #64372
  • [d5b47d2fae] - test: normalize Windows crash in debugger test normalization (Joyee Cheung) #64332
  • [a8ae44096d] - test: unmark flaky http2-large-file for Win (Kirill Saied) #64255
  • [8461d18597] - test: increase timeout in consumed-timeout test (Trivikram Kamat) #64204
  • [af52410d70] - test: handle null stdio streams in spawnSyncAndAssert helper (Joyee Cheung) #64273
  • [0ea079be7b] - test: remove impact of tier-up changes in worker stack size test (Joyee Cheung) #64271
  • [1bde0ef053] - test: update WPT for WebCryptoAPI to 0c413fb56b (Node.js GitHub Bot) #63647
  • [f32b412867] - test: get rid of unnecessary AbortController instanciations (Antoine du Hamel) #63489
  • [8cbd90161b] - test: update WPT for wasm/jsapi to 288c467d35 (Node.js GitHub Bot) #63136
  • [f200aaccf0] - test: fixup quic tests (James M Snell) #63267
  • [14c547351b] - (SEMVER-MINOR) test: add tests for experimental stream/iter implementation (James M Snell) #62066
  • [2cc54e1793] - test: skip quic tests that IBM i does not support (SRAVANI GUNDEPALLI) #60160
  • [8ec80b311b] - test_runner: wait for filtered suite build (semimikoh) #64208
  • [9ed7146851] - test_runner: convert to uint during deserialization (Aviv Keller) #64706
  • [d31c168740] - (SEMVER-MINOR) test_runner: add context.log() and test:log event (Moshe Atlow) #64389
  • [add1edbc42] - (SEMVER-MINOR) test_runner: report entryFile in TestStream events (Moshe Atlow) #64309
  • [8d97dee696] - tests: start adding quic test server utilities (James M Snell) #59946
  • [e5278b7f7d] - timers: do not retain a reference to the async store after firing (Matteo Collina) #53443
  • [e277bc4608] - tls: fix SNICallback certificate selection (Matteo Collina) #64700
  • [b9104decc3] - tls: match IPv6 hosts against IP-Address SANs (Pascal Garber) #64145
  • [b50139e89f] - tools: bump the eslint group in /tools/eslint with 4 updates (dependabot[bot]) #64928
  • [5460c464a0] - tools: bump brace-expansion from 5.0.7 to 5.0.9 in /tools/eslint (dependabot[bot]) #64904
  • [f8a13811cd] - tools: use 'readonly' for EventSource global (Honey Tyagi) #64787
  • [6e10012c0d] - tools: bump brace-expansion from 5.0.6 to 5.0.7 in /tools/eslint (dependabot[bot]) #64636
  • [d66b7588ac] - tools: reference 'git node land' in PR-URL: error message in merge.sh (Stewart X Addison) #64495
  • [5d90e48175] - tools: disable zipping tarballs on GHA (Antoine du Hamel) #64423
  • [8a909f4540] - tools: fix redundant conditions in v8.gyp for riscv64 and loong64 (Jamie Magee) #62608
  • [9e171710fa] - tools: remove envinfo from our workflows (Antoine du Hamel) #64259
  • [3fb722054f] - tools: avoid test/fixtures/wpt/README.md conflicts (Filip Skokan) #63938
  • [5755712920] - tools: add lint rule for aborted AbortController (Trivikram Kamat) #63541
  • [e88d5b78bc] - typings: add heap_utils internalBinding types (Donghoon Kang) #64816
  • [ae93bc8ad1] - typings: remove isDataView from types binding (Archkon) #64738
  • [c00bd1427d] - url: create URLPattern result properties in WebIDL order (Archkon) #64733
  • [8a07969e28] - util: make MIMEParams accessors case-insensitive (Daijiro Wachi) #64123
  • [bf86741167] - v8: report minor mark-sweep in GCProfiler (Archkon) #64688
  • [d937c8c6cd] - (SEMVER-MINOR) wasm: enable JSPI (Guy Bedford) #59941
  • [9016ddabb9] - wasm: register missing SetURL function (Archkon) #64679
  • [e599b9428b] - zlib: validate pledgedSrcSize as a safe integer (Archkon) #64604
  • [1f1adc89da] - zlib: accept ArrayBuffer dictionary in Zstd (Ryuhei Shima) #64599
  • [0ee91ead8b] - zlib: reject truncated zstd input (Archkon) #64593
2026-08-06 00:20:56
node

2026-08-05, Version 26.7.0 (Current), @aduh95

Notable Changes

  • [58717685a1] - (SEMVER-MINOR) crypto: support loading private keys through STORE loaders (Filip Skokan) #63949
  • [44b940ee8c] - crypto: update root certificates to NSS 3.125 (Node.js GitHub Bot) #64746
  • [c1e4f7365e] - (SEMVER-MINOR) lib: add perfetto support (Chengzhong Wu) #64565
  • [11c2f9c642] - (SEMVER-MINOR) module: implement Symbol.dispose in ModuleHooks (Remco Haszing) #63928
  • [a646319f61] - (SEMVER-MINOR) test_runner: add support for --test-coverage-include-all (avivkeller) #64830

Commits

  • [a2d3f891d3] - async_hooks: use validateBoolean for trackPromises (Soul Lee) #64731
  • [d7266cdd99] - benchmark: fix calibrate-n option handling (Luan Muniz) #64146
  • [2e64293e3f] - buffer: use Clamp conversion in Blob slice (Donghoon Kang) #64739
  • [5fda0958bd] - buffer: validate copyArrayBuffer offsets against buffer length (Ilia Alshanetsky) #63904
  • [5298db40f9] - build: run perfetto build and test on GHA (Chengzhong Wu) #64721
  • [e3eac7cef9] - build: fix v8_use_perfetto source scraping (Chengzhong Wu) #64721
  • [ab5f076d7f] - build: bump rustc requirement to >=1.86 (Renegade334) #64543
  • [df608e061f] - (SEMVER-MINOR) build: perfetto-sdk (Chengzhong Wu) #64565
  • [74928adc46] - build,tools: fix shared library cross-compile (Kirill Saied) #63963
  • [58717685a1] - (SEMVER-MINOR) crypto: support loading private keys through STORE loaders (Filip Skokan) #63949
  • [58d13b6f3d] - crypto: preserve OpenSSL errors from KDF failures (Filip Skokan) #64776
  • [478a719cb5] - crypto: fix Argon2 bypassing FIPS mode (Filip Skokan) #64776
  • [44b940ee8c] - crypto: update root certificates to NSS 3.125 (Node.js GitHub Bot) #64746
  • [fde85237c7] - crypto: clarify missing cipher error (Filip Skokan) #64852
  • [c604d8846d] - crypto: reuse X509 issuer result (Filip Skokan) #64852
  • [c68c7d0112] - crypto: validate key generation options (Filip Skokan) #64852
  • [c36bb1d017] - crypto: fix Argon2 validation errors (Filip Skokan) #64852
  • [f61408bb27] - crypto: handle XOF output allocation failure (Filip Skokan) #64851
  • [2b4053d046] - crypto: initialize KeyObjectData mutex eagerly (Filip Skokan) #64851
  • [4b7b2adf44] - crypto: handle DH operation failures (Filip Skokan) #64851
  • [12170c3753] - crypto: use user-facing error for output encoding changes (Archkon) #64692
  • [474f06d550] - debugger: preserve overlapping CDP request state (Trivikram Kamat) #64467
  • [718cbe9497] - deps: upgrade npm to 11.19.0 (npm team) #64883
  • [657c6154b3] - deps: update ngtcp2 to 1.25.0 (Node.js GitHub Bot) #64944
  • [75a1fbeff9] - deps: update nghttp3 to 1.18.0 (Node.js GitHub Bot) #64943
  • [07d7cb7cd8] - deps: update minimatch to 10.2.6 (Node.js GitHub Bot) #64945
  • [f7d56359f1] - deps: update simdjson to 4.6.6 (Node.js GitHub Bot) #64942
  • [8b06457cfb] - deps: update acorn to 8.18.0 (Node.js GitHub Bot) #64941
  • [5919d01525] - deps: update googletest to 1b6f64d659944658a4c685b7bd9f04c1c3b8a39b (Node.js GitHub Bot) #64940
  • [4a87ad6cff] - deps: update nghttp2 to 1.70.0 (Node.js GitHub Bot) #64939
  • [c96d76a7c8] - deps: update zlib to 1.3.2.1-motley-42c2f19 (Node.js GitHub Bot) #64744
  • [2b59984c0f] - deps: V8: backport 5177b10891e6 (avivkeller) #64631
  • [b839af91da] - deps: update ada to 4.0.0 (Node.js GitHub Bot) #64790
  • [70dedef942] - deps: update sqlite to 3.53.4 (Node.js GitHub Bot) #64745
  • [7bc4c171f5] - deps: update Rust crates for V8 14.6.202.34-node.26 (Renegade334) #64543
  • [308c6b2ac3] - deps: V8: backport 7d9b7e03141d (Manish Goregaokar) #64543
  • [8eeae28e88] - deps: V8: backport c4d06ba586f3 (liujiahui) #63731
  • [bbd6fc58c4] - diagnostics_channel: grow native channel storage (Stephen Belanger) #64497
  • [ce8b292955] - doc: fix grammar and punctuation in dgram documentation (Kamal Rawal) #64957
  • [1a413a60cf] - doc: fix grammar and editorial issues in addons documentation (Kamal Rawal) #64952
  • [63fbd59e64] - doc: formalize fn/name as part of TestOptions API (Christopher Hiller) #64946
  • [b263b0bca1] - doc: remove references to ca/crl as per-context QuicSession options (René) #64769
  • [f37de14b27] - doc: fix typo in maintaining-dependencies.md (greenhead) #64896
  • [16cb77cdc8] - doc: add RafaelGSS as last security release stewards (Rafael Gonzaga) #64843
  • [335c28cd17] - doc: fix typos in documentation (greenhead) #64900
  • [d4bed8ca39] - doc: fix missing references in doc type map (Tim Perry) #64872
  • [e71d09d5f1] - doc: improve TestContext hook descriptions (Kamal Rawal) #64899
  • [7089bd9ae4] - doc: add missing float32/float64 FFI type names (Soul Lee) #64874
  • [8d3ae0830e] - doc: document stream.isDestroyed() (YspritanHyzygy) #64789
  • [a757e62af7] - doc: add contributing detail for git Signed-off-by trailer (Mike McCready) #64862
  • [3e840f43ed] - doc: mark config-file as release candidate (Marco Ippolito) #64516
  • [70cd5df810] - doc: fix duplicated word in test snapshot docs (Kamal Rawal) #64837
  • [d5f36c7adc] - doc: remove obsolete cctest node.gyp instructions (Soul Lee) #64814
  • [a0bf29ea09] - doc: report proper return type on url.format (Brian Muenzenmeyer) #64806
  • [e655e42085] - doc: use ffi.suffix for library paths in examples (Junsoo Ha) #64805
  • [e0f0830dbc] - doc: document --permission-audit audit mode behavior (Adrián Estrada) #64791
  • [efbede6de0] - doc: clarify tlsSocket.authorized on resumption (soreavis) #64584
  • [db95655c4a] - doc: stabilize --disable-warning (Jean Michelet) #64742
  • [a8367200be] - doc: add MDN links for explicit resource management in fs (lluisemper) #59557
  • [1c09165c2e] - doc: mention constructor check in deepStrictEqual (Sumit Kumar Das) #62010
  • [29709324e0] - doc: update technical priorities (Jacob Smith) #64505
  • [522a28e648] - doc: deprecation add more codemod (Augustin Mauroy) #63175
  • [c40aaa6539] - doc: run license-builder (Node.js GitHub Bot) #63918
  • [428e9bc50f] - ffi: fix crash in refCallback and unrefCallback (Trivikram Kamat) #64881
  • [33912103e7] - ffi: reject fast calls after library close (Trivikram Kamat) #64860
  • [b348ed7f92] - ffi: validate fast 32-bit integer argument ranges (Trivikram Kamat) #64691
  • [48f4cfb480] - ffi: fix optimized buffer conversions (Trivikram Kamat) #64639
  • [109ffcd4f3] - ffi: preserve link register in ppc64 trampoline (Trivikram Kamat) #64792
  • [aa3f168b31] - ffi: preserve strings during reentrant calls (Trivikram Kamat) #64551
  • [ca60942f38] - ffi: preserve uint8 semantics for bool fast calls (Trivikram Kamat) #64527
  • [0fb1d2bd65] - ffi: validate fast integer argument ranges (Trivikram Kamat) #64614
  • [b250b40b30] - fs: key glob matcher cache by platform (Archkon) #64571
  • [e26891ec6a] - http: fix writableFinished and 'finish' after write errors (Tim Perry) #64847
  • [dfc192fdfb] - http: avoid aborting IncomingMessage signal on normal close (Archkon) #64392
  • [6794441c85] - http: guard invalid timeout values in checkConnections (Efe Karasakal) #64506
  • [6879aa4aa8] - http: propagate highWaterMark to ClientRequest OutgoingMessage (trivenay) #64653
  • [72448a82f4] - http2: avoid copying the options in respond() (Matteo Collina) #64265
  • [f6692da576] - http2: avoid per-write closures in kWriteGeneric (Matteo Collina) #64265
  • [3ed37153f8] - http2: reduce per-request allocations (Matteo Collina) #64265
  • [bce92debba] - Revert "http2: avoid per-write closures in kWriteGeneric" (Antoine du Hamel) #64663
  • [b5d5dd74a1] - Revert "http2: avoid copying the options in respond()" (Antoine du Hamel) #64663
  • [19b9c14d60] - lib: fix AbortSignal.any() observed-composite leak (Paul Bouchon) #64481
  • [d3cada57c2] - lib: fix typo in comment in _http_client.js (agape1225) #64729
  • [c1e4f7365e] - (SEMVER-MINOR) lib: add perfetto support (Chengzhong Wu) #64565
  • [6c2157522d] - loader: enforce path normalization before lookup (Maël Nison) #63917
  • [31522c41a7] - meta: bump actions/stale from 10.3.0 to 11.0.0 (dependabot[bot]) #64935
  • [88c8b8ef54] - meta: bump github/codeql-action/analyze from 4.36.2 to 4.37.3 (dependabot[bot]) #64934
  • [9dcd759a84] - meta: bump github/codeql-action/autobuild from 4.36.2 to 4.37.3 (dependabot[bot]) #64933
  • [82ca02db3c] - meta: bump actions/setup-python from 6.3.0 to 7.0.0 (dependabot[bot]) #64932
  • [848e2287f2] - meta: bump github/codeql-action/init from 4.36.2 to 4.37.3 (dependabot[bot]) #64931
  • [ae8ad3b17b] - meta: bump Mozilla-Actions/sccache-action from 0.0.10 to 0.0.11 (dependabot[bot]) #64930
  • [0b359cfa4c] - meta: bump cachix/install-nix-action from 31.10.6 to 31.11.0 (dependabot[bot]) #64929
  • [3b4f980f4c] - meta: bump github/codeql-action/upload-sarif from 4.36.2 to 4.37.3 (dependabot[bot]) #64927
  • [d7ee9e9ea7] - meta: bump step-security/harden-runner from 2.19.4 to 2.20.0 (dependabot[bot]) #64926
  • [7e80bbaaa9] - meta: bump ossf/scorecard-action from 2.4.3 to 2.4.4 (dependabot[bot]) #64925
  • [915cabbfcf] - meta: remove node_crates .gitignore (René) #64779
  • [8e03c54347] - meta: add @nodejs/url as codeowner for node_url_pattern.* (Efe Karasakal) #64737
  • [11c2f9c642] - (SEMVER-MINOR) module: implement Symbol.dispose in ModuleHooks (Remco Haszing) #63928
  • [fffd8a76d0] - net: support TCP handle transfer on Windows (Matteo Collina) #64460
  • [fe9e0dbdc2] - net: support AF_UNIX paths in net.BoundSocket (Guy Bedford) #64399
  • [eb61b7ee1e] - permission: add unique warning codes (David Evans) #64414
  • [999a928822] - permission: support v8.setHeapSnapshotNearHeapLimit (Ilyas Shabi) #64808
  • [7de3d095b6] - quic: fix stop sending behaviour & callback (Tim Perry) #64710
  • [6289398bb2] - quic: fix coverage comment typo (Jungwon Sohn) #64486
  • [01510dc759] - quic: fix segfault after fragmented client hello (Tim Perry) #64720
  • [dcc348af97] - quic: serialize stream reset code as string (한만욱) #64577
  • [c25b8e3331] - readline: reduce createInterface overhead (Matteo Collina) #64585
  • [14e802d1cd] - sqlite: invalidate sessions when closing database (Trivikram Kamat) #64783
  • [279547b7da] - sqlite: check database state before calling SQLite (Trivikram Kamat) #64812
  • [bb86521a42] - sqlite: fix crash when a session outlives its database (Mohamed Sayed) #63797
  • [870f4997e7] - sqlite: fix use-after-free in Exec() and ApplyChangeset() (Matteo Collina) #64535
  • [a8ec5a9df7] - src: fix perfetto build on GetTraceFilePath (Chengzhong Wu) #64721
  • [6cd643acaa] - src: implement MemoryRetainer protocol for ByteSource (Filip Skokan) #64660
  • [8725e56928] - src: fix crash when writing odd-length hex string via Writev (RajeshKumar11) #63658
  • [e018f9a4a1] - (SEMVER-MINOR) src: add perfetto trace agent (Chengzhong Wu) #64565
  • [0611d443ab] - (SEMVER-MINOR) src: rename legacy trace event headers (Chengzhong Wu) #64565
  • [2897cc1d93] - (SEMVER-MINOR) src: fix trace macro compatibility (Chengzhong Wu) #64565
  • [d4d7172e10] - src: avoid using ToLocalChecked in crypto_hash (James M Snell) #64668
  • [53b7d48b47] - src: fix libuv assertion on windows (liuxingbaoyu) #61999
  • [69d10ed021] - src,test: disable trace events tests when perfetto is enabled (Chengzhong Wu) #64721
  • [1b0597b4ef] - stream: cut per-chunk allocations in pipeTo (Matteo Collina) #64890
  • [2632d606bb] - stream: preserve push signal abort reason (Trivikram Kamat) #64798
  • [d5358a75bc] - stream: skip zero-byte broadcast writes (Trivikram Kamat) #64772
  • [796c896fb4] - stream: honor AbortSignal in Writer.end() (Trivikram Kamat) #64727
  • [ff12b8e22e] - stream: use validateString for consumer encoding (Jungwon Sohn) #64754
  • [cfad2efb06] - stream: use the ring buffer for pending BYOB pull-into descriptors (Matteo Collina) #64818
  • [fe06bf56dc] - stream: fix uncatchable error closing half-open Duplex.toWeb() writable (Mohamed Sayed) #64161
  • [f2919dbb83] - test: unflake debugger and REPL tests (Matteo Collina) #64718
  • [a1c29174e8] - test: ensure assertions are reached on all tests (Antoine du Hamel) #64716
  • [b9e596f8e5] - test: reuse ffi.suffix instead of reimplementing it (Seongeun Lee) #64840
  • [c816918e14] - test: remove test-repl-user-error-handler from flaky (avivkeller) #64631
  • [9d2f10ec54] - test: update WPT for url to 4832db4761 (Node.js GitHub Bot) #64829
  • [75b80d0b7b] - test: update WPT for url to b63305b743 (Node.js GitHub Bot) #64790
  • [9a139b3c86] - test: cover worker throwing primitive values (varshitha) #64365
  • [796acc8920] - test: mark test-repl-user-error-handler as flaky (Aviv Keller) #64612
  • [a646319f61] - (SEMVER-MINOR) test_runner: add support for --test-coverage-include-all (avivkeller) #64830
  • [4368303e01] - test_runner: wait for filtered suite build (semimikoh) #64208
  • [70d11241a3] - test_runner: convert to uint during deserialization (Aviv Keller) #64706
  • [cafe7bffcc] - tls: fix SNICallback certificate selection (Matteo Collina) #64700
  • [9ee05ec40f] - tools: bump the eslint group in /tools/eslint with 4 updates (dependabot[bot]) #64928
  • [5f4b859932] - tools: bump brace-expansion from 5.0.7 to 5.0.9 in /tools/eslint (dependabot[bot]) #64904
  • [b5ced907b3] - tools: use 'readonly' for EventSource global (Honey Tyagi) #64787
  • [fd4460e34e] - typings: add heap_utils internalBinding types (Donghoon Kang) #64816
  • [3bc0ee0492] - typings: remove isDataView from types binding (Archkon) #64738
  • [236d7ca965] - url: create URLPattern result properties in WebIDL order (Archkon) #64733
  • [3def577ab4] - v8: report minor mark-sweep in GCProfiler (Archkon) #64688
  • [5293abff73] - vfs: speed up recursive readdir test setup (Trivikram Kamat) #64813
  • [4345185496] - vfs: make lchown update symlink metadata (Trivikram Kamat) #64573
  • [b6ab546de5] - wasm: register missing SetURL function (Archkon) #64679
  • [f322870bd1] - zlib: validate pledgedSrcSize as a safe integer (Archkon) #64604
  • [44042c20d4] - zlib: accept ArrayBuffer dictionary in Zstd (Ryuhei Shima) #64599
2026-08-03 21:23:20
node

2026-08-03, Version 26.6.0 (Current), @aduh95

Notable Changes

  • [5a36018abc] - doc: add MikeMcC399 as collaborator (Mike McCready) #64656
  • [9b04f82d7b] - (SEMVER-MINOR) ffi: add getCurrentEventLoop (Paolo Insogna) #64323
  • [bb51f2c960] - (SEMVER-MINOR) test_runner: add context.log() and test:log event (Moshe Atlow) #64389
  • [56ce83b3ee] - (SEMVER-MINOR) test_runner: report entryFile in TestStream events (Moshe Atlow) #64309

Commits

  • [248ff9fa5c] - assert,util: fix TypeError on Maps with null keys (Paul Bouchon) #64441
  • [3b5baceafe] - benchmark: add bytes variant to webstreams async-iterator (Matteo Collina) #64291
  • [0a46d1ef66] - buffer: normalize lone "\r" in Blob native line endings (Daijiro Wachi) #64115
  • [d9ada18b70] - buffer: fix Blob.stream() leaking source buffer (semimikoh) #63577
  • [d05993bcf6] - build: merge multiple on download artifact (Chengzhong Wu) #64633
  • [6c25ac909a] - build: extract temporal_capi crate directory name into gyp variable (René) #64482
  • [612f60c300] - cli: style node --help output with util.styleText (Adrián Estrada) #64484
  • [29a938ddbb] - crypto: preserve RSA-PSS legacy pubkey DER (Filip Skokan) #64547
  • [2fde794357] - crypto: cleanse provider private key copies (Filip Skokan) #64547
  • [33a0e08d41] - crypto: handle incomplete RSA private keys (Filip Skokan) #64547
  • [11b4d505ef] - crypto: retain legacy DH validation (Filip Skokan) #64547
  • [6e302041e1] - crypto: limit KangarooTwelveParams customization to 512 bytes (Filip Skokan) #64557
  • [195f103e87] - crypto: split OpenSSL 3, BoringSSL, and legacy backends (Filip Skokan) #64211
  • [ec67e24eee] - deps: update googletest to fa005b296f90faec4f352d7ab382287bf6548c8d (Node.js GitHub Bot) #64587
  • [32ffff88fd] - deps: histogram: cherry-pick 62ea52b07ee9b195 (StefanStojanovic) #64296
  • [e0664f1f09] - deps: update histogram to 0.11.10 (Node.js GitHub Bot) #64296
  • [cf0622bdd6] - deps: update amaro to 1.1.11 (Node.js GitHub Bot) #64586
  • [04c78b8b24] - deps: update timezone to 2026c (Node.js GitHub Bot) #64588
  • [59f4318976] - deps: V8: cherry-pick 1158ae719749 (René) #64432
  • [e5ea7cd299] - deps: update googletest to 8240fa7d62f73e01c7af27d61ed965d6d66698fa (Node.js GitHub Bot) #64439
  • [0e7554cee4] - deps: update libffi to 3.7.1 (Node.js GitHub Bot) #64438
  • [46c9d724ad] - deps: update ngtcp2 to 1.24.0 (Node.js GitHub Bot) #64297
  • [3519aac9af] - deps: enable OpenSSL asm support for riscv64 (Jamie Magee) #62606
  • [c09701218b] - deps: update c-ares to 1.34.8 (Node.js GitHub Bot) #64330
  • [ad2f3bc95b] - deps: upgrade npm to 11.18.0 (npm team) #64199
  • [d7a4b22c86] - deps: V8: backport a05321ebd98e (Chengzhong Wu) #64202
  • [8679cff291] - deps: update zlib to 1.3.2.1-motley-8b3aa8a (Node.js GitHub Bot) #64295
  • [df5b1e10ba] - doc: remove unsupported syntax from stream_iter.md (Antoine du Hamel) #64649
  • [8a4ca9083f] - doc: clarify rules for adding new built-in modules (Antoine du Hamel) #64648
  • [7d50fe6b7a] - doc: mention DEPENDENCY custom field for H1 reports (Rafael Gonzaga) #64634
  • [8f415bf5fc] - doc: fix dnsPromises.lookup verbatim default (Shivam S) #64658
  • [c6378f724d] - doc: fix broken links and clean up type map (Antoine du Hamel) #64625
  • [9b53ec19a2] - doc: fix typo in releases guide (Jihwan) #64621
  • [5a36018abc] - doc: add MikeMcC399 as collaborator (Mike McCready) #64656
  • [d2c8acd764] - doc: use promote wording in release guide (Md Muhtasim Munif Fahim) #64371
  • [5c692cb576] - doc: fix import.meta example for vm.SourceTextModule (Muhammad Zeeshan) #64112
  • [7568ce71ca] - doc: mention crypto.hash() for better perf (Steven) #63420
  • [cf3f631936] - doc: update sea example by fixing wrong code example (Maxence Robinet) #64025
  • [ce21e567a4] - doc: fix socket.readyState state descriptions (YuSheng Chen) #64468
  • [018c7f1c01] - doc: replace large tables in crypto.md and webcrypto.md with lists (Filip Skokan) #64582
  • [cf82de8d8b] - doc: note --env-file is not applied to --run (Paul Bouchon) #64442
  • [e635ce5201] - doc: fix typo in embedding.md (greenhead) #64425
  • [0b1f6eda3f] - doc: fix typos in contributing docs (Donghoon Kang) #64520
  • [d978ce80ef] - doc: document TLS alpnProtocol and servername fields (Tim Perry) #64362
  • [394669e3b3] - doc: fix spelling in devcontainer guide (한만욱) #64459
  • [9786a593ea] - doc: clarify PEM format for signing keys (Harjoth Khara) #64404
  • [6251f832ba] - doc: fix typo in tls.md (Daijiro Wachi) #64458
  • [b8656c40ad] - doc: document net Socket server property (Efe Karasakal) #64364
  • [03e9c738f3] - doc: update a Dispatcher undici doc link (Filip Skokan) #64358
  • [b6dd2debf0] - doc: fix typos in documentation (Jungwon Sohn) #64466
  • [3b7d778c3c] - doc: clarify fixes and refs trailer guidance (Trivikram Kamat) #64421
  • [eb086a6e03] - doc: remove duplicate VirtualProvider description (Archkon) #64400
  • [bc221a8cd7] - doc: add scope overview tables for TestsStream events (Moshe Atlow) #64386
  • [4b3dbd36df] - doc: clarify proxy threat model (Matteo Collina) #64366
  • [c5526f69d6] - doc: add note about restricted CI to pull-requests.md (Stewart X Addison) #64321
  • [968eaf6538] - doc: various updates to releases.md (Stewart X Addison) #64198
  • [2a51f8ba8e] - doc: remove obsolete --napi-modules doc entry (Chengzhong Wu) #64220
  • [ee5a54535e] - doc,test: widen fsPromises.appendFile()'s data type, add missing tests (Jimmy Leung) #64279
  • [b923df86fc] - events: avoid retaining removed event names (Matteo Collina) #64475
  • [7d8d413ff5] - events: optimize once() and removeListener() (Matteo Collina) #64373
  • [f2f8881d2a] - ffi: evaluate function signatures once (Trivikram Kamat) #64559
  • [9b04f82d7b] - (SEMVER-MINOR) ffi: add getCurrentEventLoop (Paolo Insogna) #64323
  • [4a3ef5b2b5] - fs: add pattern cache for matchGlobPattern() (bq) #63915
  • [ce113efcac] - fs: fix cp symlink and EEXIST handling on Windows (Kirill Saied) #64353
  • [3be3041ac9] - http: fix perf_hooks detail.req.url port and proxied path (Stefano Baghino) #64311
  • [0047ad73cf] - http: remove unused n arg from IncomingMessage._read (Efe Karasakal) #64370
  • [4d48984d5c] - http2: don't throw when destroying socket proxy (Matteo Collina) #64427
  • [3329647762] - http2: avoid copying the options in respond() (Matteo Collina) #64265
  • [a44fca5e24] - http2: avoid per-write closures in kWriteGeneric (Matteo Collina) #64265
  • [546e0e70a1] - inspector: add --cond to node inspect probe mode (Joyee Cheung) #64328
  • [b38a39dd96] - lib: use assignFunctionName util where it makes sense (Antoine du Hamel) #64515
  • [f60a12b94f] - lib,tools: add node-core/func-name-matching lint rule (Livia Medeiros) #57901
  • [9e6e9d4745] - meta: lower stale to 3 months (Aviv Keller) #64569
  • [3dd11c4993] - meta: move one or more collaborators to emeritus (Node.js GitHub Bot) #64315
  • [3f55208104] - module: add two tests for eager imports when using import defer (Maya Lekova) #64197
  • [c791eedc9d] - net: support sync connect for BoundSocket (Guy Bedford) #64375
  • [4df4a3fc61] - net: make TCP Server and Socket transferable across worker threads (Matteo Collina) #64225
  • [5dd34d7d06] - path: add benchmarks for path.matchesGlob() (bq) #63915
  • [8e520646b6] - quic: defer server session emit until TLS ClientHello is processed (Tim Perry) #64132
  • [4b8cc9a3fb] - quic: preserve session stats after close (한만욱) #64489
  • [591090ca85] - quic: add support for TLS certificate compression (Sebastian Beltran) #64434
  • [d636c9c30f] - quic: extract transport logic from Application to Session (Tim Perry) #64127
  • [abb62f961f] - quic: correct http3 callback and fix revealed errs (Marten Richter) #64289
  • [5f535fdbe8] - quic: fix no onstream handler crash quic (Efe) #64158
  • [933e5f14b5] - quic: fix stall datagrams, if no pending streams (Marten Richter) #64303
  • [272632a57f] - quic: fix potential crash from unobserved closed (Tim Perry) #64134
  • [2d5f445489] - sqlite: read column count after step in StatementSync.all() (Guilherme Araújo) #64219
  • [54929af44e] - src: avoid redundant KEM encapsulation copies (Filip Skokan) #64553
  • [5380bf28b3] - src: avoid redundant DataPointer reallocations (Filip Skokan) #64552
  • [6ff5a1b834] - src: fix comment typos (Jungwon Sohn) #64509
  • [508ec0e435] - src: zero-initialize cap_data in node_credentials.cc (Samuel Kapust) #64347
  • [c5090a36c1] - src: fix some typo errors and rename some variables (Archkon) #64301
  • [0a89bef69e] - src,permission: do not throw on denied access in audit mode (Adrián Estrada) #64426
  • [63e71195c5] - stream: abort pending single-source merge reads (Trivikram Kamat) #64445
  • [f403b30c3d] - stream: use RangeError for broadcast overflow (Trivikram Kamat) #64420
  • [5c0578cbf7] - stream: skip null output from stateful transforms (Trivikram Kamat) #64462
  • [0488d02d5d] - stream: update iterable streams to use budget backpressure (James M Snell) #64464
  • [f0811baeef] - stream: remove custom CloneableDOMException implementation (Antoine du Hamel) #64469
  • [10f3f9682e] - stream: fix drop-newest behavior in share() (Trivikram Kamat) #64417
  • [2aad973b29] - stream: resume flow when an errored pipe destination is removed (Mahin Anowar) #64310
  • [6112ed5ceb] - stream: fold desired-size check into WHATWG backpressure update (Matteo Collina) #64451
  • [d829aa1138] - stream: validate writer options signal (Trivikram Kamat) #64385
  • [8e7a5e940e] - stream: reject push iterator.throw() with error (Trivikram Kamat) #64380
  • [4390f81294] - stream: simplify nested PromisePrototypeThens (Antoine du Hamel) #64470
  • [ddf2c38e9d] - stream: use the ring buffer for WHATWG stream request queues (Matteo Collina) #64431
  • [518d81b36d] - stream: validate writevSync chunks before queuing (Trivikram Kamat) #64300
  • [f745c4261d] - stream: speed up reads and iteration over default WHATWG streams (Matteo Collina) #64320
  • [4f4bce62fe] - stream: copy SAB-backed chunks in iter consumers (Trivikram Kamat) #64382
  • [f29937d26f] - stream: reject nested async streamables in from() (Trivikram Kamat) #64352
  • [424cec71b7] - stream: avoid draining merged iter sources (Trivikram Kamat) #64293
  • [e01906180c] - stream: use ring buffer for WHATWG stream queues (Yagiz Nizipli) #64312
  • [0a0193f666] - stream: hoist repeated loads in readable paths (Yagiz Nizipli) #64312
  • [ebe16003b6] - stream: prefer sync iterator in fromSync (Trivikram Kamat) #64294
  • [f249614835] - stream: speed up async iteration over WHATWG byte streams (Matteo Collina) #64291
  • [7331118699] - stream, quic: update iterable streams backpressure (James M Snell) #64464
  • [46b117729d] - test: update quic tests for stream/iter update (James M Snell) #64464
  • [b122ca5389] - test: fix flaky http2 socket proxy test (Tim Perry) #64673
  • [68c46146fd] - test: apply correction to comment (Rich Trott) #64524
  • [d7e119b26b] - test: keep finalization before-exit ref alive (Tim Perry) #64521
  • [0db4e10a0c] - test: copyedit test-tls-psk-alpn-callback-exception-handling (Antoine du Hamel) #63485
  • [21389f7b25] - test: fix stale async-context-frame status entries (Kirill Saied) #64141
  • [af55304846] - test: update WPT for urlpattern to 5847ee5cfa (Node.js GitHub Bot) #64436
  • [43a5ce4e00] - test: update WPT for WebCryptoAPI to ec2fee39a4 (Node.js GitHub Bot) #64435
  • [11ca52a521] - test: fix flaky http2 maxOriginSetSize test (Tim Perry) #64407
  • [af08a11e77] - test: fix 2nd flaky blob test case (Tim Perry) #64391
  • [0104ae1171] - test: fix flaky watch + cwd + argv test-runner test (Tim Perry) #64372
  • [b3ff5fe3f4] - test: normalize Windows crash in debugger test normalization (Joyee Cheung) #64332
  • [4cdceb7436] - test: unmark flaky http2-large-file for Win (Kirill Saied) #64255
  • [19f529377b] - test: unmark flaky SEA snapshot tests on Windows (Kirill Saied) #64317
  • [66f9b342ef] - test: increase timeout in consumed-timeout test (Trivikram Kamat) #64204
  • [fdbbf0ae6d] - test: handle null stdio streams in spawnSyncAndAssert helper (Joyee Cheung) #64273
  • [10ea17dafe] - test: remove impact of tier-up changes in worker stack size test (Joyee Cheung) #64271
  • [bb51f2c960] - (SEMVER-MINOR) test_runner: add context.log() and test:log event (Moshe Atlow) #64389
  • [56ce83b3ee] - (SEMVER-MINOR) test_runner: report entryFile in TestStream events (Moshe Atlow) #64309
  • [7a02e4f9e6] - timers: do not retain a reference to the async store after firing (Matteo Collina) #53443
  • [7d5d46ef00] - tls: match IPv6 hosts against IP-Address SANs (Pascal Garber) #64145
  • [f7bc0c62df] - tools: bump brace-expansion from 5.0.6 to 5.0.7 in /tools/eslint (dependabot[bot]) #64636
  • [3f80ed2e93] - tools: reference 'git node land' in PR-URL: error message in merge.sh (Stewart X Addison) #64495
  • [7b373cafce] - tools: disable zipping tarballs on GHA (Antoine du Hamel) #64423
  • [5bdbd256e9] - tools: add workflow to compare Nix changes (Antoine du Hamel) #64410
  • [ca4a16634b] - tools: add option for benchmark.yml to post comment on PR (Antoine du Hamel) #64395
  • [86193ef193] - tools: fix redundant conditions in v8.gyp for riscv64 and loong64 (Jamie Magee) #62608
  • [ee460404be] - util: make MIMEParams accessors case-insensitive (Daijiro Wachi) #64123
  • [a63ee46ddd] - vfs: make recursive readdir iterative (AkshatOP) #64149
  • [37f93c3b15] - vfs: make lchmod update symlink mode (Trivikram Kamat) #64350
  • [ce54e2a9c8] - vfs: fix VirtualReadStream race with async iteration (Y1D7NG) #64394
  • [54e8d3a14b] - vfs: follow symlinked dirs in recursive mkdir (Trivikram Kamat) #64287
  • [7be42b64e1] - vm: enable interception on global restricted properties (Chengzhong Wu) #64202
  • [c2cfcf8e7d] - zlib: reject truncated zstd input (Archkon) #64593