24.15.0
2026-04-15, Version 24.15.0 'Krypton' (LTS), @aduh95
Notable Changes
- [
3d87ecacbc] - (SEMVER-MINOR) cli: add --max-heap-size option (tannal) #58708 - [
83c38672f7] - cli: add --require-module/--no-require-module (Joyee Cheung) #60959 - [
54ef940e01] - (SEMVER-MINOR) crypto: add raw key formats support to the KeyObject APIs (Filip Skokan) #62240 - [
f4a3edc47a] - (SEMVER-MINOR) fs: addthrowIfNoEntryoption for fs.stat and fs.promises.stat (Juan José) #61178 - [
5cdcba17cc] - (SEMVER-MINOR) http2: add http1Options for HTTP/1 fallback configuration (Amol Yadav) #61713 - [
8b6be3fe14] - module: mark require(esm) as stable (Joyee Cheung) #60959 - [
68fbc0c6cc] - module: mark module compile cache as stable (Joyee Cheung) #60971 - [
c851e76f8c] - (SEMVER-MINOR) net: addsetTOSandgetTOStoSocket(Amol Yadav) #61503 - [
6ac4304c87] - (SEMVER-MINOR) sqlite: add limits property to DatabaseSync (Mert Can Altin) #61298 - [
aaf9af1672] - sqlite: mark as release candidate (Matteo Collina) #61262 - [
eb77a7a297] - (SEMVER-MINOR) src: add C++ support for diagnostics channels (RafaelGSS) #61869 - [
6834ca13bb] - (SEMVER-MINOR) stream: renameDuplex.toWeb()type option toreadableType(René) #61632 - [
f5f21d36a6] - test_runner: add exports option for module mocks (sangwook) #61727 - [
1f2025fd1e] - (SEMVER-MINOR) test_runner: expose worker ID for concurrent test execution (Ali Hassan) #61394 - [
1ca20fc33d] - (SEMVER-MINOR) test_runner: show interrupted test on SIGINT (Matteo Collina) #61676
Commits
- [
148373cea1] - assert,util: improve comparison performance (Ruben Bridgewater) #61176 - [
e5558b0859] - assert,util: fix deep comparing invalid dates skipping properties (Ruben Bridgewater) #61076 - [
83cffd92b5] - async_hooks: enabledHooksExist shall return if hooks are enabled (Gerhard Stöbich) #61054 - [
2c9436b43d] - benchmark: fix destructuring in dgram/single-buffer (Ali Hassan) #62084 - [
837acd7382] - benchmark: add startup benchmark for ESM entrypoint (Joyee Cheung) #61769 - [
a6ced7d272] - buffer: improve performance of multiple Buffer operations (Ali Hassan) #61871 - [
a82003bf8b] - buffer: optimize buffer.concat performance (Mert Can Altin) #61721 - [
83dfd0be1d] - buffer: disallow ArrayBuffer transfer on pooled buffer (Chengzhong Wu) #61372 - [
ed2d0cb1bf] - build: support empty libname flags inconfigure.py(Antoine du Hamel) #62477 - [
09f7920267] - build: fix timezone-update path references (Chengzhong Wu) #62280 - [
af46b15b91] - build: use path-ignore in GHA coverage-windows.yml (Chengzhong Wu) #61811 - [
2cf77eadd1] - build: generate_config_gypi.py generates valid JSON (Shelley Vohr) #61791 - [
e0220f0c35] - build: build with v8 gdbjit support on supported platform (Joyee Cheung) #61010 - [
5505511dcb] - build: enable -DV8_ENABLE_CHECKS flag (Ryuhei Shima) #61327 - [
5f8ecf3940] - build: add --debug-symbols to build with -g without enabling DCHECKs (Joyee Cheung) #61100 - [
ab18c0867b] - build: fix --node-builtin-modules-path (Filip Skokan) #62115 - [
bfa60d5782] - build: fix GN for new merve dep (Shelley Vohr) #61984 - [
0d1975fe3a] - build,win: add WinGet Visual Studio 2022 Build Tools Edition config (Mike McCready) #61652 - [
10b2bb5fa6] - child_process: add tracing channel for spawn (Marco) #61836 - [
3d87ecacbc] - (SEMVER-MINOR) cli: add --max-heap-size option (tannal) #58708 - [
83c38672f7] - cli: add --require-module/--no-require-module (Joyee Cheung) #60959 - [
9d37233824] - crypto: update root certificates to NSS 3.121 (Node.js GitHub Bot) #62485 - [
b0cbfe38a4] - crypto: add crypto::GetSSLCtx API for addon access to OpenSSL contexts (Tim Perry) #62254 - [
dc034a4ac9] - crypto: reject ML-KEM/ML-DSA PKCS#8 import without seed in SubtleCrypto (Filip Skokan) #62218 - [
8aa6e706df] - crypto: refactor WebCrypto AEAD algorithms auth tag handling (Filip Skokan) #62169 - [
20cb932bcf] - crypto: read algorithm name property only once in normalizeAlgorithm (Filip Skokan) #62170 - [
e2934162b4] - crypto: add missing AES dictionaries (Filip Skokan) #62099 - [
8b8db52f65] - crypto: fix importKey required argument count check (Filip Skokan) #62099 - [
bd5458db29] - crypto: fix missing nullptr check on RSA_new() (ndossche) #61888 - [
7302c7ed22] - crypto: fix handling of null BUF_MEM* in ToV8Value() (Nora Dossche) #61885 - [
8d0c22ea20] - crypto: fix potential null pointer dereference when BIO_meth_new() fails (Nora Dossche) #61788 - [
72aad8b40f] - crypto: always return certificate serial numbers as uppercase (Anna Henningsen) #61752 - [
2395fc0f4d] - crypto: rename CShakeParams and KmacParams length to outputLength (Filip Skokan) #61875 - [
541be3aaf2] - crypto: recognize raw formats in keygen (Filip Skokan) #62480 - [
54ef940e01] - (SEMVER-MINOR) crypto: add raw key formats support to the KeyObject APIs (Filip Skokan) #62240 - [
bef1949823] - deps: V8: cherry-pick 33e7739c134d (Thibaud Michaud) #62567 - [
2e1a565a55] - deps: update ada to 3.4.4 (Node.js GitHub Bot) #62414 - [
d0418bad10] - deps: update timezone to 2026a (Node.js GitHub Bot) #62164 - [
53aad66415] - deps: update googletest to 2461743991f9aa53e9a3625eafcbacd81a3c74cd (Node.js GitHub Bot) #62484 - [
90fab71a84] - deps: update simdjson to 4.5.0 (Node.js GitHub Bot) #62382 - [
a416ddf6d9] - deps: V8: cherry-pick cf1bce40a5ef (Richard Lau) #62449 - [
4d9123e57d] - deps: upgrade npm to 11.12.1 (npm team) #62448 - [
952d715028] - deps: update sqlite to 3.51.3 (Node.js GitHub Bot) #62256 - [
f3fd7ed426] - deps: update googletest to 73a63ea05dc8ca29ec1d2c1d66481dd0de1950f1 (Node.js GitHub Bot) #61927 - [
71a2f82d7c] - deps: upgrade npm to 11.11.1 (npm team) #62216 - [
84f60c26f7] - deps: update amaro to 1.1.8 (Node.js GitHub Bot) #62151 - [
43159d0e5f] - deps: update sqlite to 3.52.0 (Node.js GitHub Bot) #62150 - [
b887657b38] - deps: V8: cherry-pick aa0b288f87cc (Richard Lau) #62136 - [
7ab885b323] - deps: update ada to 3.4.3 (Node.js GitHub Bot) #62049 - [
671ddec2b9] - deps: update minimatch to 10.2.4 (Node.js GitHub Bot) #62016 - [
290fe37d4d] - deps: update simdjson to 4.3.1 (Node.js GitHub Bot) #61930 - [
a13bee76b5] - deps: update acorn-walk to 8.3.5 (Node.js GitHub Bot) #61928 - [
f0e40b35b9] - deps: update acorn to 8.16.0 (Node.js GitHub Bot) #61925 - [
463dfa023a] - deps: update minimatch to 10.2.2 (Node.js GitHub Bot) #61830 - [
4b2e4bb108] - deps: update nbytes to 0.1.3 (Node.js GitHub Bot) #61879 - [
5626cb83d0] - deps: remove stale OpenSSL arch configs (René) #61834 - [
52668874fd] - deps: update llhttp to 9.3.1 (Node.js GitHub Bot) #61827 - [
b3387b07b1] - deps: update googletest to 5a9c3f9e8d9b90bbbe8feb32902146cb8f7c1757 (Node.js GitHub Bot) #61731 - [
196268cb4c] - deps: V8: cherry-pick c5ff7c4d6cde (Chengzhong Wu) #61372 - [
36869b52de] - deps: update merve to 1.2.2 (Node.js GitHub Bot) #62213 - [
3cbac055de] - deps: update merve to 1.2.0 (Node.js GitHub Bot) #62149 - [
7757cc3495] - deps: V8: backport 6a0a25abaed3 (Vivian Wang) #61670 - [
359797c2fb] - deps,src: prepare for cpplint update (Michaël Zasso) #60901 - [
ace802e59b] - diagnostics_channel: add diagnostics channels for web locks (Ilyas Shabi) #62123 - [
a072411b03] - doc: remove spawn with shell example from bat/cmd section (Kit Dallege) #62243 - [
0b152449af] - doc: fix typo in --disable-wasm-trap-handler description (Dmytro Semchuk) #61820 - [
73ea387ad7] - doc: remove obsolete Boxstarter automated install (Mike McCready) #61785 - [
7f234add8e] - doc: deprecatemodule.register()(DEP0205) (Geoffrey Booth) #62395 - [
12fc3c6a30] - doc: clarify that features cannot be both experimental and deprecated (Antoine du Hamel) #62456 - [
1ecc5962a2] - doc: fix 'transfered' typo in quic.md (lilianakatrina684-a11y) #62492 - [
56741a1303] - doc: move sqlite type conversion section to correct level (René) #62482 - [
12b04d17d5] - doc: add Rafael to last security release steward (Rafael Gonzaga) #62423 - [
c4567e4a8d] - doc: fix overstated Date header requirement in response.sendDate (Kit Dallege) #62206 - [
384a41047f] - doc: enhance clarification about the main field (Mowafak Almahaini) #62302 - [
93d19b1a1c] - doc: minor typo fix (Jeff Matson) #62358 - [
3db35d2c59] - doc: add path to vulnerabilities.json mention (Rafael Gonzaga) #62355 - [
57b105c9d5] - doc: deprecate CryptoKey use in node:crypto (Filip Skokan) #62321 - [
490168c993] - doc: fix small environment_variables typo (chris) #62279 - [
0291be584b] - doc: test and test-only targets do not run linter (Xavier Stouder) #62120 - [
ba0a82a1e1] - doc: clarify fs.ReadStream and fs.WriteStream are not constructable (Kit Dallege) #62208 - [
125bdbf504] - doc: clarify that any truthy value ofshellis part of DEP0190 (Antoine du Hamel) #62249 - [
a141ad0aeb] - doc: remove outdated Chrome 66 and ndb references from debugger (Kit Dallege) #62202 - [
44bde8e573] - doc: add note (and caveat) formock.moduleabout customization hooks (Jacob Smith) #62075 - [
8c46a1ca1a] - doc: copyeditaddons.md(Antoine du Hamel) #62071 - [
7f989f02f7] - doc: correctutil.convertProcessSignalToExitCodevalidation behavior (René) #62134 - [
a4466ebdac] - doc: add efekrskl as triager (Efe) #61876 - [
db516eca3a] - doc: fix markdown forexpectFailurevalues (Jacob Smith) #62100 - [
ad97045125] - doc: include url.resolve() in DEP0169 application deprecation (Mike McCready) #62002 - [
309f37ba42] - doc: expand SECURITY.md with non-vulnerability examples (Rafael Gonzaga) #61972 - [
dbb3551b7b] - doc: separate in-types and out-types in SQLite conversion docs (René) #62034 - [
191c433db8] - doc: fix small logic error in DETECT_MODULE_SYNTAX (René) #62025 - [
8511b1c784] - doc: fix module.stripTypeScriptTypes indentation (René) #61992 - [
dd1139f52c] - doc: update DEP0040 (punycode) to application type deprecation (Mike McCready) #61916 - [
54009e9c62] - doc: explicitly mention Slack handle (Rafael Gonzaga) #61986 - [
78fa1a1a49] - doc: support toolchain Visual Studio 2022 & 2026 + Windows 11 SDK (Mike McCready) #61864 - [
d8204d3cdb] - doc: rename invalidfunctionparameter (René) #61942 - [
a5a14482fb] - doc: clarify status of feature request issues (Antoine du Hamel) #61505 - [
bd0688feb6] - doc: add esm and cjs examples to node:vm (Alfredo González) #61498 - [
240b512f9f] - doc: clarify build environment is trusted in threat model (Matteo Collina) #61865 - [
5dd48e3456] - doc: remove incorrect mention ofmoduleintypescript.md(Rob Palmer) #61839 - [
9502c22055] - doc: simplify addAbortListener example (Chemi Atlow) #61842 - [
6fec397828] - doc: clean up globals.md (René) #61822 - [
a810f5ccef] - doc: clarify async caveats forevents.once()(René) #61572 - [
2bf990bb1a] - doc: update Juan's security steward info (Juan José) #61754 - [
0312db948d] - doc: fix methods being documented as properties inprocess.md(Antoine du Hamel) #61765 - [
e558b26e7f] - doc: add riscv64 info into platform list (Lu Yahan) #42251 - [
49254e3dc0] - doc: fix dropdown menu being obscured at <600px due to stacking context (Jeff) #61735 - [
4ff01b5c10] - doc: fix spacing in process message event (Aviv Keller) #61756 - [
94097a79d6] - doc: move describe/it aliases section before expectFailure (Luca Raveri) #61567 - [
b7cd31acbe] - doc: fix broken links of net.md (YuSheng Chen) #61673 - [
ae5e353fe2] - doc: clean up Windows code snippet inchild_process.md(reillylm) #61422 - [
ea9beb6a3c] - doc: update to Visual Studio 2026 manual install (Mike McCready) #61655 - [
42057c84e2] - doc,module: add missing doc for syncHooks.deregister() (Joyee Cheung) #61959 - [
a035bd5235] - doc,test: clarify --eval syntax for leading '-' scripts (kovan) #62244 - [
deb0b78460] - esm: fix typo in worker loader hook comment (jakecastelli) #62475 - [
b93bf7dbfc] - esm: fix source phase identity bug in loadCache eviction (Guy Bedford) #62415 - [
679d18b57f] - esm: fix path normalization infinalizeResolution(Antoine du Hamel) #62080 - [
171e9fc268] - esm: update outdated FIXME comment in translators.js (Karan Mangtani) #61715 - [
cc19728228] - events: avoid cloning listeners array on every emit (Gürgün Dayıoğlu) #62261 - [
458c92be52] - events: don't call resume after close (Сковорода Никита Андреевич) #60548 - [
4691f3e7fb] - fs: fix cpSync to handle non-ASCII characters (Stefan Stojanovic) #61950 - [
f4a3edc47a] - (SEMVER-MINOR) fs: addthrowIfNoEntryoption for fs.stat and fs.promises.stat (Juan José) #61178 - [
58e4d50cd0] - http: fix use-after-free when freeParser is called during llhttp_execute (Gerhard Stöbich) #62095 - [
0a4ad85ab0] - http: validate ClientRequest path on set (Matteo Collina) #62030 - [
f8178ac3e6] - http: validate headers in writeEarlyHints (Richard Clarke) #61897 - [
899884d0ed] - http: remove redundant keepAliveTimeoutBuffer assignment (Efe) #61743 - [
08d2e40694] - http: attach error handler to socket synchronously in onSocket (RajeshKumar11) #61770 - [
1c2064c1f8] - http: fix keep-alive socket reuse race in requestOnFinish (Martin Slota) #61710 - [
38e9c66e0f] - http2: add strictSingleValueFields option to relax header validation (Tim Perry) #59917 - [
5cdcba17cc] - (SEMVER-MINOR) http2: add http1Options for HTTP/1 fallback configuration (Amol Yadav) #61713 - [
687c0acd00] - http2: fix FileHandle leak in respondWithFile (sangwook) #61707 - [
0c8f802ec2] - inspector: add Target.getTargets and extract TargetManager (Kohei) #62487 - [
7de8a303c1] - inspector: unwrap internal/debugger/inspect imports (René) #61974 - [
59ac10a4fd] - lib: make SubtleCrypto.supports enumerable (Filip Skokan) #62307 - [
9dc102ba90] - lib: prefer primordials in SubtleCrypto (Filip Skokan) #62226 - [
78a9aa8f32] - lib: fix source map url parse in dynamic imports (Chengzhong Wu) #61990 - [
16b8cc6643] - lib: improve argument handling in Blob constructor (Ms2ger) #61980 - [
a03b5d39b8] - lib: reduce cycles in esm loader and load it in snapshot (Joyee Cheung) #61769 - [
1017bf5f86] - lib: remove top-level getOptionValue() calls in lib/internal/modules (Joyee Cheung) #61769 - [
d79984b41b] - lib: optimize styleText when validateStream is false (Rafael Gonzaga) #61792 - [
6462b89d10] - meta: bump actions/download-artifact from 7.0.0 to 8.0.0 (dependabot[bot]) #62063 - [
5bb89916ea] - meta: bump actions/upload-artifact from 6.0.0 to 7.0.0 (dependabot[bot]) #62062 - [
b067d74d94] - meta: bump step-security/harden-runner from 2.14.2 to 2.15.0 (dependabot[bot]) #62064 - [
830e5cd125] - meta: bump github/codeql-action from 4.32.0 to 4.32.4 (dependabot[bot]) #61911 - [
16c839a3dd] - meta: bump step-security/harden-runner from 2.14.1 to 2.14.2 (dependabot[bot]) #61909 - [
498abf661e] - meta: bump actions/stale from 10.1.1 to 10.2.
These notes run past the length kept in the archive. The rest is on the publisher’s page.