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