v26.6.0

nexu-io/open-designv26.6.0Aug 3, 2026by aduh95

AI Summary

A release adding FFI functionality and enhancing the test runner with logging capabilities.

Key Highlights

  • Added `getCurrentEventLoop` to FFI.
  • Added `context.log()` and `test:log` event.
  • Reported `entryFile` in `TestStream` events.

New Features

  • FFI getCurrentEventLoop
  • Test runner context.log
  • Test runner entryFile reporting
  • Split OpenSSL 3, BoringSSL, and legacy backends
  • OpenSSL asm support for riscv64

Full Release Notes




### Notable Changes

* \[[`5a36018abc`](https://github.com/nodejs/node/commit/5a36018abc)] - **doc**: add MikeMcC399 as collaborator (Mike McCready) [#64656](https://github.com/nodejs/node/pull/64656)
* \[[`9b04f82d7b`](https://github.com/nodejs/node/commit/9b04f82d7b)] - **(SEMVER-MINOR)** **ffi**: add `getCurrentEventLoop` (Paolo Insogna) [#64323](https://github.com/nodejs/node/pull/64323)
* \[[`bb51f2c960`](https://github.com/nodejs/node/commit/bb51f2c960)] - **(SEMVER-MINOR)** **test\_runner**: add `context.log()` and `test:log` event (Moshe Atlow) [#64389](https://github.com/nodejs/node/pull/64389)
* \[[`56ce83b3ee`](https://github.com/nodejs/node/commit/56ce83b3ee)] - **(SEMVER-MINOR)** **test\_runner**: report `entryFile` in `TestStream` events (Moshe Atlow) [#64309](https://github.com/nodejs/node/pull/64309)

### Commits

* \[[`248ff9fa5c`](https://github.com/nodejs/node/commit/248ff9fa5c)] - **assert,util**: fix TypeError on Maps with null keys (Paul Bouchon) [#64441](https://github.com/nodejs/node/pull/64441)
* \[[`3b5baceafe`](https://github.com/nodejs/node/commit/3b5baceafe)] - **benchmark**: add bytes variant to webstreams async-iterator (Matteo Collina) [#64291](https://github.com/nodejs/node/pull/64291)
* \[[`0a46d1ef66`](https://github.com/nodejs/node/commit/0a46d1ef66)] - **buffer**: normalize lone "\r" in Blob native line endings (Daijiro Wachi) [#64115](https://github.com/nodejs/node/pull/64115)
* \[[`d9ada18b70`](https://github.com/nodejs/node/commit/d9ada18b70)] - **buffer**: fix Blob.stream() leaking source buffer (semimikoh) [#63577](https://github.com/nodejs/node/pull/63577)
* \[[`d05993bcf6`](https://github.com/nodejs/node/commit/d05993bcf6)] - **build**: merge multiple on download artifact (Chengzhong Wu) [#64633](https://github.com/nodejs/node/pull/64633)
* \[[`6c25ac909a`](https://github.com/nodejs/node/commit/6c25ac909a)] - **build**: extract temporal\_capi crate directory name into gyp variable (René) [#64482](https://github.com/nodejs/node/pull/64482)
* \[[`612f60c300`](https://github.com/nodejs/node/commit/612f60c300)] - **cli**: style node --help output with util.styleText (Adrián Estrada) [#64484](https://github.com/nodejs/node/pull/64484)
* \[[`29a938ddbb`](https://github.com/nodejs/node/commit/29a938ddbb)] - **crypto**: preserve RSA-PSS legacy pubkey DER (Filip Skokan) [#64547](https://github.com/nodejs/node/pull/64547)
* \[[`2fde794357`](https://github.com/nodejs/node/commit/2fde794357)] - **crypto**: cleanse provider private key copies (Filip Skokan) [#64547](https://github.com/nodejs/node/pull/64547)
* \[[`33a0e08d41`](https://github.com/nodejs/node/commit/33a0e08d41)] - **crypto**: handle incomplete RSA private keys (Filip Skokan) [#64547](https://github.com/nodejs/node/pull/64547)
* \[[`11b4d505ef`](https://github.com/nodejs/node/commit/11b4d505ef)] - **crypto**: retain legacy DH validation (Filip Skokan) [#64547](https://github.com/nodejs/node/pull/64547)
* \[[`6e302041e1`](https://github.com/nodejs/node/commit/6e302041e1)] - **crypto**: limit KangarooTwelveParams customization to 512 bytes (Filip Skokan) [#64557](https://github.com/nodejs/node/pull/64557)
* \[[`195f103e87`](https://github.com/nodejs/node/commit/195f103e87)] - **crypto**: split OpenSSL 3, BoringSSL, and legacy backends (Filip Skokan) [#64211](https://github.com/nodejs/node/pull/64211)
* \[[`ec67e24eee`](https://github.com/nodejs/node/commit/ec67e24eee)] - **deps**: update googletest to fa005b296f90faec4f352d7ab382287bf6548c8d (Node.js GitHub Bot) [#64587](https://github.com/nodejs/node/pull/64587)
* \[[`32ffff88fd`](https://github.com/nodejs/node/commit/32ffff88fd)] - **deps**: histogram: cherry-pick 62ea52b07ee9b195 (StefanStojanovic) [#64296](https://github.com/nodejs/node/pull/64296)
* \[[`e0664f1f09`](https://github.com/nodejs/node/commit/e0664f1f09)] - **deps**: update histogram to 0.11.10 (Node.js GitHub Bot) [#64296](https://github.com/nodejs/node/pull/64296)
* \[[`cf0622bdd6`](https://github.com/nodejs/node/commit/cf0622bdd6)] - **deps**: update amaro to 1.1.11 (Node.js GitHub Bot) [#64586](https://github.com/nodejs/node/pull/64586)
* \[[`04c78b8b24`](https://github.com/nodejs/node/commit/04c78b8b24)] - **deps**: update timezone to 2026c (Node.js GitHub Bot) [#64588](https://github.com/nodejs/node/pull/64588)
* \[[`59f4318976`](https://github.com/nodejs/node/commit/59f4318976)] - **deps**: V8: cherry-pick 1158ae719749 (René) [#64432](https://github.com/nodejs/node/pull/64432)
* \[[`e5ea7cd299`](https://github.com/nodejs/node/commit/e5ea7cd299)] - **deps**: update googletest to 8240fa7d62f73e01c7af27d61ed965d6d66698fa (Node.js GitHub Bot) [#64439](https://github.com/nodejs/node/pull/64439)
* \[[`0e7554cee4`](https://github.com/nodejs/node/commit/0e7554cee4)] - **deps**: update libffi to 3.7.1 (Node.js GitHub Bot) [#64438](https://github.com/nodejs/node/pull/64438)
* \[[`46c9d724ad`](https://github.com/nodejs/node/commit/46c9d724ad)] - **deps**: update ngtcp2 to 1.24.0 (Node.js GitHub Bot) [#64297](https://github.com/nodejs/node/pull/64297)
* \[[`3519aac9af`](https://github.com/nodejs/node/commit/3519aac9af)] - **deps**: enable OpenSSL asm support for riscv64 (Jamie Magee) [#62606](https://github.com/nodejs/node/pull/62606)
* \[[`c09701218b`](https://github.com/nodejs/node/commit/c09701218b)] - **deps**: update c-ares to 1.34.8 (Node.js GitHub Bot) [#64330](https://github.com/nodejs/node/pull/64330)
* \[[`ad2f3bc95b`](https://github.com/nodejs/node/commit/ad2f3bc95b)] - **deps**: upgrade npm to 11.18.0 (npm team) [#64199](https://github.com/nodejs/node/pull/64199)
* \[[`d7a4b22c86`](https://github.com/nodejs/node/commit/d7a4b22c86)] - **deps**: V8: backport a05321ebd98e (Chengzhong Wu) [#64202](https://github.com/nodejs/node/pull/64202)
* \[[`8679cff291`](https://github.com/nodejs/node/commit/8679cff291)] - **deps**: update zlib to 1.3.2.1-motley-8b3aa8a (Node.js GitHub Bot) [#64295](https://github.com/nodejs/node/pull/64295)
* \[[`df5b1e10ba`](https://github.com/nodejs/node/commit/df5b1e10ba)] - **doc**: remove unsupported syntax from `stream_iter.md` (Antoine du Hamel) [#64649](https://github.com/nodejs/node/pull/64649)
* \[[`8a4ca9083f`](https://github.com/nodejs/node/commit/8a4ca9083f)] - **doc**: clarify rules for adding new built-in modules (Antoine du Hamel) [#64648](https://github.com/nodejs/node/pull/64648)
* \[[`7d50fe6b7a`](https://github.com/nodejs/node/commit/7d50fe6b7a)] - **doc**: mention DEPENDENCY custom field for H1 reports (Rafael Gonzaga) [#64634](https://github.com/nodejs/node/pull/64634)
* \[[`8f415bf5fc`](https://github.com/nodejs/node/commit/8f415bf5fc)] - **doc**: fix dnsPromises.lookup verbatim default (Shivam S) [#64658](https://github.com/nodejs/node/pull/64658)
* \[[`c6378f724d`](https://github.com/nodejs/node/commit/c6378f724d)] - **doc**: fix broken links and clean up type map (Antoine du Hamel) [#64625](https://github.com/nodejs/node/pull/64625)
* \[[`9b53ec19a2`](https://github.com/nodejs/node/commit/9b53ec19a2)] - **doc**: fix typo in releases guide (Jihwan) [#64621](https://github.com/nodejs/node/pull/64621)
* \[[`5a36018abc`](https://github.com/nodejs/node/commit/5a36018abc)] - **doc**: add MikeMcC399 as collaborator (Mike McCready) [#64656](https://github.com/nodejs/node/pull/64656)
* \[[`d2c8acd764`](https://github.com/nodejs/node/commit/d2c8acd764)] - **doc**: use promote wording in release guide (Md Muhtasim Munif Fahim) [#64371](https://github.com/nodejs/node/pull/64371)
* \[[`5c692cb576`](https://github.com/nodejs/node/commit/5c692cb576)] - **doc**: fix import.meta example for vm.SourceTextModule (Muhammad Zeeshan) [#64112](https://github.com/nodejs/node/pull/64112)
* \[[`7568ce71ca`](https://github.com/nodejs/node/commit/7568ce71ca)] - **doc**: mention crypto.hash() for better perf (Steven) [#63420](https://github.com/nodejs/node/pull/63420)
* \[[`cf3f631936`](https://github.com/nodejs/node/commit/cf3f631936)] - **doc**: update sea example by fixing wrong code example (Maxence Robinet) [#64025](https://github.com/nodejs/node/pull/64025)
* \[[`ce21e567a4`](https://github.com/nodejs/node/commit/ce21e567a4)] - **doc**: fix socket.readyState state descriptions (YuSheng Chen) [#64468](https://github.com/nodejs/node/pull/64468)
* \[[`018c7f1c01`](https://github.com/nodejs/node/commit/018c7f1c01)] - **doc**: replace large tables in crypto.md and webcrypto.md with lists (Filip Skokan) [#64582](https://github.com/nodejs/node/pull/64582)
* \[[`cf82de8d8b`](https://github.com/nodejs/node/commit/cf82de8d8b)] - **doc**: note --env-file is not applied to --run (Paul Bouchon) [#64442](https://github.com/nodejs/node/pull/64442)
* \[[`e635ce5201`](https://github.com/nodejs/node/commit/e635ce5201)] - **doc**: fix typo in embedding.md (greenhead) [#64425](https://github.com/nodejs/node/pull/64425)
* \[[`0b1f6eda3f`](https://github.com/nodejs/node/commit/0b1f6eda3f)] - **doc**: fix typos in contributing docs (Donghoon Kang) [#64520](https://github.com/nodejs/node/pull/64520)
* \[[`d978ce80ef`](https://github.com/nodejs/node/commit/d978ce80ef)] - **doc**: document TLS alpnProtocol and servername fields (Tim Perry) [#64362](https://github.com/nodejs/node/pull/64362)
* \[[`394669e3b3`](https://github.com/nodejs/node/commit/394669e3b3)] - **doc**: fix spelling in devcontainer guide (한만욱) [#64459](https://github.com/nodejs/node/pull/64459)
* \[[`9786a593ea`](https://github.com/nodejs/node/commit/9786a593ea)] - **doc**: clarify PEM format for signing keys (Harjoth Khara) [#64404](https://github.com/nodejs/node/pull/64404)
* \[[`6251f832ba`](https://github.com/nodejs/node/commit/6251f832ba)] - **doc**: fix typo in tls.md (Daijiro Wachi) [#64458](https://github.com/nodejs/node/pull/64458)
* \[[`b8656c40ad`](https://github.com/nodejs/node/commit/b8656c40ad)] - **doc**: document net Socket server property (Efe Karasakal) [#64364](https://github.com/nodejs/node/pull/64364)
* \[[`03e9c738f3`](https://github.com/nodejs/node/commit/03e9c738f3)] - **doc**: update a Dispatcher undici doc link (Filip Skokan) [#64358](https://github.com/nodejs/node/pull/64358)
* \[[`b6dd2debf0`](https://github.com/nodejs/node/commit/b6dd2debf0)] - **doc**: fix typos in documentation (Jungwon Sohn) [#64466](https://github.com/nodejs/node/pull/64466)
* \[[`3b7d778c3c`](https://github.com/nodejs/node/commit/3b7d778c3c)] - **doc**: clarify fixes and refs trailer guidance (Trivikram Kamat) [#64421](https://github.com/nodejs/node/pull/64421)
* \[[`eb086a6e03`](https://github.com/nodejs/node/commit/eb086a6e03)] - **doc**: remove duplicate VirtualProvider description (Archkon) [#64400](https://github.com/nodejs/node/pull/64400)
* \[[`bc221a8cd7`](https://github.com/nodejs/node/commit/bc221a8cd7)] - **doc**: add scope overview tables for TestsStream events (Moshe Atlow) [#64386](https://github.com/nodejs/node/pull/64386)
* \[[`4b3dbd36df`](https://github.com/nodejs/node/commit/4b3dbd36df)] - **doc**: clarify proxy threat model (Matteo Collina) [#64366](https://github.com/nodejs/node/pull/64366)
* \[[`c5526f69d6`](https://github.com/nodejs/node/commit/c5526f69d6)] - **doc**: add note about restricted CI to pull-requests.md (Stewart X Addison) [#64321](https://github.com/nodejs/node/pull/64321)
* \[[`968eaf6538`](https://github.com/nodejs/node/commit/968eaf6538)] - **doc**: various updates to releases.md (Stewart X Addison) [#64198](https://github.com/nodejs/node/pull/64198)
* \[[`2a51f8ba8e`](https://github.com/nodejs/node/commit/2a51f8ba8e)] - **doc**: remove obsolete --napi-modules doc entry (Chengzhong Wu) [#64220](https://github.com/nodejs/node/pull/64220)
* \[[`ee5a54535e`](https://github.com/nodejs/node/commit/ee5a54535e)] - **doc,test**: widen fsPromises.appendFile()'s data type, add missing tests (Jimmy Leung) [#64279](https://github.com/nodejs/node/pull/64279)
* \[[`b923df86fc`](https://github.com/nodejs/node/commit/b923df86fc)] - **events**: avoid retaining removed event names (Matteo Collina) [#64475](https://github.com/nodejs/node/pull/64475)
* \[[`7d8d413ff5`](https://github.com/nodejs/node/commit/7d8d413ff5)] - **events**: optimize once() and removeListener() (Matteo Collina) [#64373](https://github.com/nodejs/node/pull/64373)
* \[[`f2f8881d2a`](https://github.com/nodejs/node/commit/f2f8881d2a)] - **ffi**: evaluate function signatures once (Trivikram Kamat) [#64559](https://github.com/nodejs/node/pull/64559)
* \[[`9b04f82d7b`](https://github.com/nodejs/node/commit/9b04f82d7b)] - **(SEMVER-MINOR)** **ffi**: add getCurrentEventLoop (Paolo Insogna) [#64323](https://github.com/nodejs/node/pull/64323)
* \[[`4a3ef5b2b5`](https://github.com/nodejs/node/commit/4a3ef5b2b5)] - **fs**: add pattern cache for matchGlobPattern() (bq) [#63915](https://github.com/nodejs/node/pull/63915)
* \[[`ce113efcac`](https://github.com/nodejs/node/commit/ce113efcac)] - **fs**: fix cp symlink and EEXIST handling on Windows (Kirill Saied) [#64353](https://github.com/nodejs/node/pull/64353)
* \[[`3be3041ac9`](https://github.com/nodejs/node/commit/3be3041ac9)] - **http**: fix perf\_hooks detail.req.url port and proxied path (Stefano Baghino) [#64311](https://github.com/nodejs/node/pull/64311)
* \[[`0047ad73cf`](https://github.com/nodejs/node/commit/0047ad73cf)] - **http**: remove unused n arg from IncomingMessage.\_read (Efe Karasakal) [#64370](https://github.com/nodejs/node/pull/64370)
* \[[`4d48984d5c`](https://github.com/nodejs/node/commit/4d48984d5c)] - **http2**: don't throw when destroying socket proxy (Matteo Collina) [#64427](https://github.com/nodejs/node/pull/64427)
* \[[`3329647762`](https://github.com/nodejs/node/commit/3329647762)] - **http2**: avoid copying the options in respond() (Matteo Collina) [#64265](https://github.com/nodejs/node/pull/64265)
* \[[`a44fca5e24`](https://github.com/nodejs/node/commit/a44fca5e24)] - **http2**: avoid per-write closures in kWriteGeneric (Matteo Collina) [#64265](https://github.com/nodejs/node/pull/64265)
* \[[`546e0e70a1`](https://github.com/nodejs/node/commit/546e0e70a1)] - **inspector**: add --cond to node inspect probe mode (Joyee Cheung) [#64328](https://github.com/nodejs/node/pull/64328)
* \[[`b38a39dd96`](https://github.com/nodejs/node/commit/b38a39dd96)] - **lib**: use `assignFunctionName` util where it makes sense (Antoine du Hamel) [#64515](https://github.com/nodejs/node/pull/64515)
* \[[`f60a12b94f`](https://github.com/nodejs/node/commit/f60a12b94f)] - **lib,tools**: add `node-core/func-name-matching` lint rule (Livia Medeiros) [#57901](https://github.com/nodejs/node/pull/57901)
* \[[`9e6e9d4745`](https://github.com/nodejs/node/commit/9e6e9d4745)] - **meta**: lower stale to 3 months (Aviv Keller) [#64569](https://github.com/nodejs/node/pull/64569)
* \[[`3dd11c4993`](https://github.com/nodejs/node/commit/3dd11c4993)] - **meta**: move one or more collaborators to emeritus (Node.js GitHub Bot) [#64315](https://github.com/nodejs/node/pull/64315)
* \[[`3f55208104`](https://github.com/nodejs/node/commit/3f55208104)] - **module**: add two tests for eager imports when using `import defer` (Maya Lekova) [#64197](https://github.com/nodejs/node/pull/64197)
* \[[`c791eedc9d`](https://github.com/nodejs/node/commit/c791eedc9d)] - **net**: support sync connect for BoundSocket (Guy Bedford) [#64375](https://github.com/nodejs/node/pull/64375)
* \[[`4df4a3fc61`](https://github.com/nodejs/node/commit/4df4a3fc61)] - **net**: make TCP Server and Socket transferable across worker threads (Matteo Collina) [#64225](https://github.com/nodejs/node/pull/64225)
* \[[`5dd34d7d06`](https://github.com/nodejs/node/commit/5dd34d7d06)] - **path**: add benchmarks for path.matchesGlob() (bq) [#63915](https://github.com/nodejs/node/pull/63915)
* \[[`8e520646b6`](https://github.com/nodejs/node/commit/8e520646b6)] - **quic**: defer server session emit until TLS ClientHello is processed (Tim Perry) [#64132](https://github.com/nodejs/node/pull/64132)
* \[[`4b8cc9a3fb`](https://github.com/nodejs/node/commit/4b8cc9a3fb)] - **quic**: preserve session stats after close (한만욱) [#64489](https://github.com/nodejs/node/pull/64489)
* \[[`591090ca85`](https://github.com/nodejs/node/commit/591090ca85)] - **quic**: add support for TLS certificate compression (Sebastian Beltran) [#64434](https://github.com/nodejs/node/pull/64434)
* \[[`d636c9c30f`](https://github.com/nodejs/node/commit/d636c9c30f)] - **quic**: extract transport logic from Application to Session (Tim Perry) [#64127](https://github.com/nodejs/node/pull/64127)
* \[[`abb62f961f`](https://github.com/nodejs/node/commit/abb62f961f)] - **quic**: correct http3 callback and fix revealed errs (Marten Richter) [#64289](https://github.com/nodejs/node/pull/64289)
* \[[`5f535fdbe8`](https://github.com/nodejs/node/commit/5f535fdbe8)] - **quic**: fix no onstream handler crash quic (Efe) [#64158](https://github.com/nodejs/node/pull/64158)
* \[[`933e5f14b5`](https://github.com/nodejs/node/commit/933e5f14b5)] - **quic**: fix stall datagrams, if no pending streams (Marten Richter) [#64303](https://github.com/nodejs/node/pull/64303)
* \[[`272632a57f`](https://github.com/nodejs/node/commit/272632a57f)] - **quic**: fix potential crash from unobserved closed (Tim Perry) [#64134](https://github.com/nodejs/node/pull/64134)
* \[[`2d5f445489`](https://github.com/nodejs/node/commit/2d5f445489)] - **sqlite**: read column count after step in StatementSync.all() (Guilherme Araújo) [#64219](https://github.com/nodejs/node/pull/64219)
* \[[`54929af44e`](https://github.com/nodejs/node/commit/54929af44e)] - **src**: avoid redundant KEM encapsulation copies (Filip Skokan) [#64553](https://github.com/nodejs/node/pull/64553)
* \[[`5380bf28b3`](https://github.com/nodejs/node/commit/5380bf28b3)] - **src**: avoid redundant DataPointer reallocations (Filip Skokan) [#64552](https://github.com/nodejs/node/pull/64552)
* \[[`6ff5a1b834`](https://github.com/nodejs/node/commit/6ff5a1b834)] - **src**: fix comment typos (Jungwon Sohn) [#64509](https://github.com/nodejs/node/pull/64509)
* \[[`508ec0e435`](https://github.com/nodejs/node/commit/508ec0e435)] - **src**: zero-initialize cap\_data in node\_credentials.cc (Samuel Kapust) [#64347](https://github.com/nodejs/node/pull/64347)
* \[[`c5090a36c1`](https://github.com/nodejs/node/commit/c5090a36c1)] - **src**: fix some typo errors and rename some variables (Archkon) [#64301](https://github.com/nodejs/node/pull/64301)
* \[[`0a89bef69e`](https://github.com/nodejs/node/commit/0a89bef69e)] - **src,permission**: do not throw on denied access in audit mode (Adrián Estrada) [#64426](https://github.com/nodejs/node/pull/64426)
* \[[`63e71195c5`](https://github.com/nodejs/node/commit/63e71195c5)] - **stream**: abort pending single-source merge reads (Trivikram Kamat) [#64445](https://github.com/nodejs/node/pull/64445)
* \[[`f403b30c3d`](https://github.com/nodejs/node/commit/f403b30c3d)] - **stream**: use RangeError for broadcast overflow (Trivikram Kamat) [#64420](https://github.com/nodejs/node/pull/64420)
* \[[`5c0578cbf7`](https://github.com/nodejs/node/commit/5c0578cbf7)] - **stream**: skip null output from stateful transforms (Trivikram Kamat) [#64462](https://github.com/nodejs/node/pull/64462)
* \[[`0488d02d5d`](https://github.com/nodejs/node/commit/0488d02d5d)] - **stream**: update iterable streams to use budget backpressure (James M Snell) [#64464](https://github.com/nodejs/node/pull/64464)
* \[[`f0811baeef`](https://github.com/nodejs/node/commit/f0811baeef)] - **stream**: remove custom `CloneableDOMException` implementation (Antoine du Hamel) [#64469](https://github.com/nodejs/node/pull/64469)
* \[[`10f3f9682e`](https://github.com/nodejs/node/commit/10f3f9682e)] - **stream**: fix drop-newest behavior in share() (Trivikram Kamat) [#64417](https://github.com/nodejs/node/pull/64417)
* \[[`2aad973b29`](https://github.com/nodejs/node/commit/2aad973b29)] - **stream**: resume flow when an errored pipe destination is removed (Mahin Anowar) [#64310](https://github.com/nodejs/node/pull/64310)
* \[[`6112ed5ceb`](https://github.com/nodejs/node/commit/6112ed5ceb)] - **stream**: fold desired-size check into WHATWG backpressure update (Matteo Collina) [#64451](https://github.com/nodejs/node/pull/64451)
* \[[`d829aa1138`](https://github.com/nodejs/node/commit/d829aa1138)] - **stream**: validate writer options signal (Trivikram Kamat) [#64385](https://github.com/nodejs/node/pull/64385)
* \[[`8e7a5e940e`](https://github.com/nodejs/node/commit/8e7a5e940e)] - **stream**: reject push iterator.throw() with error (Trivikram Kamat) [#64380](https://github.com/nodejs/node/pull/64380)
* \[[`4390f81294`](https://github.com/nodejs/node/commit/4390f81294)] - **stream**: simplify nested `PromisePrototypeThen`s (Antoine du Hamel) [#64470](https://github.com/nodejs/node/pull/64470)
* \[[`ddf2c38e9d`](https://github.com/nodejs/node/commit/ddf2c38e9d)] - **stream**: use the ring buffer for WHATWG stream request queues (Matteo Collina) [#64431](https://github.com/nodejs/node/pull/64431)
* \[[`518d81b36d`](https://github.com/nodejs/node/commit/518d81b36d)] - **stream**: validate writevSync chunks before queuing (Trivikram Kamat) [#64300](https://github.com/nodejs/node/pull/64300)
* \[[`f745c4261d`](https://github.com/nodejs/node/commit/f745c4261d)] - **stream**: speed up reads and iteration over default WHATWG streams (Matteo Collina) [#64320](https://github.com/nodejs/node/pull/64320)
* \[[`4f4bce62fe`](https://github.com/nodejs/node/commit/4f4bce62fe)] - **stream**: copy SAB-backed chunks in iter consumers (Trivikram Kamat) [#64382](https://github.com/nodejs/node/pull/64382)
* \[[`f29937d26f`](https://github.com/nodejs/node/commit/f29937d26f)] - **stream**: reject nested async streamables in from() (Trivikram Kamat) [#64352](https://github.com/nodejs/node/pull/64352)
* \[[`424cec71b7`](https://github.com/nodejs/node/commit/424cec71b7)] - **stream**: avoid draining merged iter sources (Trivikram Kamat) [#64293](https://github.com/nodejs/node/pull/64293)
* \[[`e01906180c`](https://github.com/nodejs/node/commit/e01906180c)] - **stream**: use ring buffer for WHATWG stream queues (Yagiz Nizipli) [#64312](https://github.com/nodejs/node/pull/64312)
* \[[`0a0193f666`](https://github.com/nodejs/node/commit/0a0193f666)] - **stream**: hoist repeated loads in readable paths (Yagiz Nizipli) [#64312](https://github.com/nodejs/node/pull/64312)
* \[[`ebe16003b6`](https://github.com/nodejs/node/commit/ebe16003b6)] - **stream**: prefer sync iterator in fromSync (Trivikram Kamat) [#64294](https://github.com/nodejs/node/pull/64294)
* \[[`f249614835`](https://github.com/nodejs/node/commit/f249614835)] - **stream**: speed up async iteration over WHATWG byte streams (Matteo Collina) [#64291](https://github.com/nodejs/node/pull/64291)
* \[[`7331118699`](https://github.com/nodejs/node/commit/7331118699)] - **stream, quic**: update iterable streams backpressure (James M Snell) [#64464](https://github.com/nodejs/node/pull/64464)
* \[[`46b117729d`](https://github.com/nodejs/node/commit/46b117729d)] - **test**: update quic tests for stream/iter update (James M Snell) [#64464](https://github.com/nodejs/node/pull/64464)
* \[[`b122ca5389`](https://github.com/nodejs/node/commit/b122ca5389)] - **test**: fix flaky http2 socket proxy test (Tim Perry) [#64673](https://github.com/nodejs/node/pull/64673)
* \[[`68c46146fd`](https://github.com/nodejs/node/commit/68c46146fd)] - **test**: apply correction to comment (Rich Trott) [#64524](https://github.com/nodejs/node/pull/64524)
* \[[`d7e119b26b`](https://github.com/nodejs/node/commit/d7e119b26b)] - **test**: keep finalization before-exit ref alive (Tim Perry) [#64521](https://github.com/nodejs/node/pull/64521)
* \[[`0db4e10a0c`](https://github.com/nodejs/node/commit/0db4e10a0c)] - **test**: copyedit `test-tls-psk-alpn-callback-exception-handling` (Antoine du Hamel) [#63485](https://github.com/nodejs/node/pull/63485)
* \[[`21389f7b25`](https://github.com/nodejs/node/commit/21389f7b25)] - **test**: fix stale async-context-frame status entries (Kirill Saied) [#64141](https://github.com/nodejs/node/pull/64141)
* \[[`af55304846`](https://github.com/nodejs/node/commit/af55304846)] - **test**: update WPT for urlpattern to 5847ee5cfa (Node.js GitHub Bot) [#64436](https://github.com/nodejs/node/pull/64436)
* \[[`43a5ce4e00`](https://github.com/nodejs/node/commit/43a5ce4e00)] - **test**: update WPT for WebCryptoAPI to ec2fee39a4 (Node.js GitHub Bot) [#64435](https://github.com/nodejs/node/pull/64435)
* \[[`11ca52a521`](https://github.com/nodejs/node/commit/11ca52a521)] - **test**: fix flaky http2 maxOriginSetSize test (Tim Perry) [#64407](https://github.com/nodejs/node/pull/64407)
* \[[`af08a11e77`](https://github.com/nodejs/node/commit/af08a11e77)] - **test**: fix 2nd flaky blob test case (Tim Perry) [#64391](https://github.com/nodejs/node/pull/64391)
* \[[`0104ae1171`](https://github.com/nodejs/node/commit/0104ae1171)] - **test**: fix flaky watch + cwd + argv test-runner test (Tim Perry) [#64372](https://github.com/nodejs/node/pull/64372)
* \[[`b3ff5fe3f4`](https://github.com/nodejs/node/commit/b3ff5fe3f4)] - **test**: normalize Windows crash in debugger test normalization (Joyee Cheung) [#64332](https://github.com/nodejs/node/pull/64332)
* \[[`4cdceb7436`](https://github.com/nodejs/node/commit/4cdceb7436)] - **test**: unmark flaky http2-large-file for Win (Kirill Saied) [#64255](https://github.com/nodejs/node/pull/64255)
* \[[`19f529377b`](https://github.com/nodejs/node/commit/19f529377b)] - **test**: unmark flaky SEA snapshot tests on Windows (Kirill Saied) [#64317](https://github.com/nodejs/node/pull/64317)
* \[[`66f9b342ef`](https://github.com/nodejs/node/commit/66f9b342ef)] - **test**: increase timeout in consumed-timeout test (Trivikram Kamat) [#64204](https://github.com/nodejs/node/pull/64204)
* \[[`fdbbf0ae6d`](https://github.com/nodejs/node/commit/fdbbf0ae6d)] - **test**: handle null stdio streams in spawnSyncAndAssert helper (Joyee Cheung) [#64273](https://github.com/nodejs/node/pull/64273)
* \[[`10ea17dafe`](https://github.com/nodejs/node/commit/10ea17dafe)] - **test**: remove impact of tier-up changes in worker stack size test (Joyee Cheung) [#64271](https://github.com/nodejs/node/pull/64271)
* \[[`bb51f2c960`](https://github.com/nodejs/node/commit/bb51f2c960)] - **(SEMVER-MINOR)** **test\_runner**: add context.log() and test:log event (Moshe Atlow) [#64389](https://github.com/nodejs/node/pull/64389)
* \[[`56ce83b3ee`](https://github.com/nodejs/node/commit/56ce83b3ee)] - **(SEMVER-MINOR)** **test\_runner**: report `entryFile` in `TestStream` events (Moshe Atlow) [#64309](https://github.com/nodejs/node/pull/64309)
* \[[`7a02e4f9e6`](https://github.com/nodejs/node/commit/7a02e4f9e6)] - **timers**: do not retain a reference to the async store after firing (Matteo Collina) [#53443](https://github.com/nodejs/node/pull/53443)
* \[[`7d5d46ef00`](https://github.com/nodejs/node/commit/7d5d46ef00)] - **tls**: match IPv6 hosts against IP-Address SANs (Pascal Garber) [#64145](https://github.com/nodejs/node/pull/64145)
* \[[`f7bc0c62df`](https://github.com/nodejs/node/commit/f7bc0c62df)] - **tools**: bump brace-expansion from 5.0.6 to 5.0.7 in /tools/eslint (dependabot\[bot]) [#64636](https://github.com/nodejs/node/pull/64636)
* \[[`3f80ed2e93`](https://github.com/nodejs/node/commit/3f80ed2e93)] - **tools**: reference 'git node land' in PR-URL: error message in merge.sh (Stewart X Addison) [#64495](https://github.com/nodejs/node/pull/64495)
* \[[`7b373cafce`](https://github.com/nodejs/node/commit/7b373cafce)] - **tools**: disable zipping tarballs on GHA (Antoine du Hamel) [#64423](https://github.com/nodejs/node/pull/64423)
* \[[`5bdbd256e9`](https://github.com/nodejs/node/commit/5bdbd256e9)] - **tools**: add workflow to compare Nix changes (Antoine du Hamel) [#64410](https://github.com/nodejs/node/pull/64410)
* \[[`ca4a16634b`](https://github.com/nodejs/node/commit/ca4a16634b)] - **tools**: add option for `benchmark.yml` to post comment on PR (Antoine du Hamel) [#64395](https://github.com/nodejs/node/pull/64395)
* \[[`86193ef193`](https://github.com/nodejs/node/commit/86193ef193)] - **tools**: fix redundant conditions in v8.gyp for riscv64 and loong64 (Jamie Magee) [#62608](https://github.com/nodejs/node/pull/62608)
* \[[`ee460404be`](https://github.com/nodejs/node/commit/ee460404be)] - **util**: make MIMEParams accessors case-insensitive (Daijiro Wachi) [#64123](https://github.com/nodejs/node/pull/64123)
* \[[`a63ee46ddd`](https://github.com/nodejs/node/commit/a63ee46ddd)] - **vfs**: make recursive readdir iterative (AkshatOP) [#64149](https://github.com/nodejs/node/pull/64149)
* \[[`37f93c3b15`](https://github.com/nodejs/node/commit/37f93c3b15)] - **vfs**: make lchmod update symlink mode (Trivikram Kamat) [#64350](https://github.com/nodejs/node/pull/64350)
* \[[`ce54e2a9c8`](https://github.com/nodejs/node/commit/ce54e2a9c8)] - **vfs**: fix VirtualReadStream race with async iteration (Y1D7NG) [#64394](https://github.com/nodejs/node/pull/64394)
* \[[`54e8d3a14b`](https://github.com/nodejs/node/commit/54e8d3a14b)] - **vfs**: follow symlinked dirs in recursive mkdir (Trivikram Kamat) [#64287](https://github.com/nodejs/node/pull/64287)
* \[[`7be42b64e1`](https://github.com/nodejs/node/commit/7be42b64e1)] - **vm**: enable interception on global restricted properties (Chengzhong Wu) [#64202](https://github.com/nodejs/node/pull/64202)
* \[[`c2cfcf8e7d`](https://github.com/nodejs/node/commit/c2cfcf8e7d)] - **zlib**: reject truncated zstd input (Archkon) [#64593](https://github.com/nodejs/node/pull/64593)