Zig 软件基金会(ZSF)成员发表文章,回顾并批评了开源项目 Bun 在被 Anthropic 收购后从 Zig 语言转向 Rust 重写的全过程 [1]。作者指出,Bun 团队在开发期间存在“糟糕的管理”、“不切实际的期望”以及缺乏同理心等问题 [1]。
该基金会曾收到来自 Jarred Sumner 的每年 60,000 美元捐赠,但在 Anthropic 收购 Bun 后这一资助停止 [1]。Zig 社区认为 Bun 的代码库充斥着“层层补丁(hacks on top of hacks)”和技术债务 [1]。随着双方关系结束,ZSF 对此感到如释重负 [1]。
文章还逐条反驳了 Bun 官方博客中的说法。作者指出,Bun 声称其测试套件足以捕获所有 bug,但这与实际情况存在矛盾 [1]。此外,尽管 Bun 方面曾否认进行了模糊测试(fuzzing),但相关报道指称团队实际上实施了该操作,而之前的否认被视为捏造 [1]。
作为背景信息,Zig 编译器项目的代码量约为 600,000 行,其增量编译时间仅为 90ms [1]。作者认为这一事件反映了开源项目在商业化过程中面临的典型问题 [1]。
A member of the Zig Software Foundation has published an article reviewing and criticizing the process by which the Bun project migrated from Zig to Rust. The author argues that this shift, occurring after Anthropic acquired Bun, was driven by chaotic management, poor code quality, and a fractured relationship with the Zig community [1]. According to the text, these issues led to the termination of their partnership following the acquisition event [1].
The article details financial changes within the project's support structure. Jarred Sumner previously donated $60,000 annually to the Zig Software Foundation but ceased payments after Anthropic acquired Bun [1]. The author attributes the development struggles during this period to "terrible management," unrealistic expectations, and a lack of empathy from the Bun team [1]. Conversely, the Zig community characterized Bun's codebase as being riddled with technical debt described as "hacks on top of hacks" [1].
The publication also addresses specific claims made in Bun's official blog. The author refutes assertions that their test suite was sufficient to catch all bugs, noting contradictions within those statements [1]. Furthermore, the text challenges the claim that Bun performed fuzzing; while the project stated it did so, the team had previously denied this capability, leading the author to view such reports as fabrication [1]. In contrast to these issues with Bun's Rust rewrite and management style, the article highlights the efficiency of the Zig compiler project, which consists of approximately 600,000 lines of code and achieves an incremental compilation time of 90ms [1]. The author concludes that this situation reflects typical problems encountered during the commercialization of open-source projects [1].