Node v20.7.0 (Current)
Notable Changes
- [
022f1b70c1
] - src: support multiple--env-file
declarations (Yagiz Nizipli) #49542 - [
4a1d1cad61
] - crypto: update root certificates to NSS 3.93 (Node.js GitHub Bot) #49341 - [
a1a65f593c
] - deps: upgrade npm to 10.1.0 (npm team) #49570 - [
6c2480cad9
] - (SEMVER-MINOR) deps: upgrade npm to 10.0.0 (npm team) #49423 - [
bef900e56b
] - doc: move and rename loaders section (Geoffrey Booth) #49261 - [
db4ce8a593
] - doc: add release key for Ulises Gascon (Ulises Gascón) #49196 - [
11c85ffa98
] - (SEMVER-MINOR) lib: add api to detect whether source-maps are enabled (翠 / green) #46391 - [
ec51e25ed7
] - src,permission: add multiple allow-fs-* flags (Carlos Espa) #49047 - [
efdc95fbc0
] - (SEMVER-MINOR) test_runner: expose location of tests (Colin Ihrig) #48975
Commits
- [
e84515594e
] - benchmark: usetmpdir.resolve()
(Livia Medeiros) #49137 - [
f37444e896
] - bootstrap: build code cache from deserialized isolate (Joyee Cheung) #49099 - [
af6dc1754d
] - bootstrap: do not generate code cache in an unfinalized isolate (Joyee Cheung) #49108 - [
cade5716df
] - build: add symlink tocompile_commands.json
file if needed (Juan José) #49260 - [
34a2590b05
] - build: expand when we run internet tests (Michael Dawson) #49218 - [
f637fd46ab
] - build: fix typolibray
->library
(configure.py) (michalbiesek) #49106 - [
ef3d8dd493
] - crypto: remove webcrypto EdDSA key checks and properties (Filip Skokan) #49408 - [
4a1d1cad61
] - crypto: update root certificates to NSS 3.93 (Node.js GitHub Bot) #49341 - [
7eb10a38ea
] - crypto: remove getDefaultEncoding() (Tobias Nießen) #49170 - [
772496c030
] - crypto: remove default encoding from DiffieHellman (Tobias Nießen) #49169 - [
c795083232
] - crypto: remove default encoding from Hash/Hmac (Tobias Nießen) #49167 - [
08197aa010
] - crypto: remove default encoding from sign/verify (Tobias Nießen) #49145 - [
a1a65f593c
] - deps: upgrade npm to 10.1.0 (npm team) #49570 - [
6c2480cad9
] - (SEMVER-MINOR) deps: upgrade npm to 10.0.0 (npm team) #49423 - [
84195d9584
] - deps: add missing thread-common.c in uv.gyp (Santiago Gimeno) #49410 - [
5b70b68b3d
] - deps: V8: cherry-pick eadaef581c29 (Adam Majer) #49401 - [
fe34d632e8
] - deps: update zlib to 1.2.13.1-motley-f5fd0ad (Node.js GitHub Bot) #49252 - [
db4ce8a593
] - doc: add release key for Ulises Gascon (Ulises Gascón) #49196 - [
e5f3a694cf
] - doc: fix node-api call example (Chengzhong Wu) #49395 - [
021345a724
] - doc: add news issue for Diagnostics WG (Michael Dawson) #49306 - [
f82347266b
] - doc: clarify policy expectations (Rafael Gonzaga) #48947 - [
73cfd9c895
] - doc: add print results for examples inStringDecoder
(Jungku Lee) #49326 - [
63ab591416
] - doc: update outdated reference to NIST SP 800-131A (Tobias Nießen) #49316 - [
935dfe2afd
] - doc: usecjs
as block code's type inMockTimers
(Deokjin Kim) #49309 - [
7c0cd2fb87
] - doc: updateoptions.filter
description forfs.cp
(Shubham Pandey) #49289 - [
f72e79ea67
] - doc: add riscv64 to list of architectures (Stewart X Addison) #49284 - [
d19c710064
] - doc: avoid "not currently recommended" (Tobias Nießen) #49300 - [
ae656101c0
] - doc: update module hooks docs (Geoffrey Booth) #49265 - [
fefbdb92f2
] - doc: modify param description for end(),write() inStringDecoder
(Jungku Lee) #49285 - [
59e66a1ebe
] - doc: use NODE_API_SUPPORTED_VERSION_MAX in release doc (Cheng Zhao) #49268 - [
ac3b88449b
] - doc: fix typo instream.finished
documentation (Antoine du Hamel) #49271 - [
7428ebf6c3
] - doc: update description forpercent_encode
sets inWHATWG API
(Jungku Lee) #49258 - [
bef900e56b
] - doc: move and rename loaders section (Geoffrey Booth) #49261 - [
a22e0d9696
] - doc: clarify use of Uint8Array for n-api (Fedor Indutny) #48742 - [
1704f24cb9
] - doc: add signature formodule.register
(Geoffrey Booth) #49251 - [
5a363bb01b
] - doc: caveat unavailability ofimport.meta.resolve
in custom loaders (Jacob Smith) #49242 - [
8101f2b259
] - doc: use same name in the doc as in the code (Hyunjin Kim) #49216 - [
edf278d60d
] - doc: add notable-change label mention to PR template (Rafael Gonzaga) #49188 - [
3df2251a6a
] - doc: add h1 summary to security release process (Rafael Gonzaga) #49112 - [
9fcd99a744
] - doc: update to semver-minor releases by default (Rafael Gonzaga) #49175 - [
777931f499
] - doc: fix wording in napi_async_init (Tobias Nießen) #49180 - [
f45c8e10c0
] - doc,test: add known path resolution issue in permission model (Tobias Nießen) #49155 - [
a6cfea3f74
] - esm: align sync and async load implementations (Antoine du Hamel) #49152 - [
9fac310b33
] - fs: add the options param description in openAsBlob() (Yeseul Lee) #49308 - [
92772a8175
] - fs: remove redundant code in readableWebStream() (Deokjin Kim) #49298 - [
88ba79b083
] - fs: make sure to write entire buffer (Robert Nagy) #49211 - [
11c85ffa98
] - (SEMVER-MINOR) lib: add api to detect whether source-maps are enabled (翠 / green) #46391 - [
c12711ebfe
] - lib: implement WeakReference on top of JS WeakRef (Joyee Cheung) #49053 - [
9a0891f88d
] - meta: bump step-security/harden-runner from 2.5.0 to 2.5.1 (dependabot[bot]) #49435 - [
ae67f41ef1
] - meta: bump actions/checkout from 3.5.3 to 3.6.0 (dependabot[bot]) #49436 - [
71b4411fb2
] - meta: bump actions/setup-node from 3.7.0 to 3.8.1 (dependabot[bot]) #49434 - [
83b7d3a395
] - meta: remove modules team from CODEOWNERS (Benjamin Gruenbaum) #49412 - [
81ff68c45c
] - meta: move one or more collaborators to emeritus (Node.js GitHub Bot) #49264 - [
ab975233cc
] - meta: mention nodejs/tsc when changing GH templates (Rafael Gonzaga) #49189 - [
ceaa5494de
] - meta: add test/reporters to codeowners (Chemi Atlow) #49186 - [
de0a51b7cf
] - net: improve performance of isIPv4 and isIPv6 (Uzlopak) #49568 - [
8d0913bf95
] - net: use asserts in JS Socket Stream to catch races in future (Tim Perry) #49400 - [
2486836a7d
] - net: fix crash due to simultaneous close/shutdown on JS Stream Sockets (Tim Perry) #49400 - [
7a808340cd
] - node-api: fix compiler warning in node_api.h (Michael Graeb) #49103 - [
30f26a99f4
] - permission: ensure to resolve path when calling mkdtemp (RafaelGSS) nodejs-private/node-private#440 - [
5051c75a5b
] - policy: fix path to URL conversion (Antoine du Hamel) #49133 - [
173aed4757
] - report: fix recent coverity warning (Michael Dawson) #48954 - [
d7ff78b442
] - sea: generate code cache with deserialized isolate (Joyee Cheung) #49226 - [
022f1b70c1
] - src: support multiple--env-file
declarations (Yagiz Nizipli) #49542 - [
154b1c2115
] - src: don't overwrite environment from .env file (Phil Nash) #49424 - [
dc4de1c69b
] - src: modify code for empty string (pluris) #49336 - [
701c46f967
] - src: remove unused PromiseWrap-related code (Joyee Cheung) #49335 - [
4a094dc7af
] - src: rename IsAnyByteSource to IsAnyBufferSource (Tobias Nießen) #49346 - [
55d6649175
] - src: support snapshot deserialization in RAIIIsolate (Joyee Cheung) #49226 - [
dc092864ef
] - src: remove unused functionGetName()
in node_perf (Jungku Lee) #49244 - [
f2552a410e
] - src: use ARES_SUCCESS instead of 0 (Jungku Lee) #49048 - [
4a9ae31519
] - src: add a condition if the argument ofDomainToUnicode
is empty (Jungku Lee) #49097 - [
f460362cdf
] - src: remove C++ WeakReference implementation (Joyee Cheung) #49053 - [
2a35383b3e
] - src: use per-realm GetBindingData() wherever applicable (Joyee Cheung) #49007 - [
184bbddcf5
] - src: add per-realm GetBindingData() method (Joyee Cheung) #49007 - [
e9946885f9
] - src: serialize both BaseObject slots (Joyee Cheung) #48996 - [
ec51e25ed7
] - src,permission: add multiple allow-fs-* flags (Carlos Espa) #49047 - [
8aac95de4b
] - stream: improve tee perf by reduceReflectConstruct
usages (Raz Luvaton) #49546 - [
0eea7fd8fb
] - stream: use Buffer.from when constructor is a Buffer (Matthew Aitken) #49250 - [
b961d9bd52
] - stream: addhighWaterMark
for the map operator (Raz Luvaton) #49249 - [
ca1384166d
] - test: fix warning for comment in embedtest (Jungku Lee) #49416 - [
2a35782809
] - test: simplify test-crypto-dh-group-setters (Tobias Nießen) #49404 - [
6740f3c209
] - test: verify dynamic import call with absolute path strings (Chengzhong Wu) #49275 - [
6ed47bd8fb
] - test: reduce length in crypto keygen tests (Joyee Cheung) #49221 - [
4faa30c553
] - test: split JWK async elliptic curve keygen tests (Joyee Cheung) #49221 - [
e04a2603d8
] - test: split test-crypto-keygen.js (Joyee Cheung) #49221 - [
0d23c1d4ce
] - test: rename test-crypto-modp1-error (Tobias Nießen) #49348 - [
48e41569e2
] - test: migrate message source map tests from Python to JS (Yiyun Lei) #49238 - [
a11e64e09c
] - test: fix compiler warning in NodeCryptoEnv (Tobias Nießen) #49206 - [
345543938f
] - test: handle EUNATCH (Abdirahim Musse) #48050 - [
e391f4b197
] - test: usetmpdir.resolve()
(Livia Medeiros) #49136 - [
910378f93f
] - test: reduce flakiness oftest-esm-loader-hooks
(Antoine du Hamel) #49248 - [
4a85f70462
] - test: add spawnSyncAndExit() and spawnSyncAndExitWithoutError() (Joyee Cheung) #49200 - [
9610008b79
] - test: make test-perf-hooks more robust and work with workers (Joyee Cheung) #49197 - [
dc8fff9a75
] - test: use gcUntil() in test-v8-serialize-leak (Joyee Cheung) #49168 - [
ca9f801332
] - test: make WeakReference tests robust (Joyee Cheung) #49053 - [
de103a4686
] - test: add test for effect of UV_THREADPOOL_SIZE (Tobias Nießen) #49165 - [
47d24f144b
] - test: use expectSyncExit{WithErrors} in snapshot tests (Joyee Cheung) #49020 - [
c441f5a097
] - test: add expectSyncExitWithoutError() and expectSyncExit() utils (Joyee Cheung) #49020 - [
4d184b5251
] - test: remove --no-warnings flag in test_runner fixtures (Raz Luvaton) #48989 - [
25e967a90b
] - test: reorder test files fixtures for better understanding (Raz Luvaton) #48787 - [
fac56dbcc0
] - test,benchmark: usetmpdir.fileURL()
(Livia Medeiros) #49138 - [
36763fa532
] - test_runner: preserve original property descriptor (Erick Wendel) #49433 - [
40e9fcdbea
] - test_runner: add support for setImmediate (Erick Wendel) #49397 - [
23216f1935
] - test_runner: report covered lines, functions and branches to reporters (Phil Nash) #49320 - [
283f2806b1
] - test_runner: expose spec reporter as newable function (Chemi Atlow) #49184 - [
546ad5f770
] - test_runner: reland run global after() hook earlier (Colin Ihrig) #49116 - [
efdc95fbc0
] - (SEMVER-MINOR) test_runner: expose location of tests (Colin Ihrig) #48975 - [
4bc0a8fe99
] - test_runner: fix global after not failing the tests (Raz Luvaton) #48913 - [
08738b2664
] - test_runner: fix timeout in *Each hook failing further tests (Raz Luvaton) #48925 - [
c2f1830f66
] - test_runner: cleanup test timeout abort listener (Raz Luvaton) #48915 - [
75333f38b2
] - test_runner: fix global before not called when no global test exists (Raz Luvaton) #48877 - [
b28b85adf8
] - tls: remove redundant code in onConnectSecure() (Deokjin Kim) #49457 - [
83fc4dccbc
] - tls: refactor to use validateFunction (Deokjin Kim) #49422 - [
8949cc79dd
] - tls: ensure TLS Sockets are closed if the underlying wrap closes (Tim Perry) #49327 - [
1df56e6f01
] - tools: update eslint to 8.48.0 (Node.js GitHub Bot) #49343 - [
ef50ec5b57
] - tools: update lint-md-dependencies (Node.js GitHub Bot) #49342 - [
9a8fb4fc34
] - tools: remove v8_dump_build_config action (Cheng Zhao) #49301 - [
91b2d4314b
] - tools: update lint-md-dependencies (Node.js GitHub Bot) #49253 - [
b51946ebdd
] - tools: fix github reporter appended multiple times (Moshe Atlow) #49199 - [
ae40cb1612
] - url: validatepathToFileURL(path)
argument as string (LiviaMedeiros) #49161 - [
e787673dcf
] - url: handle unicode hostname if empty (Yagiz Nizipli) #49396 - [
6ee74be87f
] - vm: store MicrotaskQueue in ContextifyContext directly (Joyee Cheung) #48982 - [
0179c6dc8f
] - worker: protect against user mutating well-known prototypes (Antoine du Hamel) #49270
Windows 32-bit Installer: https://nodejs.org/dist/v20.7.0/node-v20.7.0-x86.msi
Windows 64-bit Installer: https://nodejs.org/dist/v20.7.0/node-v20.7.0-x64.msi
Windows ARM 64-bit Installer: https://nodejs.org/dist/v20.7.0/node-v20.7.0-arm64.msi
Windows 32-bit Binary: https://nodejs.org/dist/v20.7.0/win-x86/node.exe
Windows 64-bit Binary: https://nodejs.org/dist/v20.7.0/win-x64/node.exe
Windows ARM 64-bit Binary: https://nodejs.org/dist/v20.7.0/win-arm64/node.exe
macOS 64-bit Installer: https://nodejs.org/dist/v20.7.0/node-v20.7.0.pkg
macOS Apple Silicon 64-bit Binary: https://nodejs.org/dist/v20.7.0/node-v20.7.0-darwin-arm64.tar.gz
macOS Intel 64-bit Binary: https://nodejs.org/dist/v20.7.0/node-v20.7.0-darwin-x64.tar.gz
Linux 64-bit Binary: https://nodejs.org/dist/v20.7.0/node-v20.7.0-linux-x64.tar.xz
Linux PPC LE 64-bit Binary: https://nodejs.org/dist/v20.7.0/node-v20.7.0-linux-ppc64le.tar.xz
Linux s390x 64-bit Binary: https://nodejs.org/dist/v20.7.0/node-v20.7.0-linux-s390x.tar.xz
AIX 64-bit Binary: https://nodejs.org/dist/v20.7.0/node-v20.7.0-aix-ppc64.tar.gz
ARMv7 32-bit Binary: https://nodejs.org/dist/v20.7.0/node-v20.7.0-linux-armv7l.tar.xz
ARMv8 64-bit Binary: https://nodejs.org/dist/v20.7.0/node-v20.7.0-linux-arm64.tar.xz
Source Code: https://nodejs.org/dist/v20.7.0/node-v20.7.0.tar.gz
Other release files: https://nodejs.org/dist/v20.7.0/
Documentation: https://nodejs.org/docs/v20.7.0/api/
SHASUMS
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
55851cc966ec46863c4089292203982b60db9d38ca5444fc7bde65ae0c6519f7 node-v20.7.0-aix-ppc64.tar.gz
9dfff77ac5d976b9ea34657627e2e120415114284685d9cb6d98b6f1836ca2d9 node-v20.7.0-arm64.msi
08aa09792f30a86e8904e334ba6d348ad73e926b5e441ed9abcdcbea651dc926 node-v20.7.0-darwin-arm64.tar.gz
829d24016e42da0f593df9f21f08c465a7650c724ed2d5825c5ea945c7bf7a64 node-v20.7.0-darwin-arm64.tar.xz
ceeba829f44e7573949f2ce2ad5def27f1d6daa55f2860bea82964851fae01bc node-v20.7.0-darwin-x64.tar.gz
ece47b2fc7e715bbbb5a81a8190bfa9798fe42d2388aa2ea496d55bb58998e7a node-v20.7.0-darwin-x64.tar.xz
ff305725acafef65c63be1490491572211c53d885397a2e61611fc2f26e8da3d node-v20.7.0-headers.tar.gz
13354725d88b5e6f4380132d68d6d60e320e090bf042533cf66fec4ef425690e node-v20.7.0-headers.tar.xz
98a1ad20c1e81870467a891b050db85deb06d912c8f286a303681876d2eea5f0 node-v20.7.0-linux-arm64.tar.gz
c97b51decb0f4a3e8e5bd8cbc6ff43ae4782f2b8b6e3c2b513b77b8f97fffcc5 node-v20.7.0-linux-arm64.tar.xz
9713fb1d0db62aba1afcc84630659eb99bfe92d396412cc0e339a5f6e955edeb node-v20.7.0-linux-armv7l.tar.gz
4cec5c930e9a85bac3c6c0ddfcc08a475d754d6dca66b6bf319ce2ccf334c216 node-v20.7.0-linux-armv7l.tar.xz
5661c71b2c1430c282626eff1328550c327a9eb6fbef8976d333dde40a68e5be node-v20.7.0-linux-ppc64le.tar.gz
21c5b774795bd368b9e67b8f1834ca573252a10e500da57226cfef35063b0f47 node-v20.7.0-linux-ppc64le.tar.xz
a53cdf019bfb32180442cd6cd710e7a13f4d7ea4d6e6b902f85d3f7362f45660 node-v20.7.0-linux-s390x.tar.gz
c2c015b941dddb56c5943057729497db2cf323f4cc4ef363bd4e0150fb5c8b37 node-v20.7.0-linux-s390x.tar.xz
034bbec28da7b729aea531000a56b37076e94e44aa5dfa346a1d1a89025915a8 node-v20.7.0-linux-x64.tar.gz
a4251c24c6bf6d3bdee4521ca294bc0897a6c466137e02caa2521af5d456f55e node-v20.7.0-linux-x64.tar.xz
69f17930765208dad0c6518e3e59e1353a69dabb3843db983212463c59a7421f node-v20.7.0.pkg
07b85b65f844dc29ac5038c11b6e34a0997f1744d1487de0ab9a94743e5c12ad node-v20.7.0.tar.gz
3fcfdcd05c461517480596596674df85b35cfce597dd0ae33f5416fc4df12bea node-v20.7.0.tar.xz
539b6eb02ec6f0354976623f0a166021fa744d96c7cb9c52fd885d0962d0e739 node-v20.7.0-win-arm64.7z
e424b3fab740291411a619351d0f8119b08d4d5ca9266864f9cc25d1cac36f38 node-v20.7.0-win-arm64.zip
b3e5cbf8e247c75f9ddd235d49cfe40f25dde65bdd0eec4cefbca2805d80376b node-v20.7.0-win-x64.7z
2b1a117e63f0602bad1e9e31679932b64e9b130a96dc2feb0c367ca816c5a5cb node-v20.7.0-win-x64.zip
d6a3c63a5ae71374c144a33c418ab96be497b08df0e9f51861a78127db03aeb5 node-v20.7.0-win-x86.7z
fba8b0e044ca41f2cda029552a517f01238ad5160f9ae2229d750042168e48f9 node-v20.7.0-win-x86.zip
a7df245847842a88a27360d6c39d2671056e148be637aa4d6ce980d2e97a6af0 node-v20.7.0-x64.msi
84a595328279a7c535de9a76ead4c899a79d06c306623b3d02bf8e54805cea78 node-v20.7.0-x86.msi
e1d9b7d8d64230037ef90ef2f75fc471ffbbad794a283095258bf7dcb52d97d9 win-arm64/node.exe
8d7afedea6c02b7741661394ee47a2cc9ddf590db86a365ed0b2f7e276420ba6 win-arm64/node.lib
f463f26c2d5f0a80787d4de3b866459fd2d8170cedacbe1c57ffd973a73498e4 win-arm64/node_pdb.7z
09dd4e8e645902363901ce953b5cc320cd6bc9adfe5a061a65dd782259982e1b win-arm64/node_pdb.zip
7128b7a6e4eb4d5efc9ebd62f72bf76edc4e34effdccfb1c6b399638521495d1 win-x64/node.exe
25642cbb2248fc4b514384ad7af0ae4345c25952eaae8c46bebbcc5217b8a279 win-x64/node.lib
c6d0456de2323ca43454f54ea65c988aa91935259a5b8a119285215cd32ee708 win-x64/node_pdb.7z
5b60467c71343e0689c058a5cc58b14b97b2d6979eac13ac03edddc912efba5b win-x64/node_pdb.zip
b309bf77214f5168175a9e965f60b77acb3086f9c0516a85e4a8f3266d0b2fc8 win-x86/node.exe
875c47dfc80dcf728665c37e21daced784a05d58538f90124f89829fc62c4966 win-x86/node.lib
8ba2903ef9238849bdd34e800efa967c790c7f844a9c195c07eb2d3a0a800d3b win-x86/node_pdb.7z
8f68cac1cbe49bcd64416c8ad425368e292ab1ea34f233452f3645e4a3943849 win-x86/node_pdb.zip
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEpgI1MPxTRh/skfmcBM0/L94HlXgFAmUIl24ACgkQBM0/L94H
lXgMdw/9Fy8WK0sGbcpOtqb4kU2ts8O2MbBCwJel2p/sP8pcw5kfBB3CsiKKBfW3
eQv/ucju6No+9p1Q7hsNu7rSE1DVgpzv89cQEgS0JEJfxm8d0Lx8xQboYkCPrPgg
erpyz/2ZEdgjnPKGmbp9pl59Ml/C0HtDFylzXwZh02D2M9h3vMkEfwXYGuDJTZ5d
4gEZkkaUkzkVK5YDHWgfKiHk1xhyvLvtxKbwDxDPY1reJ5ev5jGB6GTNAetDdzc8
1dllgMh5gy8WIwetfvmDr1e+DdCTIpxVnxNMyedGtobppadCPF44wyayKu0Nr1F5
1MSRx5ipc/4ilpjj6At4HepBxOt5PgsNlbdz+vUIgo227uN6WuV0De8ZuhvDKDmV
6dj6/EGfA+qxsYmZP8MbVKs0ewxzJtpN6hcrgP9MtjXHOF7gD7TU28sTeqkdQnPA
RUd1xruVjdpCEV4I332AGijChakpt+zLWZdOdk2bUMlsQYkGywGR+2uqpEUlStZ3
yC2iGe5u4WjRWTOvNrg3Aw7SyBdHIcCr7jJ5TJs3tsypSOuzWL+wso2e5kQoAt02
moUSMQmfvbErnKsknQ8j1kJzvRZn+F4IpDy7IDnLRPAYAsztUiiYq4mUVxOIAogo
qAg2ocwAb3AX1QFnV6rNw8eJd4K+2rmqSqtKhz16SZLwaeNUd+I=
=7AyS
-----END PGP SIGNATURE-----