Node.js 24 (LTS) 在 Windows 上放弃 MSVC — 现在需要 ClangCL 来构建 Node 和本地模块
关键更新
Node.js 24 于 2025 年 10 月 28 日进入 LTS,Node.js 项目移除了在 Windows 上构建 Node 的官方 MSVC 支持:现在编译 Node 及其本地组件的支持 Windows 工具链是 ClangCL。此更改是 Node 24 发布的一部分,影响任何从源代码构建 Node 或在 Windows 上编译本地插件的用户。
为什么这很重要
这是一个实际的、非外观上的更改,可能会破坏或复杂化现实世界的开发者工作流程。依赖于 Visual Studio 构建工具(MSVC/MSBuild)来编译 Node、node-gyp 或本地 npm 模块的工具和 CI 必须切换到基于 ClangCL 的工具链或使用官方预构建的二进制文件。预计需要:更新 Windows CI 镜像和运行器以安装 Clang/ClangCL 及匹配的 Windows SDK;重建并测试所有本地插件(ABI/CRT 差异可能会暴露错误或未定义行为);验证构建工具,如 node-gyp、本地构建脚本和预构建管道是否与 ClangCL 兼容;并在本地依赖项在暂存环境中得到验证之前,固定生产 Node 二进制文件。
团队的可操作优先事项:首先,使用官方 Node 24 LTS 二进制文件对您的生产应用程序和所有本地依赖项进行冒烟测试;其次,如果您在 Windows 上的 CI 中构建 Node 或本地模块,请用 ClangCL 镜像替换 MSVC 镜像,并运行完整的本地测试矩阵;第三,如果您分发本地二进制文件,请在预构建管道中添加 ClangCL 构建目标,并将新的 Windows 兼容性要求传达给下游消费者。如果立即切换工具链不可行,请继续使用 Node 项目提供的 Node 二进制文件(不从源代码构建),同时进行验证和迁移。
来源
继续阅读
TypeScript 的原生 Go 移植 (项目 Corsa) 实现了 ~10 倍的类型检查速度提升
2025年11月29日微软的 TypeScript 团队已将编译器和语言服务移植到 Go(项目 Corsa),产生了显著的实际速度和内存改进,并发布了原生预览供早期测试。
Node.js 标记内置 TypeScript 类型剥离稳定 (v25.2.0)
2025年11月28日Node.js v25.2.0(2025年11月11日)将运行时 TypeScript '类型剥离' 提升为稳定版本——可以直接使用 node 运行多个 .ts 文件,但有重要的实际注意事项。
Docker 修复嵌套依赖中的关键 RCE,向 LangChain.js 提交上游修复
2025年11月27日Docker 发现并修复了根植于 expr-eval 依赖中的关键 RCE (CVE-2025-12735),用一个受维护的替代品替换了它,并将修复提交给 LangChain.js——影响 Kibana 和许多 LLM 应用。