tech_surveillance2412 wordsRead on Arc Codex

Node.js 26.6.0 (Current)

Node.js 26.6.0 (Current) 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-----

How it works

Once you click Generate, Ollama reads this article and crafts 5 comprehension questions. Your answers are graded against the article content — general knowledge won't be enough. Score 70+ to count toward your certificate.

Questions are cached — you'll always get the same 5 for this article.