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