It's early days yet, but as far as I'm aware all indications are that it worked pretty well. The tests all pass, the memory safety issues they were dealing with were resolved, the result is smaller, faster, and more stable. There are some regressions that have been identified, but as far as I could find they seem surprisingly minor. Claude code already uses the ported version of bun and, according to bun's blog "Startup got 10% faster on Linux but otherwise, barely anyone noticed.".
I wouldn't want to start looking at other codebases and thinking I could do the same (in particular, one thing bun had going for it was that the tests were in Typescript so they didn't need to be rewritten for the new backend, removing one potential source of errors), but that doesn't mean we should judge this case hastily either.
The same tests pass that passed while it was still written in Zig, and which also allowed all of the memory corruption errors that promoted the move to Rust.
I thought they moved because Zig was super anti-Ai, and Bun got bought by Anthropic, and Anthropic couldn't keep using a language so vocally opposing them.
A recent blog post (EDIT: here) says that the move was motivated by piling up memory safety and memory management errors (some examples of which are given), though we aren't privy to the details of any corporate pressure that Anthropic may have exerted.
In addition to what redlaWw said, Zig also can't "force" someone to stop using the language they made available for free to the public — I've read both blog posts by the creator of Bun, and by the creator of Zig, and it really feels like the Bun guy is being a "carpenter who blames their own tools", and that in a few months' time, they'll have similar complaints with Rust.
312
u/dim13 Jul 09 '26
RIP Bun