TypeScript 原生预览(基于 Go 的 'Corsa')提供 ~10 倍的类型检查速度提升

TypeScript工具开发工具

关键更新

微软发布了基于 Go 的 TypeScript 编译器的原生预览(项目 Corsa)。该预览提供了一个 npm 包(@typescript/native-preview),包含一个名为 tsgo 的可执行文件和一个 Visual Studio Code 的 "TypeScript (Native Preview)" 扩展;在大型真实世界的代码库中,原生移植在基准测试中将完整项目的检查时间从几分钟缩短到个位数秒(大约 10 倍的速度提升),尽管某些命令行和编辑器功能(例如 --build、声明发出以及某些 LSP 功能如重命名/查找所有引用/自动导入)仍在待实现中。 (devblogs.microsoft.com)

重要性

对于大型单一代码库和编辑器响应性,实际影响是立竿见影的:团队可以在本地和 CI 中快速运行整个代码库的类型检查,而不必经历之前迫使进行部分检查或较慢的开发工作流程的漫长等待。更快的类型检查还使得更激进的 IDE 功能成为可能,并使高级重构和整个项目的诊断变得可行。然而,迁移应分阶段进行——原生预览适合实验(尝试在本地使用 tsgo 和 VS Code 预览),但在功能齐全(构建/声明/LSP 功能齐全)之前,您应保留稳定的编译器用于生产关键构建。与 tsc 集成的工具(构建系统、打包工具、语言服务器消费者)可能需要更新,因为原生移植暴露了不同的 IPC/API 方法(包括一个新的同步 RPC 补丁),因此在紧密集成时可能需要一些工作。简而言之:一旦成熟,对开发者生产力和 CI 速度来说是巨大的胜利,但应逐步采用并验证工作流程中的功能差距。 (devblogs.microsoft.com)

来源

继续阅读