Antoine du Hamel
2026-08-26, Version 26.8.0 (Current), @aduh95
Notable Changes
- [
74234ee30e
] - (SEMVER-MINOR) benchmark: add --analyze mode to compare.js (James M Snell) #65416 - [
4232997fa2
] - crypto: update root certificates to NSS 3.126 (Node.js GitHub Bot) #65495 - [
f0531f1c87
] - (SEMVER-MINOR) crypto: enable SIV and GCM-SIV modes in Cipher/Decipher APIs (Filip Skokan) #63411 - [
3f4b80ebb5
] - diagnostics_channel: mark TracingChannel as stable (Abdelrahman Awad) #64525 - [
753033c110
] - (SEMVER-MINOR) lib,src: improve histogram implementation (James M Snell) #65024 - [
3d7d277493
] - (SEMVER-MINOR) net: improve performance of net.BlockList (James M Snell) #64974 - [
9e8e9080fd
] - (SEMVER-MINOR) perf_hooks: add statistical hypothesis testing to histogram (James M Snell) #65416 - [
c18b0aa54e
] - repl: add basic syntax highlighting (Aviv Keller) #64591 - [
58ea88e1d3
] - (SEMVER-MINOR) sqlite: add StatementSync.prototype.close() (Guilherme Araújo) #64232 - [
7c61b08aed
] - (SEMVER-MINOR) sqlite: add StatementSync.prototype[Symbol.dispose]() (Guilherme Araújo) #64232 - [
4299cd5897
] - (SEMVER-MINOR) util: add non-throwing MIMEType.parse (James M Snell) #64965 - [
df48191061
] - (SEMVER-MINOR) zlib: add ZipEntry, ZipFile, and ZipBuffer (Philipp Dunkel) #64339
Commits
- [
162257b403
] - assert: improve documentation wording (Kamal Rawal) #64953 - [
74234ee30e
] - (SEMVER-MINOR) benchmark: add --analyze mode to compare.js (James M Snell) #65416 - [
2cb96dd462
] - benchmark: add test-only and mock timers cases (Luan Muniz) #64097 - [
562168f93f
] - benchmark: applyhighWaterMark
in webstreamspipe-to
(Matteo Collina) #65138 - [
fbec4eb386
] - benchmark: complete the sqlite is-transaction fix (Edy Silva) #65218 - [
d8acfc45f1
] - benchmark: add test runner hooks and options (Luan Muniz) #63754 - [
13e7d54f67
] - buffer: prevent string write offset overflow (Matteo Collina) #65043 - [
615273deac
] - buffer: support aligned allocations (Robert Nagy) #65003 - [
bc6b630e21
] - buffer: treat detached ArrayBuffers as empty (Archkon) #64504 - [
ddf9f9d265
] - build: target Power 9 and z14 (Richard Lau) #65439 - [
fda8ee894e
] - build: use build-ci for benchmark merge-commit rebuild (Yagiz Nizipli) #65362 - [
03692786ef
] - build: add simdutf dir to include path in GN build (Shelley Vohr) #65382 - [
3da555a3ed
] - build: pass target architecture to small-icu genccode (ulofiai) #65095 - [
ffe1e7cbea
] - build: update binary-upload to use correct tarball name (Stewart X Addison) #65282 - [
50174cb94a
] - build: deprecate always enabled--enable-static
(Chengzhong Wu) #65103 - [
28f662b424
] - build: check FIPS option value in node.gyp (Filip Skokan) #64982 - [
29a2ecefeb
] - build: handle malformed OpenSSL macros (Filip Skokan) #64982 - [
6deeef1801
] - build: enable perfetto updater (Chengzhong Wu) #64966 - [
312f0c6a7e
] - build: add host toolset to perfetto_sdk (Ryuhei Shima) #64751 - [
1a4f5e537b
] - build,win: add PGO workload scripts (Stefan Stojanovic) #63696 - [
21655dccbc
] - child_process: keep SIGWINCH from killing on Win (Kirill Saied) #64510 - [
4232997fa2
] - crypto: update root certificates to NSS 3.126 (Node.js GitHub Bot) #65495 - [
f0531f1c87
] - (SEMVER-MINOR) crypto: enable SIV and GCM-SIV modes in Cipher/Decipher APIs (Filip Skokan) #63411 - [
109566a2f7
] - crypto: fix missing error checks on ASN1_STRING_to_UTF8() (Nora Dossche) #65200 - [
501f81612d
] - crypto: improve SubtleCrypto.supports() accuracy (Filip Skokan) #65222 - [
137ff67fd3
] - crypto: use available BoringSSL APIs (Filip Skokan) #65423 - [
0e87576ed4
] - crypto: remove obsolete BoringSSL shims (Filip Skokan) #65423 - [
af867ce3e4
] - crypto: add mgf1Hash for RSA-OAEP (Adam Mcgrath) #65073 - [
66ee4792bf
] - crypto: disable non-FIPS WebCrypto paths in FIPS mode (Filip Skokan) #65172 - [
6a142c03e9
] - crypto: read WebCrypto inputs through primordials (Filip Skokan) #65115 - [
92e3110462
] - crypto: fix disabling FIPS mode (Filip Skokan) #64982 - [
d69bed2f49
] - debugger: wait for target startup (Filip Skokan) #65194 - [
5c7c0b8b15
] - deps: update zlib to 1.3.2.1-motley-8002e91 (Node.js GitHub Bot) #65316 - [
4cb6b1335e
] - deps: update simdjson to 4.6.7 (Node.js GitHub Bot) #65318 - [
a39ad67482
] - deps: update googletest to 49495eacfdbda3f4b6ba219923fedbb2e3f99376 (Node.js GitHub Bot) #65317 - [
46762dad57
] - deps: cherry-pick libuv/libuv@e640dc9 (ulofiai) #65118 - [
abb7a15a8d
] - deps: update perfetto to 57.2 (Node.js GitHub Bot) #65114 - [
ebd8c6ba52
] - deps: float ICU-23262 patch for icu78 (René) #64678 - [
f2cc681109
] - deps: enable AVX-512 OpenSSL asm with clang (Daniel Lemire) #65136 - [
f45dc92913
] - deps: update undici to 8.10.0 (Node.js GitHub Bot) #65155 - [
4160dfdf81
] - deps: update googletest to d89aac5f0dd4021198d903d39de16f896726de21 (Node.js GitHub Bot) #65153 - [
631d3aa37b
] - deps: update libffi to 3.8.0 (Node.js GitHub Bot) #65154 - [
788976c626
] - dgram: don't swallow bind errors when callback is provided (armanmikoyan) #62602 - [
d286423043
] - diagnostics_channel: validate before channel activation (Trivikram Kamat) #65313 - [
3f4b80ebb5
] - diagnostics_channel: mark TracingChannel as stable (Abdelrahman Awad) #64525 - [
152a326f92
] - dns: validate address type in lookupService (Lazizbek Ergashev) #64878 - [
00c71fec93
] - dns: validate port range insetServers()
(René) #65021 - [
e9327d1422
] - dns: fix crash on setServers with port 0 (Lazizbek Ergashev) #65009 - [
9e227ef20d
] - doc: update AHAFS reference link (Taeuk Ha) #65481 - [
5fbf6c57af
] - doc: fix property names in os.networkInterfaces() example (Jihwan) #65469 - [
13f16d28d1
] - doc: fix broken links in cli.md (Donghoon Kang) #65412 - [
0f36ee3755
] - doc: remove outdated WASI version fallback (이혜미) #65303 - [
1ad09f712a
] - doc: fix broken GYP link in n-api.md (Donghoon Kang) #65413 - [
24cd694237
] - doc: document that an empty OPENSSL_CONF skips config loading (Orgad Shaneh) #64949 - [
dae434132e
] - doc: fix broken TLS security level example (soreavis) #65391 - [
96b91dc987
] - doc: clarify socket destroyed behavior (Dayun) #65395 - [
9d8d27d444
] - doc: update outdated nodejs.org guide links (Donghoon Kang) #65394 - [
65f675086e
] - doc: clarify that ipv4 mapped to ipv6 are classified as ipv6 (Vedant Kulkarni) #62117 - [
89aba0c311
] - doc: clarify how fs.Dirent file types are determined (soreavis) #64532 - [
3ed0492f52
] - doc: update security release prepare command (Rafael Gonzaga) #64699 - [
63583c4e75
] - doc: clarify copyFile symlink behavior (T) #62941 - [
abfc51f757
] - doc: document setRawMode write access on Windows (Erik Demaine) #63856 - [
4a784cb3e6
] - doc: document per-architecture fast FFI argument limits (Seongeun Lee) #65207 - [
262f966155
] - doc: add missing return types in fs.md (Chaseton Collins) #65307 - [
695cd896a7
] - doc: add missing return types in buffer.md (Yuya Inoue) #65308 - [
676a1228cd
] - doc: fix lint clean command (greenhead) #65274 - [
9ea318d4e3
] - doc: fix typo in onboarding.md (서울민트초코) #65295 - [
3b6a918ab4
] - doc: add missingadded:
tags tofs.lchmod
(Lazizbek Ergashev) #65283 - [
a77b1e61df
] - doc: fix SQLite changeset constant descriptions (greenhead) #65265 - [
ab50ae60e4
] - doc: document open pull request limit (Matteo Collina) #65250 - [
e2f4ea03a3
] - doc: document http2 header constants (Harjoth Khara) #64548 - [
5b5509d0d3
] - doc: create ai-guidelines and include to CONTRIBUTING (Rafael Gonzaga) #62105 - [
c63e873073
] - doc: fix broken fs.BigIntStats link in vfs.md (greenhead) #65045 - [
d6059e84c0
] - doc: update synopsis (Augustin Mauroy) #65171 - [
43f1dc03e7
] - doc: document close() error when in a sqlite callback (Trivikram Kamat) #65090 - [
8f5f48ad96
] - doc: fix broken internal links (greenhead) #64901 - [
5b64b37739
] - doc: report proper return type on urlPattern.test (Brian Muenzenmeyer) #64831 - [
9633bb0f29
] - doc: fix permission documentation examples (greenhead) #64897 - [
e52e573fd7
] - doc: document sqlite parameter binding (Guilherme Araújo) #65089 - [
fa52f11d3b
] - doc: finalize statements in sqlite examples (Guilherme Araújo) #65088 - [
0157c45012
] - doc: document quic stopSending() and resetStream() (Issac) #64888 - [
003a913799
] - doc: clarify sqlite bare parameter default (Sumit Kumar Das) #62009 - [
c5588d71ad
] - doc: remove usage ofutil.inherits
(Augustin Mauroy) #60817 - [
673db40fbf
] - doc: fix grammar in worker_threads.md (이혜미) #64913 - [
ee5f72cf16
] - doc: fix broken link (Antoine du Hamel) #65078 - [
0450ab6c6a
] - doc: updatenode.1
to fix linter (Antoine du Hamel) #65053 - [
9a256b0693
] - doc: clarify OpenSSL FIPS configuration (Filip Skokan) #64982 - [
c321752dcb
] - doc: remove--expose-gc
flag from CLI documentation (Dario Piotrowicz) #58909 - [
0cf79931bb
] - doc: document ArrayBuffer support in pbkd2Sync (kyungrae2002) #64976 - [
3b8a0bacaa
] - doc: correct default highWaterMark values (Yilong Li) #64617 - [
be313012e4
] - doc: use ffi.suffix in permission example (agape1225) #64914 - [
4a1c9a7ee0
] - esm: avoid super-linear data URL MIME regex (Sumit Kumar Das) #61951 - [
b1770bc196
] - esm: only register text format when enabled (Efe Karasakal) #64992 - [
f48927fe5b
] - esm: fix wasm import name in error message (이혜미) #64950 - [
8d48adf688
] - events: inline iterationCondition hybrid dispatch closure (Szymon Łągiewka) #64473 - [
b827c0047e
] - events: inline createEvent hybrid dispatch closure (Szymon Łągiewka) #64473 - [
7670c81d99
] - ffi: prefer canonical type names (Trivikram Kamat) #65417 - [
1fe7a1c33d
] - ffi: validate the value passed to the float setters (Soul Lee) #65342 - [
537feecd0b
] - ffi: reject direct SharedArrayBuffer pointers (Trivikram Kamat) #65233 - [
0002f0a718
] - ffi: remove dead null check in callback arguments (Trivikram Kamat) #64998 - [
9024ec27b6
] - ffi: keep FFI functions non-constructible (Trivikram Kamat) #65184 - [
9b4f349b01
] - ffi: refresh cached string buffers on every call (Trivikram Kamat) #65051 - [
eacd65e9c2
] - ffi: reject detached ArrayBufferViews (Trivikram Kamat) #65086 - [
be2ab89730
] - ffi: reject detached ArrayBuffers as pointers (Trivikram Kamat) #65083 - [
6f9e0846ea
] - ffi: validate fast pointer BigInt argument ranges (Trivikram Kamat) #65032 - [
3e6688c5e3
] - ffi: reuse the callable created per symbol (Trivikram Kamat) #64971 - [
8b0bdd931c
] - ffi: shrink trampoline placement probe window (Trivikram Kamat) #64969 - [
9c282c4532
] - ffi: accept pointer BigInts in multi-argument fast calls (Trivikram Kamat) #64964 - [
b98294b57d
] - ffi: support SharedArrayBuffer in getRawPointer (Junsoo Ha) #64864 - [
5cac7c2c55
] - ffi: reuse libffi call plans (Yilong Li) #64958 - [
262f0ec82a
] - fs: stop stat()ing every entry in recursive readdir (Shelley Vohr) #65487 - [
e3ae912e9a
] - fs: use sized reads for large files in readFileUtf8 (Shelley Vohr) #65328 - [
bc1e19b4b7
] - fs: fix realpath of namespaced drive paths (Jason Zhang) #65378 - [
6673ebadf2
] - fs: abort in-flight stat operations (Mert Can Altin) #63143 - [
74dcdbb5f1
] - fs: fix glob early return skipping sibling entries (Srinu desetti) #64895 - [
6305a744df
] - fs: pass symlink type in cp when filter is provided (Jerry Zhao) #62654 - [
c5cb6bc7e2
] - fs: allocate FSReqPromise stat arrays lazily (Samuel Attard) #63886 - [
992af05719
] - fs: fix out-of-bounds write in mkdtemp for long prefixes (Hierax_Umbra) #64770 - [
2de845b2dd
] - fs: treatstd::errc::permission_denied
asEPERM
error (Kirill Saied) #64698 - [
77fedbd350
] - fs: read small files in one thread pool round trip (Shelley Vohr) #65327 - [
810929b6dd
] - Revert "fs: fix close listener leak in FileHandle streams" (Mike McCready) #65387 - [
8873b91fce
] - fs: fix close listener leak in FileHandle streams (Y1D7NG) #64227 - [
656cfaeb2d
] - fs: add windowsHandle option to file streams (Kirill Saied) #63851 - [
c2c31d69fd
] - http: improve performance with known-length calls to end() (Tim Perry) #65466 - [
7e9204f4b3
] - http: use intrusive lists in ConnectionsList (Matteo Collina) #65296 - [
98e6272c70
] - http: cache maxHeaderPairs per header section (GetThatCookie) #64988 - [
6c3516f179
] - http: fix keylog listener setup on existing agent sockets (Shani Singh) #65066 - [
dad9548fbc
] - http: emit drain on socket takeover and avoid stale HWM reuse (Naman Trivedi) #64991 - [
563cab119b
] - http2: avoid uaf while receiving and sending rst_stream (esgor) #64166 - [
099801641b
] - inspector: avoid calling into JS from V8 interrupts (Joyee Cheung) #65028 - [
b71d5de0b8
] - lib: use bracket notation instead of startsWith/endsWith for single char (Taejin Kim) #61500 - [
e8e2abcc8d
] - lib: load fewer builtins when bootstrapping without a snapshot (Shelley Vohr) #65329 - [
3619dc0601
] - lib: fix ERR_INVALID_ARG_TYPE with --enable-source-maps (June) #63215 - [
ad7c67026b
] - lib: harden webidl dictionary member reads (Filip Skokan) #65115 - [
b5182f0a1c
] - lib: use validateArray for array arguments (greenhead) #64959 - [
7f7df06821
] - lib: add and test [EnforceRange] in webcrypto dictionaries (Filip Skokan) #65091 - [
753033c110
] - (SEMVER-MINOR) lib,src: improve histogram implementation (James M Snell) #65024 - [
8d39d0d660
] - meta: add a root-level AGENTS.md (James M Snell) #65493 - [
3770f9baea
] - meta: move targos to emeritus (Michaël Zasso) #65393 - [
a9b31dfe30
] - meta: add unified http api initiative (James M Snell) #65139 - [
6bffc306aa
] - meta: move one or more collaborators to emeritus (Node.js GitHub Bot) #65182 - [
4abd1c8100
] - meta: add support for alpha prerelease tag (Antoine du Hamel) #63135 - [
132c578e97
] - meta: add Aviv Keller to.mailmap
(Aviv Keller) #65048 - [
7aff78d231
] - meta: update sccache to 0.17.0 (René) #64985 - [
97a437e7ea
] - module: add a read-only mode to the compile cache (Shelley Vohr) #65302 - [
5821362819
] - module: do not split a portable compile cache by uid (Shelley Vohr) #65293 - [
eb5d66e856
] - module: report unreadable package.json (Paul Bouchon) #65223 - [
43757d07c1
] - module: cache nearest parent package.json per directory (Shelley Vohr) #65326 - [
d7805e00dc
] - module: fix --check on ambiguous ESM files (Paul Bouchon) #65203 - [
646221a495
] - net: handle undefined parent in _unrefTimer and _destroy (Shivay-98) #64644 - [
3d7d277493
] - (SEMVER-MINOR) net: improve performance of net.BlockList (James M Snell) #64974 - [
9e8e9080fd
] - (SEMVER-MINOR) perf_hooks: add statistical hypothesis testing to histogram (James M Snell) #65416 - [
01a8ae0ce6
] - permission: guard UDP handle adoption (Rafael Gonzaga) #65358 - [
ac3c412aaf
] - permission: enforce addon permission in GetLinkedBinding (Rafael Gonzaga) #65432 - [
8765afd4c2
] - process: validate resource stats array offsets (Archkon) #65098 - [
d0447c93f6
] - quic: changes for nghttp3_conn_close_stream2 (Marten Richter) #64574 - [
91393898b5
] - quic: mark drain promise handled (James M Snell) #65319 - [
5c9576bf50
] - quic: reset rejected HTTP/3 request streams with H3_REQUEST_REJECTED (trivenay) #65442 - [
ec956f2abc
] - quic: write desired size needs update on maxstream (Marten Richter) #64768 - [
41c510803d
] - quic: do not destroy incoming streams that have a consumer (trivenay) #65335 - [
009e376581
] - quic: fix wake up blob (Marten Richter) #64044 - [
4674a10368
] - quic: convert incoming :status header to number (Hallison Pereira Melo) #63589 - [
5953165f53
] - quic: fix infinite loop if STOP_SENDING received on a buffering stream (Tim Perry) #64715 - [
bb499c312e
] - repl: keep entries added while history file is loading (Mhayk Whandson) #64513 - [
825fcfe4d5
] - repl: add benchmarks (Aviv Keller) #64590 - [
c18b0aa54e
] - repl: add basic syntax highlighting (Aviv Keller) #64591 - [
f32a8631ad
] - sea: avoid dangling CLI option pointers (Archkon) #64755 - [
3126ce5779
] - sea: handle NUL bytes in asset keys (Archkon) #64773 - [
64a8843ff2
] - sea: reject trailing content in config JSON (Archkon) #64774 - [
1d9dd252f1
] - sea: reject malformed --node-options values (Archkon) #64803 - [
6ec735c910
] - sqlite: reject reentry while binding parameters (Trevor Burnham) #65294 - [
60cb384c15
] - sqlite: remove unused column name helper (Trivikram Kamat) #65401 - [
fce6754a83
] - sqlite: reject busy statement finalization in authorizer (Trivikram Kamat) #65369 - [
e2f952f2ff
] - sqlite: prevent reentrant session.close() (Trivikram Kamat) #65349 - [
0e8af3378a
] - sqlite: reuse cached column names in statement all() and get() (Edy Silva) #65276 - [
e6bfec91be
] - sqlite: validate StatementSync.run() integers (Trivikram Kamat) #65178 - [
bbb1226dbe
] - sqlite: add diagnostic channel (Guilherme Araújo) #62241 - [
6302168de8
] - sqlite: add stmt persistent flag (Guilherme Araújo) #62757 - [
2989311d81
] - sqlite: reject connection access from authorizer callbacks (Trevor Burnham) #65156 - [
72c37b133e
] - sqlite: expose prepared statement statistics (Edy Silva) #64541 - [
3e50a2f1e9
] - sqlite: manage sqlite3_stmt lifetime with RAII (Guilherme Araújo) #62419 - [
3ab7e72555
] - sqlite: check sqlite3_step() and sqlite3_reset() results (semimikoh) #63319 - [
5e387ce979
] - sqlite: reject statement-less SQL in prepare() (Trevor Burnham) #65157 - [
83169e58f3
] - sqlite: reject statement-less SQL in SQLTagStore (Trevor Burnham) #65157 - [
7f31f6226e
] - sqlite: isolate applyChangeset filter errors (Trivikram Kamat) #64823 - [
c89878c3c8
] - sqlite: reject deserialize() while in a callback (Trivikram Kamat) #64796 - [
5a852b22d4
] - sqlite: check null returns from sqlite value functions (Nora Dossche) #63288 - [
5cb78ed300
] - sqlite: validate maxSize argument in createTagStore() (Anshika Jain) #63792 - [
ca885876f6
] - sqlite: refactor error helpers and user function pointers (Ali Hassan) #62794 - [
06b1758dcd
] - sqlite: reject non-positive backup rates (Trivikram Kamat) #64893 - [
ce0ca47023
] - sqlite: clear SQLTagStore bindings (Matteo Collina) #65041 - [
49fb028714
] - sqlite: bind Boolean (mike-git374) #62001 - [
09d0da99e9
] - sqlite: fix undefined behaviour inSession::Changeset()
(Nora Dossche) #63637 - [
58ea88e1d3
] - (SEMVER-MINOR) sqlite: add StatementSync.prototype.close() (Guilherme Araújo) #64232 - [
7c61b08aed
] - (SEMVER-MINOR) sqlite: add StatementSync.prototype[Symbol.dispose]() (Guilherme Araújo) #64232 - [
9167ebd32b
] - sqlite: bind ArrayBuffer (mike-git374) #62061 - [
5da6eaa8af
] - sqlite: prevent database close during callbacks (Matteo Collina) #64743 - [
29d794bc84
] - src: fix heap value deduplication in embedder graph (Ilyas Shabi) #64801 - [
b405e9b039
] - src: fix out-of-bounds write when transcoding odd-length ucs2 (nashit hayat) #64512 - [
101a215472
] - src: use simdutf for two-byte utf8 conversion (Mert Can Altin) #62248 - [
340b98346f
] - src: run same-priority platform tasks in posting order (Shelley Vohr) #65353 - [
83a7949c18
] - src: define O_SYNC, O_DSYNC and O_DIRECT on Windows (Kirill Saied) #64707 - [
32bb197f2a
] - src: use simdutf for two-byte strings in UTF-8 writes (Shelley Vohr) #65324 - [
613be79cf4
] - src: add v8::Local specialization for MaybeStackBuffer (James M Snell) #65159 - [
922d47cbd7
] - src: escape Windows environment variables in task runner (Antoine du Hamel) #65217 - [
3a47f1f282
] - src: apply minor namespace format tweak in permissions (James M Snell) #65158 - [
981cfa537d
] - src: simplify permissions with BooleanPermissions (James M Snell) #65158 - [
5954b13f88
] - src: simplify includes in permissions (James M Snell) #65158 - [
d4ced88c09
] - src: apply a modest performance perf to permissions (James M Snell) #65158 - [
efb649ec26
] - src: make permission storage a bit more efficient (James M Snell) #65158 - [
521aaf10fc
] - src: apply multiple general cleanups to permissions (James M Snell) #65158 - [
ac920e0d2b
] - src: simplify c++ diagnostics channel API (James M Snell) #65158 - [
ec8fe275a1
] - src: make minor cleanup to permission checks (James M Snell) #65158 - [
968bdd0135
] - src: use DictionaryTemplate for permission diag channel message (James M Snell) #65158 - [
f77aa2f703
] - src: cache permission strings (James M Snell) #65158 - [
4018f3a776
] - src: shave about 20 bytes off each TLSWrap instance (James M Snell) #65144 - [
b7a23426d9
] - src: add SetAbortHandler (Max H Fisher) #64684 - [
3cfe19489c
] - src: use concepts where appropriate (James M Snell) #65148 - [
d8a0f288ab
] - src: match cmd.exe case-insensitively in task runner (Archkon) #64907 - [
262d88e6c2
] - src: reuse cached env strings in remaining files (Seongeun Lee) #65039 - [
ad35fe97f0
] - src: expose Windows-only fs open flags (Kirill Saied) #64775 - [
8c4531bbc9
] - src: report why --enable-fips failed (Filip Skokan) #64979 - [
a293dbf0e1
] - src: update repeated use strings to env (James M Snell) #64760 - [
044402cf0e
] - src: use UTF-8 for task runner filesystem paths (Archkon) #64868 - [
5b7d02e401
] - stream: normalize fused stateless transform results (Trivikram Kamat) #65367 - [
1d6ec2ddc5
] - stream: encode whole chunks in TextEncoderStream (Matteo Collina) #65414 - [
0afda47ca4
] - stream: prevent share from eagerly draining source (Trivikram Kamat) #65338 - [
dc51c7926e
] - stream: drain pending writes before broadcast end (Trivikram Kamat) #65334 - [
a77f9f7a32
] - stream: reuse unexposed managed read buffers (GetThatCookie) #64990 - [
c42fbcc0d1
] - stream: avoid duplicated endReadableNT scheduling (Matteo Collina) #65310 - [
9ec9383d1d
] - stream: decouple transform backpressure changes (Matteo Collina) #65143 - [
a9dc50d275
] - stream: reject pull on signal abort during flush (Trivikram Kamat) #65346 - [
815424db74
] - stream: avoid leaking consumers on signal failure (Trivikram Kamat) #65299 - [
6a2e0561e8
] - stream: use validateObject for zlib/iter params (greenhead) #65015 - [
4f6f2cfffa
] - stream: use validateNumber for BYOB reader options.min (greenhead) #65014 - [
4d297428e6
] - stream: consolidate non-op algorithm callbacks (Matteo Collina) #65138 - [
f7e0c81be4
] - stream: cut promise churn in webstreams hot paths (Matteo Collina) #65138 - [
5edffb544f
] - stream: speed up async iteration of Readable (Matteo Collina) #64447 - [
0876a29bb6
] - stream: preserve falsy cancellation reasons (Trivikram Kamat) #64705 - [
374f7e214d
] - stream: use validateBuffer for BYOB reader view (greenhead) #65046 - [
6bd15b2ac9
] - stream: fix recursive WritableStream abort (Jeong SeokChan) #64825 - [
f33dba704d
] - string_decoder: decode UTF-8 via StringBytes::Encode (Shelley Vohr) #65324 - [
6409983a6c
] - test: update WPT for WebCryptoAPI to e235e089b4 (Node.js GitHub Bot) #65478 - [
01cb4f99a0
] - test: convert forEach to for of test-messageevent-brandcheck file (Nachiketa Pathak) #65279 - [
359369e24e
] - test: use spawnSyncAndAssert in windowsHide test (Junsoo Ha) #65351 - [
9304dee833
] - test: remove test-debugger-run-after-quit-restart as flaky on macOS (Yuya Inoue) #65424 - [
30f1a19eec
] - test: simplify test-timers-interval-promisified.js (Donghoon Kang) #65322 - [
acaf986ad5
] - test: add Headers coverage and benchmark (Yagiz Nizipli) #65365 - [
b6852e2b96
] - test: deflake test-net-listen-ipv6only (sangwook) #64173 - [
235a0baf8b
] - test: use common/child_process spawnSync helpers (Junsoo Ha) #65377 - [
29f010fbb0
] - test: fix Linux debug skip in SEA test guard (구현우) #63751 - [
33d7b4c6b3
] - test: add closed-library assertions for getFunctions and getSymbols (Anshika Jain) #63769 - [
24a76e18ec
] - test: avoid timer race in event loop delay test (Trivikram Kamat) #64728 - [
fdc1e78595
] - test: enforce exit code intest-http-server-stale-close
(Antoine du Hamel) #65198 - [
c644f2e07c
] - test: convert test-async-local-storage-bind to async loop (freida-code) #65270 - [
1d5e5e8f43
] - test: replaceforEach()
withfor...of
in parallel tests (Phillip Markert) #65272 - [
9346570fed
] - test: convert forEach to for in test-constant.js file (NIxxy25) #65271 - [
7af0a96090
] - test: use for-of instead of forEach (Felix P.) #65268 - [
63e6f2edc3
] - test: wait for FFI background optimization (Trivikram Kamat) #65300 - [
bca3367583
] - test: add a simple test forimport defer
of a CJS module (Maya Lekova) #64694 - [
00b687bc4a
] - test: cover ZIP fd lifecycle and add rollback (Philipp Dunkel) #65016 - [
31742f2f42
] - test: cover ZIP header-confusion and DoS guards (Philipp Dunkel) #65016 - [
87ee7bff38
] - test: coverrealpathSync
resolving symlinks after a FIFO stat (Hendrik Liebau) #65113 - [
fd7e904433
] - test: update tests to run with OpenSSL >= 3.0 FIPS mode (Filip Skokan) #64960 - [
219495fe2c
] - test: account for [EnforceRange] in test-webcrypto-prototype-pollution (Filip Skokan) #65173 - [
bf86fab458
] - test: add permission fast api test (James M Snell) #65158 - [
cc19107e5d
] - test: update WPT for WebCryptoAPI to 4c2fd05ed5 (Node.js GitHub Bot) #65150 - [
69e4fabb29
] - test: update WPT for urlpattern to 4832db4761 (Node.js GitHub Bot) #65151 - [
b1aa78a57e
] - test: fix hidden error in test-http-server-stale-close.js (Meghan Denny) #59357 - [
59d7e22a12
] - test: avoid deadlock issue in pipeline http2 tests to fix flakiness (Tim Perry) #65079 - [
7074ae30fa
] - test: allow half-open CONNECT tunnel sockets (Trivikram Kamat) #64973 - [
82b2d9c08d
] - test: update passphrases to comply with the next OpenSSL FIPS mode (Filip Skokan) #65077 - [
7f3a42035c
] - test: use libuv clock for immediate queue test (Trivikram Kamat) #64889 - [
7ddd853d8c
] - test: increase timeout in probe-failure-hang-during-evaluate (Joyee Cheung) #64719 - [
28cad47cef
] - test: update WPT for WebCryptoAPI to 82c3d9069c (Node.js GitHub Bot) #64977 - [
74a3e91bb7
] - test: prefer in-memory databases in sqlite tests (Paul Bouchon) #64701 - [
7fc8a3ad8c
] - test,doc: cover and document multi-byte offset/size in randomFill (kyungrae2002) #64834 - [
4de7e63883
] - test_runner: match dotfiles in default coverage exclude (semimikoh) #63401 - [
79c39c217d
] - test_runner: print coverage and diagnostic info with dot reporter (mag123c) #61423 - [
cce803b174
] - test_runner: use run options with isolation="none" (Sylvester Keil) #62269 - [
797ef40d23
] - test_runner: mock dual-package with conditional exports (Maruthan G) #62943 - [
1ad7ca310a
] - test_runner: restore directory search for --test (Paul Bouchon) #64637 - [
400d598b3c
] - test_runner: add classname hierarchy for JUnit reporter (mag123c) #60220 - [
9572a0b15f
] - test_runner: fix junit report on empty diagnostic (Lazizbek Ergashev) #65357 - [
e3fda695fe
] - test_runner: extend tag filter with boolean expression DSL (Chemi Atlow) #63054 - [
4e06739c7b
] - test_runner: do not tag-filter test file wrappers (Chemi Atlow) #65170 - [
e73f74738d
] - test_runner: fix env option validation (Jihwan) #64865 - [
2a0b1ec4cc
] - tls: throw on invalid ALPNProtocols instead of aborting (Sankalp Thakur) #65076 - [
15da4a190b
] - tls: fix authorized state on no-cert TLS1.3 client cert resumption (Tim Perry) #64677 - [
1864175435
] - tls: don't trigger SNICallback or OCSPRequest from the TLS lib stack (Tim Perry) #64827 - [
8f4ee7eda5
] - tls: drop hand-rolled TLS client hello parser (Tim Perry) #64827 - [
a457631496
] - tools: improve commit queue failure comment (Filip Skokan) #65433 - [
78175c68f8
] - tools: improve nix-changes coverage (Antoine du Hamel) #65403 - [
6f0c08bf80
] - tools: refactorshell.nix
pkcs11 integration to its own section (Antoine du Hamel) #65404 - [
35b18b4455
] - tools: fix max body length handler increate-release-proposal.sh
(Antoine du Hamel) #65455 - [
88d5f644a2
] - tools: bump brace-expansion in/tools/clang-format
(dependabot[bot]) #64984 - [
41edd2f214
] - tools: make env variables consistent in cron jobs (Antoine du Hamel) #65168 - [
7c09bd5ece
] - tools: fix man-page generation on Windows (James Ross) #64886 - [
1a20d27118
] - tools: bump undici from 6.27.0 to 6.28.0 in /tools/doc (dependabot[bot]) #65011 - [
ebbe4af869
] - tools: fix linter whenpermittedInsecurePackages
is empty (Antoine du Hamel) #65226 - [
17d2b067bf
] - tools: update BoringSSL pin on v26.x (Filip Skokan) #65483 - [
be4e7de04c
] - tools: only include fast-tracked and old enough PRs in CQ (Antoine du Hamel) #65197 - [
53d52731c9
] - tools: fix quote escaping inupdate-nixpkgs-pin.sh
(Antoine du Hamel) #65166 - [
40b1b18839
] - tools: remove skip logic incommit-queue.sh
(Antoine du Hamel) #65162 - [
5506f77924
] - tools: bump js-yaml from 4.2.0 to 4.3.1 in /tools/lint-md (dependabot[bot]) #65129 - [
fc038a0ef5
] - tools: bump js-yaml from 4.2.0 to 4.3.1 in /tools/eslint (dependabot[bot]) #65130 - [
10b2c8a873
] - tools: fix GITHUB_TOKEN permissions for CQ workflow (Antoine du Hamel) #65192 - [
73de450845
] - tools: use the read-only token when filtering PRs in CQ (Antoine du Hamel) #65169 - [
31c1bcb627
] - tools: delay removal ofcommit-queue
label (Antoine du Hamel) #65101 - [
89d3905595
] - tools: move ncu config to global for commit queue (Filip Skokan) #65132 - [
aa3b598e2e
] - tools: prefilter commit queue metadata (Filip Skokan) #64343 - [
4f2c634258
] - tools: lazy-abort failed PR merges in CQ (Antoine du Hamel) #65004 - [
8657497521
] - tools: fixpkcs11-store-test
check (Antoine du Hamel) #65023 - [
0e1a99ac24
] - tools: add an OpenSSL FIPS build to test-shared.yml (Filip Skokan) #64960 - [
b6fa9c1819
] - tools: sync mk-ca-bundle.pl with curl (Archkon) #64753 - [
f0140d7ebd
] - tools: store "default" OpenSSL version inopenssl-matrix.nix
(Antoine du Hamel) #64962 - [
4c8d8afa99
] - tools: removetrue
from branch name for auto-update automation (Antoine du Hamel) #64961 - [
2dd7d4c56f
] - tools: add ./tools/nix/pkcs11.nix to nix-changes.yml (Filip Skokan) #64967 - [
cf395004ed
] - tty: add raw-vt and io raw modes (Samuel Williams) #64140 - [
a5e5c7f756
] - typings: add signal_wrap internal binding types (Seongeun Lee) #65229 - [
5219e53dd6
] - typings: add diagnostics_channel typings (Seongeun Lee) #65227 - [
215223dff1
] - typings: add watchdog internal binding types (Seongeun Lee) #65228 - [
eb095a94bd
] - typings: add internal_only_v8 binding typeis (Donghoon Kang) #65071 - [
9fc811a0f2
] - typings: add credentials internal binding types (Donghoon Kang) #65036 - [
f032c22430
] - url: skip unused href reuse comparison (Yagiz Nizipli) #65361 - [
2a64032141
] - url: speed up WHATWG URL parsing (Yagiz Nizipli) #65361 - [
c4dbe14ec6
] - url: speed up URLSearchParams (Yagiz Nizipli) #65363 - [
001c37c0a2
] - url: bounds-check short Windows file URL paths (Archkon) #64788 - [
1a63416b1a
] - url: handle unparsable serialized URLs in setters (Matteo Collina) #64651 - [
cb4b89c018
] - util: allow single-line format when break length is infinite (Hamid Reza Ghavami) #64238 - [
f644853680
] - util: fix OSC 8 hyperlink stripping in stripVTControlCharacters (Dushyant Singh Hada) #64319 - [
eb1ebbb39d
] - util: fix formatting of functions returned from getters (Richard Gibson) #64839 - [
f373dab724
] - util: use more primordials incomparisons.js
(Ayoub Mabrouk) #61198 - [
6ca9c1e078
] - util: preserve function names without source map names (Hiroki Osame) #65108 - [
4299cd5897
] - (SEMVER-MINOR) util: add non-throwing MIMEType.parse (James M Snell) #64965 - [
1aafd19813
] - zlib: roll back a failed add() directory rewrite (Philipp Dunkel) #65016 - [
d29cc0926a
] - zlib: let a ZipFile read finish before close() (Philipp Dunkel) #65016 - [
2bda6db916
] - zlib: do not hang archiving a FIFO or device (Philipp Dunkel) #65016 - [
55b04957c9
] - zlib: reject local/central ZIP header mismatch (Philipp Dunkel) #65016 - [
575260d3b4
] - zlib: validate central directory record count (Matteo Collina) #65002 - [
8e848d9be3
] - zlib: reject ambiguous ZIP archive ends (Matteo Collina) #65007 - [
df48191061
] - (SEMVER-MINOR) zlib: add ZipEntry, ZipFile, and ZipBuffer (Philipp Dunkel) #64339 - [
ee7bf09090
] - zlib: validate pledgedSrcSize for sync zstd (Archkon) #64601
Windows 64-bit Installer: https://nodejs.org/dist/v26.8.0/node-v26.8.0-x64.msi
Windows ARM 64-bit Installer: https://nodejs.org/dist/v26.8.0/node-v26.8.0-arm64.msi
Windows 64-bit Binary: https://nodejs.org/dist/v26.8.0/win-x64/node.exe
Windows ARM 64-bit Binary: https://nodejs.org/dist/v26.8.0/win-arm64/node.exe
macOS 64-bit Installer: https://nodejs.org/dist/v26.8.0/node-v26.8.0.pkg
macOS Apple Silicon 64-bit Binary: https://nodejs.org/dist/v26.8.0/node-v26.8.0-darwin-arm64.tar.gz
macOS Intel 64-bit Binary: https://nodejs.org/dist/v26.8.0/node-v26.8.0-darwin-x64.tar.gz
Linux 64-bit Binary: https://nodejs.org/dist/v26.8.0/node-v26.8.0-linux-x64.tar.xz
Linux PPC LE 64-bit Binary: https://nodejs.org/dist/v26.8.0/node-v26.8.0-linux-ppc64le.tar.xz
Linux s390x 64-bit Binary: https://nodejs.org/dist/v26.8.0/node-v26.8.0-linux-s390x.tar.xz
AIX 64-bit Binary: https://nodejs.org/dist/v26.8.0/node-v26.8.0-aix-ppc64.tar.gz
ARMv8 64-bit Binary: https://nodejs.org/dist/v26.8.0/node-v26.8.0-linux-arm64.tar.xz
Source Code: https://nodejs.org/dist/v26.8.0/node-v26.8.0.tar.gz
Other release files: https://nodejs.org/dist/v26.8.0/
Documentation: https://nodejs.org/docs/v26.8.0/api/
SHASUMS
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
37703c35d7acbe0a9a15e99fbc2beed2f46b7bb9bcaa3521ba9965abd5027055 node-v26.8.0-aix-ppc64.tar.gz
ddede7d279871c9ce0fb787c665ee80ddddd57c35e22849a4b19c2003df07529 node-v26.8.0-arm64.msi
d6516f067a433cd979b27dfdb0bad88ce97f47be33b713d04c8361b1502f19c6 node-v26.8.0-darwin-arm64.tar.gz
be8d1c71b3d42ce8e976b2f0165c099f638351024be2da0ed7f816439c8326e9 node-v26.8.0-darwin-arm64.tar.xz
58e0866e3b4355c1e3140fdc0c1b1b2a55616f4e5a37fda12123e98114a05138 node-v26.8.0-darwin-x64.tar.gz
0737d450ea5a150e8a73c385a76aa0590ce38bca6b494b82e3077e0b402de6a8 node-v26.8.0-darwin-x64.tar.xz
1e59dbae77777821009407c1220a3f301110e80141ef18f0ddea22eff2c5c62b node-v26.8.0-headers.tar.gz
921bff506d5bd4624efe57348c49fa6684c79eb3732c5114640ddac002b27eab node-v26.8.0-headers.tar.xz
c358e4c9bd4cd1a4521fa2ae140c88637a3679fc3e99cd1aa6bca1ec5131f13f node-v26.8.0-linux-arm64.tar.gz
7810e03acad8a592bb565e7875ccdb8b426d159888d462666a3130df64bde3e8 node-v26.8.0-linux-arm64.tar.xz
e010d9f62562c43029fc799411a3a21e49c88cb2c54f4fd356c94b2f94163a91 node-v26.8.0-linux-ppc64le.tar.gz
02f7ea289ae8a4dfa9175617daca3cc73fa0150ec67d6f8b0805d800cff81503 node-v26.8.0-linux-ppc64le.tar.xz
007ef06058ad602417aa6882fcbd30d3eace0f6ffabba3d8f8d7e08b9b6dc74b node-v26.8.0-linux-s390x.tar.gz
d9c267885210657e01f4a820998e18647c262f24156fe30c86819e6cb8376b06 node-v26.8.0-linux-s390x.tar.xz
10ed0603552383320e19de301c8dec54742e2c84f5ba798b524a40d494850b9b node-v26.8.0-linux-x64-musl.tar.gz
8f0e3873f3e3ccbac9acf3e6a18fc24d85310ec858d56a8b7d4b911ce86c3aa6 node-v26.8.0-linux-x64-musl.tar.xz
32fcdc8e2e2cc54fbcd6c8cc96ca5bd2e70019ac23000cbd6ccc5663de111b33 node-v26.8.0-linux-x64.tar.gz
47864ed43f4cf938cbd41cf88a49587484888295689a4b75977a0a2717702ed9 node-v26.8.0-linux-x64.tar.xz
1820b90d2709397d970a61a2ae87b59c6ce25097f78bb72eec11be2b10af62b8 node-v26.8.0-win-arm64.7z
3102215be975826e3a6095e955f077650b186162455b4f59ede1cf8a351c2bf2 node-v26.8.0-win-arm64.zip
78a337cdba4273925d70b1025827800f4dd997fff3f84d434d839f73b270f476 node-v26.8.0-win-x64.7z
a27c620080cd4da2bd0458fd7dbe1c40baef67cc28c0f0bf21a229d867af7c00 node-v26.8.0-win-x64.zip
da4a5d38b488b60743cb1abbf72a5fe4d9726af4e73b6cba27299084ce5515cf node-v26.8.0-x64.msi
55533648961f422be861f656e091b08c1ff41f58c972da445221cebf2fb737a9 node-v26.8.0.pkg
eee6bf1301f4e779998987a2ef4727d7043ec20e14594d0f495bd1caa41816b7 node-v26.8.0.tar.gz
2287613caa71f9ab8dff4cbec7da32f0fae3e8807a6876a77764acc16d4cca4c node-v26.8.0.tar.xz
72182492e063347b527b515e9d2abe33b4dec63e61c15a6347ed629ec47c5a12 win-arm64/node.exe
f8ff31e0a817991e31c7fcc1cc6123a28eca06e3dbf0a47afe633dfef056a39d win-arm64/node.lib
a541cb41e42cb9b7555125e705eded2750b078bc5fef4bc1d690bf0e624cc021 win-arm64/node_pdb.7z
08e8969224c65b701dd8dfbc55309202ea00ebe474fe28781988aa977c19cb21 win-arm64/node_pdb.zip
f75c008f6231c8d77c0bc5277e495e88447b65015fdb63ac966f11cf0e1106e5 win-x64/node.exe
5432dceeac196ef89ec001939cc3801cfa131036a05f5fabf5e07b6c5a0895a4 win-x64/node.lib
c20361ac528d8f5199a7de9048c5285a6aa8e4529d4a1a8dd58aaecc5ec2f3aa win-x64/node_pdb.7z
41310e0aacec64c73a68de2075f60389192f719fa73cdb964c9ace58f9283277 win-x64/node_pdb.zip
-----BEGIN PGP SIGNATURE-----
iHUEARYIAB0WIQRb6KP2yKXAHRBsCtggsaOQsWjTVgUCao738gAKCRAgsaOQsWjT
VmczAQD8GE84hP6s9dMIBvOVUFprgf5nLwi2dvk7b00OwSbZ2QEAx2myTLtGnrCF
ck8GKPUTpWWQ2FkUX8id6KaJE4T0SAM=
=C8Dy
-----END PGP SIGNATURE-----
Facts Only
* Node.js version is 26.8.0 (Current).
* Crypto APIs enabled SIV and GCM-SIV modes in Cipher/Decipher APIs.
* Root certificates were updated to NSS 3.126.
* Histogram implementation was improved in `lib`, `perfhooks`, and other modules.
* Performance of `net.BlockList` was improved.
* New features added include ZipEntry, ZipFile, and ZipBuffer in `zlib`.
* SQLite introduced `StatementSync.prototype.close()` and `StatementSync.prototype[Symbol.dispose]()`.
* `fs` module fixes address buffer write overflows and optimization for reading small files.
* Several dependency updates were made, including `zlib`, `simdjson`, and `googletest`.
* Changes were implemented in FFI bindings to handle ArrayBuffers and improve pointer handling.
Executive Summary
Full Take
Sentinel — Human
This text appears to be a raw, highly detailed log of version updates and commits for Node.js 26.8.0, strongly indicating it originated from official source material or direct documentation extraction rather than human narrative writing.
