微软将于明年年初发布TypeScript 原生移植版

作者: CBISMB

责任编辑: 邹大斌

来源: CBISMB

时间: 2025-12-05 09:32

关键字: TypeScript,Go,JavaScript

浏览: 444

点赞: 22

收藏: 1

微软近日表示,其计划中的 TypeScript 7.0 版本——一项通过将 TypeScript 语言服务和编译器移植到原生代码以提升性能、内存占用和并行能力的重大工程——已取得显著进展。与此同时,即将发布的 TypeScript 6.0 将是最后一个基于 JavaScript 的 TypeScript 版本,作为当前 TypeScript 5.9 与未来的 TypeScript 7.0 之间的过渡版本。

在 12 月 2 日的博客文章中,微软更新了代号为 “Project Corsa” 的 TypeScript 7.0 项目进展。该项目于今年 3 月首次公布,采用 Google 的 Go 语言开发。TypeScript 主产品经理丹尼尔·罗森瓦瑟(Daniel Rosenwasser)表示,尽管这项工作规模庞大,但已取得重大突破。微软目标是在 2026 年初 同时发布 TypeScript 6.0 和 7.0。相关代码已在 GitHub 上公开,位于 TypeScript-go仓库。

罗森瓦瑟指出,在语言服务方面,TypeScript 7.0 已实现并良好运行了构成现有编辑体验的大部分功能,尽管仍有部分特性正在移植中。此外,语言服务的部分架构已被重新设计,以提升可靠性,并充分利用共享内存并行机制。开发者现可通过 Visual Studio Code Marketplace 获取最新预览版的语言服务插件。

在编译器方面,原生移植也进展顺利。TypeScript 7.0 的类型检查功能已接近完成。罗森瓦瑟提到,一个常见问题是:“使用 TypeScript 7.0 来验证构建是否‘安全’?”换句话说,TypeScript 7.0 编译器能否可靠地发现与 TypeScript 5.9 相同的错误?答案是肯定的。他解释说,目前约有 20,000 个编译器测试用例,其中约 6,000 个在 TypeScript 6.0 中会至少产生一个错误;而在除 74 个以外的所有情况下,TypeScript 7.0 同样能检测到至少一个错误。因此,开发者现在就可以放心使用 TypeScript 7.0 进行项目类型检查。

此外,命令行编译器在单次扫描/单项目类型检查之外,也已实现主要功能对等:包括 --incremental(增量编译)、项目引用支持(project references)和 --build 模式等功能均已成功移植并正常运行。

TypeScript 7.0 将移除 TypeScript 6.0 中计划弃用的行为和标志。TypeScript 6.0 即将弃用的功能列表可在 GitHub issue 跟踪器中查看。不过,在代码生成(emit)、--watch 模式和 API 支持方面,JavaScript 流水线尚未完全完成。罗森瓦瑟表示,对于不需要从 TypeScript 生成 JavaScript 代码的开发者来说,直接使用 tsgo 进行构建已可正常工作。另外,TypeScript 7.0(即 Corsa)将不再支持现有的 Strada API,而 Corsa 自身的 API 仍在开发中。

关于 TypeScript 6.0,微软明确表示不会发布 6.1 版本,尽管可能会推出针对 6.0 的补丁更新。罗森瓦瑟强调:“你可以把 TypeScript 6.0 看作是从 TypeScript 5.9 到 7.0 的‘桥梁’版本。它将弃用一些特性以与 7.0 对齐,并在类型检查行为上保持高度兼容。” 微软的目标是确保 TypeScript 6.0 与 7.0 在功能和行为上尽可能一致,从而实现平滑过渡。

©本站发布的所有内容,包括但不限于文字、图片、音频、视频、图表、标志、标识、广告、商标、商号、域名、软件、程序等,除特别标明外,均来源于网络或用户投稿,版权归原作者或原出处所有。我们致力于保护原作者版权,若涉及版权问题,请及时联系我们进行处理。