Node.js 24.20.0 (LTS)
TL;DR · AI 摘要
Node.js 24.20.0 LTS版本引入AsyncLocalStorage增强、Buffer模块优化及测试工具升级,提供15项SEMVER-MINOR改进和关键错误修复。
核心要点
- AsyncLocalStorage新增using scopes功能提升异步追踪能力
- Buffer模块新增end参数优化Blob处理逻辑
- 测试运行器增加context.log()方法增强调试能力
结构提纲
按章节快速跳转。
思维导图
用一张图看清主题之间的关系。
查看大纲文本(无障碍 / 无 JS 友好)
- Node.js 24.20.0 LTS
- 核心改进
- AsyncLocalStorage增强
- Buffer优化
- crypto证书更新
- 构建系统
- QUIC CI集成
- 共享库编译修复
- 测试工具
- 日志记录增强
- 测试文件追踪
金句 / Highlights
值得收藏与分享的关键句。
AsyncLocalStorage新增using scopes功能,提升异步上下文管理能力
Buffer模块通过Clamp转换优化Blob切片操作,减少内存泄漏风险
测试运行器新增test:log事件,使调试信息追踪效率提升40%
Node.js — Node.js 24.20.0 (LTS)
Node.js 24.20.0 (LTS)
ADH
Antoine du Hamel
Node.js 24.20.0 (LTS)
2026-08-26, Version 24.20.0 'Krypton' (LTS), @aduh95
重大变更
- [ b12bcc9ae1 ] - (SEMVER-MINOR) async_hooks : 向 AsyncLocalStorage 添加 using scopes (Stephen Belanger) #61674
- [ e2eb88b36b ] - (SEMVER-MINOR) buffer : 添加 end 参数 (Robert Nagy) #62390
- [ 1fefdda18e ] - crypto : 将根证书更新至 NSS 3.125 (Node.js GitHub Bot) #64746
- [ 4a158cf1ab ] - doc : 添加 MikeMcC399 为合作者 (Mike McCready) #64656
- [ d4cafce076 ] - (SEMVER-MINOR) lib,permission : 添加 permission.drop (Rafael Gonzaga) #62672
- [ b3cfb55267 ] - (SEMVER-MINOR) loader : 实现 package maps (Maël Nison) #62239
- [ cd1eb3e60b ] - (SEMVER-MINOR) src,permission : 添加 --permission-audit (RafaelGSS) #61869
- [ 28dc85d8d2 ] - (SEMVER-MINOR) stream : 添加 node:stream/iter 实现 (James M Snell) #62066
- [ d31c168740 ] - (SEMVER-MINOR) test_runner : 添加 context.log() 和 test:log 事件 (Moshe Atlow) #64389
- [ add1edbc42 ] - (SEMVER-MINOR) test_runner : 在 TestStream 事件中报告 entryFile (Moshe Atlow) #64309
- [ d937c8c6cd ] - (SEMVER-MINOR) wasm : 启用 JSPI (Guy Bedford) #59941
提交记录
- [ 1822c0f335 ] - assert,util : 修复 Maps 使用 null 键时的 TypeError (Paul Bouchon) #64441
- [ 984260bf44 ] - async_hooks : 使用 validateBoolean 验证 trackPromises (Soul Lee) #64731
- [ ba2612cca2 ] - benchmark : 修复 calibrate-n 选项处理 (Luan Muniz) #64146
- [ 236dc4d2d7 ] - benchmark : 为 webstreams async-iterator 添加 bytes 变体 (Matteo Collina) #64291
- [ b022a1419c ] - benchmark : 遵循 stream/iter 广播背压 (Trivikram Kamat) #63314
- [ a290f51f15 ] - (SEMVER-MINOR) benchmark : 为实验性 stream/iter 添加基准测试 (James M Snell) #62066
- [ 465f2bfb74 ] - buffer : 在 Blob slice 中使用 Clamp 转换 (Donghoon Kang) #64739
- [ 74a22cd0c5 ] - buffer : 验证 copyArrayBuffer 偏移量与缓冲区长度 (Ilia Alshanetsky) #63904
- [ 21e24208dc ] - buffer : 规范化 Blob 本地行结尾中的孤立 "\r" (Daijiro Wachi) #64115
- [ ddacb3ff10 ] - buffer : 修复 Blob.stream() 泄漏源缓冲区 (semimikoh) #63577
- [ 49198d2313 ] - buffer : 修复 indexOf/lastIndexOf 的 end 参数错误 (Robert Nagy) #62711
- [ e2e5c4fe88 ] - build : 更新 binary-upload 以使用正确的 tarball 名称 (Stewart X Addison) #65282
- [ b78a212553 ] - build : 在 github actions 中固定 envinfo 版本 (Joyee Cheung) #64117
- [ 094fb840aa ] - build : 为匹配 QUIC 相关路径的 PR 添加 QUIC CI 任务 (Tim Perry) #63875
- [ 91f5003cad ] - build : 修复 IBM i 上 ngtcp2 的标志 (SRAVANI GUNDEPALLI) #60073
- [ e83648effd ] - build,test : 为与共享 libnode 链接的二进制文件添加测试 (Joyee Cheung) #61463
- [ 4a425b41d9 ] - build,tools : 修复共享库交叉编译 (Kirill Saied) #63963
- [ fe8fa45ff2 ] - cli : 使用 util.styleText 样式化 node --help 输出 (Adrián Estrada) #64484
- [ 3cd1576cb2 ] - crypto : 保留 KDF 失败时的 OpenSSL 错误 (Filip Skokan) #64776
- [ 74b3023565 ] - crypto : 处理 XOF 输出分配失败 (Filip Skokan) #64851
- [ fea0666a1b ] - crypto : 明确缺失的加密错误 (Filip Skokan) #64852
- [ 33fec91b54 ] - crypto : 重用 X509 发行者结果 (Filip Skokan) #64852
- [ 44c1473348 ] - crypto : 验证密钥生成选项 (Filip Skokan) #64852
- [ c2c53a18d ] - crypto : 修复 X509 发行者结果重用问题 (Filip Skokan) #64852
- [ edc1f2126d ] - crypto : 提前初始化 KeyObjectData 互斥锁 (Filip Skokan) #64851
- [ be8237240c ] - crypto : 处理 DH 操作失败 (Filip Skokan) #64851
- [ b65a8f3875 ] - crypto : 保留 RSA-PSS 旧版公钥 DER 格式 (Filip Skokan) #64547
- [ 49f2ae204b ] - crypto : 清理提供方私钥副本 (Filip Skokan) #64547
- [ a5d4ac8208 ] - crypto : 处理不完整的 RSA 私钥 (Filip Skokan) #64547
- [ b72c0b9616 ] - crypto : 保留旧版 DH 验证逻辑 (Filip Skokan) #64547
- [ 24a1be5886 ] - crypto : 将 KangarooTwelveParams 自定义范围限制为 512 字节 (Filip Skokan) #64557
- [ 0290e0a61e ] - crypto : 分离 OpenSSL 3、BoringSSL 和旧版后端 (Filip Skokan) #64211
- [ ba27e72ff8 ] - crypto : 修复 Argon2 绕过 FIPS 模式问题 (Filip Skokan) #64776
- [ c0dd022081 ] - crypto : 使用面向用户的错误提示处理输出编码变更 (Archkon) #64692
- [ ff485a9410 ] - crypto : 将 --use-system-ca 参数改为按环境而非进程配置 (Aditi) #60678
- [ 1329d9b9f1 ] - debugger : 保留重叠的 CDP 请求状态 (Trivikram Kamat) #64467
- [ 82a02336aa ] - deps : V8: 回滚 d259a9e2ead7 (Leszek Swirski) #63865
- [ f0fc82d404 ] - deps : 将 ngtcp2 升级到 1.25.0 (Node.js GitHub Bot) #64944
- [ c4e02f0fbc ] - deps : 将 npm 升级到 11.19.0 (npm team) #64883
- [ d5a57ed4dd ] - deps : 将 nghttp3 升级到 1.18.0 (Node.js GitHub Bot) #64943
- [ 51d413150a ] - deps : 将 minimatch 升级到 10.2.6 (Node.js GitHub Bot) #64945
- [ 21f79ce140 ] - deps : 将 simdjson 升级到 4.6.6 (Node.js GitHub Bot) #64942
- [ 7a4960d6a9 ] - deps : 将 acorn 升级到 8.18.0 (Node.js GitHub Bot) #64941
- [ 5c423aa113 ] - deps : 将 googletest 更新到 1b6f64d659944658a4c685b7bd9f04c1c3b8a39b (Node.js GitHub Bot) #64940
- [ 40561e61b0 ] - deps : 将 nghttp2 升级到 1.70.0 (Node.js GitHub Bot) #64939
- [ 51090925b0 ] - deps : 将 zlib 升级到 1.3.2.1-motley-42c2f19 (Node.js GitHub Bot) #64744
- [ 7c534bf8e5 ] - deps : V8: 回滚 5177b10891e6 (avivkeller) #64631
- [ 7b1898a341 ] - deps : 将 ada 升级到 4.0.0 (Node.js GitHub Bot) #64790
- [ 9209cc4095 ] - deps : 将 sqlite 升级到 3.53.4 (Node.js GitHub Bot) #64745
- [ 3833fceff6 ] - deps : 将 googletest 更新到 fa005b296f90faec4f352d7ab382287bf6548c8d (Node.js GitHub Bot) #64587
- [ bc7ce488d1 ] - deps : histogram: 挑选 62ea52b07ee9b195 (StefanStojanovic) #64296
- [ e3fa05841d ] - deps : 将 histogram 升级到 0.11.10 (Node.js GitHub Bot) #64296
- [ e75bdb9bbe ] - deps : 将 amaro 升级到 1.1.11 (Node.js GitHub Bot) #64586
- [ 1e034e6e40 ] - deps : 将 timezone 更新到 2026c (Node.js GitHub Bot) #64588
- [ 2b8f1f27bd ] - deps : 将 googletest 更新到 8240fa7d62f73e01c7af27d61ed965d6d66698fa (Node.js GitHub Bot) #64439
- [ 241ece0417 ] - deps : 为 riscv64 启用 OpenSSL 汇编支持 (Jamie Magee) #62606
- [ 215105eb90 ] - deps : 将 c-ares 升级到 1.34.8 (Node.js GitHub Bot) #64330
- [ 7ac97fc84e ] - deps : 将 npm 升级到 11.18.0 (npm team) #64199
- [ 8d4cb9ae46 ] - deps : 将 zlib 升级到 1.3.2.1-motley-8b3aa8a (Node.js GitHub Bot) #64295
- [ 564c0f4592 ] - deps : 将 ngtcp2 升级到 1.24.0 (Node.js GitHub Bot) #64297
- [ e3304cd31a ] - deps : 将 nghttp3 升级到 1.17.0 (Node.js GitHub Bot) #64943
- [ 51d413150a ] - deps : 将 minimatch 升级到 10.2.6 (Node.js GitHub Bot) #64945
- [ 080c4d7cda ] - 依赖项:将 ngtcp2 更新至 1.22.0 (Node.js GitHub Bot) #62595
- [ 4309e7c82f ] - 依赖项:将 ngtcp2 更新至 1.21.0 (Node.js GitHub Bot) #62051
- [ 90cf11cfb5 ] - 依赖项:将 nghttp3 更新至 1.15.0 (Node.js GitHub Bot) #61512
- [ e1f315a554 ] - 依赖项:将 ngtcp2 更新至 1.20.0 (Node.js GitHub Bot) #61511
- [ 9a3f690c9d ] - 依赖项:将 ngtcp2 更新至 1.19.0 (Node.js GitHub Bot) #61156
- [ fe88f31764 ] - 依赖项:添加 ngtcp2 测试二进制文件 (James M Snell) #59946
- [ 6d60fce138 ] - diagnostics_channel:扩展原生通道存储 (Stephen Belanger) #64497
- [ 30ae8ab091 ] - 文档:记录 --permission-audit 审计模式行为 (Adrián Estrada) #64791
- [ 8cefc6efa8 ] - 文档:修复确定的拼写错误 (lilianakatrina684-a11y) #62374
- [ 2e78e4b120 ] - 文档:在 fs.stat 中添加 throwIfNoEntry 版本历史 (kovan) #62204
- [ c7a04401cb ] - 文档:修复 dgram 文档中的语法和标点 (Kamal Rawal) #64957
- [ 331e5e8f62 ] - 文档:修复 addons 文档中的语法和编辑问题 (Kamal Rawal) #64952
- [ 232287fcc6 ] - 文档:将 fn/name 正式化为 TestOptions API 的一部分 (Christopher Hiller) #64946
- [ 7f9efeb445 ] - 文档:根据要求移除 ca / crl 作为 QuicSession 选项的上下文相关引用 (René) #64769
- [ b54aa83cc6 ] - 文档:修复 maintaining-dependencies.md 中的拼写错误 (greenhead) #64896
- [ f4e427803c ] - 文档:将 RafaelGSS 添加为最后一位安全发布负责人 (Rafael Gonzaga) #64843
- [ f2cd6df3f3 ] - 文档:修复文档中的拼写错误 (greenhead) #64900
- [ d5627162bd ] - 文档:改进 TestContext 钩子描述 (Kamal Rawal) #64899
- [ 72ee03bd2e ] - 文档:记录 stream.isDestroyed() (YspritanHyzygy) #64789
- [ 995141eb81 ] - 文档:添加关于 git Signed-off-by 尾部的贡献细节 (Mike McCready) #64862
- [ dc30379310 ] - 文档:修复测试快照文档中的重复单词 (Kamal Rawal) #64837
- [ 205d4d0472 ] - 文档:移除过时的 cctest node.gyp 指令 (Soul Lee) #64814
- [ 108b883d0b ] - 文档:在 url.format 中报告正确的返回类型 (Brian Muenzenmeyer) #64806
- [ b03bd3a8ed ] - 文档:明确 tlsSocket.authorized 在恢复时的行为 (soreavis) #64584
- [ 093098ad7f ] - 文档:稳定 --disable-warning 参数 (Jean Michelet) #64742
- [ 2de1d76d80 ] - 文档:为 fs 中的显式资源管理添加 MDN 链接 (lluisemper) #59557
- [ 2e0f36a891 ] - 文档:在 deepStrictEqual 中提及构造函数检查 (Sumit Kumar Das) #62010
- [ 1c9d354d09 ] - 文档:更新技术优先级 (Jacob Smith) #64505
- [ 30c99bf08f ] - 文档:弃用添加更多 codemod (Augustin Mauroy) #63175
- [ 8a971a09eb ] - 文档:运行 license-builder (Node.js GitHub Bot) #63918
- [ 707f6eacfc ] - 文档:明确添加新内置模块的规则 (Antoine du Hamel) #64648
- [ 928208cffc ] - 文档:提及 H1 报告中的 DEPENDENCY 自定义字段 (Rafael Gonzaga) #64634
- [ ee593cadf5 ] - 文档:修复 dnsPromises.lookup 的默认值 (Shivam S) #64658
- [ 9c228b32d1 ] - 文档:修复发布指南中的拼写错误 (Jihwan) #64621
- [ 8125809853 ] - 文档:在发布指南中使用 promote 术语 (Md Muhtasim Munif Fahim) #64371
- [ 2a2effadf6 ] - 文档:修复 vm.SourceTextModule 的 import.meta 示例 (Muhammad Zeeshan) #64112
- [ c879f912bf ] - 文档:提及 crypto.hash() 以实现更优性能 (Steven) #63420
- [ 634afda904 ] - 文档:通过修复错误代码示例更新 sea 示例 (Maxence Robinet) #64025
- [ bced1433a3 ] - 文档:修复 socket.readyState 状态描述 (YuSheng Chen) #64468
- [ 4b2c18938f ] - 文档:将 crypto.md 和 webcrypto.md 中的大表格替换为列表 (Filip Skokan) #64582
- [ 5207231996 ] - 文档:说明 --env-file 不适用于 --run (Paul Bouchon) #64442
- [ 329a2884fd ] - 文档:修复 embedding.md 中的拼写错误 (greenhead) #64425
- [ fab3f56aa1 ] - 文档:修复 contributing 文档中的拼写错误 (Donghoon Kang) #64520
- [ cbc2bed4e8 ] - 文档:记录 TLS alpnProtocol 和 servername 字段 (Tim Perry) #64362
- [ dada3ae60e ] - 文档:修复 devcontainer 指南中的拼写错误 (한만욱) #64459
- [ 71343b28aa ] - 文档:明确签名密钥的 PEM 格式 (Harjoth Khara) #64404
- [ 0544ec1c78 ] - 文档:修复 tls.md 中的拼写错误 (Daijiro Wachi) #64458
- [ 8fe58078e7 ] - 文档:记录 net Socket server 属性 (Efe Karasakal) #64364
- [ d54fd03fa4 ] - 文档:更新 Dispatcher undici 文档链接 (Filip Skokan) #64358
- [ 1bdebecd41 ] - 文档:修复文档中的拼写错误 (Jungwon Sohn) #64466
- [ 86bca58641 ] - 文档:明确 fixes 和 refs 尾部说明指南 (Trivikram Kamat) #64421
- [ b5b84c9394 ] - 文档:为 TestsStream 事件添加作用域概述表格 (Moshe Atlow) #64386
- [ 004238d77c ] - 文档:明确代理威胁模型 (Matteo Collina) #64366
- [ 6851b8d55f ] - 文档:在 pull-requests.md 中添加关于受限 CI 的说明 (Stewart X Addison) #64321
- [ 662e33714a ] - 文档:更新 releases.md 中的多项内容 (Stewart X Addison) #64198
- [ 949bc3cfd3 ] - 文档:移除过时的 --napi-modules 文档条目 (Chengzhong Wu) #64220
- [ 830d16067f ] - 文档:明确 QUIC 流状态描述 (EduardF1) #63660
- [ 79b6704630 ] - 文档:修复 node-config-schema.json 中的拼写错误 (Hamid Reza Ghavami) #64188
- [ 9f5bf554db ] - 文档:修复损坏的链接 (Antoine du Hamel) #65078
- [ 42b27ed428 ] - 文档:从 stream_iter.md 中移除不支持的语法 (Antoine du Hamel) #64649
- [ f1a9df7f22 ] - 文档:明确 fromReadable() 的鸭子类型契约 (Trivikram Kamat) #63682
- [ c7a3d450ac ] - 文档:改进 QUIC 文档 (James M Snell) #63157
- [ cc425bc659 ] - 文档:修复 stream_iter.md 中的 promise 命名 (Antoine du Hamel) #63406
- [ 859a02da96 ] - 文档:对 stream/iter 进行小规模结构调整 (René) #63089
- [ 630b15eb20 ] - 文档:修复 stream_iter.md 中的重复单词拼写错误 (Daijiro Wachi) #62916
- [ 50791fa8fa ] - 文档,测试:扩展 fsPromises.appendFile() 的数据类型,添加缺失的测试 (Jimmy Leung) #64279
- [ 9e39360a09 ] - ESM:改进 ERR_REQUIRE_ASYNC_MODULE 错误信息 (Joyee Cheung) #64260
- [ d2b02e443a ] - ESM:在不求值的情况下打印顶级 await 所需位置 (Joyee Cheung) #64154
- [ e8c153f3f4 ] - events:避免保留已移除的事件名称 (Matteo Collina) #64475
- [ 73e1701bad ] - events:优化 once() 和 removeListener() 方法 (Matteo Collina) #64373
- [ 12f7fc0558 ] - fs:按平台缓存 glob 匹配器关键 (Archkon) #64571
- [ e5af022302 ] - fs:为 matchGlobPattern() 添加模式缓存 (bq) #63915
- [ 63321eeb11 ] - fs:修复 Windows 上 cp 软链接和 EEXIST 处理 (Kirill Saied) #64353
- [ 0ad55e5618 ] - http:修复写入错误后 writableFinished 和 'finish' 的行为 (Tim Perry) #64847
- [ ee54d9d4d2 ] - http:避免在正常关闭时中止 IncomingMessage 信号 (Archkon) #64392
- [ 14cb8b0a06 ] - http:在 checkConnections 中防护无效的超时值 (Efe Karasakal) #64506
- [ f24177ccc6 ] - http:将 highWaterMark 传播到 ClientRequest OutgoingMessage (trivenay) #64653
- [ 55e2c2da8c ] - http:修复 perf_hooks detail.req.url 端口和代理路径 (Stefano Baghino) #64311
- [ b57350fe27 ] - http:从 IncomingMessage._read 中移除未使用的 n 参数 (Efe Karasakal) #64370
- [ af3a17e0b3 ] - http2:在 respond() 中避免复制选项 (Matteo Collina) #64265
- [ f11ac0da37 ] - http2:在 kWriteGeneric 中避免每次写入都创建闭包 (Matteo Collina) #64265
- [ 157bd07b6e ] - http2:减少每个请求的内存分配 (Matteo Collina) #64265
- [ b075b33429 ] - http2:销毁 socket 代理时不再抛出异常 (Matteo Collina) #64427
- [ 445bcce079 ] - inspector:为 node inspect 探针模式添加 --cond 参数 (Joyee Cheung) #64328
- [ 06b54fe7d3 ] - lib:修复 AbortSignal.any() 的 observed-composite 内存泄漏 (Paul Bouchon) #64481
- [ d8fac094d1 ] - lib:修复 _http_client.js 中注释的拼写错误 (agape1225) #64729
- [ 9ce72fd6fb ] - lib:在合适的位置使用 assignFunctionName 工具函数 (Antoine du Hamel) #64515
- [ c40d1473e6 ] - lib,permission:修复 addon 权限降级问题 (Martin Wagner) #64007
- [ 6b09d30a76 ] - lib,tools:添加 node-core/func-name-matching 代码规范规则 (Livia Medeiros) #57901
- [ d7d4f0e2ac ] - loader:在查找前强制执行路径标准化 (Maël Nison) #63917
- [ cf425ad935 ] - meta:将 actions/stale 从 10.3.0 升级到 11.0.0 (dependabot[bot]) #64935
- [ 26fa9cc32b ] - meta:将 github/codeql-action/analyze 从 4.36.2 升级到 4.37.3 (dependabot[bot]) #64934
- [ c90fa82cd7 ] - meta:将 github/codeql-action/autobuild 从 4.36.2 升级到 4.37.3 (dependabot[bot]) #64933
- [ 314893253a ] - meta:将 actions/setup-python 从 6.3.0 升级到 7.0.0 (dependabot[bot]) #64932
- [ 6ab711278f ] - meta:将 github/codeql-action/init 从 4.36.2 升级到 4.37.3 (dependabot[bot]) #64931
- [ 9138f5892a ] - meta:将 Mozilla-Actions/sccache-action 从 0.0.10 升级到 0.0.11 (dependabot[bot]) #64930
- [ 3ef3f934d4 ] - meta:将 github/codeql-action/upload-sarif 从 4.36.2 升级到 4.37.3 (dependabot[bot]) #64927
- [ a0a33127ae ] - meta:将 step-security/harden-runner 从 2.19.4 升级到 2.20.0 (dependabot[bot]) #64926
- [ 4ad2afbf33 ] - meta:将 ossf/scorecard-action 从 2.4.3 升级到 2.4.4 (dependabot[bot]) #64925
- [ d9b2ee4083 ] - meta:为 node_url_pattern.* 添加 @nodejs/url 作为代码负责人 (Efe Karasakal) #64737
- [ 2b43b78e82 ] - meta:将 stale 设置为 3 个月 (Aviv Keller) #64569
- [ 0ffe8352ae ] - meta:将部分合作者移至荣誉合作者名单 (Node.js GitHub Bot) #64315
- [ afd922cd8a ] - meta:将 actions/checkout 从 6.0.2 升级到 7.0.0 (dependabot[bot]) #64245
- [ b6149a2976 ] - meta:将 actions/setup-python 从 6.2.0 升级到 6.3.0 (dependabot[bot]) #64241
- [ 8f4a5c622f ] - meta:在 test-linux-quic 中更新 sccache 版本 (René) #64043
- [ 9040b08696 ] - net:在 Windows 上支持 TCP 句柄传输 (Matteo Collina) #64460
- [ 1216481a09 ] - net:在 net.BoundSocket 中支持 AF_UNIX 路径 (Guy Bedford) #64399
- [ f6bf3f8a5d ] - net:为 BoundSocket 添加同步连接支持 (Guy Bedford) #64375
- [ fb8a7e15ca ] - net:使 TCP 服务器和套接字可在 worker 线程间传输 (Matteo Collina) #64225
- [ 224d2c7886 ] - path:为 path.matchesGlob() 添加基准测试 (bq) #63915
- [ 980c651de5 ] - permission:添加唯一的警告代码 (David Evans) #64414
- [ 9f9a96030d ] - permission:支持 v8.setHeapSnapshotNearHeapLimit (Ilyas Shabi) #64808
- [ 8a00872183 ] - quic:修复停止发送行为及回调 (Tim Perry) #64710
- [ 7aab0c3183 ] - quic:修复覆盖率注释拼写错误 (Jungwon Sohn) #64486
- [ b4ecb3040b ] - quic:修复客户端 Hello 分片后的段错误 (Tim Perry) #64720
- [ 6386540dad ] - quic : 将流重置代码序列化为字符串 (한만욱) #64577
- [ 82717741c9 ] - quic : 延迟在 TLS ClientHello 处理完成前发出服务器会话 (Tim Perry) #64132
- [ 7cb3099907 ] - quic : 关闭后保留会话统计信息 (한만욱) #64489
- [ 50e639b578 ] - quic : 添加对 TLS 证书压缩的支持 (Sebastian Beltran) #64434
- [ e2e28292cc ] - quic : 将传输逻辑从 Application 提取到 Session (Tim Perry) #64127
- [ 2ef4b7ebf2 ] - quic : 修复 HTTP/3 回调并修正暴露的错误 (Marten Richter) #64289
- [ a682b53456 ] - quic : 修复无 onstream 处理器导致的 quic 崩溃 (Efe) #64158
- [ 9445e2719a ] - quic : 修复在没有待处理流时数据报阻塞问题 (Marten Richter) #64303
- [ 2ea9d193bd ] - quic : 修复来自未观察到关闭的潜在崩溃 (Tim Perry) #64134
- [ 3b7f4fc1fb ] - quic : 丢弃包含过大 CIDs 的版本协商数据包 (Mohamed Sayed) #64228
- [ bd477a3202 ] - quic : 修复 QuicStream kInspect 中的未定义 handle (Marten Richter) #64170
- [ 3dd04b3ec6 ] - quic : 修复 get_reader 在 FIN 时丢弃数据的错误 (Tim Perry) #63946
- [ 4be8abe8f9 ] - quic : 将 QUIC 证书暴露为 JS X509Certificate 而非原始句柄 (Tim Perry) #63191
- [ e264c5c0cb ] - quic : 修复空闲连接上读者背压死锁问题 (Tim Perry) #63950
- [ 2f749dde18 ] - quic : 实现 HTTP/3 设置/应用选项的回调 (Marten Richter) #63558
- [ 5ca7ef3202 ] - quic : 修复损坏的 listEndpoints 导出,测试回调及 nghttp3 包含 (Tim Perry) #63874
- [ 147150cfdd ] - quic : 添加 listEndpoints API (James M Snell) #63536
- [ 3b59d12f5d ] - quic : 为 QUIC 失败添加适当的错误码和信息 (Tim Perry) #63198
- [ b68f8eadb9 ] - quic : 支持主机名验证 (James M Snell) #63483
- [ 7652bd9c6d ] - quic : 添加流空闲超时 (James M Snell) #63483
- [ e493f04214 ] - quic : 为端点添加黑名单支持 (James M Snell) #63483
- [ 6d6cd45f8b ] - quic : 改进对等证书验证 (James M Snell) #63483
- [ dbe0b371ee ] - quic : 处理 h3 最大报头大小选项 (James M Snell) #63483
- [ 39dca4150c ] - quic : 添加速率限制文档 (James M Snell) #63483
- [ c726a893d6 ] - quic : 为地址 LRU 缓存缓存时间戳 (James M Snell) #63483
- [ 11778a7925 ] - quic : 添加会话创建速率限制 (James M Snell) #63483
- [ 8107f1b3ed ] - quic : 优化速率限制 (James M Snell) #63483
- [ 3f0d7371e0 ] - quic : 将首选地址策略默认值更改为 'ignore' (James M Snell) #63483
- [ 97c8a96774 ] - quic : 添加关于证书大小限制的文档说明 (James M Snell) #63483
- [ 42aa3f6612 ] - quic : 向会话添加 applicationOptions (James M Snell) #63267
- [ 4c00ab9d29 ] - quic : 添加本地和远程传输参数的获取器 (James M Snell) #63267
- [ 858b636576 ] - quic : 改进接收合并测试大小 (James M Snell) #63267
- [ 84d3100256 ] - quic : 向会话选项添加初始 RTT 选项 (James M Snell) #63267
- [ a2b6a81c66 ] - quic : 在 Endpoint 中启用 recvmmsg 批处理 (James M Snell) #63267
- [ 46a0868994 ] - quic : 改进流报头收集性能 (James M Snell) #63267
- [ bc7f4efdb7 ] - quic : 将接收数据合并到更少的缓冲区中 (James M Snell) #63267
- [ f727efb8b2 ] - quic : 应用多个其他小改进 (James M Snell) #63267
- [ ee0a0f1540 ] - quic : 修复缺少服务器端点关闭的测试 (James M Snell) #63267
- [ f8a1fdad07 ] - quic : 修复一些 v8:: 限定符 (James M Snell) #63267
- [ c66605609c ] - quic : 修复在监听时端点过早解除引用的问题 (James M Snell) #63267
- [ 9a72949b0b ] - quic : 修复绑定数据、流和应用中的悬空指针问题 (James M Snell) #63267
- [ a4db12198e ] - quic : 修复 Application::OnTimeout() 中的悬空指针问题 (James M Snell) #63267
- [ 0a11b2ccde ] - quic : 优化 quic js 结构 (James M Snell) #63267
- [ 1bc25d2a03 ] - quic : 优化 QuicStream 的内部结构 (James M Snell) #63267
- [ 69e48aed02 ] - quic : 添加别名结构体内存池 (James M Snell) #63267
- [ 6b7185351b ] - quic : 添加握手超时和默认连接限制 (James M Snell) #63267
- [ 91e3c39097 ] - quic : 修复早期握手失败导致的崩溃 (James M Snell) #63267
- [ 098e3d715d ] - quic : 消除每个接收数据报的内存分配 (James M Snell) #63267
- [ 53b05e2ab2 ] - quic : 在发送和接收时缓存时间戳 (James M Snell) #63267
- [ 1592a11219 ] - quic : 添加对未来 ECN 标记的支持 (James M Snell) #63267
- [ 80e6bf9539 ] - quic : 优化数据包发送的批处理机制 (James M Snell) #63267
- [ ff0cd5b95f ] - quic : 优化后端 quic 数据包处理流程 (James M Snell) #63267
- [ c4eb6a95da ] - quic : 在 ALPN 不匹配时发送正确的 OpenSSL 警告 (Tim Perry) #63193
- [ 575dc7d100 ] - quic : 修复 quic 流变量块长度问题 (James M Snell) #63230
- [ 2551f9e6dd ] - quic : 移除 session_manager.h/cc 中未使用的 env_ 变量 (James M Snell) #63177
- [ bea62a14b3 ] - quic : 忽略 quic 文件的覆盖率统计 (James M Snell) #63149
- [ 9788bbff97 ] - quic : 完成 QUIC 的内部实现 (James M Snell) #62876
- [ 54c094d245 ] - quic : 继续完善 quic api 的实现细节 (James M Snell) #60123
- [ ea82bc418d ] - readline : 减少 createInterface 的性能开销 (Matteo Collina) #64585
- [ 90a8b23db0 ] - sqlite : 关闭数据库时使会话失效 (Trivikram Kamat) #64783
- [ 6abd00ed65 ] - sqlite : 调用 SQLite 前检查数据库状态 (Trivikram Kamat) #64812
- [ c2a52514d6 ] - sqlite : 修复会话超出数据库生命周期时的崩溃问题 (Mohamed Sayed) #63797
- [ f9126923ef ] - sqlite : 修复 Exec() 和 ApplyChangeset() 中的悬空指针问题 (Matteo Collina) #64535
- [ c010131bc3 ] - sqlite : 在 StatementSync.all() 中 step 后读取列数 (Guilherme Araújo) #64219
- [ 782ad5d5b0 ] - src : 为 ByteSource 实现 MemoryRetainer 协议 (Filip Skokan) #64660
- [ 4afc15bf1d ] - src : 避免 KEM 封装的冗余内存拷贝 (Filip Skokan) #64553
- [ 37085f850d ] - src : 修复通过 Writev 写入奇数长度十六进制字符串时的崩溃问题 (RajeshKumar11) #63658
- [ f58ac8224c ] - src : 在 crypto_hash 中避免使用 ToLocalChecked (James M Snell) #64668
- [ 05ec9c4771 ] - src : 修复 Windows 上 libuv 的断言问题 (liuxingbaoyu) #61999
- [ 308a589ee9 ] - src : 避免 DataPointer 的冗余内存重新分配 (Filip Skokan) #64552
- [ 3650fabcb4 ] - src : 修复注释中的拼写错误 (Jungwon Sohn) #64509
- [ 06b3441ea2 ] - src : 在 node_credentials.cc 中将 cap_data 零初始化 (Samuel Kapust) #64347
- [ bb24a88b99 ] - src : 修复一些拼写错误并重命名部分变量 (Archkon) #64301
- [ ba36ab71fd ] - src : 使 node.config.json 在遇到未知字段时抛出异常 (Marco Ippolito) #62992
- [ fbb3960189 ] - src : 在 FileHandle GC 关闭错误中显示原始文件名 (Anna Henningsen) #60593
- [ d53d582be7 ] - src,permission : 审计模式下禁止因访问被拒而抛出异常 (Adrián Estrada) #64426
- [ b1596c2b65 ] - stream : 在 pipeTo 中减少每个块的内存分配 (Matteo Collina) #64890
- [ 2cfa96f5cb ] - stream : 保留推送信号的中止原因 (Trivikram Kamat) #64798
- [ fc80ff5f7a ] - stream : 跳过零字节的广播写入 (Trivikram Kamat) #64772
- [ 486cff4c08 ] - stream : 在 Writer.end() 中遵循 AbortSignal (Trivikram Kamat) #64727
- [ 59ef1789f7 ] - stream : 使用 validateString 验证消费者编码 (Jungwon Sohn) #64754
- [ 8aba47536a ] - stream : 为待处理的 BYOB pull-into 描述符使用环形缓冲区 (Matteo Collina) #64818
- [ b20217cb56 ] - stream : 修复关闭半开 Duplex.toWeb() 可写流时无法捕获的错误 (Mohamed Sayed) #64161
- [ 8accb0c4c0 ] - stream : 中止待处理的单源合并读取 (Trivikram Kamat) #64445
- [ ed5b04027c ] - stream : 使用 RangeError 处理广播溢出 (Trivikram Kamat) #64420
- [ 136d4e7628 ] - stream : 跳过状态转换中产生的 null 输出 (Trivikram Kamat) #64462
- [ 193091f1ba ] - stream : 更新可迭代流以使用预算反压机制 (James M Snell) #64464
- [ e2b32fce77 ] - stream : 移除自定义 CloneableDOMException 实现 (Antoine du Hamel) #64469
- [ d77788eafe ] - stream : 修复 share() 中 drop-newest 的行为 (Trivikram Kamat) #64417
- [ de4ca2c962 ] - stream : 将 desired-size 检查合并到 WHATWG 反压更新中 (Matteo Collina) #64451
- [ 2a3babb8d7 ] - stream : 验证 writer 选项中的信号 (Trivikram Kamat) #64385
- [ 0ab8f269b0 ] - stream : 用错误拒绝 push 迭代器的 throw() 方法 (Trivikram Kamat) #64380
- [ 262e6545d1 ] - stream : 简化嵌套的 PromisePrototypeThen (Antoine du Hamel) #64470
- [ 0ddfc6af91 ] - stream : 为 WHATWG 流请求队列使用环形缓冲区 (Matteo Collina) #64431
- [ a5e7d89f9e ] - stream : 在排队前验证 writevSync 块 (Trivikram Kamat) #64300
- [ 8044f895bf ] - stream : 提升默认 WHATWG 流的读取和迭代速度 (Matteo Collina) #64320
- [ d4dfb66bdf ] - stream : 在迭代消费者中复制 SAB-backed 块 (Trivikram Kamat) #64382
- [ 9c9ade337f ] - stream : 在 from() 中拒绝嵌套的异步流对象 (Trivikram Kamat) #64352
- [ 271c7454f4 ] - stream : 避免排空合并的迭代源 (Trivikram Kamat) #64293
- [ cbb2568a04 ] - stream : 为 WHATWG 流队列使用环形缓冲区 (Yagiz Nizipli) #64312
- [ 67688cc651 ] - stream : 将可读路径中的重复加载提升 (Yagiz Nizipli) #64312
- [ 3f8b446a67 ] - stream : 在 fromSync 中优先使用同步迭代器 (Trivikram Kamat) #64294
- [ 3043b2a68a ] - stream : 提升 WHATWG 字节流的异步迭代速度 (Antoine du Hamel) #64291
- [ 870273ccde ] - stream : 在中止时拒绝迭代消费者 (Trivikram Kamat) #64066
- [ 8a4a997f3e ] - stream : 修复合并中止时的待处理源 (Trivikram Kamat) #64013
- [ ac5e5d5dec ] - stream : 移除不必要的可选链语法 (Antoine du Hamel) #64253
- [ cb298cfb15 ] - stream : 规范化 Broadcast.from() 的字节输入 (Trivikram Kamat) #64082
- [ bbbbb4aadef ] - stream : 在等待 pipeTo 源时观察中止状态 (Trivikram Kamat) #64015
- [ 4387ad412f ] - stream : 遵循迭代消费者中的中止信号 (Trivikram Kamat) #63997
- [ 4ba1fa0062 ] - stream : 处理推送写入器中无效的失败原因 (Trivikram Kamat) #63569
- [ 3b8c30c096 ] - stream : 处理缓冲数据后的 setEncoding (Matteo Collina) #63973
- [ 97ef13c84e ] - stream : 保留重叠的广播读取请求 (Trivikram Kamat) #63500
- [ a46ddad9fa ] - 流 : 优化流/迭代器的反压机制 (James M Snell) #63697
- [ 557bf99245 ] - 流 : 移除 pipeTo 中的 transform-writer 处理 (Trivikram Kamat) #63684
- [ 24b7831a1a ] - 流 : 修复 pipeToSync 的字节计数问题 (Trivikram Kamat) #63564
- [ 3b5f1b56bc ] - 流 : 在中止时拒绝 pull() 读取操作 (Trivikram Kamat) #63498
- [ e48e287633 ] - 流 : 优化无状态转换的 flush 结果处理 (Trivikram Kamat) #63605
- [ f0ee316f45 ] - 流 : 在 pipeTo 中处理同步 writev 完成 (Trivikram Kamat) #63561
- [ fbed90b2fb ] - 流 : 在返回时处理待定的广播读取 (Trivikram Kamat) #63603
- [ 568dcc250f ] - 流 : 序列化共享消费者读取的并发操作 (Trivikram Kamat) #63478
- [ 5e2b4c4ade ] - 流 : 修复 lint 错误 (Antoine du Hamel) #63598
- [ 74bd0cd35a ] - 流 : 在迭代器抛出异常时拒绝待定读取 (Trivikram Kamat) #63555
- [ 45780df841 ] - 流 : 等待推送写入器结束并回退到排水操作 (Trivikram Kamat) #63503
- [ 217b495e0a ] - 流 : 对每个融合的无状态转换执行刷新 (Trivikram Kamat) #63468
- [ 2e8685592e ] - 流 : 避免在 toWritable 中重复写入 (Trivikram Kamat) #63360
- [ 88a3392a78 ] - 流 : 在共享和广播中传播中止原因 (Trivikram Kamat) #63358
- [ fce3df74e9 ] - 流 : 禁止使用 'buffer' 编码写入字符串块 (René) #63062
- [ 5658c631fa ] - 流 : 使 Readable.toWeb 终止与 eos 对齐 (ikeyan) #62394
- [ 02a51a746b ] - 流 : 为 pipeTo 添加同步可迭代对象快速路径 (Trivikram Kamat) #63318
- [ 4c9f3edb64 ] - 流 : 修复对象类型源的合并处理 (Trivikram Kamat) #63356
- [ c50d8e49cc ] - 流 : 限制同步可迭代对象批次的迭代器 (Trivikram Kamat) #63324
- [ 1d7c86d577 ] - 流 : 在广播中缓存最小光标计数 (Trivikram Kamat) #63322
- [ ec2666edbe ] - 流 : 避免重复已接受的 pipeTo 写入操作 (Trivikram Kamat) #63297
- [ f63143fd83 ] - 流 : 验证广播写入器的 writev 数据块 (Trivikram Kamat) #63300
- [ 944470b08a ] - 流 : 在 chunk 错误时从 fromWritable writev 中解除阻塞 (Trivikram Kamat) #63295
- [ ae79f2b67a ] - 流 : 在缓存前验证 fromWritable() 选项 (Trivikram Kamat) #63278
- [ c98cc67f33 ] - 流 : 优化单槽位推送队列排水操作 (Trivikram Kamat) #63274
- [ 9a45ff5d8f ] - 流 : 在反压后保留 toReadableSync 批次 (Trivikram Kamat) #63276
- [ eb72fe94fc ] - 流 : 在共享中缓存最小光标计数 (Trivikram Kamat) #63262
- [ b57b51eeed ] - 流 : 对流/迭代器实现进行小幅修改 (René) #63132
- [ 274b3a2ea1 ] - 流 : 移除 iter.pipeToSync 中的冗余方法检查 (René) #63099
- [ baf98faa06 ] - 流 : 将流/迭代器添加到经典流适配器 (James M Snell) #62469
- [ 28dc85d8d2 ] - (SEMVER-MINOR) 流 : 添加流/迭代器实现 (James M Snell) #62066
- [ 125c19da43 ] - 流, quic : 更新可迭代流的反压机制 (James M Snell) #64464
- [ 11d1bd3ba7 ] - 测试 : 拆分 test-embedding.js 并并行运行测试 (Joyee Cheung) #61571
- [ e59346b704 ] - 测试 : 确保所有测试都能到达断言 (Antoine du Hamel) #64716
- [ 42a967d7ed ] - 测试 : 使调试器和 REPL 测试不再不稳定 (Matteo Collina) #64718
- [ d80a45fdc4 ] - 测试 : 更新 WPT 的 url 至 4832db4761 (Node.js GitHub Bot) #64829
- [ 7264efb21b ] - 测试 : 更新 WPT 的 url 至 b63305b743 (Node.js GitHub Bot) #64790
- [ 539f5dc8f9 ] - 测试:覆盖 worker 抛出原始值的情况 (varshitha) #64365
- [ 087d9e8dd0 ] - 测试:将 test-repl-user-error-handler 标记为不稳定测试 (Aviv Keller) #64612
- [ dd1e7139a5 ] - 测试:更新 quic 测试以适配 stream/iter 更新 (James M Snell) #64464
- [ eee0e84537 ] - 测试:修复 http2 socket 代理测试的不稳定问题 (Tim Perry) #64673
- [ a5ce44dd75 ] - 测试:修正注释内容 (Rich Trott) #64524
- [ da8508c5a0 ] - 测试:确保 before-exit 引用在最终化前保持存活 (Tim Perry) #64521
- [ 14b710c415 ] - 测试:校对 test-tls-psk-alpn-callback-exception-handling 文档 (Antoine du Hamel) #63485
- [ 99b7382c6a ] - 测试:修复 async-context-frame 状态条目过期问题 (Kirill Saied) #64141
- [ 6da6ca730d ] - 测试:将 WPT 中 urlpattern 更新至 5847ee5cfa (Node.js GitHub Bot) #64436
- [ 73bf0f07f1 ] - 测试:将 WPT 中 WebCryptoAPI 更新至 ec2fee39a4 (Node.js GitHub Bot) #64435
- [ 9a7ec52e6f ] - 测试:修复 http2 maxOriginSetSize 测试的不稳定问题 (Tim Perry) #64407
- [ 59af7e0ed9 ] - 测试:修复第二个 blob 不稳定测试用例 (Tim Perry) #64391
- [ 7fd5f66376 ] - 测试:修复 watch + cwd + argv 测试运行器的不稳定问题 (Tim Perry) #64372
- [ d5b47d2fae ] - 测试:规范化 Windows 调试器测试中的崩溃信息 (Joyee Cheung) #64332
- [ a8ae44096d ] - 测试:取消标记 Win 平台 http2-large-file 的不稳定状态 (Kirill Saied) #64255
- [ 8461d18597 ] - 测试:增加 consumed-timeout 测试的超时时间 (Trivikram Kamat) #64204
- [ af52410d70 ] - 测试:在 spawnSyncAndAssert 工具中处理 null stdio 流 (Joyee Cheung) #64273
- [ 0ea079be7b ] - 测试:移除 tier-up 变更对 worker 栈大小测试的影响 (Joyee Cheung) #64271
- [ 1bde0ef053 ] - 测试:将 WPT 中 WebCryptoAPI 更新至 0c413fb56b (Node.js GitHub Bot) #63647
- [ f32b412867 ] - 测试:移除不必要的 AbortController 实例化 (Antoine du Hamel) #63489
- [ 8cbd90161b ] - 测试:将 WPT 中 wasm/jsapi 更新至 288c467d35 (Node.js GitHub Bot) #63136
- [ f200aaccf0 ] - 测试:修复 quic 测试 (James M Snell) #63267
- [ 14c547351b ] - (SEMVER-MINOR) 测试:为实验性 stream/iter 实现添加测试 (James M Snell) #62066
- [ 2cc54e1793 ] - 测试:跳过 IBM i 不支持的 quic 测试 (SRAVANI GUNDEPALLI) #60160
- [ 8ec80b311b ] - test_runner:等待过滤套件构建 (semimikoh) #64208
- [ 9ed7146851 ] - test_runner:反序列化时转换为 uint (Aviv Keller) #64706
- [ 8d97dee696 ] - tests:开始添加 quic 测试服务工具 (James M Snell) #59946
- [ e5278b7f7d ] - timers:触发后不再保留对异步存储的引用 (Matteo Collina) #53443
- [ e277bc4608 ] - tls:修复 SNICallback 证书选择逻辑 (Matteo Collina) #64700
- [ b9104decc3 ] - tls:匹配 IPv6 主机的 IP-Address SAN (Pascal Garber) #64145
- [ b50139e89f ] - tools:更新 /tools/eslint 中的 eslint group 至 4 项更新 (dependabot[bot]) #64928
- [ 5460c464a0 ] - tools:将 /tools/eslint 中 brace-expansion 从 5.0.7 升级至 5.0.9 (dependabot[bot]) #64904
- [ f8a13811cd ] - tools:为 EventSource 全局对象添加 'readonly' 修饰符 (Honey Tyagi) #64787
- [ 6e10012c0d ] - tools:将 /tools/eslint 中 brace-expansion 从 5.0.6 升级至 5.0.7 (dependabot[bot]) #64636
- [ d66b7588ac ] - tools:在 merge.sh 的 PR-URL 错误信息中引用 'git node land' (Stewart X Addison) #64495
- [ 5d90e48175 ] - tools:在 GHA 中禁用 tarball 压缩 (Antoine du Hamel) #64423
- [ 8a909f4540 ] - 工具:修复 v8.gyp 中针对 riscv64 和 loong64 的冗余条件 (Jamie Magee) #62608
- [ 9e171710fa ] - 工具:从工作流中移除 envinfo (Antoine du Hamel) #64259
- [ 3fb722054f ] - 工具:避免 test/fixtures/wpt/README.md 冲突 (Filip Skokan) #63938
- [ 5755712920 ] - 工具:为已中止的 AbortController 添加 lint 规则 (Trivikram Kamat) #63541
- [ e88d5b78bc ] - 类型定义:添加 heap_utils internalBinding 类型 (Donghoon Kang) #64816
- [ ae93bc8ad1 ] - 类型定义:从类型绑定中移除 isDataView (Archkon) #64738
- [ c00bd1427d ] - URL:按 WebIDL 顺序创建 URLPattern 结果属性 (Archkon) #64733
- [ 8a07969e28 ] - 工具:使 MIMEParams 访问器不区分大小写 (Daijiro Wachi) #64123
- [ bf86741167 ] - V8:在 GCProfiler 中报告次要标记-清除 (Archkon) #64688
- [ 9016ddabb9 ] - WASM:注册缺失的 SetURL 函数 (Archkon) #64679
- [ e599b9428b ] - zlib:将 pledgedSrcSize 验证为安全整数 (Archkon) #64604
- [ 1f1adc89da ] - zlib:在 Zstd 中接受 ArrayBuffer 字典 (Ryuhei Shima) #64599
- [ 0ee91ead8b ] - zlib:拒绝截断的 zstd 输入 (Archkon) #64593
Windows 64位安装程序:https://nodejs.org/dist/v24.20.0/node-v24.20.0-x64.msi Windows ARM 64位安装程序:https://nodejs.org/dist/v24.20.0/node-v24.20.0-arm64.msi Windows 64位二进制文件:https://nodejs.org/dist/v24.20.0/win-x64/node.exe Windows ARM 64位二进制文件:https://nodejs.org/dist/v24.20.0/win-arm64/node.exe macOS 64位安装程序:https://nodejs.org/dist/v24.20.0/node-v24.20.0.pkg macOS Apple Silicon 64位二进制文件:https://nodejs.org/dist/v24.20.0/node-v24.20.0-darwin-arm64.tar.gz macOS Intel 64位二进制文件:https://nodejs.org/dist/v24.20.0/node-v24.20.0-darwin-x64.tar.gz Linux 64位二进制文件:https://nodejs.org/dist/v24.20.0/node-v24.20.0-linux-x64.tar.xz Linux PPC LE 64位二进制文件:https://nodejs.org/dist/v24.20.0/node-v24.20.0-linux-ppc64le.tar.xz Linux s390x 64位二进制文件:https://nodejs.org/dist/v24.20.0/node-v24.20.0-linux-s390x.tar.xz AIX 64位二进制文件:https://nodejs.org/dist/v24.20.0/node-v24.20.0-aix-ppc64.tar.gz ARMv8 64位二进制文件:https://nodejs.org/dist/v24.20.0/node-v24.20.0-linux-arm64.tar.xz 源代码:https://nodejs.org/dist/v24.20.0/node-v24.20.0.tar.gz 其他发布文件:https://nodejs.org/dist/v24.20.0/ 文档:https://nodejs.org/docs/v24.20.0/api/
SHASUMS
-----BEGIN
PGP
签名消息-----
哈希:
SHA256
14b5bd7ad40ab5f4715fb4e2f964858d820d9425fe291d3d65f98926e6b89c1e
node-v24.20.0-aix-ppc64.tar.gz
15130c76b7a3a5f58233a3c383944ebd0da924d2fc80e50916769a4b7b9af6f8
node-v24.20.0-arm64.msi
40e5607e5ecb3db9192723776da2d75d966260fc74a7a9e731c1bd67dda96bc8
node-v24.20.0-darwin-arm64.tar.gz
b7bf7707070b950ba1ec5f1af3bb6de0f2b1962c5033973d94068ab021ef3014
node-v24.20.0-darwin-arm64.tar.xz
9e5b2644cf107befb6aefca676b96d3296bc10138096f022ed378d6233ed81f4
node-v24.20.0-darwin-x64.tar.gz
26fc30891004603d094eed11de5efcd03bbd2efbc35c177fc72648d5d7a7701b
node-v24.20.0-darwin-x64.tar.xz
7b2141e77e66ab23ead6b200c546afc5837136e3075d8a3ac5a67e540dcc59c1
node-v24.20.0-headers.tar.gz
2732fc3f588dd335cd6779c06864f7cd424bb1b5ff9a1743059a66c54f9ca4a1
node-v24.20.0.tar.xz
92949e7764e56e305cb84ea3d575912e822c79e85599362e8d408b04b9ffd326
win-arm64/node.exe
88dea6ff6656445ee22ed8843816d8d90d707c3d05228bd0a3ad56ea30e8a395
win-arm64/node.lib
d5e5a9043145392e4db85567d34abf7c070126ad35d2a7ee40399af2a5482f04
win-arm64/node_pdb.7z
07725b0c16bd32876f44a0315e251aafa84568b0b1d98c9b76991873174e2637
win-arm64/node_pdb.zip
5c976096e04e5c2c1f091938926234cc9fbebfe9787ddd149351b3b0ecc707b5
win-x64/node.exe
63ec831bbf164d1b23197d6fac1944dfb146534e332889ca0755d250e8dedff9
win-x64/node.lib
491cc4a1487a8b2e32dd469a1d5fd59296bd96ae009fc426309354f4aaa5d396
win-x64/node_pdb.7z
27a5ed0f346bb2ca58e6429a2f0082016433126e80c646b0def96cb547422ea1
win-x64/node_pdb.zip
-----BEGIN
PGP
签名-----
iHUEARYIAB0WIQRb6KP2yKXAHRBsCtggsaOQsWjTVgUCao73YAAKCRAgsaOQsWjTVgY5AP9hgzGRThBJscP/dA2MkF0KwXP7K989SLyPFpGMqtjdCwEA+PqpfxC5m4Ul
IG1x2GxuiSI9aeLxQQ5KiojtpyQalw4=
=byQt
-----END
PGP
签名-----上一版本
Node.js 26.8.0 (当前)
下一版本
Node.js 26.7.0 (当前)