显著变更
[45be29d89f] – doc:在协作者中添加 atlowChemi (atlowChemi) #48757
[a316808136] – (SEMVER-MINOR) 事件:允许安全地添加监听器到 abortSignal (Chemi Atlow) #48596
[986b46a567] -fs:为 readFileSync utf-8 添加快速路径 (Yagiz Nizipli) #48658
[0ef73ff6f0] – (SEMVER-MINOR) test_runner:添加碎片支持 (Raz Luvaton) #48639
提交
[eb0aba59b8] – bootstrap:为 Symbol.{dispose,asyncDispose} 使用正确的描述符 (Jordan Harband) #48703
[e2d0195dcf] – bootstrap:使用 kNoBrowserGlobals 标志隐藏实验性 web 全局 (Chengzhong Wu) #48545
[67a1018389] – 联编:不将目标工具链标志传递给主机工具链(Ivan Trubach) #48597
[7d843bb942] – child_process:使用 addAbortListener (atlowChemi) #48550
[4e08160f8c] – child_process:支持 Symbol.dispose (Moshe Atlow) #48551
[ef7728bf36] – Deps:将 nghttp2 更新至 1.55.1 (Node.js GitHub Bot) #48790
[1454f02499] – 文件:将 nghttp2 更新至 1.55.0 (Node.js GitHub Bot) #48746
[fa94debf46] – 文件:更新 minimatch 至 9.0.3 (Node.js GitHub Bot) #48704
[c73cfcc144] – 文件:将 acorn 更新至 8.10.0 (Node.js GitHub Bot) #48713
[b7a076a052] – 资源:V8: cherry-pick cb00db4dba6c (Keyhan Vakil) #48671
[150e15536b] – 文件:将 npm 升级到 9.8.0 (npm 团队) #48665
[c47b2cbd35] – dgram:socket 添加 asyncDispose (atlowChemi) #48717
[002ce31cca] – dgram:使用 addAbortListener (atlowChemi) #48550
[45be29d89f] – doc:在协作者中添加 atlowChemi (atlowChemi) #48757
[69b55d2261] – doc:修正 http.md 和 https.md 中的歧义 (an5er) #48692
[caccb051c7] – doc:澄清 transform._transform() 回调参数逻辑 (Rafael Sofi-zada) #48680
[999ae0c8c3] – doc:修复 Windows 中复制节点的可执行文件 (Yoav Vainrich) #48624
[7daefaeb44] – doc:删除 v20 更新日志中的 <b> (Rafael Gonzaga) #48649
[dd7ea3e1df] – doc:提及 git 节点发布准备(Rafael Gonzaga) #48644
[cc7809df21] – esm:修复传统主解析的 emit 过时问题 (Antoine du Hamel) #48664
[67b13d1dba] – 事件:修复 listenerCount 无法比较已封装的监听器的错误 (yuzheng14) #48592
[a316808136] – (SEMVER-MINOR) 事件:允许为 abortSignal 安全添加监听器 (Chemi Atlow) #48596
[986b46a567] -fs:为 readFileSync utf-8 添加快速路径 (Yagiz Nizipli) #48658
[e4333ac41f] – http2:使用 addAbortListener (atlowChemi) #48550
[4a0b66e4f9] – http2:在 AbortController 信号上发送 RST 代码 8 (Devraj Mehta) #48573
[1295c76fce] – lib:使用 addAbortListener (atlowChemi) #48550
[dff6c25a36] – 元:将 actions/checkout 从 3.5.2 升级到 3.5.3 (dependabot[bot]) #48625
[b5cb69ceaa] – 元:将 step-security/harden-runner 从 2.4.0 升级到 2.4.1 (dependabot[bot]) #48626
[332e480b46] – 元:将 ossf/scorecard-action 从 2.1.3 升级到 2.2.0 (dependabot[bot]) #48628
[25c5a0aaee] – 元:将 github/codeql-action 从 2.3.6 升级到 2.20.1 (dependabot[bot]) #48627
[6406f50ab1] – 模块:添加 SourceMap.lineLengths (Isaac Z. Schlueter) #48461
[cfa69bd48c] – 网络:服务器添加 asyncDispose (atlowChemi) #48717
[ac11264cc5] – net:使用 addAbortListener (atlowChemi) #48550
[82d6b13bf6] – 权限:插入fs节点时添加调试日志(Rafael Gonzaga) #48677
[f4333b1cdd] – 权限:v8.writeHeapSnapshot 和 process.report (Rafael Gonzaga) #48564
[f691dca6c9] – 读取线:使用 addAbortListener (atlowChemi) #48550
[227e6bd898] – SRC:在 fs.readFileSync 操作失败时传递系统调用 (Yagiz Nizipli) #48815
[a9a4b73653] – 原始码:使 BaseObject 的迭代顺序确定 (Joyee Cheung) #48702
[d99ea4845a] – 原始码:移除 CompileFunction 的 kEagerCompile (Keyhan Vakil) #48671
[df363d0010] – 原始码:重复 X509 获取器实现 (Tobias Nießen) #48563
[9cf2e1f55b] – src,lib: 减少对 esm 传统主解析的 C++ 调用 (Vinicius Lourenço) #48325
[daeb21dde9] – 流:修复管道全汇时的死锁(Robert Nagy) #48691
[5a382d02d6] – 流:使用 addAbortListener (atlowChemi) #48550
[6e82077dd4] – 测试:deflake test-net-throttle (Luigi Pinca) #48599
[d378b2c822] – 测试:将 test-net-throttle 移至并行 (Luigi Pinca) #48599
[dfa0aee5bf] – Revert “test: remove test-crypto-keygen flaky designation” (Luigi Pinca) #48652
[0ef73ff6f0] – (SEMVER-MINOR) test_runner:添加碎片支持 (Raz Luvaton) #48639
[e2442bb7ef] – 定时器:支持 Symbol.dispose (Moshe Atlow) #48633
[4398ade426] – 工具:使用 Python 3 运行 fetch_deps.py (Richard Lau) #48729
[38ce95d054] – 工具:更新文档至 unist-util-select@5.0.0 unist-util-visit@5.0.0 (Node.js GitHub Bot) #48714
[b25e78a998] – tools:更新 lint-md-dependencies 至 rollup@3.26.2 (Node.js GitHub Bot) #48705
[a1f4ff7c59] – tools: update eslint to 8.44.0 (Node.js GitHub Bot) #48632
[42dc6eb698] – tools: update lint-md-dependencies to rollup@3.26.0 (Node.js GitHub Bot) #48631
[07bfcc45ab] – url:修复 v8 优化时 canParse false 值 (Yagiz Nizipli) #48817
Windows 32-bit Installer: https://nodejs.org/dist/v20.5.0/node-v20.5.0-x86.msi
Windows 64-bit Installer: https://nodejs.org/dist/v20.5.0/node-v20.5.0-x64.msi
Windows ARM 64-bit Installer: https://nodejs.org/dist/v20.5.0/node-v20.5.0-arm64.msi
Windows 32-bit Binary: https://nodejs.org/dist/v20.5.0/win-x86/node.exe
Windows 64-bit Binary: https://nodejs.org/dist/v20.5.0/win-x64/node.exe
Windows ARM 64-bit Binary: https://nodejs.org/dist/v20.5.0/win-arm64/node.exe
macOS 64-bit Installer: https://nodejs.org/dist/v20.5.0/node-v20.5.0.pkg
macOS Apple Silicon 64-bit Binary: https://nodejs.org/dist/v20.5.0/node-v20.5.0-darwin-arm64.tar.gz
macOS Intel 64-bit Binary: https://nodejs.org/dist/v20.5.0/node-v20.5.0-darwin-x64.tar.gz
Linux 64-bit Binary: https://nodejs.org/dist/v20.5.0/node-v20.5.0-linux-x64.tar.xz
Linux PPC LE 64-bit Binary: https://nodejs.org/dist/v20.5.0/node-v20.5.0-linux-ppc64le.tar.xz
Linux s390x 64-bit Binary: https://nodejs.org/dist/v20.5.0/node-v20.5.0-linux-s390x.tar.xz
AIX 64-bit Binary: https://nodejs.org/dist/v20.5.0/node-v20.5.0-aix-ppc64.tar.gz
ARMv7 32-bit Binary: https://nodejs.org/dist/v20.5.0/node-v20.5.0-linux-armv7l.tar.xz
ARMv8 64-bit Binary: https://nodejs.org/dist/v20.5.0/node-v20.5.0-linux-arm64.tar.xz
Source Code: https://nodejs.org/dist/v20.5.0/node-v20.5.0.tar.gz
Other release files: https://nodejs.org/dist/v20.5.0/
Documentation: https://nodejs.org/docs/v20.5.0/api/