Cruller:Bun 的 Zig 运行时精简版

Cruller: Bun's Zig Runtime, Continued on Zig 0.16

Cruller:Bun 的 Zig 运行时精简版

Cruller 是 Bun 在 Zig 0.16 上的精简运行时分支,专为生产环境打造。它保留了 JavaScriptCore、HTTP/1-3、WebSockets 等核心功能,但移除了包管理器、Bundler、测试运行器等开发工具。相比官方 Bun,Cruller 体积减少约 18%,性能持平。作者强调,这不是要取代 Bun,而是将其转化为一个轻量、可嵌入的库,供 Zig 生态使用。未来计划增强 HTTP/2 和 HTTP/3 支持,并引入基于 QuickJS 的动态内存控制器。

Cruller 不是用来替代 Bun 的开发工具,而是一个专门用于运行预构建生产代码的最小化运行时。
  1. Skywalker13

    我不明白为什么这个分支的 git 历史被修剪了。

    根据该分支的第一个提交:

    > 压缩为单个孤儿提交——原始的 oven-sh/bun 历史与此精简分支无关,且其浅克隆无法干净地推送到新的远程仓库。

    恕我直言,这样做永远是个糟糕的决定。在这里,所有提交作者的记录都丢失了。原始历史始终是有相关性的。

  2. andai

    这里似乎存在一些误解(包括链接中的讨论?),关于这个项目到底是什么。这并不是在原始 Bun (Zig) 代码库上继续开发。

    它是从该代码库中提取一个子集,用于部署目的。完整的 Bun 版本(推测是用 Rust 写的?)将继续用于实际开发。

    所以它不是 Bun 的替代品,而是补充品。

    https://news.ycombinator.com/item?id=49018157

  3. dbalatero

    > 我的想法是将系统精简到最大程度,只保留生产环境所需的部分。

    > 开发将使用完整的 Bun 运行时,而生产环境则使用其轻量级分支 Cruller。我没有 Oven 团队那样的资源来开发和维护一个庞大的通用运行时,所以我希望专注于特定的生产需求。

    我不知道其他人怎么看,但我不认为我会让开发运行时和生产运行时产生如此显著的差异。对于我来说,出现仅在 production 环境中才暴露的行为的风险太高了。

  4. pjmlp

    一如既往,大多数因社区分裂而产生的分支最终都会消亡。

  5. holysantamaria

    让 Bun 成为 Bun 的,正是这个项目中被移除的所有东西。Node 已经足够强大且维护良好。为什么还有人要用这个?

  6. ksec

    这让我想到,如果把 Bun 的代码喂给 AI,不是让它改写成 Rust,而是告诉它尽可能遵循 TigerStyle 会怎样?

  7. theawesomekhan

    有一点需要指出的是,作者的所有评论看起来都是 LLM 生成的,README 和该分支的最新提交(大段解释写在注释里,然后才是代码变更)也是如此。

  8. bradhe

    不错,这将会是一个很有趣的项目,大家会关注两周,然后彻底遗忘!

同日更多故事

2026-07-23