Node v23.9.0 (Current)
Michaël Zasso
2025-02-26, Version 23.9.0 (Current), @targos
Notable Changes
- [
927d985aa0] - (SEMVER-MINOR) dns: add TLSA record query and parsing (Rithvik Vibhu) #52983 - [
0236fbf75a] - (SEMVER-MINOR) process: add threadCpuUsage (Paolo Insogna) #56467
Commits
- [
f4a82fddb1] - benchmark: add a warmup on bench-openSync (Elves Vieira) #57051 - [
b384baa073] - build: print 'Formatting Markdown...' for long task markdown formatting (1ilsang) #57108 - [
fec2d50308] - build: add skip_apidoc_files and include QUIC (RafaelGSS) #56941 - [
5af35d1850] - build: fix GN build failure (Cheng) #57013 - [
35f89aa66f] - build: fix GN build of uv (Cheng) #56955 - [
e26d4841d1] - cli: allow --cpu-prof* in NODE_OPTIONS (Carlos Espa) #57018 - [
b50fc42a99] - crypto: support --use-system-ca on non-Windows and non-macOS (Joyee Cheung) #57009 - [
dfdaa92a37] - crypto: fix missing OPENSSL_NO_ENGINE guard (Shelley Vohr) #57012 - [
18ea88bcbe] - crypto: cleanup root certificates and skip PEM deserialization (Joyee Cheung) #56999 - [
8076284f9e] - deps: update cjs-module-lexer to 2.1.0 (Node.js GitHub Bot) #57180 - [
8644cf3e5a] - deps: update ngtcp2 to 1.11.0 (Node.js GitHub Bot) #57179 - [
2aceca15d6] - deps: update sqlite to 3.49.1 (Node.js GitHub Bot) #57178 - [
8421021427] - deps: update ada to 3.1.0 (Node.js GitHub Bot) #57083 - [
21d795a5f0] - (SEMVER-MINOR) dns: add TLSA record query and parsing (Rithvik Vibhu) #52983 - [
455bf5a0a8] - doc: update options to filehandle.appendFile() (Hasegawa-Yukihiro) #56972 - [
f35bd869ee] - doc: add additional caveat for fs.watch (Michael Dawson) #57150 - [
4413ce7ed3] - doc: fix typo in Windows building instructions (Tim Jacomb) #57158 - [
66614cfcf3] - doc: fix web.libera.chat link in pull-requests.md (Samuel Bronson) #57076 - [
587112cb08] - doc: remove buffered flag from performance hooks examples (Pavel Romanov) #52607 - [
fdc8aeb8a0] - doc: fix 'introduced_in' version in typescript module (1ilsang) #57109 - [
b6960499c8] - doc: fix link and history ofSourceMapsections (Antoine du Hamel) #57098 - [
0de128ca97] - doc: addmodule namespace objectlinks (Dario Piotrowicz) #57093 - [
5a74568320] - doc: disambiguate pseudo-code statement (Dario Piotrowicz) #57092 - [
46df14ddcb] - doc: update clang-cl on Windows building guide (Joyee Cheung) #57087 - [
4b02fdc72f] - doc: update Xcode version used for arm64 and pkg (Michaël Zasso) #57104 - [
78d4e52a52] - doc: fix wrong articles used to address modules (Dario Piotrowicz) #57090 - [
ed5671f1bc] - doc: updatemodule.builtinModulessentence (Dario Piotrowicz) #57089 - [
9de45cbac9] - doc:modules.md: fixdistancedefinition (Alexander “weej” Jones) #57046 - [
a7e5ef9e01] - doc: fix wrong verb form (Dario Piotrowicz) #57091 - [
c02494f5fe] - doc: fix transpiler loader hooks documentation (Joyee Cheung) #57037 - [
5b2dfadd40] - doc: add a note aboutrequire('../common')in testing documentation (Aditi) #56953 - [
50ba04e214] - doc: recommend writing tests in new files and including comments (Joyee Cheung) #57028 - [
6951133e1a] - doc: improve documentation on argument validation (Aditi) #56954 - [
44dd8a5cc2] - doc: buffer: fix typo onBuffer.copyBytesFrom(offsetoption (tpoisseau) #57015 - [
c011271a70] - doc: update cleanup to trust on vuln db automation (Rafael Gonzaga) #57004 - [
a6b7bce3a0] - doc: move stability index after history section for consistency (Antoine du Hamel) #56997 - [
3bc6d626b4] - doc: addsignaltofilehandle.writeFile()options (Yukihiro Hasegawa) #56804 - [
2990cc8616] - doc: run license-builder (github-actions[bot]) #56985 - [
40f3a516bf] - fs: handle UV_ENOTDIR infs.statSyncwiththrowIfNoEntryprovided (Juan José Arboleda) #56996 - [
e10ef275e8] - inspector: convert event params to protocol without json (Chengzhong Wu) #57027 - [
d6234b4652] - inspector: skip promise hook in the inspector async hook (Joyee Cheung) #57148 - [
aa817853cd] - lib: fixup more incorrect ERR_INVALID_ARG_VALUE uses (James M Snell) #57177 - [
e08d7d4e53] - lib: fixup incorrect argument order in assertEncoding (James M Snell) #57177 - [
f77069b4e0] - meta: bumpactions/setup-pythonfrom 5.3.0 to 5.4.0 (dependabot[bot]) #56867 - [
35cdd9b9fe] - meta: bumppeter-evans/create-pull-requestfrom 7.0.5 to 7.0.6 (dependabot[bot]) #56866 - [
3d61604f2a] - meta: bumpmozilla-actions/sccache-actionfrom 0.0.6 to 0.0.7 (dependabot[bot]) #56865 - [
0dd0108fc5] - meta: bumpcodecov/codecov-actionfrom 5.0.7 to 5.3.1 (dependabot[bot]) #56864 - [
58d70369e3] - meta: bumpstep-security/harden-runnerfrom 2.10.2 to 2.10.4 (dependabot[bot]) #56863 - [
dfd42db739] - meta: bumpactions/cachefrom 4.1.2 to 4.2.0 (dependabot[bot]) #56862 - [
7f5f02ba2b] - meta: bumpactions/stalefrom 9.0.0 to 9.1.0 (dependabot[bot]) #56860 - [
85ac02f8d3] - meta: bumpgithub/codeql-actionfrom 3.27.5 to 3.28.8 (dependabot[bot]) #56859 - [
d62299b021] - meta: add CODEOWNERS for SQLite (Colin Ihrig) #57147 - [
2ec4ff17a6] - meta: update last name for jkrems (Jan Martin) #57006 - [
ad3c572027] - module: improve error message from asynchronicity in require(esm) (Joyee Cheung) #57126 - [
cc1cafd562] - module: allow omitting context in synchronous next hooks (Joyee Cheung) #57056 - [
c6ddfa52fb] - (SEMVER-MINOR) process: add threadCpuUsage (Paolo Insogna) #56467 - [
ac35106625] - sea: suppress builtin warning with disableExperimentalSEAWarning option (koooge) #57086 - [
ef314dc773] - src: fix crash when lazy getter is invoked in a vm context (Chengzhong Wu) #57168 - [
90a4de02b6] - src: do not format single string argument for THROW_ERR_* (Joyee Cheung) #57126 - [
e0a91f631b] - src: gate all quic behind disabled-by-default compile flag (James M Snell) #57142 - [
7dd326e3a7] - src: move instead of copy shared pointer in node_blob (Michaël Zasso) #57120 - [
e3127b89a2] - src: replace NewFromUtf8 with OneByteString where appropriate (James M Snell) #57096 - [
56f9fe7514] - src: portdefineLazyPropertiesto native code (Antoine du Hamel) #57081 - [
90875ba0ca] - src: improve error handling in node_blob (James M Snell) #57078 - [
5414eb48b5] - src: improve error handling in multiple files (James M Snell) #56962 - [
286bb84188] - src: fix accessing empty string (Cheng) #57014 - [
fa26f83e5b] - src: lock the isolate properly in IsolateData destructor (Joyee Cheung) #57031 - [
7e2dac9fcc] - src: add self-assigment memcpy checks (Burkov Egor) #56986 - [
d8e70dcaa6] - src: improve node::Dotenv trimming (Dario Piotrowicz) #56983 - [
41f444fa78] - src: improve error handling in string_bytes/decoder (James M Snell) #56978 - [
d0ee8c0a20] - src: improve error handling in process_wrap (James M Snell) #56977 - [
1a244177a3] - test: add doAppendAndCancel test (Hasegawa-Yukihiro) #56972 - [
51dff8b1ae] - test: fix test-without-async-context-frame.mjs in debug mode (Joyee Cheung) #57034 - [
7c7e9f4d84] - test: make eval snapshot comparison more flexible (Shelley Vohr) #57020 - [
315244e59e] - test: simplify test-http2-client-promisify-connect-error (Luigi Pinca) #57144 - [
ccf496cff9] - test: improve error output of test-http2-client-promisify-connect-error (Antoine du Hamel) #57135 - [
a588066518] - test: add case for unrecognised fields within pjson "exports" (Jacob Smith) #57026 - [
b369ad6e45] - test: remove unnecessary assert requiring from tests (Dario Piotrowicz) #57008 - [
9b98ac6a81] - test: update WPT for urlpattern to ef6d83d789 (Node.js GitHub Bot) #56984 - [
0a82d27d28] - test: reduce flakiness on test-net-write-fully-async-buffer (Yagiz Nizipli) #56971 - [
ab150d7781] - test: remove flakiness on macOS test (Yagiz Nizipli) #56971 - [
ccb8c12712] - test,crypto: make tests work for BoringSSL (Shelley Vohr) #57021 - [
116c1fe84c] - test_runner: refactor testPlan counter increse (Pietro Marchini) #56765 - [
2929fc6449] - test_runner: allow special characters in snapshot keys (Carlos Espa) #57017 - [
a025d7ba07] - tools: run Linux tests on GitHub arm64 runners as well (Dennis Ameling) #57162 - [
73a8514305] - tools: consolidate 'introduced_in' check for docs (1ilsang) #57109 - [
6cdee545f6] - tools: do not run major-release workflow on forks (Rich Trott) #57064 - [
1efd74b1b0] - tools: fix release URL computation in update-root-certs.mjs (Joyee Cheung) #56843 - [
a9112df8d3] - tools: add support forimport sourcesyntax in linter (Antoine du Hamel) #56992 - [
c6d6be2c3b] - typings: fixImportModuleDynamicallyCallbackreturn type (Chengzhong Wu) #57160 - [
d922153cbf] - url: improve urlpattern regexp performance (Yagiz Nizipli) #57136
Windows 64-bit Installer: https://nodejs.org/dist/v23.9.0/node-v23.9.0-x64.msi
Windows ARM 64-bit Installer: https://nodejs.org/dist/v23.9.0/node-v23.9.0-arm64.msi
Windows 64-bit Binary: https://nodejs.org/dist/v23.9.0/win-x64/node.exe
Windows ARM 64-bit Binary: https://nodejs.org/dist/v23.9.0/win-arm64/node.exe
macOS 64-bit Installer: https://nodejs.org/dist/v23.9.0/node-v23.9.0.pkg
macOS Apple Silicon 64-bit Binary: https://nodejs.org/dist/v23.9.0/node-v23.9.0-darwin-arm64.tar.gz
macOS Intel 64-bit Binary: https://nodejs.org/dist/v23.9.0/node-v23.9.0-darwin-x64.tar.gz
Linux 64-bit Binary: https://nodejs.org/dist/v23.9.0/node-v23.9.0-linux-x64.tar.xz
Linux PPC LE 64-bit Binary: https://nodejs.org/dist/v23.9.0/node-v23.9.0-linux-ppc64le.tar.xz
Linux s390x 64-bit Binary: https://nodejs.org/dist/v23.9.0/node-v23.9.0-linux-s390x.tar.xz
AIX 64-bit Binary: https://nodejs.org/dist/v23.9.0/node-v23.9.0-aix-ppc64.tar.gz
ARMv7 32-bit Binary: https://nodejs.org/dist/v23.9.0/node-v23.9.0-linux-armv7l.tar.xz
ARMv8 64-bit Binary: https://nodejs.org/dist/v23.9.0/node-v23.9.0-linux-arm64.tar.xz
Source Code: https://nodejs.org/dist/v23.9.0/node-v23.9.0.tar.gz
Other release files: https://nodejs.org/dist/v23.9.0/
Documentation: https://nodejs.org/docs/v23.9.0/api/
SHASUMS
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
5837acfdfa601ba46163a01ef6ad53a2f6c6283cc9fc336db1145ec466220f68 node-v23.9.0-aix-ppc64.tar.gz
fbd24ed1172a21d94abf08d73686823675698a5e84a024b1ea321e038b4781aa node-v23.9.0-arm64.msi
02fea0822268b245066e895a20a0c530f750a710517ac9faafdc0f1cd4434994 node-v23.9.0-darwin-arm64.tar.gz
03fb167727da087d386e8985e785713a8ce942203c7ca5f08aaf00f11f7fef8b node-v23.9.0-darwin-arm64.tar.xz
535d8ed9d5e6a59f46df4e518e2940d5701e17ae795600815a702e8233552240 node-v23.9.0-darwin-x64.tar.gz
9a5bff19ecc690bde41b7fd1c050e745da0dd534feadd849e9137e0dd6d952ce node-v23.9.0-darwin-x64.tar.xz
0b4cf80e82f873b9ab54786099c78fe576d865086c39da12ded22f7dedb5aba5 node-v23.9.0-headers.tar.gz
af2b11300e9634a5187699781a90f6b0179e6252397bd079a20b3da6aed9fb82 node-v23.9.0-headers.tar.xz
798301b15d2acdc9e62c50688d95480a7787051fa83000e210b32b9adfdcfa4c node-v23.9.0-linux-arm64.tar.gz
dc0d93c5e4ae41c8fe75b64399c4d1fe3c15e2bfa3f55f92f8697bb16397585b node-v23.9.0-linux-arm64.tar.xz
99a07e0655ab7fd72242b68b960a2cfcbe2d3d96b7852605a5a8cb098f9851b9 node-v23.9.0-linux-armv7l.tar.gz
449f4a348bb436a59edc5ec3b12d84eaa09d02c8b80271186a3eebc861fb655c node-v23.9.0-linux-armv7l.tar.xz
437c9285740c2a628bd7cf68229c00528619076ef30c59cd557459b2cc61b63b node-v23.9.0-linux-ppc64le.tar.gz
0d4f3d6e2646a62921b8a6a046fad4fcca1d0ef3e0979aa3080deaec3c5fe1a5 node-v23.9.0-linux-ppc64le.tar.xz
dc10041dcb37c5296a747bc828e47875b9680e33a98bd2313995ca2a840d9068 node-v23.9.0-linux-s390x.tar.gz
648e40aad3b1ae5c964328d438232737e29b7cd119979c3b318e86bba0929c72 node-v23.9.0-linux-s390x.tar.xz
bb1a81335c86578e70ee282eb9f93c5aa2e75f7cb6b99d9315a52899d42884f9 node-v23.9.0-linux-x64.tar.gz
0b4ece2aa678e6891b9abf6118d5393867ab07b3e31c8d8c4c34e97840fa8749 node-v23.9.0-linux-x64.tar.xz
9172705a683b6d0acc5bc671af3df16fd75f76d91bfa5391846aa8ed2713edbe node-v23.9.0.pkg
164ec8fe82aac21f74efc0d5890d9f6c0e0ba22ca285d400c0266913fb4ff8a0 node-v23.9.0.tar.gz
c6b420bedbb049a6538c33af28abaf89011ccc879f0f0f81791675263c238f97 node-v23.9.0.tar.xz
4e68465ccb2463ab56417920ae6c5a0fa1ee8dfeb1880cd6e8fff197278a0b43 node-v23.9.0-win-arm64.7z
f25e12f66e65e563f24b3418e879221bba11b67ab4fdcc02f31134196e178342 node-v23.9.0-win-arm64.zip
458e75cbb1ce88ed70a16e264fb423d6522be49d39bced976d8ec4dffc059ad8 node-v23.9.0-win-x64.7z
2ebf80037486002b00fe5c6accd3c253b74c9045dfc2a20844a33be954e7ce74 node-v23.9.0-win-x64.zip
51b5421a5570297fb603fa1869b4d40fd041eef3a7dadb47238ae9bd47f28153 node-v23.9.0-x64.msi
49f04514e9403ad9eeca6f5904c97fceafb2bd00e8482a17f833cfe1b70188c8 win-arm64/node.exe
b04fc2c4f04273feaae3a2bc372d507fa631d7d6fd5f11265219d5b10d083a3e win-arm64/node.lib
9307ed98fe8f9de006d482b93232b3125f38c6db02193ff642c6413b4a58323c win-arm64/node_pdb.7z
fae79e6c8a2b515d8a490cffa5d660958721105071412ec69a2a4869accd5acc win-arm64/node_pdb.zip
6ac035ad7f00184705e89f8288e0a5faaafd6dd546a6bccc4763b3d64c9a6ed3 win-x64/node.exe
7005ad268c2a3b55e741957609696fd707982d8d7727325c44e2cbf23f00f565 win-x64/node.lib
5a39045b1c3172873bf88686d44a0270feea6a4237bb4e5c1118634a2530780c win-x64/node_pdb.7z
a0f56e42c42083b0b7e1b6d4c7fa1a932ac21f79111286b217151d88e8cc4d4f win-x64/node_pdb.zip
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEj8yhP+8dDC6RAI4Jdw96mlrhVgAFAme/Q04ACgkQdw96mlrh
VgAARw/+MGfo5KbfnMIQR2ATY36/CGudr15gL5BCa1za1P6TJygZQN2nr3iZW7t4
o7XcAe+e0eCLBN2G5v/v9LtgWZ6TuD5oHkAvT5QfSAxGrh8mingmvpXfQJw43PiL
gSrd9AI6LitCoTNiM36ILLyRHHtCylZoQQEZwdY1tzHqlB6sQVO9M4/YvMoCnD/2
3awt7+fGa0kmfuVcMJsE3RBVxvMWuMIyZO9Z+uq8OgQtYYpnI4+WEwAQFeXMJVRY
bpSx7bNTplomPkGEVvkDn1Cy/eUx6NrrWZTwKIVin8UM0WjuaxJXA37jYMm3HS5h
QzHdWJ8Qc+5lbxyLbOJWL95ORzfvDvwr20z5oy31A2SfKqlGJ5hanRrmCdp197IP
yWEukGnNd3inIaxF6nUrz1BRu84jRqT1iAZd/4ppAjibiRYYZuLMoMeNYCg9uI0R
E61N8HHzP+eDSrE9jAxh6zjRmvcL64ZY8vRjjOfqVHUjs5QYhuf/JqAOe0//fO+4
X6HP5WRaqDti+gBVdwpwldRdgztprufVBPLfoKvap1QpxrIdUm6oTmuXKtlGA3AU
QCIoaSJm/P7kWBVERWSRL1C0fWDVHBe8Oiw5ruKbEgHi+1fZFdhfraf51lvG4Xfc
VJ1eGcq9flN+PrDD4lr8wqeY8+gPiV1jHCDHx9lkE2+oayv0/mk=
=oNrV
-----END PGP SIGNATURE-----