diff --git a/apps/site/pages/en/blog/release/v27.0.0-alpha.0.0.0.md b/apps/site/pages/en/blog/release/v27.0.0-alpha.0.0.0.md new file mode 100644 index 0000000000000..e2847a1a2ccee --- /dev/null +++ b/apps/site/pages/en/blog/release/v27.0.0-alpha.0.0.0.md @@ -0,0 +1,533 @@ +--- +date: '2026-10-29T19:52:29.250Z' +category: release +title: Node.js 27.0.0-alpha.0.0.0 (Alpha) +layout: blog-post +author: Rafael Gonzaga +--- + +## 2026-10-29, Version 27.0.0-alpha.0.0.0 (Alpha), @RafaelGSS + +### Notable Changes + +#### V8 15.6 + +The V8 engine is updated to version 15.6.75.13, up from 14.6 in Node.js 26. Highlights: + +- New language features enabled by default: `Math.sumPrecise()`, `Intl.Locale.prototype.variants`, `Iterator.prototype.join()`, `Iterator.prototype.includes()`, `Iterator.zip()` and `Iterator.zipKeyed()`. +- Experimental features behind flags: `import defer` (`--js-defer-import-eval`), Immutable `ArrayBuffer` (`--js-immutable-arraybuffer`) and RegExp buffer boundaries (`--js-regexp-buffer-boundaries`). +- Memory: when `--max-old-space-size` is not set, the default heap size limit is now half of the physical memory clamped between 256 MB and 4 GB, and memory held by `Buffer` and `ArrayBuffer` instances now counts toward the heap limit. Applications that relied on the previous defaults should set `--max-old-space-size` explicitly. +- Serialization: `v8.serialize()`, `structuredClone()` and `postMessage()` use a new format that older Node.js releases cannot read. `v8.cachedDataVersionTag()` and the compile cache also change on every Node.js patch of V8, not only on V8 version changes. +- Observable behavior changes: `Math` methods now use LLVM's libm and may differ in the last bit; `Math.random()` sequences change for a given `--random-seed`; `error.stack` is no longer looked up through the prototype chain; `await` incurs fewer microtasks; `Array.prototype.sort()` uses PowerSort for large arrays and remains stable. +- Heap snapshots include internal objects, numeric values and full script sources. Taking one takes about twice as long and the file is about twice as large. +- WebAssembly: asm.js is no longer compiled to WebAssembly, and the `--experimental-wasm-` flags are renamed `--wasm-`. + +A full changelog of the V8 changes between 14.6 and 15.6 will be shared soon. + +Contributed by Joyee Cheung in [#65161](https://github.com/nodejs/node/pull/65161), [#66537](https://github.com/nodejs/node/pull/66537) and [#66601](https://github.com/nodejs/node/pull/66601). + +#### Other notable changes + +- \[[`21cfb2a4ad`](https://github.com/nodejs/node/commit/21cfb2a4ad)] - **(SEMVER-MAJOR)** **build**: remove the bundled FIPS provider build (Filip Skokan) [#64777](https://github.com/nodejs/node/pull/64777) +- \[[`34e3b90621`](https://github.com/nodejs/node/commit/34e3b90621)] - **(SEMVER-MAJOR)** **build**: require OpenSSL 3 or later (Filip Skokan) [#64777](https://github.com/nodejs/node/pull/64777) +- \[[`c362db6e24`](https://github.com/nodejs/node/commit/c362db6e24)] - **(SEMVER-MAJOR)** **build**: downgrade Intel macOS support to experimental (Antoine du Hamel) [#65427](https://github.com/nodejs/node/pull/65427) +- \[[`fb8d52d75a`](https://github.com/nodejs/node/commit/fb8d52d75a)] - **(SEMVER-MAJOR)** **crypto**: move DEP0093 to End-of-Life (Filip Skokan) [#64777](https://github.com/nodejs/node/pull/64777) +- \[[`8be36fb494`](https://github.com/nodejs/node/commit/8be36fb494)] - **(SEMVER-MAJOR)** **crypto**: remove legacy OpenSSL code paths (Filip Skokan) [#64777](https://github.com/nodejs/node/pull/64777) +- \[[`718f044f07`](https://github.com/nodejs/node/commit/718f044f07)] - **(SEMVER-MAJOR)** **crypto**: validate digest output encodings (Filip Skokan) [#66247](https://github.com/nodejs/node/pull/66247) +- \[[`6b8001d219`](https://github.com/nodejs/node/commit/6b8001d219)] - **(SEMVER-MAJOR)** **crypto**: validate update input encodings (Filip Skokan) [#66247](https://github.com/nodejs/node/pull/66247) +- \[[`127f79a911`](https://github.com/nodejs/node/commit/127f79a911)] - **(SEMVER-MAJOR)** **crypto**: validate inputEncoding in Cipher/Decipher update (Maruthan G) [#66247](https://github.com/nodejs/node/pull/66247) +- \[[`b116861e88`](https://github.com/nodejs/node/commit/b116861e88)] - **(SEMVER-MAJOR)** **crypto**: move DEP0198 to End-of-Life (Filip Skokan) [#64000](https://github.com/nodejs/node/pull/64000) +- \[[`4d09c04253`](https://github.com/nodejs/node/commit/4d09c04253)] - **(SEMVER-MAJOR)** **crypto**: move DEP0203 and DEP0204 to End-of-Life (Filip Skokan) [#63188](https://github.com/nodejs/node/pull/63188) +- \[[`9d50432837`](https://github.com/nodejs/node/commit/9d50432837)] - **(SEMVER-MAJOR)** **crypto**: reject resizable backing stores in Web Crypto buffer parameters (Filip Skokan) [#63925](https://github.com/nodejs/node/pull/63925) +- \[[`63907e1018`](https://github.com/nodejs/node/commit/63907e1018)] - **(SEMVER-MAJOR)** **crypto**: throw on uninitialized DH computeSecret (Filip Skokan) [#63922](https://github.com/nodejs/node/pull/63922) +- \[[`463e56fb00`](https://github.com/nodejs/node/commit/463e56fb00)] - **(SEMVER-MAJOR)** **crypto**: runtime-deprecate calling Hmac.digest() more than once (Madelyn) [#63624](https://github.com/nodejs/node/pull/63624) +- \[[`a2cd8aa883`](https://github.com/nodejs/node/commit/a2cd8aa883)] - **(SEMVER-MAJOR)** **crypto,https,tls**: end OpenSSL engine support (Filip Skokan) [#64777](https://github.com/nodejs/node/pull/64777) +- \[[`3983092f63`](https://github.com/nodejs/node/commit/3983092f63)] - **(SEMVER-MAJOR)** **deps**: update archs files for openssl-4.1.0 (Node.js GitHub Bot) [#66971](https://github.com/nodejs/node/pull/66971) +- \[[`79239a48f1`](https://github.com/nodejs/node/commit/79239a48f1)] - **(SEMVER-MAJOR)** **deps**: upgrade openssl sources to openssl-4.1.0 (Node.js GitHub Bot) [#66971](https://github.com/nodejs/node/pull/66971) +- \[[`85bfe9a938`](https://github.com/nodejs/node/commit/85bfe9a938)] - **(SEMVER-MAJOR)** **deps**: remove ncrypto legacy OpenSSL backend (Filip Skokan) [#64777](https://github.com/nodejs/node/pull/64777) +- \[[`826df076a3`](https://github.com/nodejs/node/commit/826df076a3)] - **(SEMVER-MAJOR)** **deps**: update V8 to 15.6.75.13 (Joyee Cheung) [#66601](https://github.com/nodejs/node/pull/66601) +- \[[`4eb3908d1f`](https://github.com/nodejs/node/commit/4eb3908d1f)] - **(SEMVER-MAJOR)** **deps**: upgrade npm to 12.1.0 (npm team) [#66212](https://github.com/nodejs/node/pull/66212) +- \[[`cba0833111`](https://github.com/nodejs/node/commit/cba0833111)] - **(SEMVER-MAJOR)** **dgram**: skip the custom lookup for literal IP addresses (Ruben Bridgewater) [#64131](https://github.com/nodejs/node/pull/64131) +- \[[`54a5095764`](https://github.com/nodejs/node/commit/54a5095764)] - **(SEMVER-MAJOR)** **dns**: do not consult hosts file in reverse lookups (Archkon) [#64268](https://github.com/nodejs/node/pull/64268) +- \[[`efc0a14461`](https://github.com/nodejs/node/commit/efc0a14461)] - **(SEMVER-MAJOR)** **dns**: stop using deprecated functions in `SetServers` (Antoine du Hamel) [#64356](https://github.com/nodejs/node/pull/64356) +- \[[`7f16850ef6`](https://github.com/nodejs/node/commit/7f16850ef6)] - **(SEMVER-MAJOR)** **doc**: remove OpenSSL 1.x references (Filip Skokan) [#64777](https://github.com/nodejs/node/pull/64777) +- \[[`9c67491706`](https://github.com/nodejs/node/commit/9c67491706)] - **(SEMVER-MAJOR)** **doc**: update Node.js 27 official binary toolchains (Richard Lau) [#66377](https://github.com/nodejs/node/pull/66377) +- \[[`6071f8bc32`](https://github.com/nodejs/node/commit/6071f8bc32)] - **(SEMVER-MAJOR)** **domain**: runtime-deprecate the module (Matteo Collina) [#65074](https://github.com/nodejs/node/pull/65074) +- \[[`2c4356cedf`](https://github.com/nodejs/node/commit/2c4356cedf)] - **(SEMVER-MAJOR)** **domain**: port to AsyncLocalStorage (Matteo Collina) [#61095](https://github.com/nodejs/node/pull/61095) +- \[[`a8f2bf007e`](https://github.com/nodejs/node/commit/a8f2bf007e)] - **(SEMVER-MAJOR)** **fs**: implement glob natively (Aviv Keller) [#65392](https://github.com/nodejs/node/pull/65392) +- \[[`1f53d7ee3f`](https://github.com/nodejs/node/commit/1f53d7ee3f)] - **(SEMVER-MAJOR)** **fs**: return Buffer from mkdtemp when prefix is a Buffer (Hamid Reza Ghavami) [#64397](https://github.com/nodejs/node/pull/64397) +- \[[`e5778f78c5`](https://github.com/nodejs/node/commit/e5778f78c5)] - **(SEMVER-MAJOR)** **http**: reject responses exceeding header limit (Matteo Collina) [#65010](https://github.com/nodejs/node/pull/65010) +- \[[`25c0c8e18a`](https://github.com/nodejs/node/commit/25c0c8e18a)] - **(SEMVER-MAJOR)** **http**: runtime deprecate instantiating without new (Yagiz Nizipli) [#64853](https://github.com/nodejs/node/pull/64853) +- \[[`9f75269840`](https://github.com/nodejs/node/commit/9f75269840)] - **(SEMVER-MAJOR)** **http**: increase keepAliveTimeout default to 65 seconds (Tim Perry) [#62782](https://github.com/nodejs/node/pull/62782) +- \[[`21436f0405`](https://github.com/nodejs/node/commit/21436f0405)] - **(SEMVER-MAJOR)** **http**: make req.headers have a null prototype (Matteo Collina) [#62900](https://github.com/nodejs/node/pull/62900) +- \[[`b2248fd370`](https://github.com/nodejs/node/commit/b2248fd370)] - **(SEMVER-MAJOR)** **http**: reject addTrailers after finish (Ryuhei Shima) [#62832](https://github.com/nodejs/node/pull/62832) +- \[[`1576cb83b4`](https://github.com/nodejs/node/commit/1576cb83b4)] - **(SEMVER-MAJOR)** **http2**: increase default window sizes (Matteo Collina) [#64623](https://github.com/nodejs/node/pull/64623) +- \[[`12ce81920a`](https://github.com/nodejs/node/commit/12ce81920a)] - **(SEMVER-MAJOR)** **lib**: deprecate \_http\_\* (Sebastian Beltran) [#58535](https://github.com/nodejs/node/pull/58535) +- \[[`19c46abbef`](https://github.com/nodejs/node/commit/19c46abbef)] - **(SEMVER-MAJOR)** **lib**: insert argv\[0] at argv\[1] in setDeserializeMainFunction (Daijiro Wachi) [#62928](https://github.com/nodejs/node/pull/62928) +- \[[`b1387e6aed`](https://github.com/nodejs/node/commit/b1387e6aed)] - **(SEMVER-MAJOR)** **lib**: use `Object.freeze` to avoid defensive cloning in `SourceMap` (Daijiro Wachi) [#62830](https://github.com/nodejs/node/pull/62830) +- \[[`9390c810d1`](https://github.com/nodejs/node/commit/9390c810d1)] - **(SEMVER-MAJOR)** **lib**: reject SharedArrayBuffer in Blob constructor per spec (Ali Hassan) [#63046](https://github.com/nodejs/node/pull/63046) +- \[[`057e591f7c`](https://github.com/nodejs/node/commit/057e591f7c)] - **(SEMVER-MAJOR)** **lib,src**: remove `--no-experimental-websocket` CLI flag (Antoine du Hamel) [#65284](https://github.com/nodejs/node/pull/65284) +- \[[`9746ebce07`](https://github.com/nodejs/node/commit/9746ebce07)] - **(SEMVER-MAJOR)** **net**: race family autoselection attempts (Matteo Collina) [#66229](https://github.com/nodejs/node/pull/66229) +- \[[`e03e2f6486`](https://github.com/nodejs/node/commit/e03e2f6486)] - **(SEMVER-MAJOR)** **net**: throw on multiple listen calls (Matteo Collina) [#64871](https://github.com/nodejs/node/pull/64871) +- \[[`a6e7e6a95e`](https://github.com/nodejs/node/commit/a6e7e6a95e)] - **(SEMVER-MAJOR)** **net**: runtime-deprecate Server.prototype.\_listen2 (Guilherme Araújo) [#64794](https://github.com/nodejs/node/pull/64794) +- \[[`6d8baeabb0`](https://github.com/nodejs/node/commit/6d8baeabb0)] - **(SEMVER-MAJOR)** **net**: add experimental net/promises API (Ethan Arrowood) [#63965](https://github.com/nodejs/node/pull/63965) +- \[[`4f844f4380`](https://github.com/nodejs/node/commit/4f844f4380)] - **(SEMVER-MAJOR)** **repl**: use inspector over vm (Aviv Keller) [#64034](https://github.com/nodejs/node/pull/64034) +- \[[`fc28d9402f`](https://github.com/nodejs/node/commit/fc28d9402f)] - **(SEMVER-MAJOR)** **src**: officially deprecate `node::ObjectWrap` (Anna Henningsen) [#63756](https://github.com/nodejs/node/pull/63756) +- \[[`2d0c926907`](https://github.com/nodejs/node/commit/2d0c926907)] - **(SEMVER-MAJOR)** **src**: merge `CreateEnvironment()` overloads (Anna Henningsen) [#63596](https://github.com/nodejs/node/pull/63596) +- \[[`f378cfcfbf`](https://github.com/nodejs/node/commit/f378cfcfbf)] - **(SEMVER-MAJOR)** **src,lib**: add --allow-env permission (James M Snell) [#66132](https://github.com/nodejs/node/pull/66132) +- \[[`9f7ae86d8b`](https://github.com/nodejs/node/commit/9f7ae86d8b)] - **(SEMVER-MAJOR)** **stream**: destroy source when map iterator closes early (Y1D7NG) [#64264](https://github.com/nodejs/node/pull/64264) +- \[[`6698675526`](https://github.com/nodejs/node/commit/6698675526)] - **test\_runner**: use AsyncLocalStorage instead of async\_hooks (Matteo Collina) [#66795](https://github.com/nodejs/node/pull/66795) +- \[[`7a11a9b2db`](https://github.com/nodejs/node/commit/7a11a9b2db)] - **(SEMVER-MAJOR)** **tls**: move \_tls\_\* to end-of-life (Sebastian Beltran) [#60658](https://github.com/nodejs/node/pull/60658) +- \[[`967d4af565`](https://github.com/nodejs/node/commit/967d4af565)] - **(SEMVER-MAJOR)** **zlib**: convert classes to modern syntax and eol DEP0184 (Yagiz Nizipli) [#64849](https://github.com/nodejs/node/pull/64849) + +### Semver-Major Commits + +- \[[`984aa0c25e`](https://github.com/nodejs/node/commit/984aa0c25e)] - **(SEMVER-MAJOR)** **async\_hooks**: remove legacy AsyncLocalStorage implementation (Matteo Collina) [#63641](https://github.com/nodejs/node/pull/63641) +- \[[`d1960949bb`](https://github.com/nodejs/node/commit/d1960949bb)] - **(SEMVER-MAJOR)** **benchmark**: protect against accidental fork bomb (James M Snell) [#66132](https://github.com/nodejs/node/pull/66132) +- \[[`21cfb2a4ad`](https://github.com/nodejs/node/commit/21cfb2a4ad)] - **(SEMVER-MAJOR)** **build**: remove the bundled FIPS provider build (Filip Skokan) [#64777](https://github.com/nodejs/node/pull/64777) +- \[[`34e3b90621`](https://github.com/nodejs/node/commit/34e3b90621)] - **(SEMVER-MAJOR)** **build**: require OpenSSL 3 or later (Filip Skokan) [#64777](https://github.com/nodejs/node/pull/64777) +- \[[`6f178cd39f`](https://github.com/nodejs/node/commit/6f178cd39f)] - **(SEMVER-MAJOR)** **build**: reset embedder string to "-node.0" (Joyee Cheung) [#66601](https://github.com/nodejs/node/pull/66601) +- \[[`60c7958b8e`](https://github.com/nodejs/node/commit/60c7958b8e)] - **(SEMVER-MAJOR)** **build**: update flags for V8 CI (Richard Lau) [#66537](https://github.com/nodejs/node/pull/66537) +- \[[`05c9b89d42`](https://github.com/nodejs/node/commit/05c9b89d42)] - **(SEMVER-MAJOR)** **build**: disable V8\_USE\_METAGEN\_INSTANCE\_TYPES (Joyee Cheung) [#66537](https://github.com/nodejs/node/pull/66537) +- \[[`18077b5d3a`](https://github.com/nodejs/node/commit/18077b5d3a)] - **(SEMVER-MAJOR)** **build**: do not match v8\_libplatform\_headers when scraping sources (Joyee Cheung) [#66537](https://github.com/nodejs/node/pull/66537) +- \[[`520388f362`](https://github.com/nodejs/node/commit/520388f362)] - **(SEMVER-MAJOR)** **build**: reset embedder string to "-node.0" (Joyee Cheung) [#66537](https://github.com/nodejs/node/pull/66537) +- \[[`30074a3cc8`](https://github.com/nodejs/node/commit/30074a3cc8)] - **(SEMVER-MAJOR)** **build**: fix cppgc\_base perfetto source scraper (Chengzhong Wu) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`b356886269`](https://github.com/nodejs/node/commit/b356886269)] - **(SEMVER-MAJOR)** **build**: use ICU\_UTIL\_DATA\_STATIC across V8 (Joyee Cheung) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`08a7331bb1`](https://github.com/nodejs/node/commit/08a7331bb1)] - **(SEMVER-MAJOR)** **build**: disable v8\_postmortem\_support (Joyee Cheung) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`c148a7f3ba`](https://github.com/nodejs/node/commit/c148a7f3ba)] - **(SEMVER-MAJOR)** **build**: reset embedder string to "-node.0" (Joyee Cheung) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`87a4efb61f`](https://github.com/nodejs/node/commit/87a4efb61f)] - **(SEMVER-MAJOR)** _**Revert**_ "**build**: update Makefile to support fat binary" (Antoine du Hamel) [#65427](https://github.com/nodejs/node/pull/65427) +- \[[`c362db6e24`](https://github.com/nodejs/node/commit/c362db6e24)] - **(SEMVER-MAJOR)** **build**: downgrade Intel macOS support to experimental (Antoine du Hamel) [#65427](https://github.com/nodejs/node/pull/65427) +- \[[`ea86967557`](https://github.com/nodejs/node/commit/ea86967557)] - **(SEMVER-MAJOR)** **build,win**: do not quote cmd arguments (StefanStojanovic) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`fb8d52d75a`](https://github.com/nodejs/node/commit/fb8d52d75a)] - **(SEMVER-MAJOR)** **crypto**: move DEP0093 to End-of-Life (Filip Skokan) [#64777](https://github.com/nodejs/node/pull/64777) +- \[[`8be36fb494`](https://github.com/nodejs/node/commit/8be36fb494)] - **(SEMVER-MAJOR)** **crypto**: remove legacy OpenSSL code paths (Filip Skokan) [#64777](https://github.com/nodejs/node/pull/64777) +- \[[`718f044f07`](https://github.com/nodejs/node/commit/718f044f07)] - **(SEMVER-MAJOR)** **crypto**: validate digest output encodings (Filip Skokan) [#66247](https://github.com/nodejs/node/pull/66247) +- \[[`6b8001d219`](https://github.com/nodejs/node/commit/6b8001d219)] - **(SEMVER-MAJOR)** **crypto**: validate update input encodings (Filip Skokan) [#66247](https://github.com/nodejs/node/pull/66247) +- \[[`127f79a911`](https://github.com/nodejs/node/commit/127f79a911)] - **(SEMVER-MAJOR)** **crypto**: validate inputEncoding in Cipher/Decipher update (Maruthan G) [#66247](https://github.com/nodejs/node/pull/66247) +- \[[`b116861e88`](https://github.com/nodejs/node/commit/b116861e88)] - **(SEMVER-MAJOR)** **crypto**: move DEP0198 to End-of-Life (Filip Skokan) [#64000](https://github.com/nodejs/node/pull/64000) +- \[[`4d09c04253`](https://github.com/nodejs/node/commit/4d09c04253)] - **(SEMVER-MAJOR)** **crypto**: move DEP0203 and DEP0204 to End-of-Life (Filip Skokan) [#63188](https://github.com/nodejs/node/pull/63188) +- \[[`9d50432837`](https://github.com/nodejs/node/commit/9d50432837)] - **(SEMVER-MAJOR)** **crypto**: reject resizable backing stores in Web Crypto buffer parameters (Filip Skokan) [#63925](https://github.com/nodejs/node/pull/63925) +- \[[`63907e1018`](https://github.com/nodejs/node/commit/63907e1018)] - **(SEMVER-MAJOR)** **crypto**: throw on uninitialized DH computeSecret (Filip Skokan) [#63922](https://github.com/nodejs/node/pull/63922) +- \[[`463e56fb00`](https://github.com/nodejs/node/commit/463e56fb00)] - **(SEMVER-MAJOR)** **crypto**: runtime-deprecate calling Hmac.digest() more than once (Madelyn) [#63624](https://github.com/nodejs/node/pull/63624) +- \[[`a2cd8aa883`](https://github.com/nodejs/node/commit/a2cd8aa883)] - **(SEMVER-MAJOR)** **crypto,https,tls**: end OpenSSL engine support (Filip Skokan) [#64777](https://github.com/nodejs/node/pull/64777) +- \[[`b61e682fc0`](https://github.com/nodejs/node/commit/b61e682fc0)] - **(SEMVER-MAJOR)** _**Revert**_ "**crypto,https,tls**: runtime-deprecate OpenSSL engine-based APIs (DEP0183)" (Filip Skokan) [#64777](https://github.com/nodejs/node/pull/64777) +- \[[`da516920fc`](https://github.com/nodejs/node/commit/da516920fc)] - **(SEMVER-MAJOR)** **crypto,https,tls**: runtime-deprecate OpenSSL engine-based APIs (DEP0183) (Filip Skokan) [#63966](https://github.com/nodejs/node/pull/63966) +- \[[`3983092f63`](https://github.com/nodejs/node/commit/3983092f63)] - **(SEMVER-MAJOR)** **deps**: update archs files for openssl-4.1.0 (Node.js GitHub Bot) [#66971](https://github.com/nodejs/node/pull/66971) +- \[[`79239a48f1`](https://github.com/nodejs/node/commit/79239a48f1)] - **(SEMVER-MAJOR)** **deps**: upgrade openssl sources to openssl-4.1.0 (Node.js GitHub Bot) [#66971](https://github.com/nodejs/node/pull/66971) +- \[[`85bfe9a938`](https://github.com/nodejs/node/commit/85bfe9a938)] - **(SEMVER-MAJOR)** **deps**: remove ncrypto legacy OpenSSL backend (Filip Skokan) [#64777](https://github.com/nodejs/node/pull/64777) +- \[[`1c90519c1a`](https://github.com/nodejs/node/commit/1c90519c1a)] - **(SEMVER-MAJOR)** **deps**: V8: cherry-pick 8d14d49c4040 (Antoine du Hamel) [#66601](https://github.com/nodejs/node/pull/66601) +- \[[`2d87c56f37`](https://github.com/nodejs/node/commit/2d87c56f37)] - **(SEMVER-MAJOR)** **deps**: V8: cherry-pick 19173cde61d8 (Joyee Cheung) [#66601](https://github.com/nodejs/node/pull/66601) +- \[[`2589e42f48`](https://github.com/nodejs/node/commit/2589e42f48)] - **(SEMVER-MAJOR)** **deps**: V8: cherry-pick 95626c699ff2 (Joyee Cheung) [#66601](https://github.com/nodejs/node/pull/66601) +- \[[`0e2f479a0c`](https://github.com/nodejs/node/commit/0e2f479a0c)] - **(SEMVER-MAJOR)** **deps**: V8: cherry-pick 99ebeac9c548 (Joyee Cheung) [#66601](https://github.com/nodejs/node/pull/66601) +- \[[`c1e280b773`](https://github.com/nodejs/node/commit/c1e280b773)] - **(SEMVER-MAJOR)** **deps**: V8: cherry-pick b2fc93f37507 (Joyee Cheung) [#66601](https://github.com/nodejs/node/pull/66601) +- \[[`66f9d2e907`](https://github.com/nodejs/node/commit/66f9d2e907)] - **(SEMVER-MAJOR)** **deps**: V8: cherry-pick e10d795bfe95 (Joyee Cheung) [#66601](https://github.com/nodejs/node/pull/66601) +- \[[`fc2b3fb0d0`](https://github.com/nodejs/node/commit/fc2b3fb0d0)] - **(SEMVER-MAJOR)** **deps**: V8: cherry-pick 5dfeb2e42380 (Joyee Cheung) [#66601](https://github.com/nodejs/node/pull/66601) +- \[[`5fb4242977`](https://github.com/nodejs/node/commit/5fb4242977)] - **(SEMVER-MAJOR)** **deps**: V8: cherry-pick 415b7d302d2e (Joyee Cheung) [#66601](https://github.com/nodejs/node/pull/66601) +- \[[`cb9469250e`](https://github.com/nodejs/node/commit/cb9469250e)] - **(SEMVER-MAJOR)** **deps**: patch V8 to avoid duplicated zlib symbol (Michaël Zasso) [#66601](https://github.com/nodejs/node/pull/66601) +- \[[`415fe6e55e`](https://github.com/nodejs/node/commit/415fe6e55e)] - **(SEMVER-MAJOR)** **deps**: update Rust crates for V8 15.6.75.13 (Joyee Cheung) [#66601](https://github.com/nodejs/node/pull/66601) +- \[[`826df076a3`](https://github.com/nodejs/node/commit/826df076a3)] - **(SEMVER-MAJOR)** **deps**: update V8 to 15.6.75.13 (Joyee Cheung) [#66601](https://github.com/nodejs/node/pull/66601) +- \[[`18b117b30f`](https://github.com/nodejs/node/commit/18b117b30f)] - **(SEMVER-MAJOR)** **deps**: patch V8 to fix Windows build (StefanStojanovic) [#66537](https://github.com/nodejs/node/pull/66537) +- \[[`87c1b1cfb4`](https://github.com/nodejs/node/commit/87c1b1cfb4)] - **(SEMVER-MAJOR)** **deps**: support madvise(3C) across ALL illumos revisions (Dan McDonald) [#66537](https://github.com/nodejs/node/pull/66537) +- \[[`5fb74d16f9`](https://github.com/nodejs/node/commit/5fb74d16f9)] - **(SEMVER-MAJOR)** **deps**: patch V8 for illumos (Dan McDonald) [#66537](https://github.com/nodejs/node/pull/66537) +- \[[`ea41e655f3`](https://github.com/nodejs/node/commit/ea41e655f3)] - **(SEMVER-MAJOR)** **deps**: define V8\_PRESERVE\_MOST as no-op on Windows (Stefan Stojanovic) [#66537](https://github.com/nodejs/node/pull/66537) +- \[[`a633547d9c`](https://github.com/nodejs/node/commit/a633547d9c)] - **(SEMVER-MAJOR)** **deps**: patch V8 to avoid duplicated zlib symbol (Michaël Zasso) [#66537](https://github.com/nodejs/node/pull/66537) +- \[[`bae4e709b8`](https://github.com/nodejs/node/commit/bae4e709b8)] - **(SEMVER-MAJOR)** **deps**: V8: cherry-pick 1246d3bfab1a (Joyee Cheung) [#66537](https://github.com/nodejs/node/pull/66537) +- \[[`a9cc80dd34`](https://github.com/nodejs/node/commit/a9cc80dd34)] - **(SEMVER-MAJOR)** **deps**: V8: cherry-pick 00508c374a45 (Joyee Cheung) [#66537](https://github.com/nodejs/node/pull/66537) +- \[[`801d1c7a39`](https://github.com/nodejs/node/commit/801d1c7a39)] - **(SEMVER-MAJOR)** **deps**: V8: backport 9fb4444bfc46 (Steven R. Loomis) [#66537](https://github.com/nodejs/node/pull/66537) +- \[[`938487505f`](https://github.com/nodejs/node/commit/938487505f)] - **(SEMVER-MAJOR)** **deps**: V8: cherry-pick 786c1c2d88d4 (Eliau Elkouby) [#66537](https://github.com/nodejs/node/pull/66537) +- \[[`e7db80914f`](https://github.com/nodejs/node/commit/e7db80914f)] - **(SEMVER-MAJOR)** **deps**: V8: cherry-pick 820f3d72a638 (Joyee Cheung) [#66537](https://github.com/nodejs/node/pull/66537) +- \[[`2551a56021`](https://github.com/nodejs/node/commit/2551a56021)] - **(SEMVER-MAJOR)** **deps**: V8: cherry-pick 315d9c945ac3 (ishabi) [#66537](https://github.com/nodejs/node/pull/66537) +- \[[`bfd74f89dd`](https://github.com/nodejs/node/commit/bfd74f89dd)] - **(SEMVER-MAJOR)** **deps**: V8: cherry-pick 37baecdd9479 (ishabi) [#66537](https://github.com/nodejs/node/pull/66537) +- \[[`fd1aba0dfa`](https://github.com/nodejs/node/commit/fd1aba0dfa)] - **(SEMVER-MAJOR)** **deps**: V8: cherry-pick 99ebeac9c548 (Joyee Cheung) [#66537](https://github.com/nodejs/node/pull/66537) +- \[[`f0273edb9e`](https://github.com/nodejs/node/commit/f0273edb9e)] - **(SEMVER-MAJOR)** **deps**: V8: cherry-pick b2fc93f37507 (Joyee Cheung) [#66537](https://github.com/nodejs/node/pull/66537) +- \[[`d5a8930d0f`](https://github.com/nodejs/node/commit/d5a8930d0f)] - **(SEMVER-MAJOR)** **deps**: update Rust crates for V8 15.5.35.20 (Joyee Cheung) [#66537](https://github.com/nodejs/node/pull/66537) +- \[[`6b28cb0909`](https://github.com/nodejs/node/commit/6b28cb0909)] - **(SEMVER-MAJOR)** **deps**: update V8 to 15.5.35.20 (Joyee Cheung) [#66537](https://github.com/nodejs/node/pull/66537) +- \[[`93bb027b68`](https://github.com/nodejs/node/commit/93bb027b68)] - **(SEMVER-MAJOR)** **deps**: V8: cherry-pick c795f5948568 (Aviv Keller) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`28553729d0`](https://github.com/nodejs/node/commit/28553729d0)] - **(SEMVER-MAJOR)** **deps**: remove broken NamedPropertyDefinerCallbackV2 converter (Joyee Cheung) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`84087531dc`](https://github.com/nodejs/node/commit/84087531dc)] - **(SEMVER-MAJOR)** **deps**: V8: backport 9fb4444bfc46 (Steven R. Loomis) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`346ac563dc`](https://github.com/nodejs/node/commit/346ac563dc)] - **(SEMVER-MAJOR)** **deps**: V8: cherry-pick 786c1c2d88d4 (Eliau Elkouby) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`39d3b1d1a0`](https://github.com/nodejs/node/commit/39d3b1d1a0)] - **(SEMVER-MAJOR)** **deps**: V8: cherry-pick 5404e0f85a83 (Shelley Vohr) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`5d221d9cd6`](https://github.com/nodejs/node/commit/5d221d9cd6)] - **(SEMVER-MAJOR)** **deps**: V8: cherry-pick 820f3d72a638 (Joyee Cheung) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`6faa33426f`](https://github.com/nodejs/node/commit/6faa33426f)] - **(SEMVER-MAJOR)** **deps**: V8: cherry-pick 315d9c945ac3 (ishabi) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`daf03c0361`](https://github.com/nodejs/node/commit/daf03c0361)] - **(SEMVER-MAJOR)** **deps**: V8: cherry-pick 37baecdd9479 (ishabi) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`9e274db98a`](https://github.com/nodejs/node/commit/9e274db98a)] - **(SEMVER-MAJOR)** **deps**: V8: backport a0607c5006b8 (Antoine du Hamel) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`bfc94df374`](https://github.com/nodejs/node/commit/bfc94df374)] - **(SEMVER-MAJOR)** **deps**: V8: cherry-pick f4221e09e812 (Gundepalli Sravani) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`f2967441e5`](https://github.com/nodejs/node/commit/f2967441e5)] - **(SEMVER-MAJOR)** **deps**: V8: backport f3d4d458fe59 (Olivier Flückiger) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`33e5031503`](https://github.com/nodejs/node/commit/33e5031503)] - **(SEMVER-MAJOR)** **deps**: V8: cherry-pick 99ebeac9c548 (Joyee Cheung) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`c419eaca14`](https://github.com/nodejs/node/commit/c419eaca14)] - **(SEMVER-MAJOR)** **deps**: V8: cherry-pick 811fe8b04203 (Milad Fa) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`677424cd86`](https://github.com/nodejs/node/commit/677424cd86)] - **(SEMVER-MAJOR)** **deps**: V8: cherry-pick ba4ef8d72cde (Joyee Cheung) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`268bd647fc`](https://github.com/nodejs/node/commit/268bd647fc)] - **(SEMVER-MAJOR)** **deps**: V8: cherry-pick 68cf9ecd884b (Joyee Cheung) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`430abdf455`](https://github.com/nodejs/node/commit/430abdf455)] - **(SEMVER-MAJOR)** **deps**: fixup macros.h for GCC support (Michaël Zasso) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`109aaa78bd`](https://github.com/nodejs/node/commit/109aaa78bd)] - **(SEMVER-MAJOR)** **deps**: fix V8 race condition for AIX (Abdirahim Musse) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`38b9b32a3b`](https://github.com/nodejs/node/commit/38b9b32a3b)] - **(SEMVER-MAJOR)** **deps**: patch V8 to fix Windows build (StefanStojanovic) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`a4c868738f`](https://github.com/nodejs/node/commit/a4c868738f)] - **(SEMVER-MAJOR)** **deps**: support madvise(3C) across ALL illumos revisions (Dan McDonald) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`904ceda2cb`](https://github.com/nodejs/node/commit/904ceda2cb)] - **(SEMVER-MAJOR)** **deps**: patch V8 for illumos (Dan McDonald) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`ee7590d4b9`](https://github.com/nodejs/node/commit/ee7590d4b9)] - **(SEMVER-MAJOR)** **deps**: V8: cherry-pick b2fc93f37507 (Joyee Cheung) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`1407687630`](https://github.com/nodejs/node/commit/1407687630)] - **(SEMVER-MAJOR)** **deps**: define V8\_PRESERVE\_MOST as no-op on Windows (Stefan Stojanovic) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`0b7a5c99d3`](https://github.com/nodejs/node/commit/0b7a5c99d3)] - **(SEMVER-MAJOR)** **deps**: patch V8 to avoid duplicated zlib symbol (Michaël Zasso) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`888c6fd847`](https://github.com/nodejs/node/commit/888c6fd847)] - **(SEMVER-MAJOR)** **deps**: update Rust crates for V8 15.2.124.38 (Joyee Cheung) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`07fa7280c1`](https://github.com/nodejs/node/commit/07fa7280c1)] - **(SEMVER-MAJOR)** **deps**: update V8 to 15.2.124.38 (Joyee Cheung) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`4eb3908d1f`](https://github.com/nodejs/node/commit/4eb3908d1f)] - **(SEMVER-MAJOR)** **deps**: upgrade npm to 12.1.0 (npm team) [#66212](https://github.com/nodejs/node/pull/66212) +- \[[`cba0833111`](https://github.com/nodejs/node/commit/cba0833111)] - **(SEMVER-MAJOR)** **dgram**: skip the custom lookup for literal IP addresses (Ruben Bridgewater) [#64131](https://github.com/nodejs/node/pull/64131) +- \[[`54a5095764`](https://github.com/nodejs/node/commit/54a5095764)] - **(SEMVER-MAJOR)** **dns**: do not consult hosts file in reverse lookups (Archkon) [#64268](https://github.com/nodejs/node/pull/64268) +- \[[`efc0a14461`](https://github.com/nodejs/node/commit/efc0a14461)] - **(SEMVER-MAJOR)** **dns**: stop using deprecated functions in `SetServers` (Antoine du Hamel) [#64356](https://github.com/nodejs/node/pull/64356) +- \[[`7f16850ef6`](https://github.com/nodejs/node/commit/7f16850ef6)] - **(SEMVER-MAJOR)** **doc**: remove OpenSSL 1.x references (Filip Skokan) [#64777](https://github.com/nodejs/node/pull/64777) +- \[[`9c67491706`](https://github.com/nodejs/node/commit/9c67491706)] - **(SEMVER-MAJOR)** **doc**: update Node.js 27 official binary toolchains (Richard Lau) [#66377](https://github.com/nodejs/node/pull/66377) +- \[[`6071f8bc32`](https://github.com/nodejs/node/commit/6071f8bc32)] - **(SEMVER-MAJOR)** **domain**: runtime-deprecate the module (Matteo Collina) [#65074](https://github.com/nodejs/node/pull/65074) +- \[[`2c4356cedf`](https://github.com/nodejs/node/commit/2c4356cedf)] - **(SEMVER-MAJOR)** **domain**: port to AsyncLocalStorage (Matteo Collina) [#61095](https://github.com/nodejs/node/pull/61095) +- \[[`a8f2bf007e`](https://github.com/nodejs/node/commit/a8f2bf007e)] - **(SEMVER-MAJOR)** **fs**: implement glob natively (Aviv Keller) [#65392](https://github.com/nodejs/node/pull/65392) +- \[[`1f53d7ee3f`](https://github.com/nodejs/node/commit/1f53d7ee3f)] - **(SEMVER-MAJOR)** **fs**: return Buffer from mkdtemp when prefix is a Buffer (Hamid Reza Ghavami) [#64397](https://github.com/nodejs/node/pull/64397) +- \[[`e5778f78c5`](https://github.com/nodejs/node/commit/e5778f78c5)] - **(SEMVER-MAJOR)** **http**: reject responses exceeding header limit (Matteo Collina) [#65010](https://github.com/nodejs/node/pull/65010) +- \[[`25c0c8e18a`](https://github.com/nodejs/node/commit/25c0c8e18a)] - **(SEMVER-MAJOR)** **http**: runtime deprecate instantiating without new (Yagiz Nizipli) [#64853](https://github.com/nodejs/node/pull/64853) +- \[[`9f75269840`](https://github.com/nodejs/node/commit/9f75269840)] - **(SEMVER-MAJOR)** **http**: increase keepAliveTimeout default to 65 seconds (Tim Perry) [#62782](https://github.com/nodejs/node/pull/62782) +- \[[`21436f0405`](https://github.com/nodejs/node/commit/21436f0405)] - **(SEMVER-MAJOR)** **http**: make req.headers have a null prototype (Matteo Collina) [#62900](https://github.com/nodejs/node/pull/62900) +- \[[`b2248fd370`](https://github.com/nodejs/node/commit/b2248fd370)] - **(SEMVER-MAJOR)** **http**: reject addTrailers after finish (Ryuhei Shima) [#62832](https://github.com/nodejs/node/pull/62832) +- \[[`1576cb83b4`](https://github.com/nodejs/node/commit/1576cb83b4)] - **(SEMVER-MAJOR)** **http2**: increase default window sizes (Matteo Collina) [#64623](https://github.com/nodejs/node/pull/64623) +- \[[`12ce81920a`](https://github.com/nodejs/node/commit/12ce81920a)] - **(SEMVER-MAJOR)** **lib**: deprecate \_http\_\* (Sebastian Beltran) [#58535](https://github.com/nodejs/node/pull/58535) +- \[[`19c46abbef`](https://github.com/nodejs/node/commit/19c46abbef)] - **(SEMVER-MAJOR)** **lib**: insert argv\[0] at argv\[1] in setDeserializeMainFunction (Daijiro Wachi) [#62928](https://github.com/nodejs/node/pull/62928) +- \[[`b1387e6aed`](https://github.com/nodejs/node/commit/b1387e6aed)] - **(SEMVER-MAJOR)** **lib**: use `Object.freeze` to avoid defensive cloning in `SourceMap` (Daijiro Wachi) [#62830](https://github.com/nodejs/node/pull/62830) +- \[[`9390c810d1`](https://github.com/nodejs/node/commit/9390c810d1)] - **(SEMVER-MAJOR)** **lib**: reject SharedArrayBuffer in Blob constructor per spec (Ali Hassan) [#63046](https://github.com/nodejs/node/pull/63046) +- \[[`057e591f7c`](https://github.com/nodejs/node/commit/057e591f7c)] - **(SEMVER-MAJOR)** **lib,src**: remove `--no-experimental-websocket` CLI flag (Antoine du Hamel) [#65284](https://github.com/nodejs/node/pull/65284) +- \[[`9746ebce07`](https://github.com/nodejs/node/commit/9746ebce07)] - **(SEMVER-MAJOR)** **net**: race family autoselection attempts (Matteo Collina) [#66229](https://github.com/nodejs/node/pull/66229) +- \[[`e03e2f6486`](https://github.com/nodejs/node/commit/e03e2f6486)] - **(SEMVER-MAJOR)** **net**: throw on multiple listen calls (Matteo Collina) [#64871](https://github.com/nodejs/node/pull/64871) +- \[[`a6e7e6a95e`](https://github.com/nodejs/node/commit/a6e7e6a95e)] - **(SEMVER-MAJOR)** **net**: runtime-deprecate Server.prototype.\_listen2 (Guilherme Araújo) [#64794](https://github.com/nodejs/node/pull/64794) +- \[[`6d8baeabb0`](https://github.com/nodejs/node/commit/6d8baeabb0)] - **(SEMVER-MAJOR)** **net**: add experimental net/promises API (Ethan Arrowood) [#63965](https://github.com/nodejs/node/pull/63965) +- \[[`4f844f4380`](https://github.com/nodejs/node/commit/4f844f4380)] - **(SEMVER-MAJOR)** **repl**: use inspector over vm (Aviv Keller) [#64034](https://github.com/nodejs/node/pull/64034) +- \[[`d9264eb6f2`](https://github.com/nodejs/node/commit/d9264eb6f2)] - **(SEMVER-MAJOR)** **src**: update NODE\_MODULE\_VERSION to 153 (Joyee Cheung) [#66601](https://github.com/nodejs/node/pull/66601) +- \[[`26cc118a75`](https://github.com/nodejs/node/commit/26cc118a75)] - **(SEMVER-MAJOR)** **src**: update NODE\_MODULE\_VERSION to 152 (Joyee Cheung) [#66537](https://github.com/nodejs/node/pull/66537) +- \[[`6cf05e7ddc`](https://github.com/nodejs/node/commit/6cf05e7ddc)] - **(SEMVER-MAJOR)** **src**: fix external reference registration for new CFunction lifetime (Joyee Cheung) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`da93e7e4de`](https://github.com/nodejs/node/commit/da93e7e4de)] - **(SEMVER-MAJOR)** **src**: migrate from `v8::PropertyCallbackInfo` (Michaël Zasso) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`45287a975f`](https://github.com/nodejs/node/commit/45287a975f)] - **(SEMVER-MAJOR)** **src**: migrate from deprecated xxxV2 APIs (Michaël Zasso) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`aa1d7b53ac`](https://github.com/nodejs/node/commit/aa1d7b53ac)] - **(SEMVER-MAJOR)** **src**: update NODE\_MODULE\_VERSION to 151 (Joyee Cheung) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`fc28d9402f`](https://github.com/nodejs/node/commit/fc28d9402f)] - **(SEMVER-MAJOR)** **src**: officially deprecate `node::ObjectWrap` (Anna Henningsen) [#63756](https://github.com/nodejs/node/pull/63756) +- \[[`2d0c926907`](https://github.com/nodejs/node/commit/2d0c926907)] - **(SEMVER-MAJOR)** **src**: merge `CreateEnvironment()` overloads (Anna Henningsen) [#63596](https://github.com/nodejs/node/pull/63596) +- \[[`f92c252fe9`](https://github.com/nodejs/node/commit/f92c252fe9)] - **(SEMVER-MAJOR)** **src, test**: migrate to cppgc-owned v8::MicrotaskQueue (Joyee Cheung) [#66537](https://github.com/nodejs/node/pull/66537) +- \[[`f378cfcfbf`](https://github.com/nodejs/node/commit/f378cfcfbf)] - **(SEMVER-MAJOR)** **src,lib**: add --allow-env permission (James M Snell) [#66132](https://github.com/nodejs/node/pull/66132) +- \[[`7e7ff40303`](https://github.com/nodejs/node/commit/7e7ff40303)] - **(SEMVER-MAJOR)** **src,test**: migrate GetPrototypeV2() to GetPrototype() (Joyee Cheung) [#66537](https://github.com/nodejs/node/pull/66537) +- \[[`9f7ae86d8b`](https://github.com/nodejs/node/commit/9f7ae86d8b)] - **(SEMVER-MAJOR)** **stream**: destroy source when map iterator closes early (Y1D7NG) [#64264](https://github.com/nodejs/node/pull/64264) +- \[[`a730f3bf1f`](https://github.com/nodejs/node/commit/a730f3bf1f)] - **(SEMVER-MAJOR)** **test**: update for new V8 serialization format (Joyee Cheung) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`9b4d1576df`](https://github.com/nodejs/node/commit/9b4d1576df)] - **(SEMVER-MAJOR)** **test**: avoid worker in shared value conveyor test (Michaël Zasso) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`536cedd8bc`](https://github.com/nodejs/node/commit/536cedd8bc)] - **(SEMVER-MAJOR)** **test**: update test-heapdump-vm-script.js for new version of V8 (Joyee Cheung) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`27be1e05a4`](https://github.com/nodejs/node/commit/27be1e05a4)] - **(SEMVER-MAJOR)** **test**: update wpt Wasm jsapi expectations (Michaël Zasso) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`822e8ef3ce`](https://github.com/nodejs/node/commit/822e8ef3ce)] - **(SEMVER-MAJOR)** **test**: fix fs write encoding coverage (Filip Skokan) [#66247](https://github.com/nodejs/node/pull/66247) +- \[[`acbc3ff133`](https://github.com/nodejs/node/commit/acbc3ff133)] - **(SEMVER-MAJOR)** **test,benchmark**: drop OpenSSL 1.x-only coverage (Filip Skokan) [#64777](https://github.com/nodejs/node/pull/64777) +- \[[`ee9ae88636`](https://github.com/nodejs/node/commit/ee9ae88636)] - **(SEMVER-MAJOR)** **test,tools**: drop OpenSSL 1.x-era FIPS leftovers (Filip Skokan) [#64777](https://github.com/nodejs/node/pull/64777) +- \[[`7a11a9b2db`](https://github.com/nodejs/node/commit/7a11a9b2db)] - **(SEMVER-MAJOR)** **tls**: move \_tls\_\* to end-of-life (Sebastian Beltran) [#60658](https://github.com/nodejs/node/pull/60658) +- \[[`1eead123e2`](https://github.com/nodejs/node/commit/1eead123e2)] - **(SEMVER-MAJOR)** **tools**: increase constexpr step limit for MSVC STL (Joyee Cheung) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`6d854b7338`](https://github.com/nodejs/node/commit/6d854b7338)] - **(SEMVER-MAJOR)** **tools**: update V8 gypfiles for 15.1 (Michaël Zasso) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`84de78ad23`](https://github.com/nodejs/node/commit/84de78ad23)] - **(SEMVER-MAJOR)** **tools**: update V8 gypfiles for 15.0 (Michaël Zasso) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`60c6de2540`](https://github.com/nodejs/node/commit/60c6de2540)] - **(SEMVER-MAJOR)** **tools**: update V8 gypfiles for 14.9 (Michaël Zasso) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`8394db37d8`](https://github.com/nodejs/node/commit/8394db37d8)] - **(SEMVER-MAJOR)** **tools**: update V8 gypfiles for 14.8 (Michaël Zasso) [#65161](https://github.com/nodejs/node/pull/65161) +- \[[`967d4af565`](https://github.com/nodejs/node/commit/967d4af565)] - **(SEMVER-MAJOR)** **zlib**: convert classes to modern syntax and eol DEP0184 (Yagiz Nizipli) [#64849](https://github.com/nodejs/node/pull/64849) + +### Semver-Minor Commits + +- \[[`bcf58508d8`](https://github.com/nodejs/node/commit/bcf58508d8)] - **(SEMVER-MINOR)** **doc**: promote alpine to tier 2. List alpine 3.21 as minimum (Stewart X Addison) [#63737](https://github.com/nodejs/node/pull/63737) +- \[[`1a885caa6e`](https://github.com/nodejs/node/commit/1a885caa6e)] - **(SEMVER-MINOR)** **fs**: add mkstemp() (Marco) [#66484](https://github.com/nodejs/node/pull/66484) +- \[[`6dea43a0f8`](https://github.com/nodejs/node/commit/6dea43a0f8)] - **(SEMVER-MINOR)** **lib**: speed up AbortSignal (Robert Nagy) [#66789](https://github.com/nodejs/node/pull/66789) +- \[[`2052d0dcdf`](https://github.com/nodejs/node/commit/2052d0dcdf)] - **(SEMVER-MINOR)** **module**: add --experimental-strip-private-modules (Marco Ippolito) [#63869](https://github.com/nodejs/node/pull/63869) +- \[[`9a9f7e87b8`](https://github.com/nodejs/node/commit/9a9f7e87b8)] - **(SEMVER-MINOR)** **process**: return unregister fn from finalization (Matteo Collina) [#66482](https://github.com/nodejs/node/pull/66482) +- \[[`f513ec7e7c`](https://github.com/nodejs/node/commit/f513ec7e7c)] - **(SEMVER-MINOR)** **test\_runner**: add mockReturnValue and promise helpers (Guilherme Araújo) [#66631](https://github.com/nodejs/node/pull/66631) +- \[[`49ad95045a`](https://github.com/nodejs/node/commit/49ad95045a)] - **(SEMVER-MINOR)** **vfs**: unflag (Matteo Collina) [#66318](https://github.com/nodejs/node/pull/66318) +- \[[`df2ea49e00`](https://github.com/nodejs/node/commit/df2ea49e00)] - **(SEMVER-MINOR)** **zlib**: add crc32c (Philipp Dunkel) [#66828](https://github.com/nodejs/node/pull/66828) + +### Semver-Patch Commits + +- \[[`a4231cfc6b`](https://github.com/nodejs/node/commit/a4231cfc6b)] - **benchmark**: honor n in perf\_hooks usertiming (Rafael Gonzaga) [#66746](https://github.com/nodejs/node/pull/66746) +- \[[`77609be7c0`](https://github.com/nodejs/node/commit/77609be7c0)] - **benchmark**: use process.execPath when pinning CPUs in run.js (Rafael Gonzaga) [#66724](https://github.com/nodejs/node/pull/66724) +- \[[`2d908f48d9`](https://github.com/nodejs/node/commit/2d908f48d9)] - **benchmark**: fix hideStackFrames error benchmarks (Rafael Gonzaga) [#66723](https://github.com/nodejs/node/pull/66723) +- \[[`b41fabb13c`](https://github.com/nodejs/node/commit/b41fabb13c)] - **build**: respect OpenSSL's configured API level (Filip Skokan) [#66953](https://github.com/nodejs/node/pull/66953) +- \[[`5741b0ed04`](https://github.com/nodejs/node/commit/5741b0ed04)] - **build**: error on incompatible quic configure flags (Antoine du Hamel) [#66893](https://github.com/nodejs/node/pull/66893) +- \[[`262e9ac11f`](https://github.com/nodejs/node/commit/262e9ac11f)] - **build**: warn on incompatible dtls configure flags (Antoine du Hamel) [#66892](https://github.com/nodejs/node/pull/66892) +- \[[`d1ed17b708`](https://github.com/nodejs/node/commit/d1ed17b708)] - **build**: remove default values for `libname` (Antoine du Hamel) [#66790](https://github.com/nodejs/node/pull/66790) +- \[[`796a83a7ce`](https://github.com/nodejs/node/commit/796a83a7ce)] - **build**: do not pass vendored headers when building against shared libs (Antoine du Hamel) [#66844](https://github.com/nodejs/node/pull/66844) +- \[[`ef632266e5`](https://github.com/nodejs/node/commit/ef632266e5)] - **build**: include v8\_debug\_helper sources in the tarball (Chengzhong Wu) [#66763](https://github.com/nodejs/node/pull/66763) +- \[[`754325cd2f`](https://github.com/nodejs/node/commit/754325cd2f)] - **build**: warn on incompatible quic configure flags (Antoine du Hamel) [#66754](https://github.com/nodejs/node/pull/66754) +- \[[`cd192cd442`](https://github.com/nodejs/node/commit/cd192cd442)] - **build**: load `gtest_main` using pkg-config (Antoine du Hamel) [#66675](https://github.com/nodejs/node/pull/66675) +- \[[`06c0e46c81`](https://github.com/nodejs/node/commit/06c0e46c81)] - **build**: align rustc version warning with minimum requirement (Yuya Inoue) [#66794](https://github.com/nodejs/node/pull/66794) +- \[[`e463b487c6`](https://github.com/nodejs/node/commit/e463b487c6)] - **build**: fail Windows CI on missing GYP sources (Yuya Inoue) [#66787](https://github.com/nodejs/node/pull/66787) +- \[[`df214abc5f`](https://github.com/nodejs/node/commit/df214abc5f)] - **build**: fix gtest integration (Antoine du Hamel) [#66735](https://github.com/nodejs/node/pull/66735) +- \[[`87db28b6ba`](https://github.com/nodejs/node/commit/87db28b6ba)] - **build**: remove nonexistent header from abseil.gyp (Jiawen Geng) [#66583](https://github.com/nodejs/node/pull/66583) +- \[[`7514ef8caf`](https://github.com/nodejs/node/commit/7514ef8caf)] - **build**: remove deleted V8 headers from metadata inputs (inoway46) [#66531](https://github.com/nodejs/node/pull/66531) +- \[[`313b83438f`](https://github.com/nodejs/node/commit/313b83438f)] - **build**: bump RUSTC\_VERSION to 1.88 in github workflows (Joyee Cheung) [#65742](https://github.com/nodejs/node/pull/65742) +- \[[`b12bad4b11`](https://github.com/nodejs/node/commit/b12bad4b11)] - **build,deps,tools**: prepare to update to OpenSSL 4.1 (Filip Skokan) [#66758](https://github.com/nodejs/node/pull/66758) +- \[[`ca277a6294`](https://github.com/nodejs/node/commit/ca277a6294)] - **build,test**: setup perfetto tests on windows build (Chengzhong Wu) [#66731](https://github.com/nodejs/node/pull/66731) +- \[[`4c294b3b27`](https://github.com/nodejs/node/commit/4c294b3b27)] - **build,win**: fix Perfetto (StefanStojanovic) [#66876](https://github.com/nodejs/node/pull/66876) +- \[[`28b50fb016`](https://github.com/nodejs/node/commit/28b50fb016)] - **build,win**: fail fast in vcbuild without cargo (Ved Chaudhari) [#66858](https://github.com/nodejs/node/pull/66858) +- \[[`86066045ea`](https://github.com/nodejs/node/commit/86066045ea)] - **cli**: add No-Op `--experimental-repl-await` (Aviv Keller) [#64986](https://github.com/nodejs/node/pull/64986) +- \[[`7e58295439`](https://github.com/nodejs/node/commit/7e58295439)] - **crypto**: wire up SHA-3 with BoringSSL (Filip Skokan) [#66922](https://github.com/nodejs/node/pull/66922) +- \[[`91c4436158`](https://github.com/nodejs/node/commit/91c4436158)] - **crypto**: fix builds with older OpenSSL 3.0 (Filip Skokan) [#66931](https://github.com/nodejs/node/pull/66931) +- \[[`14ed05f86b`](https://github.com/nodejs/node/commit/14ed05f86b)] - **crypto**: fix BoringSSL RSA-PSS macro redefinitions (Filip Skokan) [#66900](https://github.com/nodejs/node/pull/66900) +- \[[`39e03b4673`](https://github.com/nodejs/node/commit/39e03b4673)] - **crypto**: use `OPENSSL_SIZE_T` instead of hard coding `int` (Antoine du Hamel) [#66889](https://github.com/nodejs/node/pull/66889) +- \[[`fccdbc8b99`](https://github.com/nodejs/node/commit/fccdbc8b99)] - **crypto**: do not leak scrypt param check errors (Lazizbek Ergashev) [#66671](https://github.com/nodejs/node/pull/66671) +- \[[`b5b07a0772`](https://github.com/nodejs/node/commit/b5b07a0772)] - **crypto**: use `OPENSSL_SIZE_T` instead of hard coding `int` (Antoine du Hamel) [#66752](https://github.com/nodejs/node/pull/66752) +- \[[`38aa1f3881`](https://github.com/nodejs/node/commit/38aa1f3881)] - **crypto**: avoid reusing randomInt() cache bytes (Jiawen Geng) [#66597](https://github.com/nodejs/node/pull/66597) +- \[[`f0f8115e10`](https://github.com/nodejs/node/commit/f0f8115e10)] - **crypto**: fix X509 curve name crash for non-NIST curves (Lazizbek Ergashev) [#66694](https://github.com/nodejs/node/pull/66694) +- \[[`75191c45af`](https://github.com/nodejs/node/commit/75191c45af)] - **deps**: patch npm engines to accept alpha versions (Rafael Gonzaga) [#67063](https://github.com/nodejs/node/pull/67063) +- \[[`640ce854c5`](https://github.com/nodejs/node/commit/640ce854c5)] - **deps**: update zlib to 1.3.2.1-motley-9f9f52c (Node.js GitHub Bot) [#66989](https://github.com/nodejs/node/pull/66989) +- \[[`578d081148`](https://github.com/nodejs/node/commit/578d081148)] - **deps**: update brotli to 1.2.1 (Node.js GitHub Bot) [#66990](https://github.com/nodejs/node/pull/66990) +- \[[`0f2a5394a5`](https://github.com/nodejs/node/commit/0f2a5394a5)] - **deps**: update undici to 8.12.3 (Node.js GitHub Bot) [#66993](https://github.com/nodejs/node/pull/66993) +- \[[`352e81424f`](https://github.com/nodejs/node/commit/352e81424f)] - **deps**: patch V8 to 15.6.75.25 (Node.js GitHub Bot) [#66820](https://github.com/nodejs/node/pull/66820) +- \[[`3bc923a3e4`](https://github.com/nodejs/node/commit/3bc923a3e4)] - **deps**: update googletest to cd8e73f067129f8489e35c7b51c7a68552b289d2 (Node.js GitHub Bot) [#66814](https://github.com/nodejs/node/pull/66814) +- \[[`7c2eaad296`](https://github.com/nodejs/node/commit/7c2eaad296)] - **deps**: V8: cherry-pick 785a2ea88a90 (Antoine du Hamel) [#66876](https://github.com/nodejs/node/pull/66876) +- \[[`00d716d323`](https://github.com/nodejs/node/commit/00d716d323)] - **deps**: update sqlite to 3.54.1 (Node.js GitHub Bot) [#66816](https://github.com/nodejs/node/pull/66816) +- \[[`ce3f25de37`](https://github.com/nodejs/node/commit/ce3f25de37)] - **deps**: update simdjson to 5.0.5 (Node.js GitHub Bot) [#66817](https://github.com/nodejs/node/pull/66817) +- \[[`c883ccf3b2`](https://github.com/nodejs/node/commit/c883ccf3b2)] - **deps**: patch V8 to undefined (Node.js GitHub Bot) [#66656](https://github.com/nodejs/node/pull/66656) +- \[[`8b52f14ae5`](https://github.com/nodejs/node/commit/8b52f14ae5)] - _**Revert**_ "**deps**: enable V8 API interrupt JS check" (Antoine du Hamel) [#65907](https://github.com/nodejs/node/pull/65907) +- \[[`875d905390`](https://github.com/nodejs/node/commit/875d905390)] - _**Revert**_ "**deps**: V8: backport b36cf9f6ccd2" (Antoine du Hamel) [#65907](https://github.com/nodejs/node/pull/65907) +- \[[`ccd648eb0c`](https://github.com/nodejs/node/commit/ccd648eb0c)] - **deps**: V8: backport b36cf9f6ccd2 (Olivier Flückiger) [#65397](https://github.com/nodejs/node/pull/65397) +- \[[`49e2608492`](https://github.com/nodejs/node/commit/49e2608492)] - **deps**: enable V8 API interrupt JS check (deepak1556) [#65397](https://github.com/nodejs/node/pull/65397) +- \[[`d8ac30125b`](https://github.com/nodejs/node/commit/d8ac30125b)] - **deps**: cherry-pick e807d4e379 from SQLite (Junsu Han) [#63525](https://github.com/nodejs/node/pull/63525) +- \[[`8ee5b26f86`](https://github.com/nodejs/node/commit/8ee5b26f86)] - **deps**: V8: backport bef0d9c1bc90 (Joyee Cheung) [#62132](https://github.com/nodejs/node/pull/62132) +- \[[`88ec31414c`](https://github.com/nodejs/node/commit/88ec31414c)] - _**Revert**_ "**deps,lib,tools**: remove jitless and lite modes" (Joyee Cheung) [#66516](https://github.com/nodejs/node/pull/66516) +- \[[`7e39b8781a`](https://github.com/nodejs/node/commit/7e39b8781a)] - **deps,lib,tools**: remove jitless and lite modes (Paolo Insogna) [#66459](https://github.com/nodejs/node/pull/66459) +- \[[`45ae12c3aa`](https://github.com/nodejs/node/commit/45ae12c3aa)] - **diagnostics\_channel**: fix dangling binding pointer (Trevor Burnham) [#65860](https://github.com/nodejs/node/pull/65860) +- \[[`2f65b902d8`](https://github.com/nodejs/node/commit/2f65b902d8)] - **dns**: reserve vector capacity in ParseTxtReply (agape1225) [#64978](https://github.com/nodejs/node/pull/64978) +- \[[`3e6cca0e6a`](https://github.com/nodejs/node/commit/3e6cca0e6a)] - **(CVE-2026-58042)** **dns**: handle large resolveAny address replies (RafaelGSS) [#64820](https://github.com/nodejs/node/pull/64820) +- \[[`c558c8e81a`](https://github.com/nodejs/node/commit/c558c8e81a)] - **dns**: add tests for ENODATA states (David Evans) [#64624](https://github.com/nodejs/node/pull/64624) +- \[[`116302d950`](https://github.com/nodejs/node/commit/116302d950)] - **dns**: address compile-time warnings (Antoine du Hamel) [#64355](https://github.com/nodejs/node/pull/64355) +- \[[`7abbd56cfd`](https://github.com/nodejs/node/commit/7abbd56cfd)] - **doc**: document the alpha release process (Rafael Gonzaga) [#66796](https://github.com/nodejs/node/pull/66796) +- \[[`ba3c34a93a`](https://github.com/nodejs/node/commit/ba3c34a93a)] - **doc**: fix grammar and phrasing in typescript.md (Ravi Arnan Irianto) [#66977](https://github.com/nodejs/node/pull/66977) +- \[[`2e4f8cfa20`](https://github.com/nodejs/node/commit/2e4f8cfa20)] - **doc**: add rafael and antoine as last security release stewards (Rafael Gonzaga) [#66909](https://github.com/nodejs/node/pull/66909) +- \[[`84f8e2f3a9`](https://github.com/nodejs/node/commit/84f8e2f3a9)] - **doc**: document --allow-fs-vfs in the permission model page (Rafael Gonzaga) [#66793](https://github.com/nodejs/node/pull/66793) +- \[[`952dcb2dc2`](https://github.com/nodejs/node/commit/952dcb2dc2)] - **doc**: update config schema for test-forbid-only (Filip Skokan) [#66945](https://github.com/nodejs/node/pull/66945) +- \[[`6d4646731e`](https://github.com/nodejs/node/commit/6d4646731e)] - **doc**: mark test runner watch mode as stable (Guilherme Araújo) [#66708](https://github.com/nodejs/node/pull/66708) +- \[[`67d0e5faca`](https://github.com/nodejs/node/commit/67d0e5faca)] - **doc**: update node-config-schema.json (Marco Ippolito) [#66827](https://github.com/nodejs/node/pull/66827) +- \[[`8df2dd89d0`](https://github.com/nodejs/node/commit/8df2dd89d0)] - **doc**: update V8 ABI release policy (Rafael Gonzaga) [#64196](https://github.com/nodejs/node/pull/64196) +- \[[`5926201795`](https://github.com/nodejs/node/commit/5926201795)] - **doc**: add doc on when to backport V8 patches to main (Chengzhong Wu) [#66710](https://github.com/nodejs/node/pull/66710) +- \[[`9df97a7c2b`](https://github.com/nodejs/node/commit/9df97a7c2b)] - **doc**: reserve NMV 154 for Electron 46 (David Babenko-Sanders) [#66712](https://github.com/nodejs/node/pull/66712) +- \[[`ba4d9bf94b`](https://github.com/nodejs/node/commit/ba4d9bf94b)] - **doc**: add hoondongkang as triager (Donghoon Kang) [#66427](https://github.com/nodejs/node/pull/66427) +- \[[`c0c8ce80a8`](https://github.com/nodejs/node/commit/c0c8ce80a8)] - **doc**: warn against awaiting replies in module hooks (Paul Bouchon) [#65590](https://github.com/nodejs/node/pull/65590) +- \[[`4381c4730e`](https://github.com/nodejs/node/commit/4381c4730e)] - **doc**: correct QuicStream direction and id types (Kisnner Obando) [#66687](https://github.com/nodejs/node/pull/66687) +- \[[`04fb145b6a`](https://github.com/nodejs/node/commit/04fb145b6a)] - **doc**: clarify hex code usage in styleText docs (Chris Swithinbank) [#66539](https://github.com/nodejs/node/pull/66539) +- \[[`886c7b41f3`](https://github.com/nodejs/node/commit/886c7b41f3)] - **doc**: list openssl-store channel and drop field in permissions (Rafael Gonzaga) [#66558](https://github.com/nodejs/node/pull/66558) +- \[[`d4484555ea`](https://github.com/nodejs/node/commit/d4484555ea)] - **doc**: add documentation for the new release schedule (Antoine du Hamel) [#66568](https://github.com/nodejs/node/pull/66568) +- \[[`6f723ec6e7`](https://github.com/nodejs/node/commit/6f723ec6e7)] - **doc**: fix crypto changes list sorting (Chengzhong Wu) [#66073](https://github.com/nodejs/node/pull/66073) +- \[[`dab3a73673`](https://github.com/nodejs/node/commit/dab3a73673)] - **doc**: fix YAML errors due to bad conflict resolutions (Antoine du Hamel) [#65921](https://github.com/nodejs/node/pull/65921) +- \[[`bb5cffc091`](https://github.com/nodejs/node/commit/bb5cffc091)] - **doc**: clarify DEP0207 scope (Antoine du Hamel) [#65618](https://github.com/nodejs/node/pull/65618) +- \[[`e65df3b3e5`](https://github.com/nodejs/node/commit/e65df3b3e5)] - **doc**: reserve NMV 150 for Electron 45 (John Kleinschmidt) [#65405](https://github.com/nodejs/node/pull/65405) +- \[[`0ce7b02d50`](https://github.com/nodejs/node/commit/0ce7b02d50)] - **doc**: remove synopsis (Aviv Keller) [#65246](https://github.com/nodejs/node/pull/65246) +- \[[`d097de8855`](https://github.com/nodejs/node/commit/d097de8855)] - **doc**: reserve NMV 149 for Electron 44 (Calvin) [#63859](https://github.com/nodejs/node/pull/63859) +- \[[`a641226c91`](https://github.com/nodejs/node/commit/a641226c91)] - **doc**: fix lint-md (Rafael Gonzaga) [#63127](https://github.com/nodejs/node/pull/63127) +- \[[`fc192ee030`](https://github.com/nodejs/node/commit/fc192ee030)] - **doc**: reserve NMV 148 for Electron 43 (Ryan Fitzgerald) [#63016](https://github.com/nodejs/node/pull/63016) +- \[[`936b20c074`](https://github.com/nodejs/node/commit/936b20c074)] - **doc,crypto**: mark raw key formats as stable (Filip Skokan) [#66829](https://github.com/nodejs/node/pull/66829) +- \[[`98dbf6070e`](https://github.com/nodejs/node/commit/98dbf6070e)] - **events**: report original once() listener on removal (Ved Chaudhari) [#66621](https://github.com/nodejs/node/pull/66621) +- \[[`1eb734d568`](https://github.com/nodejs/node/commit/1eb734d568)] - **ffi**: drain task queues after event loop callbacks (Trivikram Kamat) [#66918](https://github.com/nodejs/node/pull/66918) +- \[[`e0619bb7e3`](https://github.com/nodejs/node/commit/e0619bb7e3)] - **ffi**: fix handle leak in fast buffer arguments (Trivikram Kamat) [#66867](https://github.com/nodejs/node/pull/66867) +- \[[`4c14b9f58a`](https://github.com/nodejs/node/commit/4c14b9f58a)] - **ffi**: add getFunction cache-miss benchmark (Donghoon Kang) [#66456](https://github.com/nodejs/node/pull/66456) +- \[[`8fbb315a4d`](https://github.com/nodejs/node/commit/8fbb315a4d)] - **ffi**: add binary parameter to internal binding type (Donghoon Kang) [#66502](https://github.com/nodejs/node/pull/66502) +- \[[`bb3f9176ca`](https://github.com/nodejs/node/commit/bb3f9176ca)] - **fs**: reduce glob section allocations (Roberto Bianchi) [#66716](https://github.com/nodejs/node/pull/66716) +- \[[`9c06dab7d0`](https://github.com/nodejs/node/commit/9c06dab7d0)] - **http**: pass maxHeaderPairs to parser.initialize() (Matteo Collina) [#66250](https://github.com/nodejs/node/pull/66250) +- \[[`34c28d5a69`](https://github.com/nodejs/node/commit/34c28d5a69)] - _**Revert**_ "**http**: do not emit socket errors after complete response" (Matteo Collina) [#64511](https://github.com/nodejs/node/pull/64511) +- \[[`17163ead33`](https://github.com/nodejs/node/commit/17163ead33)] - **http**: do not emit socket errors after complete response (Archkon) [#64278](https://github.com/nodejs/node/pull/64278) +- \[[`41b1e6845a`](https://github.com/nodejs/node/commit/41b1e6845a)] - **http2**: detect streams abandoned by nghttp2 (Matteo Collina) [#66641](https://github.com/nodejs/node/pull/66641) +- \[[`1f26576a3f`](https://github.com/nodejs/node/commit/1f26576a3f)] - **http2**: submit RST\_STREAM before emitting 'aborted' (Lazizbek Ergashev) [#66314](https://github.com/nodejs/node/pull/66314) +- \[[`191a3b2db4`](https://github.com/nodejs/node/commit/191a3b2db4)] - **http2**: emit close for aborted HEAD compat responses (Robert Nagy) [#66310](https://github.com/nodejs/node/pull/66310) +- \[[`351da9c1b1`](https://github.com/nodejs/node/commit/351da9c1b1)] - **http2**: reduce scheduled callbacks per request (Matteo Collina) [#64265](https://github.com/nodejs/node/pull/64265) +- \[[`d3b20a7cd5`](https://github.com/nodejs/node/commit/d3b20a7cd5)] - **http2**: finish empty trailers natively for compat streams (Matteo Collina) [#64265](https://github.com/nodejs/node/pull/64265) +- \[[`ec8b9f49bf`](https://github.com/nodejs/node/commit/ec8b9f49bf)] - **http2**: skip trailers round trip for compat responses (Matteo Collina) [#64265](https://github.com/nodejs/node/pull/64265) +- \[[`a28496591e`](https://github.com/nodejs/node/commit/a28496591e)] - _**Revert**_ "**inspector**: defer JS execution from V8 interrupts" (Antoine du Hamel) [#65907](https://github.com/nodejs/node/pull/65907) +- \[[`30f4990224`](https://github.com/nodejs/node/commit/30f4990224)] - **inspector**: defer JS execution from V8 interrupts (deepak1556) [#65397](https://github.com/nodejs/node/pull/65397) +- \[[`6353f4026c`](https://github.com/nodejs/node/commit/6353f4026c)] - **lib**: optimize TextEncoder.encode for short strings (Mert Can Altin) [#66831](https://github.com/nodejs/node/pull/66831) +- \[[`d15ccb7e97`](https://github.com/nodejs/node/commit/d15ccb7e97)] - **meta**: label top-level GN build files (Yuya Inoue) [#66808](https://github.com/nodejs/node/pull/66808) +- \[[`3ab2db8cb5`](https://github.com/nodejs/node/commit/3ab2db8cb5)] - **meta**: ignore AGENTS.override.md (Matteo Collina) [#66629](https://github.com/nodejs/node/pull/66629) +- \[[`8ae0ad0683`](https://github.com/nodejs/node/commit/8ae0ad0683)] - **module**: add "worker" condition for Web Worker threads (Guy Bedford) [#66635](https://github.com/nodejs/node/pull/66635) +- \[[`c526694ae9`](https://github.com/nodejs/node/commit/c526694ae9)] - **module**: fix require(esm) on the module.register() hooks thread (Matteo Collina) [#66770](https://github.com/nodejs/node/pull/66770) +- \[[`269cab6320`](https://github.com/nodejs/node/commit/269cab6320)] - **net**: fail closed when BlockList peer address is unavailable (Matteo Collina) [#66640](https://github.com/nodejs/node/pull/66640) +- \[[`c4429c85ec`](https://github.com/nodejs/node/commit/c4429c85ec)] - _**Revert**_ "**path**: fix win32 normalize false-positive on reserved names" (Anna Henningsen) [#64216](https://github.com/nodejs/node/pull/64216) +- \[[`b0a4f162df`](https://github.com/nodejs/node/commit/b0a4f162df)] - **path**: fix win32 normalize false-positive on reserved names (Daijiro Wachi) [#64159](https://github.com/nodejs/node/pull/64159) +- \[[`a7e06d975d`](https://github.com/nodejs/node/commit/a7e06d975d)] - **permission**: reject wildcard references when dropping env (Rafael Gonzaga) [#66773](https://github.com/nodejs/node/pull/66773) +- \[[`53f037ecc3`](https://github.com/nodejs/node/commit/53f037ecc3)] - **quic**: remove obsolete setOutbound() (Efe Karasakal) [#66646](https://github.com/nodejs/node/pull/66646) +- \[[`1a54c4fe8c`](https://github.com/nodejs/node/commit/1a54c4fe8c)] - **quic**: truncate CONNECTION\_CLOSE frame reason field (Efe Karasakal) [#66644](https://github.com/nodejs/node/pull/66644) +- \[[`107133ceb8`](https://github.com/nodejs/node/commit/107133ceb8)] - **quic**: allow null body when opening streams (Efe Karasakal) [#66690](https://github.com/nodejs/node/pull/66690) +- \[[`6678d6f71d`](https://github.com/nodejs/node/commit/6678d6f71d)] - **quic**: reuse header support assertion (Efe Karasakal) [#66777](https://github.com/nodejs/node/pull/66777) +- \[[`f88a1d25e9`](https://github.com/nodejs/node/commit/f88a1d25e9)] - **quic**: validate stream error codes (Efe Karasakal) [#66650](https://github.com/nodejs/node/pull/66650) +- \[[`8c1a7d3172`](https://github.com/nodejs/node/commit/8c1a7d3172)] - **quic**: replace removed SetPrototypeV2 calls (Yuya Inoue) [#66603](https://github.com/nodejs/node/pull/66603) +- \[[`9f2fb935fd`](https://github.com/nodejs/node/commit/9f2fb935fd)] - **sea**: mount vfsArchive at layer 0 and in workers (Philipp Dunkel) [#66709](https://github.com/nodejs/node/pull/66709) +- \[[`3f0c2e4c8b`](https://github.com/nodejs/node/commit/3f0c2e4c8b)] - _**Revert**_ "**sea**: mount vfsArchive at layer 0 and in workers" (Antoine du Hamel) [#66706](https://github.com/nodejs/node/pull/66706) +- \[[`ac9d85c418`](https://github.com/nodejs/node/commit/ac9d85c418)] - **sea**: mount vfsArchive at layer 0 and in workers (Philipp Dunkel) [#66614](https://github.com/nodejs/node/pull/66614) +- \[[`eb663fe6f4`](https://github.com/nodejs/node/commit/eb663fe6f4)] - **sqlite**: avoid sqlite3\_clear\_bindings() before every run (Michał Fox) [#66983](https://github.com/nodejs/node/pull/66983) +- \[[`d630b5d88b`](https://github.com/nodejs/node/commit/d630b5d88b)] - **sqlite**: retry busy or locked backup steps (Lazizbek Ergashev) [#66769](https://github.com/nodejs/node/pull/66769) +- \[[`e20da720c8`](https://github.com/nodejs/node/commit/e20da720c8)] - **sqlite**: validate backup() source is a Database (Guilherme Araújo) [#66797](https://github.com/nodejs/node/pull/66797) +- \[[`cfb2de3db8`](https://github.com/nodejs/node/commit/cfb2de3db8)] - **sqlite**: skip return() on exhausted virtual table iterators (Trivikram Kamat) [#66519](https://github.com/nodejs/node/pull/66519) +- \[[`1bffd1d0a3`](https://github.com/nodejs/node/commit/1bffd1d0a3)] - **sqlite**: propagate errors from Database option getters (Guilherme Araújo) [#66748](https://github.com/nodejs/node/pull/66748) +- \[[`68df1db7b0`](https://github.com/nodejs/node/commit/68df1db7b0)] - **sqlite**: use shared-shape objects for result rows (Guilherme Araújo) [#66385](https://github.com/nodejs/node/pull/66385) +- \[[`6511fb8e34`](https://github.com/nodejs/node/commit/6511fb8e34)] - _**Revert**_ "**src**: seed V8 from the OS CSPRNG instead of OpenSSL's DRBG" (Filip Skokan) [#66903](https://github.com/nodejs/node/pull/66903) +- \[[`03cca65be3`](https://github.com/nodejs/node/commit/03cca65be3)] - **src**: fix build with `--shared-brotli` (Lazizbek Ergashev) [#66895](https://github.com/nodejs/node/pull/66895) +- \[[`1c12ff1667`](https://github.com/nodejs/node/commit/1c12ff1667)] - **src**: avoid truncating Blob sizes to 32 bits (Christian Aurich Zanettini Martins) [#66207](https://github.com/nodejs/node/pull/66207) +- \[[`5a566ac6b9`](https://github.com/nodejs/node/commit/5a566ac6b9)] - **src**: cut small costs in node::MakeCallback (Nigro Simone) [#66395](https://github.com/nodejs/node/pull/66395) +- \[[`a0ce8f152b`](https://github.com/nodejs/node/commit/a0ce8f152b)] - **src**: keep ALS store in AsyncResource::MakeCallback (Nigro Simone) [#66326](https://github.com/nodejs/node/pull/66326) +- \[[`f9f3fa96b2`](https://github.com/nodejs/node/commit/f9f3fa96b2)] - **src**: allow building the snapshot on top of a V8 startup blob (Shelley Vohr) [#65374](https://github.com/nodejs/node/pull/65374) +- \[[`21f0f2786f`](https://github.com/nodejs/node/commit/21f0f2786f)] - **src**: remove --harmony-import-attributes (Olivier Flückiger) [#65396](https://github.com/nodejs/node/pull/65396) +- \[[`0401a2d083`](https://github.com/nodejs/node/commit/0401a2d083)] - **src**: fix external reference registration for new CFunction lifetime (Joyee Cheung) [#63679](https://github.com/nodejs/node/pull/63679) +- \[[`18f938d254`](https://github.com/nodejs/node/commit/18f938d254)] - **src**: bump NODE\_MAJOR\_VERSION to 27 (Rafael Gonzaga) [#63128](https://github.com/nodejs/node/pull/63128) +- \[[`967f0a7061`](https://github.com/nodejs/node/commit/967f0a7061)] - **src,permission**: do not grant cwd read access without entrypoint (Rafael Gonzaga) [#66645](https://github.com/nodejs/node/pull/66645) +- \[[`60e6c84f4e`](https://github.com/nodejs/node/commit/60e6c84f4e)] - **stream**: keep async context of parked writes (Matteo Collina) [#66907](https://github.com/nodejs/node/pull/66907) +- \[[`4e75b714df`](https://github.com/nodejs/node/commit/4e75b714df)] - **stream**: trim TransformStream construction costs (Matteo Collina) [#66643](https://github.com/nodejs/node/pull/66643) +- \[[`153ec89621`](https://github.com/nodejs/node/commit/153ec89621)] - **stream**: make stream/iter from() cancellation waits cheaper (James M Snell) [#66648](https://github.com/nodejs/node/pull/66648) +- \[[`818f34833a`](https://github.com/nodejs/node/commit/818f34833a)] - **stream**: share the once option for stream/iter abort listeners (James M Snell) [#66648](https://github.com/nodejs/node/pull/66648) +- \[[`17e7b68996`](https://github.com/nodejs/node/commit/17e7b68996)] - **stream**: do not miss 'drain' in fromWritable() (James M Snell) [#66648](https://github.com/nodejs/node/pull/66648) +- \[[`a7c156fd37`](https://github.com/nodejs/node/commit/a7c156fd37)] - **stream**: construct the options passed to stream/iter transforms (James M Snell) [#66648](https://github.com/nodejs/node/pull/66648) +- \[[`13d0167013`](https://github.com/nodejs/node/commit/13d0167013)] - **stream**: construct stream/iter wait and merge records (James M Snell) [#66648](https://github.com/nodejs/node/pull/66648) +- \[[`e6c9c8eecd`](https://github.com/nodejs/node/commit/e6c9c8eecd)] - **stream**: construct stream/iter byte view snapshots and batch entries (James M Snell) [#66648](https://github.com/nodejs/node/pull/66648) +- \[[`724190cfdc`](https://github.com/nodejs/node/commit/724190cfdc)] - **stream**: avoid per-write allocations in stream/iter writers (James M Snell) [#66648](https://github.com/nodejs/node/pull/66648) +- \[[`778306c001`](https://github.com/nodejs/node/commit/778306c001)] - **stream**: create stream/iter iterator results with a constructor (James M Snell) [#66648](https://github.com/nodejs/node/pull/66648) +- \[[`5bcade91de`](https://github.com/nodejs/node/commit/5bcade91de)] - **stream**: make endSync() optional in pipeToSync() (James M Snell) [#66648](https://github.com/nodejs/node/pull/66648) +- \[[`82563d8c39`](https://github.com/nodejs/node/commit/82563d8c39)] - **stream**: keep long-lived stream/iter objects in fast mode (James M Snell) [#66648](https://github.com/nodejs/node/pull/66648) +- \[[`64a762b7d3`](https://github.com/nodejs/node/commit/64a762b7d3)] - **stream**: fix flaky stream destroy, reachable from HTTP/2 teardown (Tim Perry) [#65079](https://github.com/nodejs/node/pull/65079) +- \[[`ddba9a535f`](https://github.com/nodejs/node/commit/ddba9a535f)] - **test**: check html and json doc files are generated (Richard Lau) [#66613](https://github.com/nodejs/node/pull/66613) +- \[[`62b471723d`](https://github.com/nodejs/node/commit/62b471723d)] - **test**: adapt `test-blocklist` to libuv 1.53+ (Antoine du Hamel) [#67002](https://github.com/nodejs/node/pull/67002) +- \[[`9b5d938fad`](https://github.com/nodejs/node/commit/9b5d938fad)] - **test**: remove obsolete BoringSSL skips (Filip Skokan) [#66922](https://github.com/nodejs/node/pull/66922) +- \[[`236f6e7217`](https://github.com/nodejs/node/commit/236f6e7217)] - **test**: fix TLS coalescing test for OpenSSL 4.1 (Filip Skokan) [#66962](https://github.com/nodejs/node/pull/66962) +- \[[`b91d04955a`](https://github.com/nodejs/node/commit/b91d04955a)] - _**Revert**_ "**test**: mark worker init failure flaky on SmartOS" (Filip Skokan) [#66903](https://github.com/nodejs/node/pull/66903) +- \[[`08b09a2f62`](https://github.com/nodejs/node/commit/08b09a2f62)] - **test**: handle stringbytes allocation failures (Filip Skokan) [#66887](https://github.com/nodejs/node/pull/66887) +- \[[`2f91bc366d`](https://github.com/nodejs/node/commit/2f91bc366d)] - **test**: deflake test-http-agent-keepalive (Filip Skokan) [#66887](https://github.com/nodejs/node/pull/66887) +- \[[`727e0cac72`](https://github.com/nodejs/node/commit/727e0cac72)] - **test**: send SNI in CA certificate test (Tamir Duberstein) [#66835](https://github.com/nodejs/node/pull/66835) +- \[[`fd20448111`](https://github.com/nodejs/node/commit/fd20448111)] - **test**: keep objects alive in finalization fixtures (Matteo Collina) [#66869](https://github.com/nodejs/node/pull/66869) +- \[[`ce9d6504a4`](https://github.com/nodejs/node/commit/ce9d6504a4)] - **test**: check build options when skipping config schema test (Yuya Inoue) [#66899](https://github.com/nodejs/node/pull/66899) +- \[[`221b47d556`](https://github.com/nodejs/node/commit/221b47d556)] - **test**: run test-config-json-schema in default builds (Marco Ippolito) [#66827](https://github.com/nodejs/node/pull/66827) +- \[[`56da329c76`](https://github.com/nodejs/node/commit/56da329c76)] - **test**: update WPT for WebCryptoAPI to e15690d276 (Node.js GitHub Bot) [#66813](https://github.com/nodejs/node/pull/66813) +- \[[`4737802218`](https://github.com/nodejs/node/commit/4737802218)] - **test**: skip openssl config test under BoringSSL (David Babenko-Sanders) [#66780](https://github.com/nodejs/node/pull/66780) +- \[[`c61ba86ed0`](https://github.com/nodejs/node/commit/c61ba86ed0)] - **test**: account for OpenSSL 4.x changes (Filip Skokan) [#66775](https://github.com/nodejs/node/pull/66775) +- \[[`9347db1df9`](https://github.com/nodejs/node/commit/9347db1df9)] - **test**: deflake test-filehandle-close (Filip Skokan) [#66750](https://github.com/nodejs/node/pull/66750) +- \[[`bc5af1c67c`](https://github.com/nodejs/node/commit/bc5af1c67c)] - **test**: wait for shared-isolate Worker exit (Filip Skokan) [#66722](https://github.com/nodejs/node/pull/66722) +- \[[`0c2949dd9d`](https://github.com/nodejs/node/commit/0c2949dd9d)] - **test**: move large SQLite string cases to pummel (Filip Skokan) [#66722](https://github.com/nodejs/node/pull/66722) +- \[[`c172bcd8a8`](https://github.com/nodejs/node/commit/c172bcd8a8)] - **test**: allow periodic flush to finish under load (Filip Skokan) [#66722](https://github.com/nodejs/node/pull/66722) +- \[[`592a0bd89c`](https://github.com/nodejs/node/commit/592a0bd89c)] - **test**: wait for inspector restart before exit (Filip Skokan) [#66722](https://github.com/nodejs/node/pull/66722) +- \[[`6fc90e4427`](https://github.com/nodejs/node/commit/6fc90e4427)] - **test**: retry unready process timeout reports (Filip Skokan) [#66722](https://github.com/nodejs/node/pull/66722) +- \[[`8d4262525d`](https://github.com/nodejs/node/commit/8d4262525d)] - **test**: reserve both families for local port test (Filip Skokan) [#66722](https://github.com/nodejs/node/pull/66722) +- \[[`2745698537`](https://github.com/nodejs/node/commit/2745698537)] - **test**: cover source-specific membership on closed sockets (Rich Trott) [#66624](https://github.com/nodejs/node/pull/66624) +- \[[`782a3ac8ae`](https://github.com/nodejs/node/commit/782a3ac8ae)] - **test**: update WPT for WebCryptoAPI to b638c093cd (Node.js GitHub Bot) [#66689](https://github.com/nodejs/node/pull/66689) +- \[[`4599b6a0f2`](https://github.com/nodejs/node/commit/4599b6a0f2)] - **test**: skip test failing when run under root (Livia Medeiros) [#66666](https://github.com/nodejs/node/pull/66666) +- \[[`c570b67593`](https://github.com/nodejs/node/commit/c570b67593)] - **test**: unmark loader inspector wait test as flaky (Filip Skokan) [#66319](https://github.com/nodejs/node/pull/66319) +- \[[`c12d483b1f`](https://github.com/nodejs/node/commit/c12d483b1f)] - **test**: unmark exit timeout tests as flaky (Filip Skokan) [#66319](https://github.com/nodejs/node/pull/66319) +- \[[`1a15692fb6`](https://github.com/nodejs/node/commit/1a15692fb6)] - **test**: unmark test-cpu-prof-dir-worker as flaky (Filip Skokan) [#66319](https://github.com/nodejs/node/pull/66319) +- \[[`cbf3566b12`](https://github.com/nodejs/node/commit/cbf3566b12)] - **test**: remove stale SEA Linux debug flaky entries (Filip Skokan) [#66319](https://github.com/nodejs/node/pull/66319) +- \[[`e0a3c37c30`](https://github.com/nodejs/node/commit/e0a3c37c30)] - **test**: remove stale flaky status entries (Filip Skokan) [#66319](https://github.com/nodejs/node/pull/66319) +- \[[`a4aa3c02cc`](https://github.com/nodejs/node/commit/a4aa3c02cc)] - **test**: fix flaky HTTP/2 reset callback check (Trivikram Kamat) [#64730](https://github.com/nodejs/node/pull/64730) +- \[[`2cc4c81e10`](https://github.com/nodejs/node/commit/2cc4c81e10)] - _**Revert**_ "**test**: reduce flakiness of `different-registry-per-thread`" (Antoine du Hamel) [#63244](https://github.com/nodejs/node/pull/63244) +- \[[`130398ab05`](https://github.com/nodejs/node/commit/130398ab05)] - **test**: reduce flakiness of `different-registry-per-thread` (Antoine du Hamel) [#63209](https://github.com/nodejs/node/pull/63209) +- \[[`45b6626457`](https://github.com/nodejs/node/commit/45b6626457)] - **test\_runner**: add option to forbid exclusive tests (joao-oliveira-softtor) [#66578](https://github.com/nodejs/node/pull/66578) +- \[[`6698675526`](https://github.com/nodejs/node/commit/6698675526)] - **test\_runner**: use AsyncLocalStorage instead of async\_hooks (Matteo Collina) [#66795](https://github.com/nodejs/node/pull/66795) +- \[[`a0b4170764`](https://github.com/nodejs/node/commit/a0b4170764)] - **tls**: configure TLS 1.3 ciphers with BoringSSL (Filip Skokan) [#66922](https://github.com/nodejs/node/pull/66922) +- \[[`c7974d9982`](https://github.com/nodejs/node/commit/c7974d9982)] - **tls**: coalesce buffered records into one read (Robert Nagy) [#66698](https://github.com/nodejs/node/pull/66698) +- \[[`135b70e670`](https://github.com/nodejs/node/commit/135b70e670)] - **tls**: add tlsSocket.socket, to access the raw stream beneath TLS (Tim Perry) [#66598](https://github.com/nodejs/node/pull/66598) +- \[[`a2ce2c6def`](https://github.com/nodejs/node/commit/a2ce2c6def)] - **tls,tools**: update BoringSSL pin and TLS errors (Filip Skokan) [#66922](https://github.com/nodejs/node/pull/66922) +- \[[`79c1fc4fbb`](https://github.com/nodejs/node/commit/79c1fc4fbb)] - **tools**: bump remark-preset-lint-node (dependabot\[bot]) [#67023](https://github.com/nodejs/node/pull/67023) +- \[[`8587d711a1`](https://github.com/nodejs/node/commit/8587d711a1)] - **tools**: update nixpkgs-unstable to 901c54c08bdc20e00c2b3c73716b97497b1 (Node.js GitHub Bot) [#66994](https://github.com/nodejs/node/pull/66994) +- \[[`ec8e19d893`](https://github.com/nodejs/node/commit/ec8e19d893)] - _**Revert**_ "**tools**: bump the doc group in /tools/doc with 2 updates" (Antoine du Hamel) [#67015](https://github.com/nodejs/node/pull/67015) +- \[[`763524d434`](https://github.com/nodejs/node/commit/763524d434)] - **tools**: grant CI workflows Actions read permission (Filip Skokan) [#66919](https://github.com/nodejs/node/pull/66919) +- \[[`7eff3cc4cd`](https://github.com/nodejs/node/commit/7eff3cc4cd)] - **tools**: limit checkout for lint-addon-docs (Yuya Inoue) [#66505](https://github.com/nodejs/node/pull/66505) +- \[[`6209c29dcf`](https://github.com/nodejs/node/commit/6209c29dcf)] - **tools**: disable error-on-warn on x64 macOS (Antoine du Hamel) [#66925](https://github.com/nodejs/node/pull/66925) +- \[[`a232998e0d`](https://github.com/nodejs/node/commit/a232998e0d)] - **tools**: add `--error-on-warn` configure flag in `test-shared.yml` (Antoine du Hamel) [#66751](https://github.com/nodejs/node/pull/66751) +- \[[`678c5551b2`](https://github.com/nodejs/node/commit/678c5551b2)] - **tools**: reenable openssl 1.1.x and 3.0.x on `test-shared.yml` (Antoine du Hamel) [#66711](https://github.com/nodejs/node/pull/66711) +- \[[`d7b6fee8cc`](https://github.com/nodejs/node/commit/d7b6fee8cc)] - **tools**: update nixpkgs-unstable to f20cd90e28fe0403873f473b29e42662cd8 (Node.js GitHub Bot) [#66819](https://github.com/nodejs/node/pull/66819) +- \[[`8175dc3c05`](https://github.com/nodejs/node/commit/8175dc3c05)] - **tools**: add lint rule for unread benchmark `n` (Murat Kirazkaya) [#66807](https://github.com/nodejs/node/pull/66807) +- \[[`1bc3cdae37`](https://github.com/nodejs/node/commit/1bc3cdae37)] - **tools**: bump the doc group in /tools/doc with 4 updates (dependabot\[bot]) [#66798](https://github.com/nodejs/node/pull/66798) +- \[[`947b9a3aba`](https://github.com/nodejs/node/commit/947b9a3aba)] - **tools**: skip dependency update if PR has non-bot commits (Marco Ippolito) [#66503](https://github.com/nodejs/node/pull/66503) +- \[[`e2d5522773`](https://github.com/nodejs/node/commit/e2d5522773)] - **tools**: tolerate non-UTF-8 test output (Filip Skokan) [#66783](https://github.com/nodejs/node/pull/66783) +- \[[`a5af6440be`](https://github.com/nodejs/node/commit/a5af6440be)] - **tools**: update OpenSSL on the selected branch (Filip Skokan) [#66704](https://github.com/nodejs/node/pull/66704) +- \[[`e39f2e8cff`](https://github.com/nodejs/node/commit/e39f2e8cff)] - **tools**: add read-only access in `nix-changes.yml` (Antoine du Hamel) [#66691](https://github.com/nodejs/node/pull/66691) +- \[[`d8d598b6d0`](https://github.com/nodejs/node/commit/d8d598b6d0)] - **tools**: update nixpkgs-unstable to 8edc0c72e3a38faf5434e40d1f19431125f (Node.js GitHub Bot) [#66497](https://github.com/nodejs/node/pull/66497) +- \[[`2192f7f916`](https://github.com/nodejs/node/commit/2192f7f916)] - **tools**: bump the doc group in /tools/doc with 2 updates (dependabot\[bot]) [#66632](https://github.com/nodejs/node/pull/66632) +- \[[`28194a3037`](https://github.com/nodejs/node/commit/28194a3037)] - **tools**: bump the doc group in /tools/doc with 4 updates (dependabot\[bot]) [#66468](https://github.com/nodejs/node/pull/66468) +- \[[`5d9228d5c3`](https://github.com/nodejs/node/commit/5d9228d5c3)] - **tools**: pin sccache on all platforms to fix benchmark CI job (Tim Perry) [#66284](https://github.com/nodejs/node/pull/66284) +- \[[`d4120cbcc6`](https://github.com/nodejs/node/commit/d4120cbcc6)] - **tools**: update nixpkgs-unstable to 79b35bf0bda5cd110f856aa5b5b2c5ba446 (Node.js GitHub Bot) [#66146](https://github.com/nodejs/node/pull/66146) +- \[[`fe10572a1c`](https://github.com/nodejs/node/commit/fe10572a1c)] - **tools**: update nixpkgs-unstable to aff8a0b28396750446e5537a96461bc4fac (Node.js GitHub Bot) [#66010](https://github.com/nodejs/node/pull/66010) +- \[[`278a9b21b3`](https://github.com/nodejs/node/commit/278a9b21b3)] - **tools**: update nixpkgs-unstable to e5ead30d0824debba629dcf0720abeddee5 (Node.js GitHub Bot) [#65836](https://github.com/nodejs/node/pull/65836) +- \[[`8e8ada7f6b`](https://github.com/nodejs/node/commit/8e8ada7f6b)] - **tools**: remove nghttp2 pin in `sharedLibDeps.nix` (Antoine du Hamel) [#65687](https://github.com/nodejs/node/pull/65687) +- \[[`f80223c414`](https://github.com/nodejs/node/commit/f80223c414)] - **tools**: update nixpkgs-unstable to 0e7911a191ea0fb9d6e8e771d24736d3618 (Node.js GitHub Bot) [#65657](https://github.com/nodejs/node/pull/65657) +- \[[`9d7f18516c`](https://github.com/nodejs/node/commit/9d7f18516c)] - **tools**: update nixpkgs-unstable to 391b592eb44808b3bd0cb80bb71b63a5a11 (Node.js GitHub Bot) [#65496](https://github.com/nodejs/node/pull/65496) +- \[[`04a0c270be`](https://github.com/nodejs/node/commit/04a0c270be)] - **tools**: update nixpkgs-unstable to 6b5e5b7a6631f065bf6908986990b37d845 (Node.js GitHub Bot) [#65224](https://github.com/nodejs/node/pull/65224) +- \[[`1b0b7ae7c9`](https://github.com/nodejs/node/commit/1b0b7ae7c9)] - **tools**: bump nixpkgs pins (Node.js GitHub Bot) [#64747](https://github.com/nodejs/node/pull/64747) +- \[[`c76aff4e0a`](https://github.com/nodejs/node/commit/c76aff4e0a)] - **tools**: update nixpkgs-unstable to 20535e48e12c86043b577b8518234ff5dbb (Node.js GitHub Bot) [#64589](https://github.com/nodejs/node/pull/64589) +- \[[`56387dda0f`](https://github.com/nodejs/node/commit/56387dda0f)] - **tools**: update nixpkgs pins (Node.js GitHub Bot) [#64463](https://github.com/nodejs/node/pull/64463) +- \[[`71812d1b43`](https://github.com/nodejs/node/commit/71812d1b43)] - **tools**: pin to nixpkgs-26.05-darwin on Intel Macs (Antoine du Hamel) [#64210](https://github.com/nodejs/node/pull/64210) +- \[[`72b8d91212`](https://github.com/nodejs/node/commit/72b8d91212)] - **tools**: update nixpkgs-unstable to d33369954a67ae3322177dc9a3d56409291 (Node.js GitHub Bot) [#64298](https://github.com/nodejs/node/pull/64298) +- \[[`0c59d78639`](https://github.com/nodejs/node/commit/0c59d78639)] - **tools**: update nixpkgs-unstable to 89570f24e97e614aa34aa9ab1c927b6578a (Node.js GitHub Bot) [#64183](https://github.com/nodejs/node/pull/64183) +- \[[`1434a079e1`](https://github.com/nodejs/node/commit/1434a079e1)] - **tools**: update nixpkgs-unstable to 3e41b24abd260e8f71dbe2f5737d24122f9 (Node.js GitHub Bot) [#64041](https://github.com/nodejs/node/pull/64041) +- \[[`e3a1c12f81`](https://github.com/nodejs/node/commit/e3a1c12f81)] - **tools**: update nixpkgs-unstable to 49a4bd0573c376468dd7996ddb6f9fa31d8 (Node.js GitHub Bot) [#63902](https://github.com/nodejs/node/pull/63902) +- \[[`7378f014ae`](https://github.com/nodejs/node/commit/7378f014ae)] - **tools**: update nixpkgs-unstable to cbb5cf358f50aa6acc9efd6113b7bcfbc35 (Node.js GitHub Bot) [#63778](https://github.com/nodejs/node/pull/63778) +- \[[`330f44f29c`](https://github.com/nodejs/node/commit/330f44f29c)] - **tools**: update nixpkgs-unstable to e9a7635a57597d9754eccebdfc7045e6c86 (Node.js GitHub Bot) [#63671](https://github.com/nodejs/node/pull/63671) +- \[[`73c592be2f`](https://github.com/nodejs/node/commit/73c592be2f)] - **tools**: update nixpkgs-unstable to 3d8f0f3f72a6cd4d93d0ad13203f2ea1cb7 (Node.js GitHub Bot) [#63528](https://github.com/nodejs/node/pull/63528) +- \[[`2ebf53330d`](https://github.com/nodejs/node/commit/2ebf53330d)] - **tools**: update nixpkgs-unstable to d233902339c02a9c334e7e593de68855ad2 (Node.js GitHub Bot) [#63376](https://github.com/nodejs/node/pull/63376) +- \[[`a37c61d1c2`](https://github.com/nodejs/node/commit/a37c61d1c2)] - **tools**: update nixpkgs-unstable to b3da656039dc7a6240f27b2ef8cc6a3ef3b (Node.js GitHub Bot) [#63218](https://github.com/nodejs/node/pull/63218) +- \[[`f59539b514`](https://github.com/nodejs/node/commit/f59539b514)] - **url**: skip plain prefixes in percent-escape checks (Roberto Bianchi) [#66696](https://github.com/nodejs/node/pull/66696) +- \[[`dd7235cb6a`](https://github.com/nodejs/node/commit/dd7235cb6a)] - **url**: reduce search params sort buffering (Roberto Bianchi) [#66665](https://github.com/nodejs/node/pull/66665) +- \[[`531d28fc36`](https://github.com/nodejs/node/commit/531d28fc36)] - **util**: fix inspecting URL subclass prototypes (Donghoon Kang) [#66822](https://github.com/nodejs/node/pull/66822) +- \[[`c7ae7ab5b9`](https://github.com/nodejs/node/commit/c7ae7ab5b9)] - **vfs**: fix readlink, realpath and mkdtemp encoding (Christian Aurich Zanettini Martins) [#66352](https://github.com/nodejs/node/pull/66352) +- \[[`fcb1aa83f6`](https://github.com/nodejs/node/commit/fcb1aa83f6)] - **vfs**: fix promises.watch() with an already-aborted signal (Trivikram Kamat) [#66254](https://github.com/nodejs/node/pull/66254) +- \[[`44d5d57ad2`](https://github.com/nodejs/node/commit/44d5d57ad2)] - **vfs**: keep open memory handles in sync with file (Trivikram Kamat) [#66356](https://github.com/nodejs/node/pull/66356) +- \[[`06550c777f`](https://github.com/nodejs/node/commit/06550c777f)] - **vfs**: enforce readonly state on open handles (Harjoth Khara) [#64403](https://github.com/nodejs/node/pull/64403) +- \[[`62ca1bae5a`](https://github.com/nodejs/node/commit/62ca1bae5a)] - **vfs**: allow mounting in permission audit mode (Rafael Gonzaga) [#66745](https://github.com/nodejs/node/pull/66745) +- \[[`1d5f8e6cba`](https://github.com/nodejs/node/commit/1d5f8e6cba)] - **wasi**: accept wasm i32 pointers with high bit set (Guy Bedford) [#66636](https://github.com/nodejs/node/pull/66636) +- \[[`7622ebb3d7`](https://github.com/nodejs/node/commit/7622ebb3d7)] - **zlib**: add raw content read methods to ZipEntry (Philipp Dunkel) [#66801](https://github.com/nodejs/node/pull/66801) + +Windows 64-bit Installer: https://nodejs.org/dist/v27.0.0-alpha.0.0.0/node-v27.0.0-alpha.0.0.0-x64.msi \ +Windows ARM 64-bit Installer: https://nodejs.org/dist/v27.0.0-alpha.0.0.0/node-v27.0.0-alpha.0.0.0-arm64.msi \ +Windows 64-bit Binary: https://nodejs.org/dist/v27.0.0-alpha.0.0.0/win-x64/node.exe \ +Windows ARM 64-bit Binary: https://nodejs.org/dist/v27.0.0-alpha.0.0.0/win-arm64/node.exe \ +macOS 64-bit Installer: https://nodejs.org/dist/v27.0.0-alpha.0.0.0/node-v27.0.0-alpha.0.0.0.pkg \ +macOS Apple Silicon 64-bit Binary: https://nodejs.org/dist/v27.0.0-alpha.0.0.0/node-v27.0.0-alpha.0.0.0-darwin-arm64.tar.gz \ +macOS Intel 64-bit Binary: _Coming soon_ \ +Linux 64-bit Binary: https://nodejs.org/dist/v27.0.0-alpha.0.0.0/node-v27.0.0-alpha.0.0.0-linux-x64.tar.xz \ +Linux PPC LE 64-bit Binary: https://nodejs.org/dist/v27.0.0-alpha.0.0.0/node-v27.0.0-alpha.0.0.0-linux-ppc64le.tar.xz \ +Linux s390x 64-bit Binary: https://nodejs.org/dist/v27.0.0-alpha.0.0.0/node-v27.0.0-alpha.0.0.0-linux-s390x.tar.xz \ +AIX 64-bit Binary: https://nodejs.org/dist/v27.0.0-alpha.0.0.0/node-v27.0.0-alpha.0.0.0-aix-ppc64.tar.gz \ +ARMv8 64-bit Binary: https://nodejs.org/dist/v27.0.0-alpha.0.0.0/node-v27.0.0-alpha.0.0.0-linux-arm64.tar.xz \ +Source Code: https://nodejs.org/dist/v27.0.0-alpha.0.0.0/node-v27.0.0-alpha.0.0.0.tar.gz \ +Other release files: https://nodejs.org/dist/v27.0.0-alpha.0.0.0/ \ +Documentation: https://nodejs.org/docs/v27.0.0-alpha.0.0.0/api/ + +### SHASUMS + +``` +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA256 + +c8401001efc634a60f68d34530abd5bbfc2ec15f4382e6979bded0ebbc6c365e node-v27.0.0-alpha.0.0.0-aix-ppc64.tar.gz +281a07f2feef054a0689b83f23233a21bd1fb5d4a1bbbe7ed756ab509bc21c2a node-v27.0.0-alpha.0.0.0-arm64.msi +ce167d66bc5d1dd25efcfb0126425e2a1c2b267aaea2a5d0bb47892b2afacbc4 node-v27.0.0-alpha.0.0.0-darwin-arm64.tar.gz +8061d34354a9d847d9f12658e02796fdf8f20ed17375474c299eeca5d900d30d node-v27.0.0-alpha.0.0.0-darwin-arm64.tar.xz +c618e72a423cf7c7dce64096079947df50786feb327a13c78e7e9a58c6ebb419 node-v27.0.0-alpha.0.0.0-headers.tar.gz +db853c33670e65974ec1297dd2d024d89b3de231d3ef3d99eec2d89335793c04 node-v27.0.0-alpha.0.0.0-headers.tar.xz +e87502413c0e9e695a57ef4bf8ad527fef6f60d3b7750de78de8181369e43aa4 node-v27.0.0-alpha.0.0.0-linux-arm64.tar.gz +348be53d6a3d6d41ba147d88743cc842777ac1a1efec56a8dc56128b27e69b9f node-v27.0.0-alpha.0.0.0-linux-arm64.tar.xz +45758e930f08cef1e8c1cc5f469ae0c597127ea0e72d62b20557e780df89ee38 node-v27.0.0-alpha.0.0.0-linux-ppc64le.tar.gz +27be897917bb780cf392b48e81f069b464a0cabe0d73654e6fe212ddd15c0338 node-v27.0.0-alpha.0.0.0-linux-ppc64le.tar.xz +e5dbe6de5182d637b35d208f1dc22700e74d851a06aa5d69b7c463d363ce71ee node-v27.0.0-alpha.0.0.0-linux-s390x.tar.gz +a3b30223702e6eab1f3f45226959ac3933c124b55aff432e5b4dcfabcb26df58 node-v27.0.0-alpha.0.0.0-linux-s390x.tar.xz +359f3b7e4b9af5fef95a436b57b5ee799f7aed5164d5d3758e351eb6445af43d node-v27.0.0-alpha.0.0.0-linux-x64-musl.tar.gz +93f1cedf0402047687ca0e8e658b9e02f2b734844cfd3c1b01a3525643c235a9 node-v27.0.0-alpha.0.0.0-linux-x64-musl.tar.xz +e5c5182f3205bb36b887643e2dfcaa545e1ee8bcec05e6c3f719fe338da70e1f node-v27.0.0-alpha.0.0.0-linux-x64.tar.gz +f1e9f7f2deef9797f9106781d097649b99df2a473e1fd3f97b6991fa6a271f4f node-v27.0.0-alpha.0.0.0-linux-x64.tar.xz +9313373c870240ae8914411aa5678dbd8db50333c5b46758efb1c123e95dfefc node-v27.0.0-alpha.0.0.0.pkg +f392a0b062f869442056a8e06a690cf2a80692363e4fc024c3fb764176e0ec3b node-v27.0.0-alpha.0.0.0.tar.gz +b603fcef5f1964bd37111d518eb275f1ebb6362a0fabb5bfaecb3234d4636a37 node-v27.0.0-alpha.0.0.0.tar.xz +fbd3413254c91928d5d9b1120ba5c3d368b51a0755b2a2b6ae2a9da556a74235 node-v27.0.0-alpha.0.0.0-win-arm64.7z +0e00c230331322807bf205fc57a867bea69af4a6f31aa592b629360995c9855a node-v27.0.0-alpha.0.0.0-win-arm64.zip +c5362e421179b1d0be2317d06b6fd0a729de620e647f3b1dda5c17af5c90aefd node-v27.0.0-alpha.0.0.0-win-x64.7z +3c84038265e95b3d28716ab7a0e6b8478eed8e304ec9ccbb22b8db031c821dd1 node-v27.0.0-alpha.0.0.0-win-x64.zip +1a7d88eed4fa2eea94d4c38492552348c81ff6c54338205217e85a85d53edd16 node-v27.0.0-alpha.0.0.0-x64.msi +bbe99e34367fd02e0e6dc181cdfcf458b55f452a89d9220d01d05c348dec2198 win-arm64/node.exe +de28d8d8768051522162aa34a0f287c0f94078c4caeba6c6fab1fcfa8460cbcb win-arm64/node.lib +c5fd5d55235526806eb56ea598bc99ba2c155c24937f6b6df46ac0fbc1e886b6 win-arm64/node_pdb.7z +e1983ddca25f92653157b2077de8ecc5417601aae01de6a0b2b3ae3d5c45eff6 win-arm64/node_pdb.zip +88769901875e13e26ee712839fdf316c3182711f27ce9e328dd02fd56d8500bc win-x64/node.exe +7ef7aa20eba9873a03b1dcf4dfb7989144eaea1adae2544a9e95b68012d3093f win-x64/node.lib +591ca66ad0fe18eb211a0e4d751dddd2de337d9a7bf8a09e6f2d113a6e916217 win-x64/node_pdb.7z +f564344b9ca7dd4e5211c2a0068e7a6eb364a00869a88d89c32082c7833c9e7f win-x64/node_pdb.zip +-----BEGIN PGP SIGNATURE----- + +iQHPBAEBCAA5FiEEiQwI24V5Fi/uDfnbi+q0389VXvQFAmrjkfgbFIAAAAAABAAO +bWFudTIsMi41KzEuMTIsMCwzAAoJEIvqtN/PVV70ftsL/ROeGCpltZo4KtkIwR2K +vZ5YA3qjeaVNWJv8CCiAd1Xdh4uq0pfKFNpBqBolXNcn7zG2AWg5eniOs1koXqhj +1AmkBOY5waC3vw1XXlnxJhbi/yGHbln5f4ipsi5rZWDh6/EGGNmh4IUUiblGzlrX +ge5dzFjp4DRuR0ggW0OncC0F3Kxe3Uy3rY6/eZ9CeFrlhSjGh9yUJhFrmZSjhQGn +vlFxymrfAc4EkA550/ZfQP5udSK26WCVW0OohHJFXYXAj7OKGvB4hblZh/G4/m8B +D2sTIjBUqtInNvHIwion3+5vjG70ygYfq/1aaqZNJPGgWQ3SHJlSAFgSonrH0Qu3 +75aRDBjpWwrFKkMQd7/REuLCRUQvTnZFviwkaWNczdrlaKzqySQ0/RzHkZ/85Vcx +Ohd2RtBm/unTE/+KCieXMWDGSdnjAGcSkteeEuTU6TRLl+h5u8jxVFDi4oLtiH3M +FRsB096Dvfawz5SanHUu/nD0VLq2v+rOW8EQm7njOQOeoA== +=HNM6 +-----END PGP SIGNATURE----- +```