Bun 1.4 ships the Rust rewrite: 5x less idle CPU, batteries included
The Zig-to-Rust port Claude Code has quietly run for months is now the default, adding built-in image, browser and cron APIs — plus breaking changes to read.

Copy markdown
The Rust rewrite is finally the default
After a year of skepticism, Bun 1.4 makes the full Zig-to-Rust port the default — the same build Claude Code has run in production for months. It cuts idle CPU roughly 5x, trims memory up to 35%, and starts about 50% faster on Linux.
Batteries included: sharp, a headless browser, cron
Fewer npm deps to pull: Bun.Image does image processing ~1.38x faster than sharp, Bun.WebView adds headless browser automation, and Bun.markdown, Bun.cron(), JSON5/JSONL and a Terminal API ship built in.
Read the breaking changes before you upgrade
1.4 targets Node 26 (NODE_MODULE_VERSION 147), makes the isolated linker the default for new monorepos, parses YAML 1.2 so yes/no/on/off become strings, tightens TLS verification, and drops res.writeHeader(). Bun-as-node also stops auto-loading .env files.
Up to 7x faster installs, parallel test and run
An opt-in global virtual store makes installs up to 7x faster, `bun run --parallel` and parallel tests speed up CI, and `bun audit fix` / `dedupe` / `prune` arrive for dependency hygiene. Windows ARM64 is now supported.
Elsewhere: Vercel already runs Bun 1.4 on Functions
Vercel added day-one Bun 1.4 support for Functions on Aug 20, alongside custom Function metrics and a new CLI for its Container Registry — so you can ship on the new runtime without waiting.