- Bun 将超过一百万行代码从 Zig 迁移到 Rust,以增强内存安全性和长期稳定性。
- 此次重写工作仅用了几周时间,利用人工智能代理完成,在 Linux x64 上的测试兼容性达到了 99.8%。
- 此举有助于扩大贡献者群体,并加强为 Anthropic 的 Claude Code 提供支持的基础设施。
长期以来,科技界一直关注着 Bun 如何凭借其在 JavaScript 运行时领域的卓越速度脱颖而出。Bun 最初是 Jarred Sumner 的一项大胆尝试,旨在通过将所有功能打包到一个速度极快的二进制文件中,来解决 Node.js 的运行缓慢以及工具集分散带来的复杂性问题。然而,尽管 Bun 最初基于Zig 语言,实现了惊人的性能,但该项目最近却迎来了一个巨大的转折点,并在开发者社区引起了不小的震动。
重磅消息:Bun 完成了一次意义重大的转型,其核心代码已用 Rust 重写。这并非简单的调整,而是超过一百万行代码的迁移。此举标志着 Bun 从 Zig 原始的手动控制转向了Rust工业级的安全架构和生态系统,确保 Bun 不仅速度更快,而且可靠性和可维护性也更强,能够满足全球数百万用户的需求。
从 Zig 到 Rust 的转变:为什么是现在?

Bun 项目最初推出时,Zig 语言是理想之选。它提供了底层内存管理和务实的性能优化方案,帮助 Bun 在 HTTP 请求和 WebSocket 吞吐量基准测试中遥遥领先。然而,随着项目的成熟,Zig 语言早期存在的局限性也逐渐显现。该语言至今仍缺少稳定的 1.0 版本,这意味着更新经常会破坏现有代码,这对于一个如今为关键基础设施提供支持的项目来说,无疑是一个稳定性方面的难题。
Rust 提供了一系列不同的优势。其主要驱动力是内存安全。Zig 代码库中许多常见的 bug——例如释放后使用和双重释放错误——在代码运行之前就被 Rust 编译器捕获。此外,自从 Bun 被Anthropic 收购以来,风险也急剧上升。Bun 现在是Claude Code的引擎,这意味着任何运行时崩溃都会直接影响 Anthropic 的 AI 工具。切换到 Rust 本质上是为了让软件能够应对专业、高风险的挑战。
人工智能驱动的工程壮举

这次重写最令人惊叹的地方在于它是如何实现的。通常情况下,一个庞大的团队需要数年才能完成这项工作,而这次迁移却借助先进的AI编码代理加速完成。借助Claude Code等工具,团队仅用了几周时间就完成了代码库的移植。整个过程采用了代理式工作流程:AI负责初始移植,现有的TypeScript测试套件作为一致性检查,而人工则监控整个流程以修复系统性问题。
此次操作的成本惊人,仅API 代币就耗资约 165,000 万美元。为了确保新的 Rust 代码与原 Zig 逻辑完全匹配,我们处理了数十亿个代币。目前,重写后的版本在 Linux x64 glibc 上的测试兼容性高达 99.8%,证明人工智能现在能够以惊人的精度处理大规模、复杂的架构迁移。
对绩效和发展的影响
许多人都在担心这种交换是否会扼杀 Bun 赖以成名的速度。简而言之:几乎没人注意到这一点。事实上,Linux 上的启动时间反而提升了约 10%。由于 Zig 和 Rust 都编译成没有垃圾回收器的本地机器代码,因此性能差距可以忽略不计。真正的优势在于贡献者生态系统;寻找经验丰富的 Rust 开发者远比寻找 Zig 专家容易得多,这意味着更快的 bug 修复和更广泛的平台支持。
- 更好的工具: Rust 成熟的 crate(例如用于异步 I/O 的 Tokio)提供了比从头开始构建一切更稳定的基础。
- 稳定性: 所有权模型消除了整类内存错误,从而导致 更稳定的生产性能.
- 跨平台增长: 虽然目前主要集中在 Linux x64 上,但 Rust 出色的交叉编译工具将使 Bun 更顺利地移植到 macOS 和 Windows 上。
更宏观的视角:本土复兴
Bun 的发展历程反映了一个更大的趋势:关键的 Web 工具正从 JavaScript 转向原生系统语言。这种趋势随处可见:SWC 和 Biome 正在取代 Babel 和 ESLint,而 Zed 则凭借 Rust 从零开始构建,对 VS Code 构成了挑战。就连 Python 也正在经历变革,uv正在取代传统的包管理器。
这本质上是回归“用合适的工具做合适的事”的理念。虽然 JavaScript 仍然是浏览器领域的王者,但支撑它的基础设施——运行时、编译器和代码检查工具——需要原生代码的强大性能和安全性。人工智能现在能够移植百万行代码,这表明为了提升性能而重写软件的边际成本实际上已经降至接近于零,这为许多其他遗留工具的“Rust 化”打开了大门。
迁移到 Rust 语言,将 Bun 标志性的速度与企业级的稳定性相结合,确保了其未来发展。凭借 Anthropic 的支持以及可维护性的巨大飞跃,Bun 正从一个高性能实验项目演变为可靠的行业标准,这证明原生语言与 AI 辅助工程的结合是现代软件开发的新蓝图。