v25.2.0

nodejs/nodev25.2.0Nov 11, 2025by aduh95

AI Summary

The Current release introduces built-in HTTP proxy support, new Node.js API options, and stabilizes module type stripping.

Key Highlights

  • Built-in HTTP/HTTPS proxy support enabled via `--use-env-proxy`.
  • New `util.deprecate` options for better deprecation control.
  • Module type stripping is now marked as stable.
  • V8 HeapStatistics now includes `total_allocated_bytes`.

New Features

  • util.deprecate options
  • Module type stripping stable
  • HTTP/HTTPS proxy support
  • V8 HeapStatistics total allocated bytes
  • napi_create_object_with_properties

Full Release Notes




### Notable Changes

* \[[`a37c01e6a1`](https://github.com/nodejs/node/commit/a37c01e6a1)] - **(SEMVER-MINOR)** **lib**: add options to util.deprecate (Rafael Gonzaga) [#59982](https://github.com/nodejs/node/pull/59982)
* \[[`4fbb1ab101`](https://github.com/nodejs/node/commit/4fbb1ab101)] - **lib**: throw from localStorage getter on missing storage path (René) [#60351](https://github.com/nodejs/node/pull/60351)
* \[[`727560a96d`](https://github.com/nodejs/node/commit/727560a96d)] - **(SEMVER-MINOR)** **module**: mark type stripping as stable (Marco Ippolito) [#60600](https://github.com/nodejs/node/pull/60600)
* \[[`506b79e888`](https://github.com/nodejs/node/commit/506b79e888)] - **(SEMVER-MINOR)** **net**: increase network family autoselection timeout to 500ms (Rod Vagg) [#60334](https://github.com/nodejs/node/pull/60334)
* \[[`166c72ec02`](https://github.com/nodejs/node/commit/166c72ec02)] - **(SEMVER-MINOR)** **node-api**: add napi\_create\_object\_with\_properties (Miguel Marcondes Filho) [#59953](https://github.com/nodejs/node/pull/59953)
* \[[`399b340022`](https://github.com/nodejs/node/commit/399b340022)] - **(SEMVER-MINOR)** **v8**: adding total\_allocated\_bytes to HeapStatistics (Caio Lima) [#60573](https://github.com/nodejs/node/pull/60573)

### Commits

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