Bun AoT in an Express node:sqlite REST API
40% less memory
14% lower cpu
No JIT warmup
Bun AOT is merged.
Still more to fix/fuzz before its release-able
Bun AOT also introduces `--trim` which deletes unused parts of Bun from the compiled binary
On macOS, a binary that uses Bun.serve’s HTTP server goes from 89 MB to 25 MB
The first step is types.
We're adding a TypeScript-compatible type checker to Bun.
It’s the best shot ahead-of-time compiled TypeScript has at beating languages like Go on memory and speed.
JavaScript was never designed for the server. If that doesn't change soon, JavaScript on the server will be replaced by Rust.
The fix needs to happen in the engine. Sound types. Ahead-of-time compilation. Threads with shared objects.
Show more
Today, Bun is a JavaScript runtime, bundler, test runner, and a package manager.
Soon, Bun will also be a
AoT uses Bun’s bundler & parser to parse typescript, tags types to JavaScriptCore via a typecheck bytecode intrinsic, and compiles the bytecode to machine code via B3 (what JSC’s JITs use)
This keeps the JavaScriptCore changes well-contained, so that syncing with upstream WebKit isn’t complicated
Show more
Most JavaScript usage is just-in-time compiled.
As code runs, types of values are watched and when a function runs frequently enough, a faster specialized version of that function is compiled on-demand.
Ahead of time compilation bakes that work into the executable itself.
Show more
Garbage collector scheduling adjustments make Bun v1.4.3 use significantly less idle CPU, slightly reduce memory, and are performance ~neutral at throughput
In the next version of Bun
Idle CPU usage drops by 67%
JavaScript was never designed for the server. If that doesn't change soon, JavaScript on the server will be replaced by Rust.
The fix needs to happen in the engine. Sound types. Ahead-of-time compilation. Threads with shared objects.
Show more
Opus 5.5 is a very good model and I expect it will quickly become the daily driver for a lot of people.
The writing style is so much better. It writes like Opus 4.6 and codes like Fable 5.1.
Introducing Claude Opus 5.5, the first model in our new Claude 5.5 family.
It performs at the level of Claude Fable 5.1 for most tasks, and costs 40% less to run than Opus 5.
Bun v1.4.3 ships on Monday
In the next version of Bun
`Bun.FetchSession` gives you a `fetch` function with its own keepalive connection pool
PHP got one thing right JavaScript never had
In next week’s version of Bun
Claude Code's idle memory dropped 14% on Linux with Bun v1.4.1
Excited to see everyone tomorrow!
We’re at capacity with 130+ on the waitlist, so if you can’t make it please mark “can’t go” on Partiful so someone else can grab your spot
We're throwing a party in SF for Bun v1.4 on September 9th. If you use Bun (or want to), come hang out
moved a few projects from
@bunjavascript 1.3.14 to 1.4.1, in each case memory usage dropped about 2/3, crazy
bun 1.4 to bun 1.4.1, noticeable less memory on cold start, and seems to be less memory leaks, also lower CPU usage
switching from bun 1.3.4 to 1.4
“RuSt ReWrItE wILL kILl BuN”
Bun hit 32.8 million monthly downloads last month
Bun v1.4.1
- Fixes 202 issues, addressing 236 👍
- Reduced idle memory usage
- HTTP/2 in Bun.serve()
- Big upgrade for Bun's bundler
- bun build --compile executables load faster & we shrunk bytecode
- Bun starts 1ms faster
Show more