Repository navigation
Releases: nodejs/node
Releases Β· nodejs/node
Release list
2026-10-14, Version 26.12.0 (Current), @richardlau
Notable Changes
- [
1ebd6d3677] - (SEMVER-MINOR) doc,lib,src: throw on missing WebAssembly or RX support (Paolo Insogna) #66533 - [
7f1937d2b9] - (SEMVER-MINOR) http: add websocketMask() and websocketUnmask() (James M Snell) #66335
Commits
- [
30e76bb16a] - benchmark: fix input passed to subtle.digest in webcrypto-digest (Rafael Gonzaga) #66608 - [
adef72223a] - benchmark: fix buffer option in buffer read/write benchmarks (Rafael Gonzaga) #66604 - [
2f498f08fe] - benchmark: add util.parseArgs benchmark (Rafael Gonzaga) #66599 - [
4ce8412e18] - benchmark: fix url-searchparams-sort to sort a fresh list (RafaelGSS) #66535 - [
493bd6c66e] - benchmark,tools: fix napi benchmarks on GHA (Nigro Simone) #66423 - [
e4515552d6] - build: run QUIC CI for V8 changes (Yuya Inoue) #66602 - [
a888e51062] - build: support Python 3.15 (Mike McCready) #65750 - [
2afab9a63b] - build: do not include shared gtest innodelink path (Antoine du Hamel) #66626 - [
f88c2f8ec6] - build,test: enable temporal support on no-ICU and system-ICU builds (Antoine du Hamel) #66697 - [
5fd03e6fdf] - child_process: propagate config-file permission flags to children (Rafael Gonzaga) #66559 - [
f771134b07] - crypto: isolate provider EC PKCS8 encoding (Filip Skokan) #66413 - [
4e00a293db] - crypto: remove key export and metadata locks (Filip Skokan) #66413 - [
bcd8018775] - crypto: remove verify setup key locking (Filip Skokan) #66413 - [
883250fee2] - crypto: remove KEM key locking (Filip Skokan) #66413 - [
9d98805071] - crypto: remove RSA-OAEP key locking (Filip Skokan) #66413 - [
d6293e7bb1] - crypto: skip secret key mutex allocation (Filip Skokan) #66413 - [
8d8af8003e] - crypto: keep the root cert store per Environment (Shelley Vohr) #66411 - [
c6f0614785] - crypto: remove select Web Crypto warnings (Filip Skokan) #66312 - [
e5360b5a08] - deps: update googletest to 988ea2c1798de7779f656df2281dd36d6039a17a (Node.js GitHub Bot) #66652 - [
7eb230a2c1] - deps: update acorn to 8.19.0 (Node.js GitHub Bot) #66655 - [
af946ba8f3] - deps: update sqlite to 3.54.0 (Node.js GitHub Bot) #66663 - [
007872a85d] - deps: V8: cherry-pick 8d14d49c4040 (Antoine du Hamel) #66627 - [
f44aec4966] - deps: update simdjson to 5.0.3 (Daniel Lemire) #66620 - [
1a33e914e8] - deps: V8: cherry-pick 7d5eb1df2a72 (inoway46) #66566 - [
3294d51e5a] - diagnostics_channel: fix default callback context (Matteo Collina) #66481 - [
5c602a5824] - doc: list futimes among fd APIs disabled by the permission model (Rafael Gonzaga) #66649 - [
eaeb4736c8] - doc: add Test Runner to list of built-in diagnostic channels (Vas Sudanagunta) #66563 - [
0e1c99afae] - doc: document stream/iter behaviors and Node.js extensions (James M Snell) #66483 - [
846236367d] - doc: document URL and Uint8Array references in process.permission (Rafael Gonzaga) #66557 - [
fc3b067be7] - doc: clarify http Agent keepSocketAlive behavior (Efe Karasakal) #66252 - [
73a4e90ce2] - doc: document keepAliveTimeoutBuffer server option (Efe Karasakal) #66286 - [
bb816582af] - doc: fix request.reusedSocket timeout example (Efe Karasakal) #66286 - [
82223ab4d9] - doc: clarify revert PR label policy (Antoine du Hamel) #66529 - [
c6f59d4e8e] - doc: clarify node binary misuse after compromise (Rafael Gonzaga) #66530 - [
8904178498] - doc: document linux-x64-musl build toolchain (Issac) #66523 - [
1e8247a74e] - doc: run license-builder (github-actions[bot]) #66517 - [
b2773d5e4c] - doc: add missing return types in cluster.md (Daniel Pinto) #66453 - [
1ebd6d3677] - (SEMVER-MINOR) doc,lib,src: throw on missing WebAssembly or RX support (Paolo Insogna) #66533 - [
c1073f31de] - ffi: fix exportArrayBuffer type check (Trivikram Kamat) #66455 - [
69148ee0ff] - fs: lock FileHandle on first read in pull() and pullSync() (James M Snell) #66483 - [
700c60a1cd] - fs: serialize FileHandle writer() async writes (James M Snell) #66483 - [
32833def1c] - http: reduce raw header name allocations (Roberto Bianchi) #66488 - [
7f1937d2b9] - (SEMVER-MINOR) http: add websocketMask() and websocketUnmask() (James M Snell) #66335 - [
115731dda7] - http2: speed up response getHeaders (Roberto Bianchi) #66592 - [
447c36cb45] - lib: fix AbortSignal.any() nested composite leak (Darius) #66617 - [
1722ced4b4] - lib: add --allow-fs-vfs to permission available flags (Rafael Gonzaga) #66554 - [
062ece77fc] - lib: fix benchmark record acknowledgement race (Filip Skokan) #66430 - [
05d0b14438] - lib: set exit code on failed node:bench run() (RafaelGSS) #66534 - [
2cab299471] - lib: default node:bench warmup to 10 invocations (RafaelGSS) #66536 - [
83f507845d] - meta: bump...
2026-10-14, Version 24.22.0 'Krypton' (LTS), @richardlau prepared by @aduh95
Notable Changes
- [
ddbf974b47] - (SEMVER-MINOR) crypto: addcrypto.parsePKCS12()(Brian Muenzenmeyer) #65627 - [
c162c68ff0] - (SEMVER-MINOR) crypto: add a generic MAC API (Filip Skokan) #65553 - [
a4ab3d84d7] - (SEMVER-MINOR) crypto: discover ciphers from OpenSSL providers (Filip Skokan) #65484 - [
c2f1e829ea] - (SEMVER-MINOR) crypto: discover hashes from OpenSSL providers (Filip Skokan) #65484 - [
51aad5a80d] - (SEMVER-MINOR) crypto: enable SIV and GCM-SIV modes in Cipher/Decipher APIs (Filip Skokan) #63411 - [
d11c65d2f2] - doc: add araujogui to collaborators (Guilherme AraΓΊjo) #66090 - [
acc1578179] - doc: deprecateServer.prototype._listen2innode:net(Antoine du Hamel) #65593 - [
a7f8de6362] - (SEMVER-MINOR) net: support sendingnet.BoundSocketto threads and child processes (Guy Bedford) #64725 - [
60c3eb61bd] - (SEMVER-MINOR) perf_hooks: implementSlidingWindowHistogram(James M Snell) #65825 - [
6b3e6f9d5c] - (SEMVER-MINOR) perf_hooks: implement qrde analysis support in Histogram (James M Snell) #65806 - [
75456a3512] - (SEMVER-MINOR) perf_hooks: implement HistogrammeanCIAPI (James M Snell) #65606 - [
72d1b40c56] - (SEMVER-MINOR) perf_hooks: add CBOR export/import for histogram exchange (James M Snell) #65434 - [
41161dda87] - (SEMVER-MINOR) sqlite: addStatementSync.prototype.close()(Guilherme AraΓΊjo) #64232 - [
adbc757d70] - (SEMVER-MINOR) sqlite: addStatementSync.prototype[Symbol.dispose]()(Guilherme AraΓΊjo) #64232 - [
241339f072] - (SEMVER-MINOR) src,lib: addutil.markPromiseAsHandled(James M Snell) #65805 - [
63b0974d9e] - (SEMVER-MINOR) util: implementutil.throttle(James M Snell) #65899 - [
a3bbb5a26f] - (SEMVER-MINOR) util: implementdebounce(James M Snell) #65899
Commits
- [
e6832b2cb1] - assert: fix TypeError on deepStrictEqual with null Map key or Set member (Sergey Sannikov) #64449 - [
a079177d9f] - benchmark: add --csv option to compare.js with --analyze (James M Snell) #65922 - [
10b1a0f70f] - benchmark: fix max-regressions detection in compare.js (James M Snell) #65587 - [
e0c7ba8ad5] - benchmark: add --analyze option to benchmark/scatter.js (James M Snell) #65594 - [
21fed10bb0] - benchmark: add crypto class benchmarks (Filip Skokan) #65518 - [
fa912242b7] - buffer: fix unaligned UTF-16LE decoding (Matteo Collina) #65905 - [
a6bd0c1413] - build: suppress OpenSSL asm warnings with clang (Richard Lau) #66023 - [
94e12139ee] - build: derive V8_LOGGING_LEVEL from dcheck_always_on (Joyee Cheung) #65744 - [
7a2f322943] - build: fix quiet default for make builds (Shelley Vohr) #65826 - [
c280d650b0] - build: allow linking shared dependencies in the GN build (Shelley Vohr) #65797 - [
4b23a4472c] - build: enable the V8 sandbox in shared-cage builds (Shelley Vohr) #62237 - [
676e15c003] - build: define V8_CONTIGUOUS_COMPRESSED_RO_SPACE for shared cage (Shelley Vohr) #65464 - [
f784058482] - build: remove obsolete configure flags (Chengzhong Wu) #65456 - [
f63f37d243] - build: activate correct default flags for riscv64 (Stewart X Addison) #65708 - [
da46ac075d] - build: derive NODE_ARCH from target_cpu in the GN build (Shelley Vohr) #65491 - [
249e9a16dd] - build,src: gate jspi flag on V8_ENABLE_WEBASSEMBLY (Piotr Kubaj) #66082 - [
146f00f64b] - child_process: clear timeout timer on spawn-time error too (kishore280) #65506 - [
13987f4418] - crypto: remove redundentstd::movecall (Antoine du Hamel) #66111 - [
ef957ac85f] - crypto: skip private RSA parameters in key details (Filip Skokan) #66108 - [
8feccc5e22] - crypto: use provider EC group names (Filip Skokan) #66108 - [
764e0d1120] - crypto: fetch ciphers for private-key encoding (Filip Skokan) #66108 - [
50ffed1979] - crypto: decode PKCS#1 keys through providers (Filip Skokan) #66108 - [
56c16b2fd6] - crypto: derive keys through EVP_KDF (Filip Skokan) #66108 - [
a4effe6809] - crypto: use names for asymmetric key algorithms (Filip Skokan) #65966 - [
ddbf974b47] - (SEMVER-MINOR) crypto: add crypto.parsePKCS12() (Brian Muenzenmeyer) #65627 - [
8e631aa48f] - crypto: add Hybrid KEMs to Web Cryptography (Filip Skokan) #65759 - [
5c51129e16] - crypto: optimize private EC JWK import (Filip Skokan) #65908 - [
c2ec40c2d7] - crypto: disable non-FIPS WebCrypto paths in FIPS mode (Filip Skokan) #65172 - [
e198aa0f79] - crypto: read RSA-PSS restrictions from provider (Filip Skokan) #66108 - [
253784f0e9] - crypto: optimize and benchmark key preparation (Filip Skokan) #65892 - [
80a6ad509b] - crypto: avoid EC reconstruction for signature sizing (Filip Skokan) #65908 - [
5b592b772c] - crypto: avoid EC raw export reconstruction (Filip Skokan) #65908 - [
ee956ae3bf] - crypto: export EC JWK coordinates directly (Filip Skokan) [#65908](#6590...
2026-10-07, Version 26.11.1 (Current), @aduh95
Commits
- [
2dc4638e85] - Revert "build: toggle doc-kit verbosity based on V" (Antoine du Hamel) - [
3febbc54ec] - Revert "build, doc: move to redesign" (Antoine du Hamel) - [
173250e2e7] - Revert "tools: bump the doc group in /tools/doc with 4 updates" (Antoine du Hamel)
2026-10-07, Version 26.11.0 (Current), @aduh95
Notable Changes
- [
232f178825] - (SEMVER-MINOR) buffer: addisLatin1(James M Snell) #66298 - [
27778036de] - (SEMVER-MINOR) buffer: addBuffer.stringLength()(Matteo Collina) #66064 - [
4f84c4bda2] - build, doc: move to redesign (Aviv Keller) #62045 - [
6f6296fef9] - (SEMVER-MINOR) doc: promote Alpine Linux to tier 2 support (Stewart X Addison) #63737 - [
e998d260d0] - (SEMVER-MINOR) http: addisValidHeaderName()and isValidHeaderValue() (James M Snell) #66334 - [
7702a50e08] - (SEMVER-MINOR) http2: addconnectionWindowSizeoption (Tim Perry) #65619 - [
e06aa62cec] - (SEMVER-MINOR) perf_hooks: fix truncation ofmonitorEventLoopDelay()resolution (James M Snell) #66115 - [
ee126e37e8] - (SEMVER-MINOR) perf_hooks: allowRecordableHistogramto record 0 (James M Snell) #66114 - [
1fef8f54db] - (SEMVER-MINOR) perf_hooks: addhistogram.diff()(James M Snell) #66099 - [
f1b9758c4e] - (SEMVER-MINOR) perf_hooks: addhistogram.snapshot()(James M Snell) #66099 - [
291d56ea3e] - (SEMVER-MINOR) perf_hooks: harden histogram CBOR import validation (James M Snell) #66098 - [
6299b09d5c] - (SEMVER-MINOR) process: graduateprocess.ref/unrefto stable (James M Snell) #66213 - [
41d6707b63] - (SEMVER-MINOR) sqlite: renameDatabaseSyncandStatementSync(Guilherme AraΓΊjo) #65988 - [
60d0aa0cd4] - (SEMVER-MINOR) src: add--process-timeout=N(James M Snell) #66138 - [
f39916a7e3] - (SEMVER-MINOR) src: expose size and count in heap profile output (Ilyas Shabi) #65737 - [
0b00d5ea59] - (SEMVER-MINOR) src: let embedders exempt linked bindings from the addon permission (Shelley Vohr) #66067
Commits
- [
11c3d7115d] - benchmark: add implicit-framing case to http/set-header (Matteo Collina) #66420 - [
168b764fec] - benchmark: add zstdCompress benchmark (James Ross) #66358 - [
69182564a7] - benchmark: add a node::MakeCallback benchmark (Nigro Simone) #66316 - [
12e540582f] - (SEMVER-MINOR) benchmark: add http header validator benchmark (James M Snell) #66334 - [
e6abdf6b01] - benchmark: remove duplicate ffi string length direct (Donghoon Kang) #66278 - [
480ca7cc55] - benchmark: fix shadowing that broke h=20 on incoming_headers benchmark (Tim Perry) #66257 - [
c6bbc1b128] - benchmark: cover Web Crypto conversion costs (Filip Skokan) #66237 - [
85a2e4e270] - benchmark: remove duplicate ffi add-64 benchmark (Soul Lee) #66121 - [
d0a72f2c12] - buffer: fix negative index for large buffers (Hilary Asogwa) #66325 - [
b7f6a66a9f] - (SEMVER-MINOR) buffer: add isLatin1 (James M Snell) #66298 - [
232f178825] - (SEMVER-MINOR) buffer: add isLatin1 (James M Snell) #66298 - [
f7d3d11c11] - buffer: fix odd UTF-16LE indexOf start (Yuya Inoue) #65960 - [
27778036de] - (SEMVER-MINOR) buffer: add Buffer.stringLength() (Matteo Collina) #66064 - [
9f1db461d2] - build: update common.gypi for z/OS (Gaby Baghdadi) #66449 - [
0002037b3f] - build: update configure.py for z/OS (Gaby Baghdadi) #66449 - [
a341ac460a] - build: fix vcbuild format-md install and exit (Ved Chaudhari) #66475 - [
bec52d9103] - build: fix vcbuild lint skipping lint-md-build (Ved Chaudhari) #66467 - [
9acdb5910c] - build: toggle doc-kit verbosity based on V (Brian Muenzenmeyer) #66293 - [
6ee32f857a] - build: support LIEF 0.17.x and 1.x (Yuya Inoue) #66240 - [
2248869955] - build: add clang support for pgo on macOS/Linux (Chengzhong Wu) #66136 - [
49069529eb] - build: add GZIP_COMPRESSION Make variable (inoway46) #66228 - [
9066d33aa2] - build: portmake_temporal_zoneinfo_cppto GYP (Antoine du Hamel) #66183 - [
1f4a8fb1cb] - build: addv8_enable_temporal_systemicu(Steven R. Loomis) #65992 - [
4f84c4bda2] - build, doc: move to redesign (Aviv Keller) #62045 - [
a0e7141ffc] - child_process: build the default env block in one native pass (Shelley Vohr) #65325 - [
9fa31096d4] - crypto: improve random synchronous number generation performance (Mert Can Altin) #66348 - [
53cde9d1f8] - crypto: fix raw key export error for wrong key type (νκ΅) #66217 - [
32ba6d5ada] - crypto: use backend cSHAKE and KMAC (Filip Skokan) #66237 - [
67ccff6434] - crypto: separate conversion from validation (Filip Skokan) #66237 - [
ceeb37173d] - crypto: verify empty KMAC outputs (Filip Skokan) #66237 - [
359b07a641] - crypto: check EC coordinate conversion results (Filip Skokan) #66237 - [
e4d746c4a5] - crypto: map JWK export failures to OperationError (Filip Skokan) #66237 - [
a851dda86a] - crypto: include EC public keys in PKCS8 exports (Filip Skokan) #66237 - [
7f58476ed1] - crypto: use the public CryptoKey prototype (Filip Skokan) #66237 - [
75870623ad] - crypto: split hybrid keys without species (Filip Skokan) #66237 - [[
a1bea87c6a...
2026-09-23, Version 22.23.3 'Jod' (LTS), @aduh95 prepared by @juanarbol
Notable Changes
- [
fe2a6b2be8] - crypto: update root certificates to NSS 3.125 (Node.js GitHub Bot) #64746 - [
871167ddfd] - deps: update corepack to 0.36.0 (Node.js GitHub Bot) #65653 - [
b816fc8958] - deps: upgrade npm to 10.9.9 (npm team) #64884 - [
e306521444] - deps: update icu to 78.3 (Node.js GitHub Bot) #62324 - [
a9cb31129f] - deps: update OpenSSL 3.5.8 (Node.js GitHub Bot) #65542 - [
2a3548e51c] - deps: update Undici to 6.28.1 (mcollina) #65790 - [
3909ff2c4a] - node-api: supportSharedArrayBufferinnapi_create_typedarray(Yilong Li) #62710 - [
66de6349ad] - node-api: addnapi_create_external_sharedarraybuffer(Ben Noordhuis) #62623
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: clarifyfilteroption ofsqlite.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: removeenvinfofrom 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
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 redundentstd::movecall (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: overridedepot_toolsversion" (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 innode_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](https://github.com/nodejs/node/commi...
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: implementnode:bench(James M Snell) #65606 - [
ebcfec2f0c] - (SEMVER-MINOR) perf_hooks: implement HistogrammeanCIAPI (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-perfettoflag (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-highwayconfigure flag (Antoine du Hamel) #65686 - [
c99af0942b] - build: add--shared-abseilconfigure 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] - **diagnos...
2026-09-09, Version 26.8.2 (Current), @aduh95
Notable Changes
- [
616bd3fa26] - doc: deprecateServer.prototype._listen2innode: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: replacenode:modulesdocumentation header (RenΓ©) #65800 - [
44c8a499ba] - doc: clarify return type offs.mkdtemp*(Antoine du Hamel) #65743 - [
025fb5eeb0] - doc: updatechangelog-makerinstructions for releasing (Juan JosΓ©) #65707 - [
5f64847afa] - doc: add stability status tocrypto.setEngine(Antoine du Hamel) #65746 - [
299dee0cb9] - doc: remove outdated TLS authorized warning (Tim Perry) #65597 - [
e97dcc0278] - doc: fix brokenusinglink 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: deprecateServer.prototype._listen2innode: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 fo...
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 ofnet.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-throwingMIMEType.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: applyhighWaterMarkin webstreamspipe-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 insetServers()(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](#6494...
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: fixtools/nix/list-requisites.sh(Antoine du Hamel) #65560