Skip to content

Latest commit

 

History

History
1328 lines (1244 loc) · 220 KB

File metadata and controls

1328 lines (1244 loc) · 220 KB

Node.js 25 ChangeLog

Current
25.8.1
25.8.0
25.7.0
25.6.1
25.6.0
25.5.0
25.4.0
25.3.0
25.2.1
25.2.0
25.1.0
25.0.0

2026-03-11, Version 25.8.1 (Current), @aduh95

Notable Changes

  • [ea87eea71a] - module: fix extensionless CJS files in "type": "module" packages (Matteo Collina) #62083

Commits

  • [bab750d1b3] - build: do not depend on V8 deps on --without-bundled-v8 builds (Antoine du Hamel) #62033
  • [b26d1c7fcb] - crypto: make --use-system-ca per-env rather than per-process (Aditi) #60678
  • [e362635abf] - crypto: add missing AES dictionaries (Filip Skokan) #62099
  • [6f975db8af] - crypto: fix importKey required argument count check (Filip Skokan) #62099
  • [3beaf9c5fc] - deps: update amaro to 1.1.8 (Node.js GitHub Bot) #62151
  • [53afb0edd8] - deps: update sqlite to 3.52.0 (Node.js GitHub Bot) #62150
  • [a13ed052a1] - deps: update merve to 1.2.0 (Node.js GitHub Bot) #62149
  • [2c850577b7] - deps: patch resb crate (Richard Lau) #62138
  • [37862a6728] - deps: V8: cherry-pick aa0b288f87cc (Richard Lau) #62136
  • [09191ad8b4] - deps: update ada to 3.4.3 (Node.js GitHub Bot) #62049
  • [8d63a178fd] - doc: copyedit addons.md (Antoine du Hamel) #62071
  • [83719ffb64] - doc: correct util.convertProcessSignalToExitCode validation behavior (René) #62134
  • [eeee7c7fb1] - doc: add efekrskl as triager (Efe) #61876
  • [db150b2e69] - doc: fix markdown for expectFailure values (Jacob Smith) #62100
  • [d55a441e60] - doc: add title to index (Aviv Keller) #62046
  • [cc46204b48] - doc: include url.resolve() in DEP0169 application deprecation (Mike McCready) #62002
  • [1d91a7261e] - doc,module: add missing doc for syncHooks.deregister() (Joyee Cheung) #61959
  • [5198573bee] - http: fix use-after-free when freeParser is called during llhttp_execute (Gerhard Stöbich) #62095
  • [f8793f80df] - lib: fix source map url parse in dynamic imports (Chengzhong Wu) #61990
  • [5439d0e0cf] - meta: bump actions/download-artifact from 7.0.0 to 8.0.0 (dependabot[bot]) #62063
  • [27fd21943a] - meta: bump actions/upload-artifact from 6.0.0 to 7.0.0 (dependabot[bot]) #62062
  • [5b266f3295] - meta: bump step-security/harden-runner from 2.14.2 to 2.15.0 (dependabot[bot]) #62064
  • [ea87eea71a] - module: fix extensionless CJS files in "type": "module" packages (Matteo Collina) #62083
  • [851228cd60] - sqlite: handle stmt invalidation (Guilherme Araújo) #61877
  • [19efe60548] - src: expose async context frame debugging helper to JS (Anna Henningsen) #62103
  • [0257e8072f] - src: make AsyncWrap subclass internal field counts explicit (Anna Henningsen) #62103
  • [975dafbe3b] - src: release context frame in AsyncWrap::EmitDestroy (Gerhard Stöbich) #61995
  • [f2c08c7888] - src: use validate_ascii_with_errors instead of validate_ascii (Сковорода Никита Андреевич) #61122
  • [0278461d83] - stream: optimize webstreams pipeTo (Mattias Buelens) #62079
  • [4d62e95bfa] - stream: fix brotli error handling in web compression streams (Filip Skokan) #62107
  • [4bdcaf2865] - stream: improve Web Compression spec compliance (Filip Skokan) #62107
  • [a5b1be2045] - stream: fix UTF-8 character corruption in fast-utf8-stream (Matteo Collina) #61745
  • [5632446c4e] - stream: fix TransformStream race on cancel with pending write (Marco) #62040
  • [f90fa9cd1a] - stream: accept ArrayBuffer in CompressionStream and DecompressionStream (조수민) #61913
  • [00319eaa3a] - test: update WPT for url to c928b19ab0 (Node.js GitHub Bot) #62148
  • [456abc7d20] - test: update WPT for WebCryptoAPI to c9e955840a (Node.js GitHub Bot) #62147
  • [82770cb7d3] - test: improve WPT report runner (Filip Skokan) #62107
  • [cfc847d233] - test: update WPT compression to ae05f5cb53 (Filip Skokan) #62107
  • [80f78f2737] - test: update WPT for WebCryptoAPI to 42e47329fd (Node.js GitHub Bot) #62048
  • [8048e0508c] - test: fix skipping behavior for test-runner-run-files-undefined (Antoine du Hamel) #62026
  • [699a6214c6] - tools: revert timezone update GHA workflow to ubuntu-latest (Richard Lau) #62140
  • [1a453b550c] - tools: improve error handling in test426 update script (Rich Trott) #62121
  • [710dde5ee2] - tools: fix --node-builtin-modules-path value in shell.nix (Antoine du Hamel) #62102
  • [dcb1cbb21f] - tools: bump the eslint group across 1 directory with 2 updates (dependabot[bot]) #62092
  • [7d0b758583] - tools: fix daily wpt workflow nighly release version lookup (Filip Skokan) #62076
  • [3e8c816f2e] - tools: fix example in release proposal linter (Richard Lau) #62074
  • [772d3d270d] - tools: bump minimatch from 3.1.3 to 3.1.5 in /tools/clang-format (dependabot[bot]) #62013
  • [92f3b42672] - tools: bump eslint to v10, babel to v8.0.0-rc.2 (Huáng Jùnliàng) #61905
  • [deead95ec5] - url: suppress warnings from url.format/url.resolve inside node_modules (René) #62005

2026-03-03, Version 25.8.0 (Current), @richardlau

Notable Changes

  • [e55eddea2a] - build, doc: use new api doc tooling (flakey5) #57343
  • [4c181e2277] - (SEMVER-MINOR) sqlite: add limits property to DatabaseSync (Mert Can Altin) #61298
  • [46ee1eddd7] - (SEMVER-MINOR) src: add C++ support for diagnostics channels (RafaelGSS) #61869
  • [9ddd1a9c27] - (SEMVER-MINOR) src,permission: add --permission-audit (RafaelGSS) #61869
  • [0d97ec4044] - (SEMVER-MINOR) test_runner: expose worker ID for concurrent test execution (Ali Hassan) #61394

Commits

  • [940b58c8c1] - buffer: optimize buffer.concat performance (Mert Can Altin) #61721
  • [0589b0e5a1] - build: fix GN for new merve dep (Shelley Vohr) #61984
  • [f3d3968dcd] - Revert "build: add temporal test on GHA windows" (Antoine du Hamel) #61810
  • [e55eddea2a] - build, doc: use new api doc tooling (flakey5) #57343
  • [b7715292f8] - child_process: add tracing channel for spawn (Marco) #61836
  • [a32a598748] - crypto: fix missing nullptr check on RSA_new() (ndossche) #61888
  • [dc384f95b3] - crypto: fix handling of null BUF_MEM* in ToV8Value() (Nora Dossche) #61885
  • [3337b095db] - crypto: fix potential null pointer dereference when BIO_meth_new() fails (Nora Dossche) #61788
  • [51ded81139] - deps: update undici to 7.22.0 (Node.js GitHub Bot) #62035
  • [8aa2fde931] - deps: update minimatch to 10.2.4 (Node.js GitHub Bot) #62016
  • [57dc092eaf] - deps: upgrade npm to 11.11.0 (npm team) #61994
  • [705bbd60a9] - deps: update simdjson to 4.3.1 (Node.js GitHub Bot) #61930
  • [4d411d72e5] - deps: update acorn-walk to 8.3.5 (Node.js GitHub Bot) #61928
  • [f53a32ab84] - deps: update acorn to 8.16.0 (Node.js GitHub Bot) #61925
  • [9b483fbb27] - deps: update minimatch to 10.2.2 (Node.js GitHub Bot) #61830
  • [bdc18940ad] - doc: expand SECURITY.md with non-vulnerability examples (Rafael Gonzaga) #61972
  • [4e54c103cb] - doc: separate in-types and out-types in SQLite conversion docs (René) #62034
  • [ca78ebbeaa] - doc: fix small logic error in DETECT_MODULE_SYNTAX (René) #62025
  • [e6b131f3fe] - doc: fix module.stripTypeScriptTypes indentation (René) #61992
  • [7508540e19] - doc: update DEP0040 (punycode) to application type deprecation (Mike McCready) #61916
  • [33a364cb62] - doc: explicitly mention Slack handle (Rafael Gonzaga) #61986
  • [46a61922bd] - doc: support toolchain Visual Studio 2022 & 2026 + Windows 11 SDK (Mike McCready) #61864
  • [dc12a257aa] - doc: rename invalid function parameter (René) #61942
  • [6259abcf55] - http: validate ClientRequest path on set (Matteo Collina) #62030
  • [dafdc0a5b8] - http: validate headers in writeEarlyHints (Richard Clarke) #61897
  • [3c94b56fa6] - inspector: unwrap internal/debugger/inspect imports (René) #61974
  • [8a24c17648] - lib: improve argument handling in Blob constructor (Ms2ger) #61980
  • [21d4baf256] - meta: bump github/codeql-action from 4.32.0 to 4.32.4 (dependabot[bot]) #61911
  • [59a726a8e3] - meta: bump step-security/harden-runner from 2.14.1 to 2.14.2 (dependabot[bot]) #61909
  • [0072b7f991] - meta: bump actions/stale from 10.1.1 to 10.2.0 (dependabot[bot]) #61908
  • [3d160cd049] - module: run require.resolve through module.registerHooks() (Joyee Cheung) #62028
  • [999bf22f47] - repl: keep reference count for process.on('newListener') (Anna Henningsen) #61895
  • [4c181e2277] - (SEMVER-MINOR) sqlite: add limits property to DatabaseSync (Mert Can Altin) #61298
  • [aee2a18257] - src: fix flags argument offset in JSUdpWrap (Weixie Cui) #61948
  • [46ee1eddd7] - (SEMVER-MINOR) src: add C++ support for diagnostics channels (RafaelGSS) #61869
  • [9ddd1a9c27] - (SEMVER-MINOR) src,permission: add --permission-audit (RafaelGSS) #61869
  • [ea2df2a16f] - stream: fix pipeTo to defer writes per WHATWG spec (Matteo Collina) #61800
  • [aa0c7b09e0] - test: remove unnecessary process.exit calls from test files (Antoine du Hamel) #62020
  • [ad96a6578f] - test: skip test-url on --shared-ada builds (Antoine du Hamel) #62019
  • [7c72a31e4b] - test: skip strace test with shared openssl (Richard Lau) #61987
  • [604456c163] - test: avoid flaky debugger restart waits (Yuya Inoue) #61773
  • [4890d6bd43] - test_runner: run afterEach on runtime skip (Igor Shevelenkov) #61525
  • [fce2930110] - test_runner: expose expectFailure message (sangwook) #61563
  • [0d97ec4044] - (SEMVER-MINOR) test_runner: expose worker ID for concurrent test execution (Ali Hassan) #61394
  • [243e6b2009] - test_runner: replace native methods with primordials (Ayoub Mabrouk) #61219
  • [bf1ed7e647] - tls: forward keepAlive, keepAliveInitialDelay, noDelay to socket (Sergey Zelenov) #62004
  • [746d0cebbf] - tools: fix parsing of commit trailers in lint-release-proposal GHA (Antoine du Hamel) #62077
  • [0f15079d94] - tools: remove custom logic for skipping test-strace-openat-openssl (Antoine du Hamel) #62038
  • [54a055a59d] - tools: bump minimatch from 3.1.2 to 3.1.3 in /tools/clang-format (dependabot[bot]) #61977
  • [a28744cb62] - tools: fix permissions for merve update script (Richard Lau) #62023
  • [31e7936354] - tools: revert tools GHA workflow to ubuntu-latest (Richard Lau) #62024
  • [0a96a16e1f] - tools: bump minimatch from 3.1.2 to 3.1.3 in /tools/eslint (dependabot[bot]) #61976
  • [f279233412] - tools: roll back to x86 runner on scorecard.yml (Antoine du Hamel) #61944
  • [192c0382f4] - util: add fast path to stripVTControlCharacters (Hiroki Osame) #61833

2026-02-24, Version 25.7.0 (Current), @ruyadorno prepared by @aduh95

Notable Changes

  • [b0a79b10f0] - (SEMVER-MINOR) http2: add http1Options for HTTP/1 fallback configuration (Amol Yadav) #61713
  • [2d874dfb8e] - (SEMVER-MINOR) sea: support ESM entry point in SEA (Joyee Cheung) #61813
  • [ee59127664] - sqlite: mark as release candidate (Matteo Collina) #61262
  • [608736e19e] - (SEMVER-MINOR) stream: rename Duplex.toWeb() type option to readableType (René) #61632
  • [a43375999f] - (SEMVER-MINOR) test_runner: show interrupted test on SIGINT (Matteo Collina) #61676

Commits

  • [ab4375e141] - benchmark: add startup benchmark for ESM entrypoint (Joyee Cheung) #61769
  • [8d83d8026b] - build: add temporal test on GHA windows (Chengzhong Wu) #61810
  • [aab153eec3] - build: skip sscache action on non-main branches (Joyee Cheung) #61790
  • [9e40fb93bc] - build: use path-ignore in GHA coverage-windows.yml (Chengzhong Wu) #61811
  • [4896653361] - build: generate_config_gypi.py generates valid JSON (Shelley Vohr) #61791
  • [bb82b44de0] - build: build with v8 gdbjit support on supported platform (Joyee Cheung) #61010
  • [e7173a093a] - build: show cc outputs when version detection failed (Chengzhong Wu) #61700
  • [848050d38f] - build,win: add WinGet Visual Studio 2022 Build Tools Edition config (Mike McCready) #61652
  • [938841e1cd] - crypto: always return certificate serial numbers as uppercase (Anna Henningsen) #61752
  • [dba9001d6f] - deps: upgrade npm to 11.10.1 (npm team) #61892
  • [75c8e18d2f] - deps: update nbytes to 0.1.3 (Node.js GitHub Bot) #61879
  • [4ca1597f25] - deps: remove stale OpenSSL arch configs (René) #61834
  • [c4f298c729] - deps: update llhttp to 9.3.1 (Node.js GitHub Bot) #61827
  • [7d63a2df93] - deps: V8: cherry-pick 64b36b441179 (Rafael Magrin) #61712
  • [241a6b7088] - deps: update googletest to 5a9c3f9e8d9b90bbbe8feb32902146cb8f7c1757 (Node.js GitHub Bot) #61731
  • [eec896c0e0] - deps: V8: backport 6a0a25abaed3 (Vivian Wang) #61666
  • [5a9874af09] - doc: clarify status of feature request issues (Antoine du Hamel) #61505
  • [0648ac64aa] - doc: add esm and cjs examples to node:vm (Alfredo González) #61498
  • [8b38718294] - doc: clarify build environment is trusted in threat model (Matteo Collina) #61865
  • [10e86818ee] - doc: remove incorrect mention of module in typescript.md (Rob Palmer) #61839
  • [b50376f527] - doc: simplify addAbortListener example (Chemi Atlow) #61842
  • [dea0e7a856] - doc: fix typo in --disable-wasm-trap-handler description (Dmytro Semchuk) #61820
  • [57ac1f5aa0] - doc: clean up globals.md (René) #61822
  • [4c30d2bb4d] - doc: remove obsolete Boxstarter automated install (Mike McCready) #61785
  • [db610b9e32] - doc: clarify async caveats for events.once() (René) #61572
  • [b4a826b11c] - doc: update Juan's security steward info (Juan José) #61754
  • [7d9cc5dc54] - doc: fix methods being documented as properties in process.md (Antoine du Hamel) #61765
  • [aa0362c26a] - doc: add riscv64 info into platform list (Lu Yahan) #42251
  • [9b0101b65b] - doc: fix dropdown menu being obscured at <600px due to stacking context (Jeff) #61735
  • [df2c65b3e4] - doc: fix spacing in process message event (Aviv Keller) #61756
  • [01018559f5] - doc: move describe/it aliases section before expectFailure (Luca Raveri) #61567
  • [49443583af] - doc: fix broken links of net.md (YuSheng Chen) #61673
  • [af7c927a2a] - doc: clean up Windows code snippet in child_process.md (reillylm) #61422
  • [221648a687] - esm: update outdated FIXME comment in translators.js (Karan Mangtani) #61715
  • [4484e14a31] - events: don't call resume after close (Сковорода Никита Андреевич) #60548
  • [4cecbe1f53] - fs: add throwIfNoEntry option for fs.stat and fs.promises.stat (Juan José) #61178
  • [2c94967684] - http: remove redundant keepAliveTimeoutBuffer assignment (Efe) #61743
  • [435f3dd8e4] - http: attach error handler to socket synchronously in onSocket (RajeshKumar11) #61770
  • [ce0ebd853d] - http: fix keep-alive socket reuse race in requestOnFinish (Martin Slota) #61710
  • [8103a78b6a] - http2: add strictSingleValueFields option to relax header validation (Tim Perry) #59917
  • [b0a79b10f0] - (SEMVER-MINOR) http2: add http1Options for HTTP/1 fallback configuration (Amol Yadav) #61713
  • [c589b6b23c] - http2: fix FileHandle leak in respondWithFile (sangwook) #61707
  • [df477202ae] - lib: reduce cycles in esm loader and load it in snapshot (Joyee Cheung) #61769
  • [deda50a819] - lib: remove top-level getOptionValue() calls in lib/internal/modules (Joyee Cheung) #61769
  • [b1c1ddff79] - lib: optimize styleText when validateStream is false (Rafael Gonzaga) #61792
  • [df334f7fa0] - meta: use SCCACHE_GHA_ENABLED for shared build workflows (René) #61640
  • [e1b2cd605f] - meta: bump cachix/install-nix-action from 31.9.0 to 31.9.1 (dependabot[bot]) #61910
  • [24b858547a] - module: fix extensionless entry with explicit type=commonjs (Yuya Inoue) #61600
  • [4f2f8006bd] - repl: fix FileHandle leak in history initialization (sangwook) #61706
  • [2d874dfb8e] - (SEMVER-MINOR) sea: support ESM entry point in SEA (Joyee Cheung) #61813
  • [ee59127664] - sqlite: mark as release candidate (Matteo Collina) #61262
  • [f14ff14473] - src: remove unnecessary c_str() conversions in diagnostic messages (Anna Henningsen) #61786
  • [26a09e541d] - src: use bool literals in TraceEnvVarOptions (Tobias Nießen) #61425
  • [62b0758c47] - src: fix --build-sea default executable path (Alex Schwartz) #61708
  • [b5724921b1] - src: track allocations made by zstd streams (Anna Henningsen) #61717
  • [3d1d1523a5] - src: do not store compression methods on Brotli classes (Anna Henningsen) #61717
  • [b2915cda77] - src: extract zlib allocation tracking into its own class (Anna Henningsen) #61717
  • [3032a7e3c6] - src: release memory for zstd contexts in Close() (Anna Henningsen) #61717
  • [bc2287db74] - src: add more checks and clarify docs for external references (Joyee Cheung) #61719
  • [5daf282e33] - src: fix cjs_lexer external reference registration (Joyee Cheung) #61718
  • [fb2db5f947] - src: support import() and import.meta in embedder-run modules (Joyee Cheung) #61654
  • [e146591002] - stream: fix decoded fromList chunk boundary check (Thomas Watson) #61884
  • [065200a5f0] - stream: add fast paths for webstreams read and pipeTo (Matteo Collina) #61807
  • [608736e19e] - (SEMVER-MINOR) stream: rename Duplex.toWeb() type option to readableType (René) #61632
  • [51587d684d] - test: fix typos in test files (Daijiro Wachi) #61408
  • [17b2361360] - test: allow filtering async internal frames in assertSnapshot (Joyee Cheung) #61769
  • [3f6a5f5f7f] - test: unify assertSnapshot stacktrace transform (Chengzhong Wu) #61665
  • [c8dac320de] - test: check stability block position in API markdown (René) #58590
  • [6809ef8d04] - test: adapt buffer test for v8 sandbox (Shelley Vohr) #61772
  • [60f5771a74] - test: update FileAPI tests from WPT (Ms2ger) #61750
  • [d2fef4a31a] - test: update WPT for WebCryptoAPI to 7cbe7e8ed9 (Node.js GitHub Bot) #61729
  • [d7a87f14da] - test: update WPT for url to efb889eb4c (Node.js GitHub Bot) #61728
  • [b6ae1fc4b8] - test: split test-embedding.js and run tests in parallel (Joyee Cheung) #61571
  • [a43375999f] - (SEMVER-MINOR) test_runner: show interrupted test on SIGINT (Matteo Collina) #61676
  • [1c02aa09b0] - test_runner: fix suite rerun (Moshe Atlow) #61775
  • [47821ec609] - tools: switch to ARM runners on GHA jobs (Antoine du Hamel) #61903
  • [1630a56370] - tools: avoid building twice in coverage jobs (Antoine du Hamel) #61899
  • [89318b0a02] - tools: fix auto-start-ci (Antoine du Hamel) #61900
  • [ee107f5e84] - tools: do not checkout repo in auto-start-ci.yml (Antoine du Hamel) #61874
  • [c2de1fa619] - tools: cache V8 build on test-shared workflow (Antoine du Hamel) #61860
  • [111c77ec94] - tools: automate updates for test/fixtures/test426 (Rich Trott) #60978
  • [ea8886f7d5] - tools: use ubuntu-slim runner in GHA (Antoine du Hamel) #61759
  • [9db82ba786] - tools: bump unist-util-visit in /tools/doc in the doc group (dependabot[bot]) #61646
  • [c8e58c56b9] - tools: bump the eslint group in /tools/eslint with 6 updates (dependabot[bot]) #61628
  • [2518ec77e8] - tools: use ubuntu-slim runner in GHA (Antoine du Hamel) #61734
  • [c5ad2beba3] - tools: fix small inconsistencies in JSON doc output (Antoine du Hamel) #61757
  • [a9f90bee0a] - tools: use ubuntu-latest runner in notify-on-push workflow (Antoine du Hamel) #61742
  • [30e38182d9] - watch: get flags from execArgv (Efe) #61779
  • [da1a08a3a5] - worker: eliminate race condition in process.cwd() (giulioAZ) #61664
  • [dfac82a235] - zlib: add support for brotli compression dictionary (Andy Weiss) #61763

2026-02-10, Version 25.6.1 (Current), @aduh95

Notable Changes

  • [47df4328d7] - build,deps: replace cjs-module-lexer with merve (Yagiz Nizipli) #61456

Commits

  • [47df4328d7] - build,deps: replace cjs-module-lexer with merve (Yagiz Nizipli) #61456
  • [a727054503] - deps: upgrade npm to 11.9.0 (npm team) #61685
  • [c78c49ed6b] - deps: update amaro to 1.1.7 (Node.js GitHub Bot) #61730
  • [4790816d9b] - deps: update minimatch to 10.1.2 (Node.js GitHub Bot) #61732
  • [8c71740e8a] - deps: update undici to 7.21.0 (Node.js GitHub Bot) #61683
  • [e559ef6ab1] - deps: update googletest to 56efe3983185e3f37e43415d1afa97e3860f187f (Node.js GitHub Bot) #61605
  • [300de2bb5a] - deps: update amaro to 1.1.6 (Node.js GitHub Bot) #61603
  • [e71e9505ef] - dns: fix Windows SRV ECONNREFUSED by adjusting c-ares fallback detection (notvivek12) #61453
  • [439b816bc7] - doc: clarify EventEmitter error handling in threat model (Matteo Collina) #61701
  • [c1c6641f23] - doc: mention default option for test runner env (Steven) #61659
  • [41ec451f98] - doc: fix --inspect security warning section (Tim Perry) #61675
  • [bb90ef2356] - doc: document url.format(urlString) as deprecated under DEP0169 (René) #61644
  • [513df82e6f] - doc: update to Visual Studio 2026 manual install (Mike McCready) #61655
  • [9409d30736] - doc: deprecation add more codemod (Augustin Mauroy) #61642
  • [75a7a67151] - doc: fix grammatical error in README.md (ayj8201) #61653
  • [821e59e884] - doc: correct tools README Boxstarter link (Mike McCready) #61638
  • [4998f539a0] - doc: update server.dropMaxConnection link (YuSheng Chen) #61584
  • [9383ac4ab7] - http: implement slab allocation for HTTP header parsing (Mert Can Altin) #61375
  • [e90eb1d561] - meta: persist sccache daemon until end of build workflows (René) #61639
  • [ade36ac367] - meta: bump github/codeql-action from 4.31.9 to 4.32.0 (dependabot[bot]) #61622
  • [26638bd67f] - meta: bump step-security/harden-runner from 2.14.0 to 2.14.1 (dependabot[bot]) #61621
  • [eaa9a96cb6] - meta: bump actions/setup-python from 6.1.0 to 6.2.0 (dependabot[bot]) #61627
  • [fd98187828] - meta: bump cachix/cachix-action (dependabot[bot]) #61626
  • [820c1d021c] - meta: bump actions/setup-node from 6.1.0 to 6.2.0 (dependabot[bot]) #61625
  • [72a4136bd5] - meta: bump actions/cache from 5.0.1 to 5.0.3 (dependabot[bot]) #61624
  • [e3ef6cb3bc] - meta: bump peter-evans/create-pull-request from 8.0.0 to 8.1.0 (dependabot[bot]) #61623
  • [020a836202] - meta: bump actions/stale from 10.1.0 to 10.1.1 (dependabot[bot]) #61620
  • [0df72f07c8] - meta: bump actions/checkout from 6.0.1 to 6.0.2 (dependabot[bot]) #61619
  • [d147c08b83] - module: do not invoke resolve hooks twice for imported cjs (Joyee Cheung) #61529
  • [a2843f8556] - net: defer synchronous destroy calls in internalConnect (RajeshKumar11) #61658
  • [7fb7030781] - repl: fix flaky test-repl-programmatic-history (Matteo Collina) #61614
  • [d4c9b5cf5b] - sqlite: avoid extra copy for large text binds (Ali Hassan) #61580
  • [aa1b3661d9] - sqlite: use DictionaryTemplate for run() result (Mert Can Altin) #61432
  • [9c8ad7e881] - src: elide heap allocation in structured clone implementation (Anna Henningsen) #61703
  • [c4ecfef93d] - src: use simdutf for one-byte string UTF-8 write in stringBytes (Mert Can Altin) #61696
  • [28905b9734] - src: consolidate C++ ReadFileSync/WriteFileSync utilities (Joyee Cheung) #61662
  • [e90cec2f69] - test: restraint version replacement pattern in snapshots (Chengzhong Wu) #61748
  • [adce20c0a1] - test: print stack immediately avoiding GC interleaving (Chengzhong Wu) #61699
  • [7643bc8999] - test: fix case-insensitive path matching on Windows (Matteo Collina) #61682
  • [23d1ecf66f] - test: fix flaky test-performance-eventloopdelay (Matteo Collina) #61629
  • [99012a88ed] - test: remove duplicate wpt tests (Filip Skokan) #61617
  • [a8b32b8ce1] - test: fix race condition in watch mode tests (Matteo Collina) #61615
  • [086a5a5a25] - test: update WPT for url to e3c46fdf55 (Node.js GitHub Bot) #61602
  • [f0574fd419] - test: use the skipIfNoWatch() utility function (Luigi Pinca) #61531
  • [b064ddc221] - test: unify assertSnapshot common patterns (Chengzhong Wu) #61590
  • [17122e521b] - test_runner: fix test enqueue when test file has syntax error (Edy Silva) #61573
  • [bad3f02dd9] - tools: enforce removal of lts-watch-* labels on release proposals (Antoine du Hamel) #61672
  • [a8f33fd6bd] - tools: use ubuntu-slim runner in meta GitHub Actions (Tierney Cyren) #61663
  • [c843e447ca] - tools: test --shared-merve in test-shared workflow (Antoine du Hamel) #61649
  • [2fedc03f96] - tools: update OpenSSL to 3.5.5 in test-shared (Antoine du Hamel) #61551
  • [1c1db94670] - tools,win: upgrade install additional tools to Visual Studio 2026 (Mike McCready) #61562

2026-02-03, Version 25.6.0 (Current), @aduh95

Notable Changes

  • [796ff46ae6] - (SEMVER-MINOR) async_hooks: add trackPromises option to createHook() (Joyee Cheung) #61415
  • [4cf94fae17] - (SEMVER-MINOR) net: add setTOS and getTOS to Socket (Amol Yadav) #61503
  • [dce657071e] - (SEMVER-MINOR) src: add initial support for ESM in embedder API (Joyee Cheung) #61548
  • [e62608bbcf] - src: improve TextEncoder encode performance with simdutf (Mert Can Altin) #61496
  • [93938a4738] - (SEMVER-MINOR) stream: add bytes() method to node:stream/consumers (wantaek) #60426
  • [5fe2582329] - (SEMVER-MINOR) test_runner: add env option to run function (Ethan Arrowood) #61367
  • [a181d0c43d] - url: update Ada to v3.4.2 and support Unicode 17 (Yagiz Nizipli) #61593

Commits

  • [9c8d1b0278] - assert: fix loose deepEqual arrays with undefined and null failing (Ruben Bridgewater) #61587
  • [796ff46ae6] - (SEMVER-MINOR) async_hooks: add trackPromises option to createHook() (Joyee Cheung) #61415
  • [d23ee89693] - benchmark: add streaming TextDecoder benchmark (Сковорода Никита Андреевич) #61549
  • [8759db9d21] - buffer: disallow ArrayBuffer transfer on pooled buffer (Chengzhong Wu) #61372
  • [b2fb82946b] - build: add --shared-lief configure flag (Antoine du Hamel) #61536
  • [0ef99de9da] - build: aix: deoptimize implementation-visitor.cc with --shared (Stewart X Addison) #61550
  • [8f2083e73a] - build: enable -DV8_ENABLE_CHECKS flag (Ryuhei Shima) #61327
  • [150910da70] - build,test: add tests for binary linked with shared libnode (Joyee Cheung) #61463
  • [fb7868ba98] - build,win: fix vs2022 compilation (Stefan Stojanovic) #61530
  • [2c39a9234c] - deps: update undici to 7.19.2 (Node.js GitHub Bot) #61566
  • [2a74379367] - deps: update archs files for openssl-3.5.5 (Node.js GitHub Bot) #61547
  • [9e26a15c29] - deps: upgrade openssl sources to openssl-3.5.5 (Node.js GitHub Bot) #61547
  • [f16b532e97] - deps: update corepack to 0.34.6 (Node.js GitHub Bot) #61510
  • [780e65c5c5] - deps: V8: cherry-pick c5ff7c4d6cde (Chengzhong Wu) #61372
  • [2eb8e9d760] - deps: update nghttp3 to 1.15.0 (Node.js GitHub Bot) #61512
  • [a999edd8fd] - deps: update ngtcp2 to 1.20.0 (Node.js GitHub Bot) #61511
  • [eedd3bb6b6] - deps: update undici to 7.19.1 (Node.js GitHub Bot) #61514
  • [7d2bd59984] - deps: update undici to 7.19.0 (Node.js GitHub Bot) #61470
  • [3ad4d9b11b] - doc: align Buffer.concat documentation with behavior (Gürgün Dayıoğlu) #60405
  • [7e3eab5963] - doc: fix node-config-schema (Сковорода Никита Андреевич) #61596
  • [cbcfaf9a35] - doc: update IBM/Red Hat volunteers with dedicated project time (Beth Griggs) #61588
  • [3d68811d1a] - doc: regenerate node.1 using doc-kit (Aviv Keller) #61535
  • [71702c581a] - doc: restore @ChALkeR to collaborators (Сковорода Никита Андреевич) #61553
  • [0ceb8cad59] - doc: added requestOCSP option to tls.connect (ikeyan) #61064
  • [da93e2178c] - doc: move Security-Team from TSC to SECURITY (Rafael Gonzaga) #61495
  • [4bea821b4c] - lib: use utf8 fast path for streaming TextDecoder (Сковорода Никита Андреевич) #61549
  • [f05bad91d8] - lib: recycle queues (Robert Nagy) #61461
  • [44b1927938] - lib: use StringPrototypeStartsWith from primordials in locks (Taejin Kim) #61492
  • [a78259828a] - lib: unify ICU and no-ICU TextDecoder (Сковорода Никита Андреевич) #61409
  • [a28ddd4594] - module: do not wrap module._load when tracing is not enabled (Joyee Cheung) #61479
  • [4cf94fae17] - (SEMVER-MINOR) net: add setTOS and getTOS to Socket (Amol Yadav) #61503
  • [b861451d57] - process: do not truncate long strings in --print (Mohamed Akram) #61497
  • [4a2e184753] - sea: print error information when fs operations fail (Joyee Cheung) #61581
  • [45d25c47da] - sqlite: change approach to fix segfault SQLTagStore (Bart Louwers) #60462
  • [6993386320] - sqlite: reserve vectors space (Guilherme Araújo) #61540
  • [dce657071e] - (SEMVER-MINOR) src: add initial support for ESM in embedder API (Joyee Cheung) #61548
  • [e62608bbcf] - src: improve textEncoder encode performance with simdutf (Mert Can Altin) #61496
  • [0fce52d22c] - src: expose help texts into node-config-schema.json (Pietro Marchini) #58680
  • [be644e2569] - src: throw RangeError on failed ArrayBuffer BackingStore allocation (Chengzhong Wu) #61480
  • [93938a4738] - (SEMVER-MINOR) stream: add bytes() method to stream/consumers (wantaek) #60426
  • [83b2bf8ea2] - test: split test-fs-watch-ignore-* (Luigi Pinca) #61494
  • [4726627443] - test: aix: unflake test_threadsafe_function/test flaky on AIX (Stewart X Addison) #61560
  • [6fbb0b7572] - test: delay writing the files only on macOS (Luigi Pinca) #61532
  • [0a952b88bb] - test: ensure removeListener event fires for once() listeners (sangwook) #60137
  • [945b141c5d] - test: fix flaky debugger test (Ryuhei Shima) #58324
  • [256fc6770b] - test: update WPT for url to 81a2aed262 (Node.js GitHub Bot) #61509
  • [7725c8d596] - test: skip --build-sea tests on platforms where SEA is flaky (Joyee Cheung) #61504
  • [915d105ffd] - test_runner: update node-config-schema (Pietro Marchini) #58680
  • [fd8be14b33] - test_runner: fix passing expectFailure (Moshe Atlow) #61568
  • [c0dd9826bd] - test_runner: differentiate todo and failure styles (Moshe Atlow) #61564
  • [5fe2582329] - (SEMVER-MINOR) test_runner: add env option to run function (Ethan Arrowood) #61367
  • [39bea2236e] - tools: update gyp-next to 0.21.1 (Node.js GitHub Bot) #61528
  • [d5beb4fe1c] - tools: move Quic dependencies behind ad-hoc flag (Antoine du Hamel) #61446
  • [5c26087c29] - tools: add LIEF to license builder (Chengzhong Wu) #61523
  • [a181d0c43d] - url: update ada to v3.4.2 and support unicode 17 (Yagiz Nizipli) #61593

2026-01-26, Version 25.5.0 (Current), @aduh95

Notable Changes

  • [99a4e51f93] - crypto: update root certificates to NSS 3.119 (Node.js GitHub Bot) #61419
  • [fbe4da5725] - (SEMVER-MINOR) deps: add LIEF as a dependency (Joyee Cheung) #61167
  • [0feab0f083] - (SEMVER-MINOR) deps: add tools and scripts to pull LIEF as a dependency (Joyee Cheung) #61167
  • [e91b296001] - (SEMVER-MINOR) fs: add ignore option to fs.watch (Matteo Collina) #61433
  • [b351910af1] - (SEMVER-MINOR) sea: add --build-sea to generate SEA directly with Node.js binary (Joyee Cheung) #61167
  • [957292e233] - (SEMVER-MINOR) sea: split sea binary manipulation code (Joyee Cheung) #61167
  • [f289817ff8] - (SEMVER-MINOR) sqlite: enable defensive mode by default (Bart Louwers) #61266
  • [069f3603e2] - (SEMVER-MINOR) sqlite: add sqlite prepare options args (Guilherme Araújo) #61311
  • [5a984b9a09] - src: use node- prefix on thread names (Stewart X Addison) #61307
  • [75c06bc2a8] - (SEMVER-MINOR) test: migrate to --build-sea in existing SEA tests (Joyee Cheung) #61167
  • [cabd58f1cb] - (SEMVER-MINOR) test: use fixture directories for sea tests (Joyee Cheung) #61167
  • [ff1fcabfc9] - (SEMVER-MINOR) test_runner: support expecting a test-case to fail (Jacob Smith) #60669

Commits

  • [778a56f3c9] - assert,util: fix deep comparison for sets and maps with mixed types (Ruben Bridgewater) #61388
  • [32cd18e37f] - async_hooks: enabledHooksExist shall return if hooks are enabled (Gerhard Stöbich) #61054
  • [482b2568bc] - benchmark: add SQLite benchmarks (Guilherme Araújo) #61401
  • [e9a34263bb] - buffer: make methods work on Uint8Array instances (Neal Beeken) #56578
  • [8255cdefcf] - build: add --shared-nbytes configure flag (Antoine du Hamel) #61341
  • [8dd379d110] - build: update android-patches/trap-handler.h.patch (Mo Luo) #60369
  • [1b4b5eb0e4] - build: update devcontainer.json to use paired nix env (Joyee Cheung) #61414
  • [86e2a763ad] - build: infer cargo mode with gyp var build_type directly (Chengzhong Wu) #61354
  • [7e211e6942] - build: add embedtest into native suite (Joyee Cheung) #61357
  • [637470e79f] - build: fix misplaced comma in ldflags (hqzing) #61294
  • [a1a0f77a45] - build: fix crate vendor file checksums on windows (Chengzhong Wu) #61329
  • [d597b8e342] - build,tools: fix addon build deadlock on errors (Vladimir Morozov) #61321
  • [b5cdc27ba4] - build,win: improve logs when ClangCL is missing (Mike McCready) #61438
  • [ef01f0c033] - build,win: update WinGet configurations to Python 3.14 (Mike McCready) #61431
  • [d8a1cdeefe] - child_process: treat ipc length header as unsigned uint32 (Ryuhei Shima) #61344
  • [588b00fafa] - cluster: fix port reuse between cluster (Ryuhei Shima) #60141
  • [99a4e51f93] - crypto: update root certificates to NSS 3.119 (Node.js GitHub Bot) #61419
  • [048f7a5c9c] - deps: upgrade npm to 11.8.0 (npm team) #61466
  • [fbe4da5725] - (SEMVER-MINOR) deps: add LIEF as a dependency (Joyee Cheung) #61167
  • [0feab0f083] - (SEMVER-MINOR) deps: add tools and scripts to pull LIEF as a dependency (Joyee Cheung) #61167
  • [4bb00d7e3c] - deps: update googletest to 85087857ad10bd407cd6ed2f52f7ea9752db621f (Node.js GitHub Bot) #61417
  • [6a3c614f27] - deps: update sqlite to 3.51.2 (Node.js GitHub Bot) #61339
  • [13c0397d6d] - deps: update icu to 78.2 (Node.js GitHub Bot) #60523
  • [098ec6f196] - deps: update ada to v3.4.0 (Yagiz Nizipli) #61315
  • [320b576125] - deps: update zlib to 1.3.1-e00f703 (Node.js GitHub Bot) #61135
  • [98f5e7cf51] - deps: V8: cherry-pick highway@dcc0ca1cd42 (Richard Lau) #61008
  • [e326df79c9] - deps: V8: backport 209d2db9e24a (Zhijin Zeng) #61322
  • [ccfd9d9b30] - doc: remove v prefix for version references (Mike McCready) #61488
  • [b6cc5d77a1] - doc: mention constructor comparison in assert.deepStrictEqual (Hamza Kargin) #60253
  • [236d7ee635] - doc: add CVE delay mention (Rafael Gonzaga) #61465
  • [0729fb6ee7] - doc: update previous version links in BUILDING (Mike McCready) #61457
  • [0fb464252f] - doc: include OpenJSF handle for security stewards (Rafael Gonzaga) #61454
  • [3331bdca7c] - doc: clarify process.argv[1] behavior for -e/--eval (Jeevankumar S) #61366
  • [94b34c38e2] - doc: remove Windows Dev Home instructions from BUILDING (Mike McCready) #61434
  • [a17016ee81] - doc: clarify TypedArray properties on Buffer (Roman Reiss) #61355
  • [214fac9d7e] - doc: update Python 3.14 manual install instructions (Windows) (Mike McCready) #61428
  • [6a32a685a6] - doc: note resume build should not be done on node-test-commit (Stewart X Addison) #61373
  • [2a8e8dfaf3] - doc: refine WebAssembly error documentation (sangwook) #61382
  • [f3caf27f8b] - doc: add deprecation history for url.parse (Eng Zer Jun) #61389
  • [5ab8057856] - doc: add marco and rafael in last sec release (Marco Ippolito) #61383
  • [f83cb1e785] - doc: packages: example of private import switch to internal (coderaiser) #61343
  • [3d23bcd0e2] - doc: add esm and cjs examples to node:v8 (Alfredo González) #61328
  • [1d159550e0] - doc: added 'secure' event to tls.TLSSocket (ikeyan) #61066
  • [90080d2892] - doc: restore @watilde to collaborators (Daijiro Wachi) #61350
  • [a87f7a50f8] - doc: run license-builder (github-actions[bot]) #61348
  • [adf5c84701] - doc: clean up writing-and-running-benchmarks.md (Hardanish Singh) #61345
  • [2be98add0c] - doc: document ALPNCallback option for TLSSocket constructor (ikeyan) #61331
  • [2db4893c8d] - esm: ensure watch mode restarts after syntax errors (Xavier Stouder) #61232
  • [828feb2e6b] - events: remove redundant todo (Gürgün Dayıoğlu) #60595
  • [e91b296001] - (SEMVER-MINOR) fs: add ignore option to fs.watch (Matteo Collina) #61433
  • [606184fae5] - fs: remove duplicate getValidatedPath calls (Mert Can Altin) #61359
  • [434fcd7f8f] - fs: fix errorOnExist behavior for directory copy in fs.cp (Nicholas Paun) #60946
  • [bacba16f5e] - fs: fix ENOTDIR in globSync when file is treated as dir (sangwook) #61259
  • [7697ce0310] - fs: remove duplicate fd validation in sync functions (Mert Can Altin) #61361
  • [8abd54f597] - gyp: aix: change gcc version detection so CXX="ccache g++" works (Stewart X Addison) #61464
  • [24033ee7ea] - http: fix rawHeaders exceeding maxHeadersCount limit (Max Harari) #61285
  • [cf56327939] - http2: validate initialWindowSize per HTTP/2 spec (Matteo Collina) #61402
  • [696935eeeb] - inspector: initial support storage inspection (Ryuhei Shima) #61139
  • [3d5e718e38] - lib: fix typo in util.js comment (Taejin Kim) #61365
  • [f55a5fea00] - lib: fix TypeScript support check in jitless mode (sangwook) #61382
  • [b3fbc3c375] - meta: do not fast-track npm updates (Antoine du Hamel) #61475
  • [2423ecdaef] - meta: fix typos in issue template config (Daijiro Wachi) #61399
  • [e2df85a33a] - meta: label v8 module PRs (René) #61325
  • [bc9e5f7d4d] - node-api: fix node_api_create_object_with_properties name (Vladimir Morozov) #61319
  • [4f30c21c59] - node-api: use Node-API in comments (Vladimir Morozov) #61320
  • [62d71eb28d] - quic: copy options.certs buffer instead of detaching (Chengzhong Wu) #61403
  • [4bbbe75ba1] - quic: move quic behind compile time flag (Matteo Collina) #61444
  • [b351910af1] - (SEMVER-MINOR) sea: add --build-sea to generate SEA directly with Node.js binary (Joyee Cheung) #61167
  • [957292e233] - (SEMVER-MINOR) sea: split sea binary manipulation code (Joyee Cheung) #61167
  • [f289817ff8] - (SEMVER-MINOR) sqlite: enable defensive mode by default (Bart Louwers) #61266
  • [6442229880] - sqlite: add some tests (Guilherme Araújo) #61410
  • [069f3603e2] - (SEMVER-MINOR) sqlite: add sqlite prepare options args (Guilherme Araújo) #61311
  • [df02d00d61] - src: improve StringBytes::Encode perf on UTF8 (Сковорода Никита Андреевич) #61131
  • [e35814ba80] - src: add missing override specifier to Clean() (Tobias Nießen) #61429
  • [803ff7d3de] - src: cache context lookup in vectored io loops (Mert Can Altin) #61387
  • [58abe99cbf] - src: cache missing package.json files in the C++ package config cache (Michael Smith) #60425
  • [2a542094e4] - src: use starts_with instead of rfind/find (Tobias Nießen) #61426
  • [77cacf6d9d] - src: use C++ nullptr in sqlite (Tobias Nießen) #61416
  • [344cc629d4] - src: use C++ nullptr in webstorage (Tobias Nießen) #61407
  • [9f25cad26c] - src: fix pointer alignment (jhofstee) #61336
  • [5a984b9a09] - src: use node- prefix on thread names (Stewart X Addison) #61307
  • [d4cf423a65] - stream: export namespace object from internal end-of-stream module (René) #61455
  • [7d8232e34c] - test: add some validation for JSON doc output (Antoine du Hamel) #61413
  • [75c06bc2a8] - (SEMVER-MINOR) test: migrate to --build-sea in existing SEA tests (Joyee Cheung) #61167
  • [cabd58f1cb] - (SEMVER-MINOR) test: use fixture directories for sea tests (Joyee Cheung) #61167
  • [bcffca8911] - test: aix: mark test_threadsafe_function/test flaky on AIX (Stewart X Addison) #61452
  • [29399501c1] - test: add implicit test for fs dispose handling with using (Ilyas Shabi) #61140
  • [3bb481571a] - test: reveal wpt evaluation errors in status files (Chengzhong Wu) #61358
  • [a132be7f71] - test: check new WebCryptoAPI enum values (Filip Skokan) #61406
  • [72f1463735] - test: split test-esm-loader-hooks (Joyee Cheung) #61374
  • [39105e4c5f] - test: aix: mark test-emit-on-destroyed as flaky (Stewart X Addison) #61381
  • [3f17acfb1c] - test: add webidl web-platform tests (Yagiz Nizipli) #61316
  • [89983cf747] - test: update url web-platform tests (Yagiz Nizipli) #61315
  • [73c0a242d7] - test: forbid use of named imports for fixtures (Antoine du Hamel) #61228
  • [a49d54308e] - test: enforce better never-settling-promise detection (Antoine du Hamel) #60976
  • [335cb0b5cc] - test: ensure assertions are reached on all tests (Antoine du Hamel) #60845
  • [5ee02c789a] - test: ensure assertions are reached on more tests (Antoine du Hamel) #60763
  • [141fb82ffb] - test: ensure assertions are reached on more tests (Antoine du Hamel) #60760
  • [edf90ce457] - test: use RegExp.escape to improve test reliability (Antoine du Hamel) #60803
  • [f5f9b2dcf6] - test: ensure assertions are reached on more tests (Antoine du Hamel) #60728
  • [ec1cbbe0b6] - test_runner: fix memory leaks in runner (Abhishek Kv. Savani) #60860
  • [399ac68427] - test_runner: fix coverage report when a directory is named file (Heath Dutton🕴️) #61169
  • [6e1beda333] - test_runner: print info when test restarts (Xavier Stouder) #61160
  • [f5803ccb86] - test_runner: fix rerun ambiguous test failures (Moshe Atlow) #61392
  • [a5a4c3eb44] - test_runner: nix dead reporter code (Vas Sudanagunta) #59700
  • [ff1fcabfc9] - (SEMVER-MINOR) test_runner: support expecting a test-case to fail (Jacob Smith) #60669
  • [ade4fc2338] - tools: copyedit Nix files (Antoine du Hamel) #61447
  • [7c2242beb9] - tools: validate release commit diff as part of lint-release-proposal (Antoine du Hamel) #61440
  • [ca4ebed258] - tools: use ad-hoc flag to lint Nix files (Antoine du Hamel) #61405
  • [05ce2c87f3] - tools: fix vcbuild lint-js-build (Vladimir Morozov) #61318
  • [41adb54a37] - tools: enforce trailing commas in test/es-module (Antoine du Hamel) #60891
  • [eebd732a52] - tools: enforce trailing commas in test/sequential (Antoine du Hamel) #60892
  • [8b73739e03] - typings: add typing for string_decoder (Taejin Kim) #61368
  • [e88dd012ad] - v8: changing total_allocated_bytes to avoid ABI changes (Caio Lima) #60800
  • [c75ad3d87d] - v8: add GCProfiler support for erm (Ilyas Shabi) #61191
  • [611c179663] - zlib: validate write_result array length (Ryuhei Shima) #61342

2026-01-19, Version 25.4.0 (Current), @RafaelGSS

Notable Changes

  • [8f6fada8f1] - cli: add --require-module/--no-require-module (Joyee Cheung) #60959
  • [bf8e738df4] - cli: mark --heapsnapshot-near-heap-limit as stable (Joyee Cheung) #60956
  • [7930d7a19b] - crypto: update root certificates to NSS 3.117 (Node.js GitHub Bot) #60741
  • [44f61dfb92] - doc: add @avivkeller to collaborators (Aviv Keller) #61115
  • [45903ee884] - doc: add gurgunday to collaborators (Gürgün Dayıoğlu) #61094
  • [77faa14d99] - doc: mark --build-snapshot and --build-snapshot-config as stable (Joyee Cheung) #60954
  • [aefbe4ba47] - (SEMVER-MINOR) events: repurpose events.listenerCount() to accept EventTargets (René) #60214
  • [8470e2993b] - (SEMVER-MINOR) http: add http.setGlobalProxyFromEnv() (Joyee Cheung) #60953
  • [24384d7438] - meta: add Renegade334 to collaborators (Renegade334) #60714
  • [c1acef6d0f] - module: mark require(esm) as stable (Joyee Cheung) #60959
  • [2e39f3ed6b] - module: mark module compile cache as stable (Joyee Cheung) #60971
  • [e6a05cfb4f] - (SEMVER-MINOR) module: allow subpath imports that start with #/ (Jan Martin) #60864
  • [fa927c31da] - (SEMVER-MINOR) process: preserve AsyncLocalStorage in queueMicrotask only when needed (Gürgün Dayıoğlu) #60913
  • [bd0942f4f5] - (SEMVER-MINOR) stream: do not pass readable.compose() output via Readable.from() (René) #60907
  • [5051d90100] - (SEMVER-MINOR) util: add convertProcessSignalToExitCode utility (Erick Wendel) #60963
  • [408f024906] - v8: mark v8.queryObjects() as stable (Joyee Cheung) #60957

Commits

  • [e61cfdbf50] - assert: use a set instead of an array for faster lookup (Ruben Bridgewater) #61076
  • [11861084fd] - assert,util: improve comparison performance (Ruben Bridgewater) #61176
  • [4ef4f759cb] - assert,util: fix deep comparing invalid dates skipping properties (Ruben Bridgewater) #61076
  • [c8fccd585f] - assert,util: improve deep comparison performance (Ruben Bridgewater) #61076
  • [13661a0123] - benchmark: use boolean options in benchmark tests (SeokhunEom) #60129
  • [36dead3433] - benchmark: allow boolean option values (SeokhunEom) #60129
  • [376056eaef] - benchmark: add microbench on isInsideNodeModules (Chengzhong Wu) #60991
  • [22d3e85b7a] - benchmark: fix incorrect base64 input in byteLength benchmark (semimikoh) #60841
  • [5016f75522] - benchmark: use typescript for import cjs benchmark (Joyee Cheung) #60663
  • [012a08f6eb] - buffer: let Buffer.of use heap (Сковорода Никита Андреевич) #60503
  • [65696e42ba] - build: add --shared-hdr-histogram configure flag (Antoine du Hamel) #61280
  • [6155b8836e] - build: add --shared-gtest configure flag (Antoine du Hamel) #61279
  • [e80127f49c] - build: expose libplatform symbols in shared libnode (Joyee Cheung) #61144
  • [d99805049e] - build: fix inconsistent quoting in Makefile (Antoine du Hamel) #60511
  • [3213de08e8] - build: support building crates (temporal) on windows (沈鸿飞) #61163
  • [1ad8788391] - build: remove temporal updater (Chengzhong Wu) #61151
  • [e6e25d65be] - build: add --debug-symbols to build with -g without enabling DCHECKs (Joyee Cheung) #61100
  • [7040ec94c8] - build: update test-wpt-report to use NODE instead of OUT_NODE (Filip Skokan) #61024
  • [990da3518d] - build: skip build-ci on actions with a separate test step (Chengzhong Wu) #61073
  • [3259e395c9] - build: run embedtest with node_g when BUILDTYPE=Debug (Chengzhong Wu) #60850
  • [af42ca569f] - build: ignore built-in temporal when building with shared lib (Chengzhong Wu) #60703
  • [bec7fce07a] - build: add temporal_capi gyp (Chengzhong Wu) #60703
  • [d2f50047f7] - build: fix OpenSSL version parsing for OpenSSL < 3 (Richard Lau) #60775
  • [91b20c52df] - build: add flag to compile V8 with Temporal support (Antoine du Hamel) #60701
  • [0aaed248f0] - build: add support for Visual Studio 2026 (Michaël Zasso) #60727
  • [8f6fada8f1] - cli: add --require-module/--no-require-module (Joyee Cheung) #60959
  • [bf8e738df4] - cli: mark --heapsnapshot-near-heap-limit as stable (Joyee Cheung) #60956
  • [7930d7a19b] - crypto: update root certificates to NSS 3.117 (Node.js GitHub Bot) #60741
  • [1b15453602] - deps: update cjs-module-lexer to 2.2.0 (Node.js GitHub Bot) #61271
  • [118fa97c95] - deps: update nbytes to 0.1.2 (Node.js GitHub Bot) #61270
  • [9b136db814] - deps: update ngtcp2 to 1.19.0 (Node.js GitHub Bot) #61156
  • [5635f23a50] - deps: update nghttp3 to 1.14.0 (Node.js GitHub Bot) #61187
  • [9ec35c0977] - deps: update nghttp3 to 1.13.1 (Node.js GitHub Bot) #60046
  • [4d7d37f701] - deps: update timezone to 2025c (Node.js GitHub Bot) #61138
  • [2c1e3ab19d] - deps: nghttp2: revert 7784fa979d0b (Antoine du Hamel) #61136
  • [56a6513648] - deps: update nghttp2 to 1.68.0 (nodejs-github-bot) #61136
  • [f2692c5534] - deps: remove independent temporal (Chengzhong Wu) #61072
  • [3acbf3f129] - deps: apply cargo vendor (Chengzhong Wu) #61072
  • [d2759f4805] - deps: add vendor depenency crate (Chengzhong Wu) #61072
  • [6330385174] - deps: update simdjson to 4.2.4 (Node.js GitHub Bot) #61056
  • [9835860115] - deps: update googletest to 065127f1e4b46c5f14fc73cf8d323c221f9dc68e (Node.js GitHub Bot) #61055
  • [d2e6dff2f9] - deps: brotli: cherry-pick e230f474b87 (liujiahui) #61003
  • [27da9ca1c7] - deps: upgrade npm to 11.7.0 (npm team) #61011
  • [398ba68793] - deps: V8: cherry-pick 72b0e27bd936 (pthier) #60706
  • [a8ae3b9557] - deps: update sqlite to 3.51.1 (Node.js GitHub Bot) #60899
  • [4e1edae655] - deps: update zlib to 1.3.1-63d7e16 (Node.js GitHub Bot) #60898
  • [49b5954e74] - deps: update corepack to 0.34.5 (Node.js GitHub Bot) #60842
  • [6ae415361f] - deps: upgrade npm to 11.6.4 (npm team) #60853
  • [3cc857001a] - deps: add temporal_rs 0.1.0 (Chengzhong Wu) #60703
  • [660788cd4b] - deps: update sqlite to 3.51.0 (Node.js GitHub Bot) #60614
  • [c6d7a7b7cd] - deps: upgrade npm to 11.6.3 (npm team) #60785
  • [062e15bddf] - deps: update brotli to 1.2.0 (Node.js GitHub Bot) #60540
  • [db053988db] - deps: update simdjson to 4.2.2 (Node.js GitHub Bot) #60740
  • [ea5deab531] - deps: update googletest to 1b96fa13f549387b7549cc89e1a785cf143a1a50 (Node.js GitHub Bot) #60739
  • [c23f40cca4] - deps: update minimatch to 10.1.1 (Node.js GitHub Bot) #60543
  • [479c9290b9] - deps: update corepack to 0.34.4 (Node.js GitHub Bot) #60643
  • [e42911eddd] - deps: update inspector_protocol to 1b1bcbbe060e8c8cd8704f00f78978c50991 (Node.js GitHub Bot) #60705
  • [d908c83330] - deps: update cjs-module-lexer to 2.1.1 (Node.js GitHub Bot) #60646
  • [96530a4ca6] - deps: update simdjson to 4.2.1 (Node.js GitHub Bot) #60644
  • [6b0926ef20] - deps,src: prepare for cpplint update (Michaël Zasso) #60901
  • [5ed71efa3e] - doc: fix v25 changelog after security release (Marco Ippolito) #61371
  • [c2791069a2] - doc: correct description of error.stack accessor behavior (René) #61090
  • [134780c035] - doc: add documentation for process.traceProcessWarnings (Alireza Ebrahimkhani) #53641
  • [3b08efcebb] - doc: add sqlite session disposal method (René) #61273
  • [ec1847a097] - doc: fix filename typo (Hardanish Singh) #61297
  • [2c651ce460] - doc: fix typos and grammar in BUILDING.md & onboarding.md (Hardanish Singh) #61267
  • [28fe6ea4a8] - doc: mention --newVersion release script (Rafael Gonzaga) #61255
  • [2fb35d897d] - doc: correct typo in BUILDING doc (Mike McCready) #61261
  • [8dc2501a25] - doc: correct typo in api contributing doc (Mike McCready) #61260
  • [69e357a9d4] - doc: add PR-URL requirement for security backports (Rafael Gonzaga) #61256
  • [73326ae103] - doc: add reusePort error behavior to net module (mag123c) #61250
  • [67fbf4d371] - doc: note corepack package removal in distribution doc (Mike McCready) #61207
  • [0792859e49] - doc: fix tls.connect() timeout documentation (Azad Gupta) #61079
  • [72f42b9985] - doc: missing passed, error and passed properties on TestContext (Xavier Stouder) #61185
  • [f418fcc635] - doc: clarify threat model for application-level API exposure (Rafael Gonzaga) #61184
  • [bd4710769a] - doc: correct options for net.Socket class and socket.connect (Xavier Stouder) #61179
  • [387b65ca08] - doc: document error event on readline InterfaceConstructor (Xavier Stouder) #61170
  • [6d886e10e4] - doc: add a smooth scrolling effect to the sidebar (btea) #59007
  • [23fb3a64ec] - doc: fix test settime docs (Efe) #61117
  • [808eb437ee] - doc: correct invalid collaborator profile (JJ) #61091
  • [5e8eb5fe6c] - doc: add a tip about developer mode on Windows (Joyee Cheung) #61112
  • [a4248776da] - doc: exclude compile-time flag features from security policy (Matteo Collina) #61109
  • [44f61dfb92] - doc: add @avivkeller to collaborators (Aviv Keller) #61115
  • [08b5347b41] - doc: warn about short GCM tags visibly (Tobias Nießen) #61082
  • [45903ee884] - doc: add gurgunday to collaborators (Gürgün Dayıoğlu) #61094
  • [ce5d6e22ef] - doc: update MDN links (Livia Medeiros) #61062
  • [657cbd4af3] - doc: mark sync module hooks as release candidate (Joyee Cheung) #60960
  • [a46368a82b] - doc: reorganize docs of module customization hooks (Joyee Cheung) #60960
  • [9851278e99] - doc: mark crypto.hash as stable (Joyee Cheung) #60994
  • [77faa14d99] - doc: mark --build-snapshot and --build-snapshot-config as stable (Joyee Cheung) #60954
  • [6d5f9ffc6d] - doc: add File modes cross-references in fs methods (Mohit Raj Saxena) #60286
  • [521b25a27d] - doc: add missing zstd to mjs example of zlib (Deokjin Kim) #60915
  • [9a9bed9b3a] - doc: clarify fileURLToPath security considerations (Rafael Gonzaga) #60887
  • [bebb4731b1] - doc: show the use of string expressions in the SQLTagStore example (schliepa) #60873
  • [f247c24cb0] - doc: replace column with columnNumber in example of util.getCallSites (Deokjin Kim) #60881
  • [487c1080aa] - doc: correct spelling in BUILDING.md (Rich Trott) #60875
  • [5751e3f736] - doc: update debuglog examples to use 'foo-bar' instead of 'foo' (xiaoyao) #60867
  • [ec8336b7a0] - doc: correct 'event handle' to 'event handler' in Utf8Stream drop event (Riddhi) #60692
  • [95ef052751] - doc: fix typos in changelogs (Rich Trott) #60855
  • [a10b3130c6] - doc: mark module.register as active development (Chengzhong Wu) #60849
  • [bfe8c62a2d] - doc: add fullName property to SuiteContext (PaulyBearCoding) #60762
  • [2799f594e3] - doc: add additional codemods for deprecation (Augustin Mauroy) #60811
  • [2b51d5d113] - doc: keep sidebar module visible when navigating docs (Botato) #60410
  • [2fa9917b07] - doc: fix webstorage config file property (Marco Ippolito) #60798
  • [a0691d6eb6] - doc: correct concurrency wording in test() documentation (Azad Gupta) #60773
  • [d26842c523] - doc: clarify that CQ only picks up PRs targeting main (René) #60731
  • [3e84428ffe] - doc: clarify license section and add contributor note (KaleruMadhu) #60590
  • [745ea1d61f] - doc: correct and expand documentation for SQLTagStore (René) #60200
  • [a442c27c0a] - doc: correct tls ALPNProtocols types (René) #60143
  • [d90001a579] - doc: remove mention of SMS 2FA (Antoine du Hamel) #60707
  • [7525a3fa4b] - doc: add info about renamed flag in cli.md (Antoine du Hamel) #60690
  • [db0a86897b] - doc: fix incorrect slh-dsa oids in crypto.md (Artsiom Malakhau) #60681
  • [e5ede89a94] - doc: domain.add() does not accept timer objects (René) #60675
  • [36ba9d99ba] - Revert "doc, assert: correct order of changes entries" (Michaël Zasso) #60774
  • [e6e5ed7665] - doc,test: add documentation and test on how to use addons in SEA (Joyee Cheung) #59582
  • [f12eb28489] - esm: avoid throw when module specifier is not url (Craig Macomber (Microsoft)) #61000
  • [a7b92e0677] - esm: improve error messages for ambiguous module syntax (mag123c) #60376
  • [6da85b576b] - events: remove eventtarget custom inspect branding (Efe) #61128
  • [aefbe4ba47] - (SEMVER-MINOR) events: repurpose events.listenerCount() to accept EventTargets (René) #60214
  • [dc19409f36] - fs: validate statfs path (Efe) #61230
  • [206e353a4a] - fs: fix rmSync to handle non-ASCII characters (Yeaseen) #61108
  • [feee377b83] - fs: remove broken symlinks in rmSync (sangwook) #61040
  • [6b577c80bb] - fs: detect dot files when using globstar (Robin van Wijngaarden) #61012
  • [8470e2993b] - (SEMVER-MINOR) http: add http.setGlobalProxyFromEnv() (Joyee Cheung) #60953
  • [a731463a60] - http,https: fix double ERR_PROXY_TUNNEL emission (Shima Ryuhei) #60699
  • [b2736646b6] - http2,zlib: prefer call() over apply() if argument list is not array (Livia Medeiros) #60834
  • [86bce15e96] - lib: implement all 1-byte encodings in js (Сковорода Никита Андреевич) #61093
  • [8156738b97] - lib: gbk decoder is gb18030 decoder per spec (Сковорода Никита Андреевич) #61099
  • [d8f1dea0d3] - lib: enforce use of URLParse (Antoine du Hamel) #61016
  • [9023b3f9ce] - lib: add lint rules for reflective function calls (Antoine du Hamel) #60825
  • [2979113136] - lib: prefer call() over apply() if argument list is not array (Livia Medeiros) #60796
  • [2b36433f4a] - lib: add support for readable byte streams to .toWeb() (Hans Klunder) #58664
  • [1a0c3dddb9] - lib: use FastBuffer for empty buffer allocation (Gürgün Dayıoğlu) #60558
  • [9209cf67a4] - lib: refactor JWK import PQC support check (Filip Skokan) #60586
  • [42666c241a] - lib,src: isInsideNodeModules should test on the first non-internal frame (Chengzhong Wu) #60991
  • [4a22647609] - lib,src,test: fix tests without SQLite (Antoine du Hamel) #60906
  • [24795530bb] - lib,test: enforce use of assert.fail via a lint rule (Antoine du Hamel) #61004
  • [1977348ae0] - lib,test: fix jsdoc comments (Michaël Zasso) #60870
  • [3549cf14ce] - meta: remove t.js (RafaelGSS) #61369
  • [5cf54abad7] - meta: bump step-security/harden-runner from 2.13.2 to 2.14.0 (dependabot[bot]) #61245
  • [b57bab72e1] - meta: bump actions/setup-node from 6.0.0 to 6.1.0 (dependabot[bot]) #61244
  • [42117b5069] - meta: bump actions/cache from 4.3.0 to 5.0.1 (dependabot[bot]) #61243
  • [fee3edd38e] - meta: bump actions/download-artifact from 6.0.0 to 7.0.0 (dependabot[bot]) #61242
  • [a96c3160ff] - meta: bump github/codeql-action from 4.31.6 to 4.31.9 (dependabot[bot]) #61241
  • [b4233e18a9] - meta: bump codecov/codecov-action from 5.5.1 to 5.5.2 (dependabot[bot]) #61240
  • [c5d7dd3731] - meta: bump actions/checkout from 6.0.0 to 6.0.1 (dependabot[bot]) #61239
  • [d83cec1534] - meta: bump actions/upload-artifact from 5.0.0 to 6.0.0 (dependabot[bot]) #61238
  • [d4bfd26f06] - meta: bump peter-evans/create-pull-request from 7.0.9 to 8.0.0 (dependabot[bot]) #61237
  • [9246c6ab12] - meta: bump cachix/install-nix-action from 31.8.4 to 31.9.0 (dependabot[bot]) #61236
  • [1b378cfd5e] - meta: move lukekarrys to emeritus (Node.js GitHub Bot) #60985
  • [f3bfa68d78] - meta: bump actions/setup-python from 6.0.0 to 6.1.0 (dependabot[bot]) #60927
  • [f1935d19e9] - meta: bump github/codeql-action from 4.31.3 to 4.31.6 (dependabot[bot]) #60926
  • [0a4a4c090d] - meta: bump actions/checkout from 5.0.1 to 6.0.0 (dependabot[bot]) #60925
  • [d76f95117b] - meta: bump peter-evans/create-pull-request from 7.0.8 to 7.0.9 (dependabot[bot]) #60924
  • [4dd153f8c3] - meta: bump github/codeql-action from 4.31.2 to 4.31.3 (dependabot[bot]) #60770
  • [a90bf3ece1] - meta: bump step-security/harden-runner from 2.13.1 to 2.13.2 (dependabot[bot]) #60769
  • [ecc945d7ec] - meta: bump cachix/install-nix-action from 31.8.2 to 31.8.4 (dependabot[bot]) #60768
  • [5578327a4f] - meta: bump actions/checkout from 5.0.0 to 5.0.1 (dependabot[bot]) #60767
  • [24384d7438] - meta: add Renegade334 to collaborators (Renegade334) #60714
  • [2d560e42fa] - module: fix sync resolve hooks for require with node: prefixes (Joyee Cheung) #61088
  • [15c3655b9a] - module: preserve URL in the parent created by createRequire() (Joyee Cheung) #60974
  • [c1acef6d0f] - module: mark require(esm) as stable (Joyee Cheung) #60959
  • [2e39f3ed6b] - module: mark module compile cache as stable (Joyee Cheung) #60971
  • [e6a05cfb4f] - (SEMVER-MINOR) module: allow subpath imports that start with #/ (Jan Martin) #60864
  • [1983cd6692] - node-api: add napi_set_prototype (siaeyy) #60711
  • [350b0ea895] - node-api: fix data race and use-after-free in napi_threadsafe_function (Mika Fischer) #55877
  • [cb3f79273a] - node-api: add support for Float16Array (Ilyas Shabi) #58879
  • [bdf359b3d1] - node-api: support SharedArrayBuffer in napi_create_dataview (Kevin Eady) #60473
  • [3c5dc03f06] - os: freeze signals constant (Xavier Stouder) #61038
  • [ca5c4c9752] - process: improve process.cwd() error message (TseIan) #61164
  • [fa927c31da] - (SEMVER-MINOR) process: preserve AsyncLocalStorage in queueMicrotask only when needed (Gürgün Dayıoğlu) #60913
  • [571cec49e0] - repl: fix getters triggering side effects during completion (Dario Piotrowicz) #61043
  • [377aed336c] - repl: tab completion targets <class> instead of new <class> (Đỗ Trọng Hải) #60319
  • [cb8bc3466d] - sqlite: improve error messages for tag store (Pramit Sharma) #61096
  • [324ea4fa2d] - sqlite: make SQLTagStore.prototype.size a getter (René) #60246
  • [874c50296d] - src: dump snapshot source with node:generate_default_snapshot_source (Joyee Cheung) #61101
  • [0692b4f014] - src: improve StringBytes::Encode perf on ASCII (Сковорода Никита Андреевич) #61119
  • [754271a1f0] - src: add HandleScope to edge loop in heap_utils (Mert Can Altin) #60885
  • [8f46bd9352] - src: remove redundant CHECK (Tobias Nießen) #61130
  • [5e6ffd9aa0] - src: remove unused private field in SQLTagStore (Michaël Zasso) #61027
  • [550e8a7a69] - src: implement Windows-1252 encoding support and update related tests (Mert Can Altin) #60893
  • [3f9c0e07b4] - src: fix off-thread cert loading in bundled cert mode (Joyee Cheung) #60764
  • [7eaf815341] - src: handle DER decoding errors from system certificates (Joyee Cheung) #60787
  • [6e76cec44a] - src: use static_cast instead of C-style cast (Michaël Zasso) #60868
  • [103e55487e] - src: handle indexed properties in process.env (Michaël Zasso) #60826
  • [83d1f41752] - src: simply uint32 to string as it must not fail (Chengzhong Wu) #60846
  • [2dfdc6f01e] - src: mark unused private field as such (Michaël Zasso) #60802
  • [920f02539e] - src: implicitly enable namespace in config (Marco Ippolito) #60798
  • [47c5bd9b7c] - src: add permission flag to config file (Marco Ippolito) #60798
  • [d9df3f710d] - src: add test flag to config file (Marco Ippolito) #60798
  • [831256cb92] - src: rename config file testRunner to test (Marco Ippolito) #60798
  • [6c2b75ba87] - src: split inspector protocol domains files (Chengzhong Wu) #60754
  • [51cf032a5e] - src: add permission support to config file (Marco Ippolito) #60746
  • [413db7c635] - src: build v8 tick processor as built-in source text modules (Joyee Cheung) #60518
  • [428d24acf5] - src,permission: fix permission.has on empty param (Rafael Gonzaga) #60674
  • [a60aa72a87] - src,permission: add debug log on is_tree_granted (Rafael Gonzaga) #60668
  • [bd0942f4f5] - (SEMVER-MINOR) stream: do not pass readable.compose() output via Readable.from() (René) #60907
  • [90c12a252a] - stream: fix isErrored/isWritable for WritableStreams (René) #60905
  • [9ac774c15b] - test: asserts that import.meta.resolve invokes sync loader hooks (Chengzhong Wu) #61158
  • [c08afc5712] - test: check util.parseArgs argv parsing with actual process execution (René) #61089
  • [182f2e4b5a] - test: update WPT for urlpattern to a2e15ad405 (Node.js GitHub Bot) #61134
  • [9f7cc779f5] - test: make buffer sizes 32bit-aware in test-internal-util-construct-sab (René) #61026
  • [c6a8234963] - test: remove unneccessary repl magic_mode tests (Dario Piotrowicz) #61053
  • [fa2fe0930f] - test: skip sea tests on riscv64 (Stewart X Addison) #61111
  • [b209f6ba19] - test: simplify test-cli-node-options-docs (Antoine du Hamel) #61006
  • [c9153c7d4f] - test: mark stringbytes-external-max flaky on AIX (Stewart X Addison) #60995
  • [2cbddfefb7] - test: update test426 fixtures (Rich Trott) #60982
  • [c7190e6876] - test: update WPT for urlpattern to aed1f3d244 (Node.js GitHub Bot) #60642
  • [92649e2873] - test: deflake test-repl-paste-big-data (Livia Medeiros) #60975
  • [e4bc345442] - test: skip tests not passing without NODE_OPTIONS support (Antoine du Hamel) #60912
  • [63299a47ec] - test: improve config-file permission test coverage (Rafael Gonzaga) #60929
  • [9a0c420a33] - test: skip SEA inspect test if inspector is not available (Livia Medeiros) #60872
  • [e97daea17c] - test: update WPT for WebCryptoAPI to 1e4933113d (Node.js GitHub Bot) #60896
  • [ac367b3550] - test: lint more assert(regexp.test(...)) cases (René) #60878
  • [ca5720e7b5] - test: use assert.match for non-literal regexp tests (René) #60879
  • [5d30d3fc2d] - test: fix embedtest in debug windows (Vladimir Morozov) #60806
  • [8caeb03a52] - test: skip failing tests when compiled without amaro (Yuki Okita) #60815
  • [242e20bf9a] - test: fix debug test crashes caused by sea tests (Vladimir Morozov) #60807
  • [b890362e1a] - test: add lint rule to forbid use of assert.ok(/regex/.test(…)) (Antoine du Hamel) #60832
  • [b08cb5657e] - test: replace deprecated regex test assertions in http trailers test (Aditya Chopra) #60831
  • [47ed95965e] - test: ensure assertions are reached on more tests (Antoine du Hamel) #60761
  • [79d48f9441] - test: ensure assertions are reached on more tests (Antoine du Hamel) #60759
  • [585e200b40] - test: prefer major GC in cppgc-object teardown (sangwook) #60672
  • [9426ff6b08] - test: add basic temporal presence check (Chengzhong Wu) #60703
  • [ffebf8e55c] - test: ensure assertions are reached on more tests (Antoine du Hamel) #60726
  • [adc6776c6a] - test: ensure assertions are reached on HTTP2 tests (Antoine du Hamel) #60730
  • [3dae49c6ce] - test: ensure assertions are reached on HTTP tests (Antoine du Hamel) #60729
  • [5203b09fea] - test: skip test that cause timeout on IBM i (SRAVANI GUNDEPALLI) #60700
  • [6d2fe36747] - test: add missing r.close() calls in REPL multiline tests (sangwook) #60226
  • [bbee2ef5e0] - test: ensure assertions are reached on more tests (Antoine du Hamel) #60634
  • [a2764d450d] - test: update WPT for WebCryptoAPI to c58b6f4e0e (Node.js GitHub Bot) #60702
  • [1176fe43a7] - test: fix test-buffer-zero-fill-cli to be effective (Сковорода Никита Андреевич) #60623
  • [1a66dc1292] - test: limit the concurrency of WPTRunner for RISC-V (Levi Zim) #60591
  • [36076846d4] - test: fix test-strace-openat-openssl for RISC-V (Levi Zim) #60588
  • [5a976cb507] - test: split test-runner-run-watch.mjs (Joyee Cheung) #60653
  • [8f611b9bce] - test: ensure assertions are reached on more tests (Antoine du Hamel) #60641
  • [3e550d30d6] - test_runner: fix lazy test.assert accessor (René) #61097
  • [ec142be1ed] - test_runner: propagate V8 options to child process (Pietro Marchini) #60999
  • [3127a2b1e7] - test_runner: fix line feed escaping in JUnit (Aliaksandr) #60274
  • [08fb6c9ba4] - test_runner: simplify code and make it more consistent (Antoine du Hamel) #60777
  • [102b217cf3] - tools: bump the eslint group in /tools/eslint with 2 updates (dependabot[bot]) #61246
  • [97b6b61165] - tools: unpin ngtcp2 version updates (Michaël Zasso) #61155
  • [7e95edc3de] - tools: only report commit validation failure on Slack (Antoine du Hamel) #61124
  • [3a7ed257a3] - tools: use sparse-checkout in linter jobs (Antoine du Hamel) #61123
  • [b655edf1bf] - tools: simplify notify-on-push (Antoine du Hamel) #61050
  • [230155749d] - tools: fix update-nghttp2 signature verification (Richard Lau) #61035
  • [e8646a7d10] - tools: improve log output of create-release-proposal (Antoine du Hamel) #61028
  • [a4b2614912] - tools: fix vcbuild test when path contain spaces (stduhpf) #56481
  • [9769c359f8] - tools: do not run test-linux workflow for changes on vcbuild.bat (Antoine du Hamel) #60979
  • [2ceaf6eb3c] - tools: add some options and comments to shell.nix (Antoine du Hamel) #60911
  • [611135abdc] - tools: bump mdast-util-to-hast from 13.2.0 to 13.2.1 in /tools/doc (dependabot[bot]) #60930
  • [b4bad20a6c] - tools: ignore more paths in GHA CI (Antoine du Hamel) #60920
  • [47b7cb4e9e] - tools: run tests --without-amaro on test-shared macOS (Antoine du Hamel) #60902
  • [b0ec8c9c2a] - tools: replace deprecated eslint-plugin-markdown (Michaël Zasso) #60908
  • [46dacf686e] - tools: remove deprecated ESLint plugins (Michaël Zasso) #60908
  • [1a4ec6e830] - tools: update ESLint dependencies (Michaël Zasso) #60908
  • [4e442b286d] - tools: refloat 10 Node.js patches to cpplint.py (Michaël Zasso) #60901
  • [fa90d09de6] - tools: update cpplint to 2.0.2 (Michaël Zasso) #60901
  • [4d944c5198] - tools: disable some new cpplint rules before update (Michaël Zasso) #60901
  • [eaebae1eed] - tools: don't fetch V8 deps in the source tree (Richard Lau) #60883
  • [256770944a] - tools: add temporal updater (Chengzhong Wu) #60828
  • [1c38f808bd] - tools: dump config.gypi as json (Chengzhong Wu) #60794
  • [ed89b35291] - tools: bump js-yaml from 4.1.0 to 4.1.1 in /tools/lint-md (dependabot[bot]) #60781
  • [c98c0881c5] - tools: fix linter warning in test-shared.yml (Antoine du Hamel) #60772
  • [aa44406ed7] - tools: bump js-yaml from 4.1.0 to 4.1.1 in /tools/doc in the doc group (dependabot[bot]) #60766
  • [b756154ed9] - tools: fix paths-ignore in gha files (Antoine du Hamel) #60753
  • [18ed53fb7a] - tools: update install_tools.bat old echo from 2019 to 2022 (David Hidalgo) #60736
  • [cf79940d5c] - tools: remove unsupported cooldown from Dependabot config (Antoine du Hamel) #60747
  • [8ea73ffd64] - tools: update sccache to v0.12.0 (Michaël Zasso) #60723
  • [578f8bdfa0] - tools: update x64 macOS runner (Antoine du Hamel) #60676
  • [3b6cf316c0] - tools: update gyp-next to 0.21.0 (Node.js GitHub Bot) #60645
  • [7d55b8c00f] - tools,doc: fix format-md files list (Stefan Stojanovic) #61147
  • [a617942a4a] - url: add fast path to getPathFromURL decoder (Gürgün Dayıoğlu) #60749
  • [a6ac8bd2a5] - url: remove array.reduce usage (Gürgün Dayıoğlu) #60748
  • [09b5396523] - util: optimize toASCIILower function using V8s native toLowerCase (Mert Can Altin) #61107
  • [1dd15c9502] - util: limit inspect to only show own properties (Ruben Bridgewater) #61032
  • [5051d90100] - (SEMVER-MINOR) util: add convertProcessSignalToExitCode utility (Erick Wendel) #60963
  • [98b6dc1181] - util: fix parseArgs skipping positional arg with --eval and --print (azadgupta1) #60814
  • [862eaf8a09] - util: assert getCallSites does not invoke Error.prepareStackTrace (Chengzhong Wu) #60922
  • [c2e79aa5fb] - util: improve textencoder encodeInto performance (Yagiz Nizipli) #60843
  • [b6903aaf8d] - util: safely inspect getter errors whose message throws (Yves M.) #60684
  • [408f024906] - v8: mark v8.queryObjects() as stable (Joyee Cheung) #60957
  • [b00ee5222c] - worker: update code examples for node:worker_threads module (fisker Cheung) #58264
  • [2409839f19] - worker: remove not implemented declarations (Artur Gawlik) #60655
  • [c09417a2b1] - zlib: add CHECK to validate fast path input (Matteo Collina) #61175

2026-01-13, Version 25.3.0 (Current), @RafaelGSS

This is a security release.

Notable Changes

Commits

2025-11-17, Version 25.2.1 (Current), @aduh95

Notable Changes

Commits

  • [ff89b7b6c7] - crypto: ensure documented RSA-PSS saltLength default is used (Filip Skokan) #60662
  • [5316b580eb] - deps: V8: backport 2e4c5cf9b112 (Michaël Zasso) #60654
  • [ca878bc90e] - doc,src,lib: clarify experimental status of Web Storage support (Antoine du Hamel) #60708
  • [a4dee613fd] - Revert "lib: throw from localStorage getter on missing storage path" (Antoine du Hamel) #60750

2025-11-11, Version 25.2.0 (Current), @aduh95

Notable Changes

  • [a37c01e6a1] - (SEMVER-MINOR) lib: add options to util.deprecate (Rafael Gonzaga) #59982
  • [4fbb1ab101] - lib: throw from localStorage getter on missing storage path (René) #60351
  • [727560a96d] - (SEMVER-MINOR) module: mark type stripping as stable (Marco Ippolito) #60600
  • [506b79e888] - (SEMVER-MINOR) net: increase network family autoselection timeout to 500ms (Rod Vagg) #60334
  • [166c72ec02] - (SEMVER-MINOR) node-api: add napi_create_object_with_properties (Miguel Marcondes Filho) #59953
  • [399b340022] - (SEMVER-MINOR) v8: adding total_allocated_bytes to HeapStatistics (Caio Lima) #60573

Commits

  • [d5158a0a2d] - benchmark: focus on import.meta intialization in import-meta benchmark (Joyee Cheung) #60603
  • [26a5305fa9] - benchmark: add per-suite setup option (Joyee Cheung) #60574
  • [4810e4b82d] - buffer: speed up concat via TypedArray#set (Gürgün Dayıoğlu) #60399
  • [94a94a6b3a] - console: optimize single-string logging (Gürgün Dayıoğlu) #60422
  • [ad376c31db] - crypto: fix argument validation in crypto.timingSafeEqual fast path (Joyee Cheung) #60538
  • [dc38a45a55] - debugger: fix event listener leak in the run command (Joyee Cheung) #60464
  • [a61e5d8e05] - deps: call OPENSSL_free after ANS1_STRING_to_UTF8 (Rafael Gonzaga) #60609
  • [51e5030afa] - deps: nghttp2: revert 7784fa979d0b (Antoine du Hamel) #59790
  • [eef838f499] - deps: update nghttp2 to 1.67.1 (nodejs-github-bot) #59790
  • [13120a43d4] - deps: update simdjson to 4.1.0 (Node.js GitHub Bot) #60542
  • [6e1b23dab8] - deps: update corepack to 0.34.2 (Node.js GitHub Bot) #60550
  • [a02e05c486] - deps: update amaro to 1.1.5 (Node.js GitHub Bot) #60541
  • [b9ba3a7947] - deps: V8: backport fe81545e6d14 (Caio Lima) #60429
  • [07bcd28494] - deps: V8: cherry-pick 7ef6a001762 (Xiao-Tao) #60259
  • [3e11658243] - doc: update Collaborators list to reflect hybrist handle change (Antoine du Hamel) #60650
  • [b8e40e4d38] - doc: fix link in --env-file=file section (N. Bighetti) #60563
  • [9558c1c0df] - doc: fix linter issues (Antoine du Hamel) #60636
  • [cdf70de563] - doc: add missing history entry for sqlite.md (Antoine du Hamel) #60607
  • [e3c5dcf1ea] - doc: correct values/references for buffer.kMaxLength (René) #60305
  • [a25d76c924] - doc: recommend events.once to manage 'close' event (Dan Fabulich) #60017
  • [795f32bf91] - doc: highlight module loading difference between import and require (Ajay A) #59815
  • [212775410b] - doc: add CJS code snippets in sqlite.md (Allon Murienik) #60395
  • [263c06096d] - doc: fix typo in process.unref documentation (우혁) #59698
  • [356bdae408] - doc: add some entries to glossary.md (Mohataseem Khan) #59277
  • [9632c398de] - doc: improve agent.createConnection docs for http and https agents (JaeHo Jang) #58205
  • [f72880dbe3] - doc: fix pseudo code in modules.md (chirsz) #57677
  • [a9c70cefe8] - doc: add missing variable in code snippet (Koushil Mankali) #55478
  • [2892d151d4] - doc: add missing word in single-executable-applications.md (Konstantin Tsabolov) #53864
  • [9c99ab6571] - doc: fix typo in http.md (Michael Solomon) #59354
  • [3446cf375f] - doc: update devcontainer.json and add documentation (Joyee Cheung) #60472
  • [519c537875] - doc: add haramj as triager (Haram Jeong) #60348
  • [62889d7e99] - doc: clarify require(esm) description (dynst) #60520
  • [0b9ef68705] - doc: instantiate resolver object (Donghoon Nam) #60476
  • [cd5c1ad29f] - doc: correct module loading descriptions (Joyee Cheung) #60346
  • [74719dad7a] - doc: clarify Linux runtime requirements for >=25 (Joyee Cheung) #60484
  • [ca39540785] - doc: clarify --use-system-ca support status (Joyee Cheung) #60340
  • [dbf204c714] - doc,crypto: link keygen to supported types (Filip Skokan) #60585
  • [3bcf86d56d] - esm: use sync loading/resolving on non-loader-hook thread (Joyee Cheung) #60380
  • [69b3d2c845] - http: replace startsWith with strict equality (btea) #59394
  • [a38e2f5975] - http2: add diagnostics channels for client stream request body (Darshan Sen) #60480
  • [c047e73a00] - inspector: inspect HTTP response body (Chengzhong Wu) #60572
  • [d2087bae92] - inspector: support inspecting HTTP/2 request and response bodies (Darshan Sen) #60483
  • [003121c475] - inspector: fix crash when receiving non json message (Shima Ryuhei) #60388
  • [a37c01e6a1] - (SEMVER-MINOR) lib: add options to util.deprecate (Rafael Gonzaga) #59982
  • [219d2e978d] - lib: replace global SharedArrayBuffer constructor with bound method (Renegade334) #60497
  • [4fbb1ab101] - lib: throw from localStorage getter on missing storage path (René) #60351
  • [ca8934f44d] - meta: bump cachix/install-nix-action from 31.6.1 to 31.8.2 (dependabot[bot]) #60534
  • [166490230a] - meta: bump github/codeql-action from 3.30.5 to 4.31.2 (dependabot[bot]) #60533
  • [b722236a12] - meta: bump actions/download-artifact from 5.0.0 to 6.0.0 (dependabot[bot]) #60532
  • [3314b0bc60] - meta: bump actions/upload-artifact from 4.6.2 to 5.0.0 (dependabot[bot]) #60531
  • [d1d9891feb] - meta: bump actions/github-script from 7.0.1 to 8.0.0 (dependabot[bot]) #60530
  • [995596a34f] - meta: bump actions/setup-node from 5.0.0 to 6.0.0 (dependabot[bot]) #60529
  • [b60157a0fe] - meta: bump actions/stale from 10.0.0 to 10.1.0 (dependabot[bot]) #60528
  • [07fa6c9081] - meta: call create-release-post.yml post release (Aviv Keller) #60366
  • [727560a96d] - (SEMVER-MINOR) module: mark type stripping as stable (Marco Ippolito) #60600
  • [506b79e888] - (SEMVER-MINOR) net: increase network family autoselection timeout to 500ms (Rod Vagg) #60334
  • [166c72ec02] - (SEMVER-MINOR) node-api: add napi_create_object_with_properties (Miguel Marcondes Filho) #59953
  • [6ab83cf979] - node-api: use local files for instanceof test (Vladimir Morozov) #60190
  • [3671851879] - perf_hooks: move non-standard performance properties to perf_hooks (Chengzhong Wu) #60370
  • [6ddee4a7ed] - repl: fix pasting after moving the cursor to the left (Ruben Bridgewater) #60470
  • [edc3033905] - sqlite,doc: fix StatementSync section (Edy Silva) #60474
  • [e9b68e60d4] - src: move import.meta initializer to native land (Joyee Cheung) #60603
  • [0ebf839a4f] - src: use CP_UTF8 for wide file names on win32 (Fedor Indutny) #60575
  • [a31ad37714] - src: show original file name in FileHandle GC close errors (Anna Henningsen) #60593
  • [a6c221324b] - src: avoid C strings in more C++ exception throws (Anna Henningsen) #60592
  • [fdff838ce3] - src: add internal binding for constructing SharedArrayBuffers (Renegade334) #60497
  • [4385b0b65f] - src: move napi_addon_register_func to node_api_types.h (Anna Henningsen) #60512
  • [de78da7887] - src: move Node-API version detection to where it is used (Anna Henningsen) #60512
  • [b606d46c3f] - src: remove unconditional NAPI_EXPERIMENTAL in node.h (Chengzhong Wu) #60345
  • [5941341889] - src: clean up generic counter implementation (Anna Henningsen) #60447
  • [7015f30e62] - src: add enum handle for ToStringHelper + formatting (Burkov Egor) #56829
  • [39dfcbad6e] - stream: don't try to read more if reading (Robert Nagy) #60454
  • [ee333c9177] - test: deflake test-perf-hooks-timerify-histogram-sync (Joyee Cheung) #60639
  • [f0d81c91e7] - test: apply a delay to watch-mode-kill-signal tests (Joyee Cheung) #60610
  • [68791e2ccc] - test: async iife in repl (Tony Gorez) #44878
  • [c4eb9c3383] - test: parallelize sea tests when there's enough disk space (Joyee Cheung) #60604
  • [be8c4172d9] - test: only show overridden env in child process failures (Joyee Cheung) #60556
  • [8cae858f88] - test: ensure assertions are reached on more tests (Antoine du Hamel) #60498
  • [759d69331e] - test: ensure assertions are reachable in test/es-module (Antoine du Hamel) #60501
  • [6aaf18c333] - test: ensure assertions are reached on more tests (Antoine du Hamel) #60485
  • [bc41acf087] - test: ensure assertions are reached on more tests (Antoine du Hamel) #60500
  • [22fd621daf] - test: split test-perf-hooks-timerify (Joyee Cheung) #60568
  • [5efe4f722e] - test: add more logs to test-esm-loader-hooks-inspect-wait (Joyee Cheung) #60466
  • [2a57268f34] - test: mark stringbytes-external-exceed-max tests as flaky on AIX (Joyee Cheung) #60565
  • [2c199f7f61] - test: split test-esm-wasm.js (Joyee Cheung) #60491
  • [bc8f7db5bb] - test: correct conditional secure heap flags test (Shelley Vohr) #60385
  • [3bf42a5dd3] - test: spin longer on flaky platforms for test-worker-prof (Joyee Cheung) #60492
  • [eca6227e7e] - test: ensure assertions are reachable in test/internet (Antoine du Hamel) #60513
  • [313983453b] - test: fix flaky test-watch-mode-kill-signal-* (Joyee Cheung) #60443
  • [ccc26377b5] - test: capture stack trace in debugger timeout errors (Joyee Cheung) #60457
  • [12e9213a24] - test: ensure assertions are reachable in test/sequential (Antoine du Hamel) #60412
  • [781a2661de] - test: ensure assertions are reachable in more folders (Antoine du Hamel) #60411
  • [1e979e6eb7] - test: split test-runner-watch-mode (Joyee Cheung) #60391
  • [8c31cbb99b] - test: move test-runner-watch-mode helper into common (Joyee Cheung) #60391
  • [c94c6555cc] - test,crypto: handle a few more BoringSSL tests (Shelley Vohr) #59030
  • [fd63c27444] - test,crypto: update x448 and ed448 expectation when on boringssl (Shelley Vohr) #60387
  • [bf0de92446] - tls: fix leak on invalid protocol method (Shelley Vohr) #60427
  • [7e8373b378] - tools: replace invalid expression in dependabot config (Riddhi) #60649
  • [ac08760547] - tools: extract Nix dependency lists to separate files (Antoine du Hamel) #60495
  • [ae91a6cc3a] - tools: only add test reporter args when node:test is used (Joyee Cheung) #60551
  • [97ed560222] - tools: skip unaffected GHA jobs for changes in test/internet (Antoine du Hamel) #60517
  • [44ca97b404] - tools: fix update-icu script (Michaël Zasso) #60521
  • [07b0b5a5ba] - tools: fix linter for semver-major release proposals (Antoine du Hamel) #60481
  • [97d74224c3] - tools: fix failing release-proposal linter for LTS transitions (Antoine du Hamel) #60465
  • [019af5bc27] - tools: skip running test-shared on deps changes (Antoine du Hamel) #60433
  • [3ec9764151] - tools: pin OpenSSL to 3.5.4 on test-shared workflow (Antoine du Hamel) #60428
  • [fe2d6d44d4] - tools: remove undici from daily wpt.fyi job (Filip Skokan) #60444
  • [d09ba98398] - tools: document that nixpkgs updates should not be backported (Antoine du Hamel) #60431
  • [7fc99319e7] - tools: do not use short hashes for deps versioning to avoid collision (Antoine du Hamel) #60407
  • [815edb0c3a] - tools,doc: update JavaScript primitive types to match MDN Web Docs (JustApple) #60581
  • [6877139a2d] - util: fix stylize of special properties in inspect (Ge Gao) #60479
  • [399b340022] - (SEMVER-MINOR) v8: adding total_allocated_bytes to HeapStatistics (Caio Lima) #60573
  • [d64795b318] - watch: fix interaction with multiple env files (Marco Ippolito) #60605

2025-10-28, Version 25.1.0 (Current), @aduh95

Notable Changes

  • [4395fe14b9] - (SEMVER-MINOR) http: add optimizeEmptyRequests server option (Rafael Gonzaga) #59778
  • [2e55c6ad04] - (SEMVER-MINOR) sqlite: allow setting defensive flag (Bart Louwers) #60217
  • [f437204491] - (SEMVER-MINOR) src: add watch config namespace (Marco Ippolito) #60178

Commits

  • [bb27766bd5] - benchmark: improve cpu.sh for safety and usability (Nam Yooseong) #60162
  • [e600711c20] - benchmark: add benchmark for leaf source text modules (Joyee Cheung) #60205
  • [1bbcdf9039] - benchmark: add vm.SourceTextModule benchmark (Joyee Cheung) #59396
  • [22fa6bd28b] - build: ibmi follow aix visibility (SRAVANI GUNDEPALLI) #60360
  • [931028400e] - build: use call command when calling python configure (Jacob Nichols) #60098
  • [17fde3f3d1] - build: build v8 with -fvisibility=hidden -fvisibility-inlines-hidden (Joyee Cheung) #56290
  • [04cc7aae5e] - build: remove V8_COMPRESS_POINTERS_IN_ISOLATE_CAGE defs (Joyee Cheung) #60296
  • [8a2053060d] - crypto: update root certificates to NSS 3.116 (Node.js GitHub Bot) #59956
  • [fe91c0f755] - deps: update simdjson to 4.0.7 (Node.js GitHub Bot) #59883
  • [aacfc0d212] - deps: update corepack to 0.34.1 (Node.js GitHub Bot) #60314
  • [8596891a71] - deps: update inspector_protocol to af7f5a8173fdbc29f0835ec94395932e328b (Node.js GitHub Bot) #60312
  • [21bcd0eb2f] - deps: V8: cherry-pick 3d0f462a17ff (Joyee Cheung) #59396
  • [673558501c] - deps: update googletest to 279f847 (Node.js GitHub Bot) #60219
  • [425a1879b1] - doc: mention more codemods in deprecations.md (Augustin Mauroy) #60243
  • [563e1317f3] - doc: remove unnecessary statement of web storage (Deokjin Kim) #60363
  • [064c8c5cfd] - doc: add missing CAA type to dns.resolveAny() & dnsPromises.resolveAny() (Jimmy Leung) #58899
  • [99e357af35] - doc: use any for worker_threads.Worker 'error' event argument err (Jonas Geiler) #60300
  • [8ccff0d934] - doc: update decorator documentation to reflect actual policy (Muhammad Salman Aziz) #60288
  • [bac70c6ef3] - doc: document wildcard supported by tools/test.py (Joyee Cheung) #60265
  • [8492bc6a88] - doc: add --heap-snapshot-on-oom to useful v8 flag (jakecastelli) #60260
  • [0f0d3c0e47] - doc: fix blob.bytes() heading level (XTY) #60252
  • [8c8525cf93] - doc: fix not working code example in vm docs (Artur Gawlik) #60224
  • [8a6de3866c] - doc, assert: correct order of changes entries (Gerhard Stöbich) #60304
  • [6bacb6555a] - doc, module: change async customization hooks to experimental (Gerhard Stöbich) #60302
  • [6f3b16df16] - esm: use index-based resolution callbacks (Joyee Cheung) #59396
  • [95644a432c] - http: lazy allocate cookies array (Robert Nagy) #59734
  • [4395fe14b9] - (SEMVER-MINOR) http: add optimizeEmptyRequests server option (Rafael Gonzaga) #59778
  • [f1aa1eaaf5] - inspector: add network payload buffer size limits (Chengzhong Wu) #60236
  • [64fc625bf9] - inspector: support handshake response for websocket inspection (Shima Ryuhei) #60225
  • [0ecbb806a8] - lib: fix typo in createBlobReaderStream (SeokHun) #60132
  • [ffec5927fd] - meta: fix typo in test-shared workflow name (Ronit Sabhaya) #60321
  • [a02897e157] - meta: move one or more collaborators to emeritus (Node.js GitHub Bot) #60325
  • [59223a7831] - meta: loop userland-migrations in deprecations (Chengzhong Wu) #60299
  • [2d48d17696] - module: refactor and clarify async loader hook customizations (Joyee Cheung) #60278
  • [be1b84fd93] - module: handle null source from async loader hooks in sync hooks (Joyee Cheung) #59929
  • [063fbd87d3] - msi: fix WiX warnings (Stefan Stojanovic) #60251
  • [2e55c6ad04] - (SEMVER-MINOR) sqlite: allow setting defensive flag (Bart Louwers) #60217
  • [dc93d6988a] - src: fix timing of snapshot serialize callback (Joyee Cheung) #60434
  • [267e1b3817] - src: add COUNT_GENERIC_USAGE utility for tests (Joyee Cheung) #60434
  • [4a5d7a4c2a] - src: conditionally disable source phase imports by default (Shelley Vohr) #60364
  • [f437204491] - (SEMVER-MINOR) src: add watch config namespace (Marco Ippolito) #60178
  • [36837fa0f9] - src: use cached primordials_string (Sohyeon Kim) #60255
  • [df8396ad37] - src: replace Environment::GetCurrent with args.GetIsolate (Sohyeon Kim) #60256
  • [5dd670b2b9] - src: initial enablement of IsolateGroups (James M Snell) #60254
  • [afdb362933] - src: use Utf8Value and TwoByteValue instead of V8 helpers (Anna Henningsen) #60244
  • [a40e533e72] - src: add a default branch for module phase (Chengzhong Wu) #60261
  • [42729f07ee] - src: stop using deprecated v8::Context::GetIsolate (Michaël Zasso) #60223
  • [7a6542c205] - test: skip failing test on macOS 15.7+ (Antoine du Hamel) #60419
  • [29a5855a4f] - test: ensure assertions are reachable in test/addons (Antoine du Hamel) #60142
  • [12773d19c4] - test: increase debugger waitFor timeout on macOS (Chengzhong Wu) #60367
  • [0b38de3e9e] - test: put helper in test-runner-output into common (Joyee Cheung) #60330
  • [6de2407c44] - test: fix small compile warning in test_network_requests_buffer.cc (xiaocainiao633) #60281
  • [4b23ac8613] - test: fix status when compiled without inspector (Antoine du Hamel) #60289
  • [a07f32e326] - test: split test-runner-watch-mode-kill-signal (Joyee Cheung) #60298
  • [30451d32d7] - test: fix incorrect calculation in test-perf-hooks.js (Joyee Cheung) #60271
  • [e3c3b48f1c] - test: ignore EPIPE errors in https proxy invalid URL test (Joyee Cheung) #60269
  • [405a9c4c5f] - test: parallelize test-without-async-context-frame correctly (Joyee Cheung) #60273
  • [ffeebebc71] - test: make test-worker-prof more tolerant (Joyee Cheung) #60272
  • [26b01bf170] - test: skip sea tests on x64 macOS (Joyee Cheung) #60250
  • [8caae1a05b] - test: move sea tests into test/sea (Joyee Cheung) #60250
  • [3d183e3e9f] - test,crypto: fix conditional SHA3-* skip on BoringSSL (Filip Skokan) #60379
  • [e83dbcba94] - test,crypto: sha3 algorithms aren't supported with BoringSSL (Shelley Vohr) #60374
  • [3d89331496] - test_runner: use module.registerHooks in module mocks (Joyee Cheung) #60326
  • [377e8ce85a] - tls: avoid external memory leak on invalid protocol versions (Shelley Vohr) #60390
  • [ae4858c1f6] - tools: add an option to generate lighter archives (Antoine du Hamel) #60294
  • [cb615b1a2e] - tools: skip test-shared workflow for draft PRs (Michaël Zasso) #60365
  • [03b034731e] - tools: disable inspector on macOS-shared to reduce flakiness (Antoine du Hamel) #60320
  • [f402b4e1d1] - tools: show diff alongside the error in Nix linter (Antoine du Hamel) #60301
  • [5d5c8483fb] - tools: run CI with shared libs on GHA (Antoine du Hamel) #60121
  • [e8fdd8d2e8] - tools: update gyp-next to 0.20.5 (Node.js GitHub Bot) #60313
  • [6e8b029a21] - tools: limit inspector protocol PR title length (Chengzhong Wu) #60324
  • [a5073086c6] - tools: fix inspector_protocol updater (Chengzhong Wu) #60277
  • [47fa765bff] - tools: optimize wildcard execution in tools/test.py (Joyee Cheung) #60266
  • [11ebb0447d] - tools: add C++ lint rule to avoid using String::Utf8Value (Anna Henningsen) #60244
  • [14f3189670] - tools: add inspector_protocol updater (Chengzhong Wu) #60245
  • [ef4c596fc6] - typings: add missing properties and method in Worker (Woohyun Sung) #60257
  • [09ae6fc065] - typings: add missing properties in HTTPParser (Woohyun Sung) #60257
  • [9ecaf41f8e] - typings: delete undefined property in ConfigBinding (Woohyun Sung) #60257
  • [4a86016e86] - util: use more defensive code when inspecting error objects (Antoine du Hamel) #60139
  • [9e6d6cec59] - util: mark special properties when inspecting them (Ruben Bridgewater) #60131
  • [79b2387fd9] - vm: make vm.Module.evaluate() conditionally synchronous (Joyee Cheung) #60205
  • [e5559f3be3] - win: upgrade Visual Studio workload from 2019 to 2022 (Jiawen Geng) #60318

2025-10-15, Version 25.0.0 (Current), @RafaelGSS

Node.js 25 is here! We have upgraded V8 to 14.1, bringing major JSON.stringify performance improvements, built-in Uint8Array base64/hex conversion, and ongoing WebAssembly and JIT pipeline optimizations.

This release doubles down on secure-by-default apps and web-standard APIs: the permission model gains --allow-net, Web Storage is enabled by default, and ErrorEvent is now a global.

We’ve also removed or finalized long-deprecated APIs such as SlowBuffer, and added quality-of-life improvements like a portable compile cache and JSPI for WebAssembly.

Notable Changes

  • [8bc7dfd16f] - build: test on Python 3.14 release candidate 3 (Christian Clauss) #59983
  • [663554abdf] - (SEMVER-MAJOR) lib: expose global ErrorEvent (Richie Bendall) #58920
  • [3312e4e946] - (SEMVER-MAJOR) src: unflag --experimental-webstorage by default (Daniel M Brasil) #57666
  • [462c74181d] - (SEMVER-MAJOR) src,permission: add --allow-net permission (Rafael Gonzaga) #58517

Deprecations and Removals

  • [d33f4b539a] - (SEMVER-MAJOR) assert: move assert.fail with multiple arguments to eol (James M Snell) #58532
  • [b21574d63b] - (SEMVER-MAJOR) assert: move CallTracker to EOL (James M Snell) #58006
  • [308b6bc6de] - (SEMVER-MAJOR) async_hooks: move asyncResource property on bound function to EOL (James M Snell) #58618
  • [daced4ab98] - (SEMVER-MAJOR) buffer: move SlowBuffer to EOL (Filip Skokan) #58220
  • [df16f0fd8d] - (SEMVER-MAJOR) child_process: move _channel to end-of-life (James M Snell) #58527
  • [a472745958] - (SEMVER-MAJOR) crypto: runtime-deprecate default shake128/256 output lengths (Filip Skokan) #59008
  • [c3b986853c] - (SEMVER-MAJOR) crypto: move deprecated hash and mgf1Hash options to EOL (James M Snell) #58706
  • [66632648ba] - (SEMVER-MAJOR) crypto: runtime deprecate ECDH.setPublicKey() (James M Snell) #58620
  • [a5f9ca1f77] - (SEMVER-MAJOR) dns: move falsy hostname in lookup to end-of-life (James M Snell) #58619
  • [2bb7667475] - (SEMVER-MAJOR) fs: move FileHandle close on GC to EOL (James M Snell) #58536
  • [eec0302088] - (SEMVER-MAJOR) fs: move rmdir recursive option to end-of-life (James M Snell) #58616
  • [25dd206c29] - (SEMVER-MAJOR) fs: remove fs.F_OK, fs.R_OK, fs.W_OK, fs.X_OK (Livia Medeiros) #55862
  • [91dadf2897] - (SEMVER-MAJOR) http: deprecate writeHeader (Sebastian Beltran) #59060
  • [4e06a648ff] - (SEMVER-MAJOR) perf_hooks: move deprecated accessors to EOF (James M Snell) #58531
  • [a3dfca90d1] - (SEMVER-MAJOR) process: move multipleResolves event to EOL (James M Snell) #58707
  • [790acc8689] - (SEMVER-MAJOR) tls: move IP-address servername deprecation to eol (James M Snell) #58533
  • [3aaa2ebe19] - (SEMVER-MAJOR) url: move bad port deprecation in legacy url to end-of-life (James M Snell) #58617

Semver-Major Commits

  • [7c9fbc15bc] - (SEMVER-MAJOR) assert,util: fail promise comparison in deep equal checks (Ruben Bridgewater) #59448
  • [11222f1a27] - (SEMVER-MAJOR) assert,util: handle invalid dates as equal in deep comparison (Ruben Bridgewater) #57627
  • [acce2e8f87] - (SEMVER-MAJOR) build: reset embedder string to "-node.0" (Michaël Zasso) #59805
  • [8a87ba031b] - (SEMVER-MAJOR) build: bump minimum Clang version to 19 (Michaël Zasso) #59048
  • [21b131e93a] - (SEMVER-MAJOR) build: reset embedder string to "-node.0" (Michaël Zasso) #58064
  • [f31c88021b] - (SEMVER-MAJOR) build: stop distributing Corepack (Antoine du Hamel) #57617
  • [b3238442d8] - (SEMVER-MAJOR) deps: patch V8 for illumos (Dan McDonald) #59805
  • [2a1da3260d] - (SEMVER-MAJOR) deps: patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #54077
  • [7772a2df9d] - (SEMVER-MAJOR) deps: update V8 to 14.1.146.11 (Michaël Zasso) #59805
  • [6d61175db0] - (SEMVER-MAJOR) deps: V8: backport 1d3362c55396 (Shu-yu Guo) #58064
  • [974773572e] - (SEMVER-MAJOR) deps: V8: cherry-pick 4f38995c8295 (Shu-yu Guo) #58064
  • [70bfc398e9] - (SEMVER-MAJOR) deps: V8: cherry-pick 044b9b6f589d (Rezvan Mahdavi Hezaveh) #58064
  • [6bfc525cf0] - (SEMVER-MAJOR) deps: V8: cherry-pick d2ad518a0b57 (Joyee Cheung) #58064
  • [754d28e34f] - (SEMVER-MAJOR) deps: V8: revert 6d6c1e680c7b (Michaël Zasso) #58064
  • [8c508b9399] - (SEMVER-MAJOR) deps: V8: revert e3cddbedb205 (Michaël Zasso) #58064
  • [88ca8287b6] - (SEMVER-MAJOR) deps: use std::map in MSVC STL for EphemeronRememberedSet (Joyee Cheung) #58064
  • [838e2332a5] - (SEMVER-MAJOR) deps: patch V8 for illumos (Dan McDonald) #58064
  • [3522731d9a] - (SEMVER-MAJOR) deps: remove problematic comment from v8-internal (Michaël Zasso) #58064
  • [d234475a33] - (SEMVER-MAJOR) deps: define V8_PRESERVE_MOST as no-op on Windows (Stefan Stojanovic) #58064
  • [a738eb4a7f] - (SEMVER-MAJOR) deps: fix FP16 bitcasts.h (Stefan Stojanovic) #58064
  • [1744c7d991] - (SEMVER-MAJOR) deps: patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #58064
  • [fff0d1554d] - (SEMVER-MAJOR) deps: update V8 to 13.7.152.9 (Michaël Zasso) #58064
  • [968e2f47c8] - (SEMVER-MAJOR) dgram: move deprecated APIs to EOL (James M Snell) #58474
  • [5623194a6b] - (SEMVER-MAJOR) doc,src,test: replace use of deprecated GetIsolate (Michaël Zasso) #59805
  • [823ca6991f] - (SEMVER-MAJOR) fs: make processReadResult() and readSyncRecursive() private (Livia Medeiros) #58672
  • [a273674dee] - (SEMVER-MAJOR) fs: move fs stream open method to eol (James M Snell) #58529
  • [39d73036e7] - (SEMVER-MAJOR) lib: use validators for argument validation (Nam Yooseong) #59416
  • [cd68e35704] - (SEMVER-MAJOR) lib: deprecate _stream_* modules (Dario Piotrowicz) #58337
  • [a822a1cbe7] - (SEMVER-MAJOR) lib: deprecate _tls_common and _tls_wrap (Dario Piotrowicz) #57643
  • [705bcc2a00] - (SEMVER-MAJOR) module: move Module._debug to end-of-life (James M Snell) #58473
  • [5fe7800683] - (SEMVER-MAJOR) node-api: add warning for NAPI_EXPERIMENTAL (Miguel Marcondes Filho) #58280
  • [e1d4d6ab49] - (SEMVER-MAJOR) repl: eol deprecate instantiating without new (Aviv Keller) #59495
  • [ed94bc48f3] - (SEMVER-MAJOR) src: update crypto.getCipherInfo() to use DictionaryTemplate (James M Snell) #60036
  • [37a3df3556] - (SEMVER-MAJOR) src: fix calls to v8::Object::wrap (Andreas Haas) #59805
  • [801ae26fa3] - (SEMVER-MAJOR) src: update NODE_MODULE_VERSION to 141 (Michaël Zasso) #59805
  • [10df38a38b] - (SEMVER-MAJOR) src: improve performance of dotenv ToObject (James M Snell) #60038
  • [075936b413] - (SEMVER-MAJOR) src: use std::string_view from node_report (iknoom) #60006
  • [234c26cca3] - (SEMVER-MAJOR) src: store Local for CallbackScope on stack (Anna Henningsen) #59705
  • [708fd1945b] - (SEMVER-MAJOR) src: remove node.h APIs to make callback without an async context (Chengzhong Wu) #58471
  • [56989d33f5] - (SEMVER-MAJOR) src: remove deprecated node::EmitBeforeExit and node::EmitExit (Chengzhong Wu) #58469
  • [d429aa2d17] - (SEMVER-MAJOR) src: remove deprecated node::CreatePlatform and node::FreePlatform (Chengzhong Wu) #58470
  • [e0ae14ce73] - (SEMVER-MAJOR) src: remove deprecated node::InitializeNodeWithArgs (Chengzhong Wu) #58470
  • [db1700e4b5] - (SEMVER-MAJOR) src: update NODE_MODULE_VERSION to 138 (Michaël Zasso) #58064
  • [0a87084150] - (SEMVER-MAJOR) test: update cppgc-object addon config (StefanStojanovic) #59805
  • [7dd49d7da4] - (SEMVER-MAJOR) test: spin longer for sequential/test-worker-prof (Michaël Zasso) #59805
  • [faba50df96] - (SEMVER-MAJOR) test: remove --always-turbofan flag (Michaël Zasso) #59805
  • [496f12dec6] - (SEMVER-MAJOR) test: update snapshot for V8 14.1 (Michaël Zasso) #59805
  • [05aa3a1c70] - (SEMVER-MAJOR) test,win: split addon tests (StefanStojanovic) #59805
  • [308de27255] - (SEMVER-MAJOR) tools: update V8 gypfiles for 14.0 (Michaël Zasso) #59805
  • [b736370c07] - (SEMVER-MAJOR) tools: update V8 gypfiles for 13.9 (Michaël Zasso) #59805
  • [085a94ac9b] - (SEMVER-MAJOR) tools: update V8 gypfiles for 13.8 (Michaël Zasso) #59805
  • [a71ae18ac8] - (SEMVER-MAJOR) tools: enable leaptiering for aix/ibmi (Abdirahim Musse) #59805
  • [a8217a9eb8] - (SEMVER-MAJOR) tools: update V8 gypfiles for 13.7 (Michaël Zasso) #58064
  • [fdef0725de] - (SEMVER-MAJOR) util,console: colorize regexp groups, character classes, etc (Ruben Bridgewater) #59710
  • [411cc42d22] - (SEMVER-MAJOR) worker: move terminate callback to end-of-life (James M Snell) #58528

Semver-Minor Commits

  • [94422e8a40] - (SEMVER-MINOR) src: add an option to make compile cache portable (Aditi) #58797
  • [29738c7b42] - (SEMVER-MINOR) src,permission: add --allow-inspector ability (Rafael Gonzaga) #59711
  • [f9fcc746f3] - (SEMVER-MINOR) v8: add cpu profile (theanarkh) #59807
  • [4396cf2d45] - (SEMVER-MINOR) wasm: enable JSPI (Guy Bedford) #59941

Semver-Patch Commits

  • [91f035e597] - assert: resolve TODO and rename function (Antoine du Hamel) #59451
  • [2e675c4fa3] - benchmark: use non-deprecated WriteUtf8V2 method (Michaël Zasso) #60173
  • [0fb040603b] - build: upgrade Python linter ruff, add rules ASYNC,PERF (Christian Clauss) #59984
  • [f468b6c72b] - build: update minimum Xcode version to 16.4 (Michaël Zasso) #60079
  • [0eda17ba20] - build: fix flags for ngtcp2 on IBM i (SRAVANI GUNDEPALLI) #60073
  • [22a864a275] - build: remove corepack from release tarballs (Jordan Harband) #59835
  • [7079041e0a] - build: only mention Apple when on Apple (Michaël Zasso) #59385
  • [954d3f44ef] - build: check Apple clang version in configure script (Michaël Zasso) #59358
  • [2b4a09ef8b] - build: fix OpenSSL version detection (Richard Lau) #59353
  • [af77e4bf2f] - build: update macOS runner and Xcode (Michaël Zasso) #59238
  • [86bfdb5528] - build: remove nocorepack vcbuild flag (Antoine du Hamel) #57772
  • [b13f24c2da] - build, src: fix include paths for vtune files (Rahul) #59999
  • [2216a3b1d5] - deps: V8: cherry-pick 1e190bbb0396 (Richard Lau) #60206
  • [1b22f6049a] - deps: upgrade npm to 11.6.2 (npm team) #60168
  • [a1b73fe430] - deps: V8: cherry-pick 2abc61361dd4 (Richard Lau) #60177
  • [4eb6e6fd79] - deps: V8: cherry-pick 87356585659b (Joyee Cheung) #60069
  • [c0b8c80164] - deps: define V8_PRESERVE_MOST as no-op on Windows (Stefan Stojanovic) #56238
  • [65a32bac18] - deps: add ngtcp2 test binaries (James M Snell) #59946
  • [ebfc28a037] - deps: update nghttp3 to 1.11.0 (James M Snell) #59249
  • [dceb1fca40] - deps: update ngtcp2 to 1.14.0 (James M Snell) #59249
  • [ee36b86ba3] - deps: patch V8 to 13.7.152.19 (Node.js GitHub Bot) #58713
  • [0b3fc0d7a8] - deps: patch V8 to 13.7.152.14 (Node.js GitHub Bot) #58631
  • [91b3bd3fe6] - deps: patch V8 to 13.7.152.13 (Node.js GitHub Bot) #58539
  • [f77a96cd76] - deps: patch V8 to 13.7.152.10 (Node.js GitHub Bot) #58446
  • [1cd16e5355] - doc: improve code snippet alternative of url.parse() using WHATWG URL (Steven) #60209
  • [d54e6aec9e] - doc: createSQLTagStore -> createTagStore (Aviv Keller) #60182
  • [aef3fc37eb] - doc: use markdown when branch-diff major release (Rafael Gonzaga) #60179
  • [a2f088d516] - doc: update teams in collaborator-guide.md and add links (Bart Louwers) #60065
  • [75a6fff6be] - doc: disambiguate top-level worker_threads module exports (René) #59890
  • [51df7b92bc] - doc: update macOS version used to build releases (Michaël Zasso) #60080
  • [910c8796f9] - doc: update BUILDING to reflect Clang 19 changes (Michaël Zasso) #59782
  • [34f9b7eab9] - doc: reserve NMV 140 for Electron 39 (David Sanders) #59627
  • [3f6f6db43f] - doc: update minimum Xcode and VS versions (Michaël Zasso) #59358
  • [d9fe28bd6b] - doc: fix CHANGELOG.md version listing (Antoine du Hamel) #59299
  • [0ab50c2768] - doc: reserve NMV 139 for Electron 38 (Calvin) #58779
  • [516b4ebd3c] - doc: mark Node.js 23 as End-of-Life (Antoine du Hamel) #58563
  • [59b70e5fe3] - http: fix http client leaky with double response (theanarkh) #60062
  • [5cf3c3e24c] - http2: rename variable to additionalPseudoHeaders (Tobias Nießen) #60208
  • [535efea962] - http2: do not crash on mismatched ping buffer length (René) #60135
  • [4bfa387f6d] - lib: fix constructor in _errnoException stack tree (SeokHun) #60156
  • [4daeec11b9] - lib: fix typo in QuicSessionStats (SeokHun) #60155
  • [15278252bb] - lib: remove redundant destroyHook checks (Gürgün Dayıoğlu) #60120
  • [83052ff9ad] - lib: add node: prefix in sys module deprecation warning (Dario Piotrowicz) #58442
  • [d5abfbf582] - lib: add module to use in module deprecation warnings (Dario Piotrowicz) #58442
  • [db0121bedd] - module: fix directory option in the enableCompileCache() API (Joyee Cheung) #59931
  • [822a8c3244] - perf_hooks: fix stack overflow error (Antoine du Hamel) #60084
  • [d52cd04591] - quic: continue working on quic api bits (James M Snell) #60123
  • [b4af647920] - quic: reduce boilerplate and other minor cleanups (James M Snell) #59342
  • [cd9fd09a27] - quic: multiple fixups and updates (James M Snell) #59342
  • [a6c5d27739] - quic: update more of the quic to the new compile guard (James M Snell) #59342
  • [ee7b8ab29c] - quic: few additional small comment edits in cid.h (James M Snell) #59342
  • [c8b64bd023] - quic: fixup NO_ERROR macro conflict on windows (James M Snell) #59381
  • [e2fefd78e2] - quic: fixup windows coverage compile error (James M Snell) #59381
  • [99c80e3a45] - quic: update the guard to check openssl version (James M Snell) #59249
  • [0e754fa5d1] - quic: start re-enabling quic with openssl 3.5 (James M Snell) #59249
  • [200fe9e7f4] - repl: move completion logic to internal module (Dario Piotrowicz) #59889
  • [3ac88a7a66] - src: use string_view in WriteReport() (Anna Henningsen) #60201
  • [a1244f04de] - src: make additional cleanups in node locks impl (James M Snell) #60061
  • [fdb6e66227] - src: update locks to use DictionaryTemplate (James M Snell) #60061
  • [367bcce6a6] - src: fix usage of deprecated V8 API (Michaël Zasso) #60174
  • [23fa18444f] - src: fix small compile warning in quic/streams.cc (James M Snell) #60118
  • [0ec1d186f4] - src: always use strong reference to napi_async_context resource (Anna Henningsen) #59828
  • [ce748f6cae] - src: use Global for storing resource in Node-API callback scope (Anna Henningsen) #59828
  • [36256230b4] - src: cleanup quic TransportParams class (James M Snell) #59884
  • [985e2fb383] - Revert "test: ensure message event fires in worker message port test" (Luigi Pinca) #60126
  • [da9cd745c8] - test: ensure assertions are reachable in test/client-proxy (Antoine du Hamel) #60175
  • [e105e821e9] - test: skip quic tests that IBM i does not support (SRAVANI GUNDEPALLI) #60160
  • [bfc81ca228] - test: ensure assertions are reachable in test/async-hooks (Antoine du Hamel) #60150
  • [712cee951c] - test: skip tests that cause timeouts on IBM i (SRAVANI GUNDEPALLI) #60148
  • [f8a43f6f34] - test: deflake test-fs-promises-watch-iterator (Luigi Pinca) #60060
  • [1f95d39997] - test: prepare junit file attribute normalization (sangwook) #59432
  • [eb159a8cfd] - test: remove duplicated allocUnsafeSlow test (Michaël Zasso) #58524
  • [d93cff5af3] - Revert "test: fix watch tests not including completion messages" (Joyee Cheung) #58190
  • [6102159fa1] - test: fix watch tests not including completion messages (Dario Piotrowicz) #58183
  • [ad2c1bf62e] - test,doc: skip --max-old-space-size-percentage on 32-bit platforms (Asaf Federman) #60144
  • [6dbf7086bb] - test_runner: fix suite timeout (Moshe Atlow) #59853
  • [f0aa073907] - test_runner: add junit file attribute support (sangwook) #59432
  • [cff138c6b1] - tests: start adding quic test server utilities (James M Snell) #59946
  • [20dc4b514a] - tools: use cooldown property correctly (Rafael Gonzaga) #60134
  • [ec26b1c01a] - tools: add lint rule to ensure assertions are reached (Antoine du Hamel) #60125
  • [bab752d4db] - typings: add buffer internalBinding typing (방진혁) #60163
  • [1986ee4b65] - vm: hint module identifier in instantiate errors (Chengzhong Wu) #60199
  • [23b834058c] - wasm: revert enable JSPI as already enabled (Guy Bedford) #60014
  • [4bfcad1ac5] - Revert "watch: fix watch args not being properly filtered" (Joyee Cheung) #58190
  • [4acb854039] - watch: fix watch args not being properly filtered (Dario Piotrowicz) #57936