Bun 六天完成从 Zig 到 Rust 重写,AI 重写软件大趋势下速度与质量难题待解
2026/5/14 12:17:52 网站建设 项目流程

Zig 版 Bun 被判“死刑”

2026 年 5 月 11 日,Bun 创始人 Jarred Sumner 在 X 上发推文称,“Bun v1.3.14 将于明日发布。如果我们合并 Rust 重写版本,这将是 Zig 的最后一个版本”,宣告了 Zig 版 Bun 的终结。四年前,Bun 因选择 Zig 而特立独行;四年后,创造者用一条推文结束了 Zig 版本。这场从 Zig 到 Rust 的迁移,约花六天,涉及 96 万行代码,且在 Linux x64 glibc 环境下通过了现有测试套件的 99.8%。六天前,Jarred 还称代码跑不起来,“最后被全部扔掉的概率非常高”,六天后却成了“Zig 的最后一个版本”。

问题累积,靠 Rust 来“一键修复”?

2025 年 12 月,Anthropic 收购 Bun,旨在让 Bun 成为 Claude Code 背后的运行时、包管理器、bundler 和测试工具。Anthropic 认为 Bun 是“AI 驱动软件工程的重要基础设施”,能助开发者快速构建和测试应用。Claude Code 负责人曾表示,Bun 启动速度快,启动时间约 3 毫秒,Python 要慢 15 倍左右。然而,Bun 存在内存泄漏问题,影响了 Claude Code。2026 年 3 月 12 日,编号 #33453 的 Issue 显示,Claude Code 主进程有严重内存泄漏,RSS 内存 3 小时从约 1.7GB 增长到 14GB 以上,泄漏源于 Bun 运行时的 WebKit Malloc 分配器。另一份 Issue #11377 记录更夸张,运行 14 小时后,Claude Code 进程占用 23GB 虚拟内存,143.8% CPU,系统卡死。Bun 自身问题也在发酵,虽 v1.1.13 版本宣称更换内存分配器使内存占用下降 5%,但用户不买账。Reddit 用户 Xtergo 吐槽 Bun 内存泄漏,担心其路线图侧重新功能,而非稳定性和 Bug 修复。此外,Bun 的 GitHub 上有大量长期未关闭的 issue,与 Node.js 相比,问题更多。

不止是内存泄漏:Bun 与 Zig 的哲学决裂

内存泄漏并非唯一问题,Bun 和 Zig 社区存在更深裂痕。Bun 曾是 Zig 阵营明星项目,靠 Zig 性能优势与 Node.js、Deno 形成对比。但 Bun 团队曾 fork Zig,优化无法 upstream 回 Zig 官方,原因是 Zig 社区严格的“no - AI policy”,禁止 AI 生成 issue、PR 等。Zig 基金会成员和核心开发者批评 Bun fork 中的一些实现。Anthropic 收购 Bun 后,这种冲突更明显,一边是 Zig 社区封禁 AI 生成代码,另一边是 Bun 团队用 Claude agent 迁移 Zig。所以,Jarred 说“厌倦了修复内存泄漏”时,或许也觉得 Zig 之路难走。2026 年 5 月重写前夜,Bun 有四年积累的 96 万行 Zig 代码、4700 个未解决问题、被内存泄漏坑到 14GB 的 Claude Code,以及与 AI 世代不合的社区氛围。

Jarred 的选择:让 Claude 在六天内用 Rust 重写一切

2026 年 5 月初,Bun 的 GitHub 仓库出现名为 claude/phase - a - port 的新分支,内部有数十万行 AI 生成的 Rust 代码与原始 Zig 实现并存,还有一份 576 行的 Zig - to - Rust 迁移指南。5 月 7 日,Jarred 称 Rust 迁移涉及约 4000 次 commit、96 万行代码,只剩 3 个编译错误,Rust 版本能显示 help menu,bun run 和 package.json scripts 也已运行,能执行 JavaScript,但他表示当前状态“勉强能动”,不能交付,还需清理代码和让 Claude 啃测试套件。有人惊呼“Claude 只用三天就把 Zig 版 Bun 重写成 Rust 了吗”,Jarred 称按代码量来看准确。5 月 9 日,Rust 重写版本在 Linux x64 glibc 环境下通过了 Bun 既有测试套件的 99.8%。Jarred 表示厌倦处理内存泄漏等问题,希望编程语言提供更强大工具预防。同时,他还在向 Rust 社区请教底层问题,5 月 10 日,Rust 版本虽能运行、测试接近通过,但底层架构未完全稳定。5 月 11 日,Jarred 发出推文宣告 Zig 版本终结。

“Anthropic 没有逼我”

重写完成后,质量遭质疑。5 月 12 日,Theo 在 X 上对比,uv 有 35 万行 Rust 代码和 73 个 unsafe 调用,Bun Rust 移植版有 68.1 万行 Rust 代码和超 13,000 个 unsafe 调用。Jarred 回应称数量已下降约 2000,预计稳定在 1 万左右。开发者社区质疑流程,网友认为 uv 由开发者编写且代码经审查,而 Bun rust 由 Agents 编写、审核和合并。还有人猜测 Anthropic 强迫重写,Jarred 否认。

不止是 Bun:AI 重写软件的大趋势正在到来

类似的 AI 驱动极限重写在多领域发生,Cloudflare 一周内借助 AI 重新实现 Next.js API 大部分能力,Ladybird 浏览器两周内将 JavaScript 引擎从 C++ 迁移到 Rust。Jarred 曾预言开源软件未来可能“禁止人类贡献代码”,Bun 重写是此预言的首次大规模公开演练,证明 AI 能快速完成跨语言迁移,但也暴露缺少人类审查、unsafe 泛滥等问题。未来,CTO 考虑代码库重写时,可能会问“Claude 需要几天”。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询