Traceary

Catalog / Node.js

24.15.0

2026-04-15, Version 24.15.0 'Krypton' (LTS), @aduh95

4 months agosecurityaddedchangedOriginal notes

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: add throwIfNoEntry option 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: add setTOS and getTOS to Socket (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: rename Duplex.toWeb() type option to readableType (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 in configure.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: deprecate module.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 of shell is 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) for mock.module about customization hooks (Jacob Smith) #62075
  • [8c46a1ca1a] - doc: copyedit addons.md (Antoine du Hamel) #62071
  • [7f989f02f7] - doc: correct util.convertProcessSignalToExitCode validation behavior (René) #62134
  • [a4466ebdac] - doc: add efekrskl as triager (Efe) #61876
  • [db516eca3a] - doc: fix markdown for expectFailure values (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 invalid function parameter (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 of module in typescript.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 for events.once() (René) #61572
  • [2bf990bb1a] - doc: update Juan's security steward info (Juan José) #61754
  • [0312db948d] - doc: fix methods being documented as properties in process.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 in child_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 in finalizeResolution (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: add throwIfNoEntry option 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.