24.22.0
2026-10-14, Version 24.22.0 'Krypton' (LTS), @richardlau prepared by @aduh95
Notable Changes
- [
ddbf974b47] - (SEMVER-MINOR) crypto: addcrypto.parsePKCS12()(Brian Muenzenmeyer) #65627 - [
c162c68ff0] - (SEMVER-MINOR) crypto: add a generic MAC API (Filip Skokan) #65553 - [
a4ab3d84d7] - (SEMVER-MINOR) crypto: discover ciphers from OpenSSL providers (Filip Skokan) #65484 - [
c2f1e829ea] - (SEMVER-MINOR) crypto: discover hashes from OpenSSL providers (Filip Skokan) #65484 - [
51aad5a80d] - (SEMVER-MINOR) crypto: enable SIV and GCM-SIV modes in Cipher/Decipher APIs (Filip Skokan) #63411 - [
d11c65d2f2] - doc: add araujogui to collaborators (Guilherme Araújo) #66090 - [
acc1578179] - doc: deprecateServer.prototype._listen2innode:net(Antoine du Hamel) #65593 - [
a7f8de6362] - (SEMVER-MINOR) net: support sendingnet.BoundSocketto threads and child processes (Guy Bedford) #64725 - [
60c3eb61bd] - (SEMVER-MINOR) perf_hooks: implementSlidingWindowHistogram(James M Snell) #65825 - [
6b3e6f9d5c] - (SEMVER-MINOR) perf_hooks: implement qrde analysis support in Histogram (James M Snell) #65806 - [
75456a3512] - (SEMVER-MINOR) perf_hooks: implement HistogrammeanCIAPI (James M Snell) #65606 - [
72d1b40c56] - (SEMVER-MINOR) perf_hooks: add CBOR export/import for histogram exchange (James M Snell) #65434 - [
41161dda87] - (SEMVER-MINOR) sqlite: addStatementSync.prototype.close()(Guilherme Araújo) #64232 - [
adbc757d70] - (SEMVER-MINOR) sqlite: addStatementSync.prototype[Symbol.dispose]()(Guilherme Araújo) #64232 - [
241339f072] - (SEMVER-MINOR) src,lib: addutil.markPromiseAsHandled(James M Snell) #65805 - [
63b0974d9e] - (SEMVER-MINOR) util: implementutil.throttle(James M Snell) #65899 - [
a3bbb5a26f] - (SEMVER-MINOR) util: implementdebounce(James M Snell) #65899
Commits
- [
e6832b2cb1] - assert: fix TypeError on deepStrictEqual with null Map key or Set member (Sergey Sannikov) #64449 - [
a079177d9f] - benchmark: add --csv option to compare.js with --analyze (James M Snell) #65922 - [
10b1a0f70f] - benchmark: fix max-regressions detection in compare.js (James M Snell) #65587 - [
e0c7ba8ad5] - benchmark: add --analyze option to benchmark/scatter.js (James M Snell) #65594 - [
21fed10bb0] - benchmark: add crypto class benchmarks (Filip Skokan) #65518 - [
fa912242b7] - buffer: fix unaligned UTF-16LE decoding (Matteo Collina) #65905 - [
a6bd0c1413] - build: suppress OpenSSL asm warnings with clang (Richard Lau) #66023 - [
94e12139ee] - build: derive V8_LOGGING_LEVEL from dcheck_always_on (Joyee Cheung) #65744 - [
7a2f322943] - build: fix quiet default for make builds (Shelley Vohr) #65826 - [
c280d650b0] - build: allow linking shared dependencies in the GN build (Shelley Vohr) #65797 - [
4b23a4472c] - build: enable the V8 sandbox in shared-cage builds (Shelley Vohr) #62237 - [
676e15c003] - build: define V8_CONTIGUOUS_COMPRESSED_RO_SPACE for shared cage (Shelley Vohr) #65464 - [
f784058482] - build: remove obsolete configure flags (Chengzhong Wu) #65456 - [
f63f37d243] - build: activate correct default flags for riscv64 (Stewart X Addison) #65708 - [
da46ac075d] - build: derive NODE_ARCH from target_cpu in the GN build (Shelley Vohr) #65491 - [
249e9a16dd] - build,src: gate jspi flag on V8_ENABLE_WEBASSEMBLY (Piotr Kubaj) #66082 - [
146f00f64b] - child_process: clear timeout timer on spawn-time error too (kishore280) #65506 - [
13987f4418] - crypto: remove redundentstd::movecall (Antoine du Hamel) #66111 - [
ef957ac85f] - crypto: skip private RSA parameters in key details (Filip Skokan) #66108 - [
8feccc5e22] - crypto: use provider EC group names (Filip Skokan) #66108 - [
764e0d1120] - crypto: fetch ciphers for private-key encoding (Filip Skokan) #66108 - [
50ffed1979] - crypto: decode PKCS#1 keys through providers (Filip Skokan) #66108 - [
56c16b2fd6] - crypto: derive keys through EVP_KDF (Filip Skokan) #66108 - [
a4effe6809] - crypto: use names for asymmetric key algorithms (Filip Skokan) #65966 - [
ddbf974b47] - (SEMVER-MINOR) crypto: add crypto.parsePKCS12() (Brian Muenzenmeyer) #65627 - [
8e631aa48f] - crypto: add Hybrid KEMs to Web Cryptography (Filip Skokan) #65759 - [
5c51129e16] - crypto: optimize private EC JWK import (Filip Skokan) #65908 - [
c2ec40c2d7] - crypto: disable non-FIPS WebCrypto paths in FIPS mode (Filip Skokan) #65172 - [
e198aa0f79] - crypto: read RSA-PSS restrictions from provider (Filip Skokan) #66108 - [
253784f0e9] - crypto: optimize and benchmark key preparation (Filip Skokan) #65892 - [
80a6ad509b] - crypto: avoid EC reconstruction for signature sizing (Filip Skokan) #65908 - [
5b592b772c] - crypto: avoid EC raw export reconstruction (Filip Skokan) #65908 - [
ee956ae3bf] - crypto: export EC JWK coordinates directly (Filip Skokan) #65908 - [
684008be58] - crypto: read EC curve metadata directly (Filip Skokan) #65908 - [
f4665f1c41] - crypto: validate the limit of PBKDF2 iterations (Filip Skokan) #65704 - [
624abbecd7] - crypto: use primordials in HKDF info validation (Filip Skokan) #65704 - [
e4d916f175] - crypto: add mgf1Hash for RSA-OAEP (Adam Mcgrath) #65073 - [
db8a9162a8] - crypto: fix multi-prime RSA JWKs (Filip Skokan) #65649 - [
022ac83504] - crypto: cache valid ECDH key pairs (Filip Skokan) #65615 - [
c61953ebcc] - crypto: add strict mode to --force-fips (Filip Skokan) #65645 - [
db6ea132a5] - crypto: add FIPS indicator diagnostics channel (Filip Skokan) #65645 - [
c162c68ff0] - (SEMVER-MINOR) crypto: add a generic MAC API (Filip Skokan) #65553 - [
2b62aafd20] - crypto: validate JWK usages before key_ops (Filip Skokan) #65550 - [
ec7819db69] - crypto: fix RSA-PSS oversized salt handling (Filip Skokan) #65550 - [
a4ab3d84d7] - (SEMVER-MINOR) crypto: discover ciphers from OpenSSL providers (Filip Skokan) #65484 - [
c2f1e829ea] - (SEMVER-MINOR) crypto: discover hashes from OpenSSL providers (Filip Skokan) #65484 - [
51aad5a80d] - (SEMVER-MINOR) crypto: enable SIV and GCM-SIV modes in Cipher/Decipher APIs (Filip Skokan) #63411 - [
5a46a9acbb] - crypto: improve SubtleCrypto.supports() accuracy (Filip Skokan) #65222 - [
191ebfb26c] - crypto: fix public PKCS8 export error (한국) #65609 - [
b6d7ed372b] - crypto: fix private SPKI export error (Filip Skokan) #65550 - [
79509c25a4] - crypto: correct CCM decryption FIPS error message (kyungrae) #65450 - [
9adc87bc16] - crypto: harden X509Certificate state (Filip Skokan) #65518 - [
c63aa331b4] - crypto: optimize key slot caching (Filip Skokan) #65518 - [
87daea43a7] - crypto: add null checks for OPENSSL_INIT_new() (Nora Dossche) #63457 - [
98ca5e9358] - crypto: prevent Hmac.digest() from returning uninitialized memory (Matteo Collina) #65112 - [
0c090a28cd] - crypto: avoid throwing CryptoKey brand checks (Filip Skokan) #65503 - [
a13cc3f723] - crypto: avoid throwing KeyObject brand checks (Filip Skokan) #65503 - [
b8db0045ef] - deps: V8: cherry-pick ea9c016f26ad (Gundepalli Sravani) #66570 - [
ba09b53487] - deps: V8: backport c3553509f460 (Jakob Linke) #66089 - [
9ce8ef405b] - deps: V8: backport 8901c793e439 (Toon Verwaest) #66089 - [
fb0d0ca289] - deps: V8: backport 0b94a9fd23ba (Ruan Gustavo) #65753 - [
2faca508c0] - deps: update googletest to 8eff9e336692fc95961e096564f1044c600b881d (Node.js GitHub Bot) #66009 - [
4396c9bffe] - deps: update googletest to 283c17563fe7a1111cd7f581aa5d541e8baeff2f (Node.js GitHub Bot) #65833 - [
8a5b12570c] - deps: update simdjson to 4.6.11 (Node.js GitHub Bot) #65834 - [
c47feb09e8] - deps: update zlib to 1.3.2.1-motley-285e94b (Node.js GitHub Bot) #65835 - [
9f0d905286] - deps: upgrade npm to 11.19.1 (npm team) #65573 - [
373cd332d8] - deps: update googletest to 36ba75f0ad5383a9759f17f3f72fd4661c72cb6d (Node.js GitHub Bot) #65654 - [
aeed6132a7] - deps: update simdjson to 4.6.9 (Node.js GitHub Bot) #65655 - [
2583571342] - deps: update zlib to 1.3.2.1-motley-5eb4d7e (Node.js GitHub Bot) #65494 - [
d11c65d2f2] - doc: add araujogui to collaborators (Guilherme Araújo) #66090 - [
0a4a8d602a] - doc: fix duplicate 'the' typo innode_platform.cc(Muhammad Al-Muzahid) #66058 - [
b6538138ef] - doc: clarify sub-1000ms behavior in socket.setKeepAlive (Haram Jeong) #65869 - [
d319fa7de4] - doc: remove obsolete mentioning of cl.exe on windows (Chengzhong Wu) #66038 - [
67cb305b59] - doc: note that default signal handling resets the signal mask (Shelley Vohr) #65877 - [
160d44e025] - doc: clarify QUIC async write backpressure (John Finnerty) #65947 - [
ffd47a7ee5] - doc: clarify permission model scope for output paths (Rafael Gonzaga) #66004 - [
2e1772a8ab] - doc: fill in missing zstd docs (James M Snell) #65867 - [
9f88c6f8dc] - doc: add inoway46 as triager (Yuya Inoue) #65565 - [
c2620d01f3] - doc: document windowsHide for child_process.fork (Christopher Buss) #65887 - [
6076111e1a] - doc: qualify directory read ordering for native fs (Trivikram Kamat) #65868 - [
7bf048a336] - doc: add DOMException section to errors API reference (Avocado) #65206 - [
414b6bfa62] - doc: expand revert commit collaborator instructions (Mike McCready) #65848 - [
c8ac91692c] - doc: note that FreeEnvironment() runs a shared event loop (Shelley Vohr) #65691 - [
cc47cc0983] - doc: clarify security triage dispositions and permission boundaries (Rafael Gonzaga) #65436 - [
8b79a71e78] - doc: fix default limit of maxHeadersCount (Aryn H) #65472 - [
56b1252a54] - doc: fix return types for sync methods (Chiang Fong Lee) #58575 - [
da0d32a333] - doc: document REPL DEP0185 throws and uncaught-exception behavior (Adrián Estrada) #64993 - [
f8ab3619b6] - doc: document close() error when in a sqlite callback (Trivikram Kamat) #65090 - [
131f1db302] - doc: clarify return type offs.mkdtemp*(Antoine du Hamel) #65743 - [
7755e98183] - doc: updatechangelog-makerinstructions for releasing (Juan José) #65707 - [
f982a53433] - doc: add stability status tocrypto.setEngine(Antoine du Hamel) #65746 - [
17be003f7c] - doc: remove outdated TLS authorized warning (Tim Perry) #65597 - [
424002232d] - doc: fix stale TOC in maintaining-dependencies (greenhead) #65523 - [
dddb9b57a5] - doc: refactor the AI guidelines (Joyee Cheung) #65269 - [
397b58e113] - doc: fix triggerAsyncId() comment in async_hooks example (soreavis) #64583 - [
338ec94d83] - doc: fix fsPromises.watch overflow value (Matt Radbourne) #64605 - [
f18be21b14] - doc: clarify stream direction in options.stdio note (Avocado) #65236 - [
f07c6acd8b] - doc: clarify signal listener behavior (Som Samantray) #65243 - [
8bc17b0c7a] - doc: add test reporter event lifecycle diagram (sangwook) #63780 - [
452e7477d4] - doc: discourage AbortSignal cleanup for long-lived resources (Efe Karasakal) #64342 - [
acc1578179] - doc: deprecateServer.prototype._listen2innode:net(Antoine du Hamel) #65593 - [
e7ed4361d6] - doc,test: account for OpenSSL 4.1 behaviours (Filip Skokan) #65956 - [
c65fafeab4] - errors: validate constructor name (Christian Aurich) #65607 - [
f6b47938b7] - events: fix weak listener retention overwrite (Aryan) #64024 - [
a27db42c3e] - fs: coerce FileHandle.read length like fs.read (Xia Chao) #65521 - [
f3019b522a] - fs: throw on existing dir in cpSync with errorOnExist (Daijiro Wachi) #64124 - [
cd1011458f] - fs: support removing read-only files in rmSync on Windows (Sparsh :)) #64453 - [
d659dd8cd8] - fs: give directories created by cpSync the source directory's mode (Shelley Vohr) #65488 - [
1dfb047293] - fs: handle recursive watch setup races (Filip Skokan) #65699 - [
bc431c8413] - fs: apply nocase to literal glob exclude patterns (Yusuke Hayashi) #64817 - [
dd5662e641] - fs: do not descend into symlinks for ** unless following symlinks (RafaelGSS) #65435 - [
ac4cf54292] - fs: watch directories, not files, in recursive fs.watch fallback (Shelley Vohr) #65486 - [
7804bfbd71] - fs: preserve directory timestamps in cp (Abhinandan Kumar) #65540 - [
ba5ca5a1a5] - fs: fix recursive watch error handling (Filip Skokan) #65635 - [
b71c4c0551] - fs: fix rmSync error messages for non-ASCII paths (Yeaseen) #61233 - [
53b4700892] - http: don't destroy socket after request completes (Barath Raj) #65952 - [
96d4c23f17] - http: fast-forward teardown of unread messages (Matteo Collina) #65732 - [
742b4bf5a6] - http: coalesce chunked writes during auto-corking (GetThatCookie) #64987 - [
8921108175] - http2: settle pending write callbacks on destroy (Matteo Collina) #66016 - [
9a2f77a3fc] - http2: fix onread assert when destroying session from stream handler (Sankalp Thakur) #65116 - [
99e41eb43a] - http2: error for incomplete reads on RST, auto-drain, deprecate aborted (Tim Perry) #63249 - [
d520b9601c] - http2: fix write deadlock exposed by larger window sizes (Tim Perry) #65440 - [
86b2497aae] - http2: fix async context loss when trailers carry END_STREAM (Orgad Shaneh) #63814 - [
536ccc7daf] - https: limit proxy CONNECT response headers (Matteo Collina) #64545 - [
fe6147832b] - inspector: fix abort when two Environments own the inspector (Shelley Vohr) #65877 - [
843a27782a] - inspector: fix crash when the IsolateData has no platform (Shelley Vohr) #65818 - [
3f0b6d3308] - lib: avoid repeat internal receiver checks (Filip Skokan) #65910 - [
0039479b4a] - lib: fix shared buffer growability validation (Filip Skokan) #65845 - [
e7907130ae] - lib: use Web IDL interface brand checks (Filip Skokan) #65846 - [
7ae085552b] - lib: fix AbortSignal.any() abort propagation (Yuya Inoue) #66014 - [
01032f4fdc] - lib: fix for FileHandle.readableWebStream (Patrick Dähne) #58842 - [
60a9a28206] - lib: avoid unsafe array iteration in cli table (Donghoon Kang) #65838 - [
230a7fcef0] - lib: optimize internal Web IDL dictionaries (Filip Skokan) #65857 - [
7cc02b14ec] - lib: validate sequence iterator objects (Filip Skokan) #65844 - [
c2bb3aeccc] - lib: defer source map payload decoding until first use (Shelley Vohr) #65490 - [
c4b390cf17] - lib: optimize async context frame activation (Tim Perry) #65519 - [
3e4fc50a4f] - lib: use validateArray for array arguments (JunHwan Choi) #65344 - [
b351ac9cd4] - meta: bump step-security/harden-runner from 2.21.0 to 2.21.1 (dependabot[bot]) #66044 - [
693e890fec] - meta: bump github/codeql-action/upload-sarif from 4.37.9 to 4.38.0 (dependabot[bot]) #66046 - [
9c2abc13c2] - meta: bump github/codeql-action/init from 4.37.9 to 4.38.0 (dependabot[bot]) #66048 - [
b3c5c2b91d] - meta: bump github/codeql-action/analyze from 4.37.9 to 4.38.0 (dependabot[bot]) #66049 - [
2428b13b02] - meta: bump github/codeql-action/autobuild from 4.37.9 to 4.38.0 (dependabot[bot]) #66050 - [
eff5d15041] - meta: add joyeecheung as v8 currency strategic initiative champion (Joyee Cheung) #65965 - [
aa549fed0d]
These notes run past the length kept in the archive. The rest is on the publisher’s page.