Settings

Theme

Bun 1.4

bun.com

214 points by meetpateltech · 140 comments

Reader

30 threads
arjie

This was an incredible demo for Claude. The runtime hosted Claude Code for months and I never saw the slightest issue. Wholly machine ported. Truly amazing.

  • qdnaG

    And all the vibe code tests were against Claude? Let's port the Linux kernel and run all tests against a single application only!

cube00

It's weird their promotional video repeats "you can do <million things> without installing dependencies", if I want headless browser testing is that wrong to install a project that offers that?

Why would I want everything reimplemented in this massive binary? Why would Bun be anymore in touch with nuances of all these different technologies then individual projects dedicated to their own speciality?

JS Runtime, Package Manager, Test Runner (both unit and headless browser), Bundler, JSX, PosgreSQL/MySQL/SQLite drivers, S3 client, Redis client, Formatter, Linter, etc.

Not to mention parsers for YAML, TOML, Markdown which are easily three separate projects worth of complexity in their own right.

I guess one clear downside is to get all these great features they're pushing for 1.4 you needed to wait until everything was ready. Given 1.3 was pushed out in October 2025, a 10 month release cycle across so many large technologies is tough. Before you give a pass because of the Rust rewrite Bun 1.2 was released in January 2025

I have to respect Jarred knows how to work the algorithm, 10 carefully crafted X teaser posts for this release spaced out over 72 hours https://xcancel.com/jarredsumner

  • preommr

    > Why would I want everything reimplemented in this massive binary? Why would Bun be anymore in touch with nuances of all these different technologies then individual projects dedicated to their own speciality?

    It's funny because the top article on HN is about a malicious rust crate package, and people keep making comparisons to js/npm and how both language suffer from frequent security issues because they have weak std libs.

    • andai

      I saw a post recently about how LLMs are much more effective in Ruby on Rails because it's batteries included, so you don't get so many implementation details crapping up the context window.

      I assume the same benefit applies to humans as well!

      • DanielHB

        I am not into the Ruby on Rails world, but I find LLMs much more effective with powerful type systems like Typescript. Especially if you nudge it to keep things strict and (statically) eliminate invalid states. Do they use similar systems (build-time typing) for Ruby?

        When the LLM can verify its own output by running static analysis they produce better results. They also seem to understand type definitions and avoid going to the source which, in theory, should reduce context size.

      • walthamstow

        I've read much of the same for Go. It's half true. Python doesn't have as many batteries but its common external packages are probably more present in training data than Go stdlib.

      • CuriouslyC

        If agents are good at RoR, it's ironic because they're bad at Ruby. They aren't good at holding a model of the 20 different things various code you've loaded has monkey patched, no longer respecting their original contracts.

    • duped

      Something that frustrates me about that discourse is that people argue about the mere existence of dependencies but all 'supply chain' (1) attacks are issues over when dependencies change. Dynamic systems are harder to reason about than static ones.

      (1) scare quotes because I think it's dumb for us software people to call code we picked up on the side of the road part of a 'supply chain' like that means anything.

  • Jcampuzano2

    Its strange how flip floppy the JS ecosystem is, because go back literally 1-3 years or so and the BIGGEST complaint was the lack of a standard library and having to use a package for everything.

    But now that Bun is actually doing it its somehow bad? Its also still open source, so those implementations you mention need dedicated teams can still get the attention they need by the community if needed.

    I'm on the side that I'd actually prefer if node included more out of the box and we could drastically cut down on the number of packages we need due to the amount of supply chain attacks that happen on packages in the node ecosystem.

    • optionalsquid

      Is that flip-flopping or just different developers having different preferences? Those who complain now would have had no reason to complain back then, and vice versa

    • joshkel

      I would guess that many devs' preference would be for a larger standard library, but not a kitchen sink.

      Personally, I'd be happy with a larger suite of utility functions (say, most of Lodash / es-toolkit - remove the need for left-pad silliness), probably SQLite bindings (having a good persistence layer is great, it's perhaps the most robust and most widely deployed software on the planet), but not YAML (complex, security concerns, parser differences) or image handling (again, security concerns).

      Node.js is, IMO, actually pretty good these days; they're regularly adding useful built-in tools that remove the need for add-on packages. (The ecosystem is so big that getting those updates to filter out is hard.)

      • spankalee

        SQLite bindings should absolutely not belong in a JS "standard library". SQLite is a project that most JS environments won't have enbedded.

        • mort96

          There should be a space between "in the standard library" and "in a library written by some random person with a github account". An sqlite driver does not need to be bundled by the runtime, but it would be pretty great if there was an official sqlite driver library developed and supported by the node.js project but distributed through NPM.

    • pier25

      I agree and I also wish Node did more.

      Otoh should a standard lib give you absolutely everything? Probably not. There needs to be a line somewhere.

      Right now Bun’s policy on this seems to be "whatever Jarred feels like should be in there".

      • erlich

        > "whatever Jarred feels like should be in there"

        This is the main draw. Everything he implemented was fast and minimalist and he usually implements a standardized api (web apis, esbuild bundler api).

        The opinionated stuff is usually very common sense.

        Most of the libraries OC mentions are things you would just like to be as fast as possible above all else.

      • barnabee

        My line for exclusion from standard library is a library that’s any one of:

        - not obviously/generally useful (i.e. useless or too specific/should be a program not a library)

        - obviously trivial

        - already available (open source) elsewhere by a credible team that supporte and maintains it

        Anything else… put it in the stdlib

    • evilrabbit99

      wasn't that complaint mostly about those tiny dependencies like `is-even` or `is-array`?

      I feel like nobody complained that you needed to install a dependency to do headless browser testing for example.

    • ivanjermakov

      Standard library is up to the TC39 committee, not a VC-funded all-in-one JS runtime owned by Anthropic.

    • verdverm

      I could argue that one implementation adding these things does not make a std library. You lose portability and fracture the ecosystem, which is probably one of their intentions

  • Aurornis

    > It's weird their promotional video repeats "you can do <million things> without installing dependencies",

    A couple years ago a common complaint was that the JavaScript ecosystem relied too heavily on dependencies for everything. Remember the left-pad incident where the developer deleted the popular dependency out of protest for reasons I can even remember? Or when colors.js was sabotaged to break everything that depended on it? The node-ipc package was sabotaged to delete files on developer’s machines. Then we had a wave of supply chain attacks that tried to insert malware into build scripts of popular dependencies.

    So the ecosystem started moving toward more batteries-included style development in response.

    • skydhash

      The complaint was micro-dependencies and huge sprawling trees. What was needed was quality dependencies on the level of SDL, ffmpeg, libcurl, where one domain is solved well and the focus is on API stability and good implementation. Not a battery included type of things.

  • tempaccount420

    It's faster to have it in the runtime in native code.

    You have more options, not less, you can still use the external dependencies.

  • dataplumb3r

    Some of these are situational, but many are expectations of a modern platform.

    Take Python - the standard lib now has things like a toml parser, sqlite client.

    And while I avoid the entire JS ecosystem as much as possible, a simple search to find a good Postgres client was not elucidating.

    https://wiki.postgresql.org/wiki/List_of_drivers two options - with node-postgres / pg seeming to be the most supported or postgres.js which has more abstractions but is less active

    Contrast that to the question for Java, where it's clear the official JDBC driver is the best option.

  • maherbeg

    Some of these feel like solved problems effectively, so having them in the standard library is nice (at the expense of keeping these forever for backwards compatibility once a new tech replaces it). I do think having a larger standard library for common things (like golang) is the way to go. If a dependency seems to basically be installed by default everywhere, maybe it should go in the standard library.

  • barnabee

    Ideally everything not built specifically for any given project is part of the OS or some other battle tested, supported system package.

    For example, I might well choose to reimplement eg a subset of TOML parsing to avoid the dependency risk.

    I don’t write JavaScript/TypeScript, but if I did, I’d find Bun’s “batteries included” approach compelling, at least to the extent I decide I can trust Bun, after due diligence

  • panzi

    Out of the things you mentioned I think the following make totally sense to be included in a language runtime like this:

    JavaScript runtime (obviously), package manager, test runner for unit tests, bundler, JSX, SQLite bindings, formatter, linter, YAML and TOML parsers. Maaaaybe even a Markdown parser and HTML5 parser. Definitely JSON, CSV and XML parsers.

    I.e. similar to Python. Though Python is a bit of an incoherent mess. If you have all these you need them to be coherent.

  • tredre3

    > It's weird their promotional video repeats "you can do <million things> without installing dependencies"

    In 1.3 you couldn't even use the repl without downloading dependencies.

    In 1.4 it is now finally built-in, hurray! That alone is why I'm going to install 1.4. Finally a truly portable typescript repl.

  • jamesnorden

    If you want Node just use Node, complaining that something else is not Node is crazy.

  • bcye

    I always thought Bun's approach was to be the JS runtime with a large well-designed std-library, this isn't really new. It's nice to have a choice of a more or less-featured runtime depending on the project's requirements -- if size and complexity are an issue, there's a variety to choose from.

  • cnqso

    I personally do not feel limited by the ~100mb binary size. We're working in Javascript after all.

  • pettijohn

    I for one prefer batteries-included. Decision fatigue for every cobbled together package takes its toll. Having a single, trustworthy, good-enough solution for so many things makes my life easier.

  • ralusek

    Things like headless browsers are really annoying to include in FaaS environments, but are super useful. If they're in the runtime binary already, that'd be great.

  • shimman

    I've still yet to run into any enterprise project using bun in the wild. It really feels like something entirely contained within startups that would choose wildly inappropriate tech like next.js.

    Add in the influencer dev brainrot culture and you get these VC backed efforts to privatized publicly important projects (node.js) under control of quite evil people that have zero record of helping others.

  • ryankuykendall

    “ Why would I want everything reimplemented in this massive binary? “

    This isn’t about what individual developers would want but what is most beneficial to Anthropic and claude code. They are likely using Bun as a vehicle for standardizing and enriching local user environments in order to address common tasks that claude generally writes bespoke scripts to accomplish.

rwz

This is a huge win for Bun & Anthropic. I've been keeping an eye on Bun development cycle since they announced the Rust rewrite and the huge drama and backlash it generated. They seem to be proving the skeptics wrong with this release.

  • hungryhobbit

    It's way late and seriously over budget, hard to call that a success.

    • internet2000

      It's an unconditional success no matter how you slice it.

    • reducesuffering

      ~3 months start to finish and the price of 1 engineer for a year, to rewrite a critical infra codebase that tens of millions of user software relies on. Truly the goalposts keep moving. This kind of project would've have been 10x the effort and price a few years ago.

      • aenis

        Yeah, crucially, a lot of such projects never get greenlit.

        Claude building stuff means a lot of things that everybody wanted to do, just couldn't allocate the attention or other resources - now get built.

    • cleaning

      What budget?

    • rwz

      What are you talking about? What is the budget? Was there ever a deadline? Who ever decided those?

sunsetSamurai

I recently pivoted to Rust for the backend development, after getting tired of the nodejs ecosystem fragmentation and how fragile things feel. Bun seems very interesting since it allows you to do so many things without pulling in 3rd party libraries and bundlers? Is anybody using it instead of nodejs? how's the experience so far? I might have to give it a try.

Yes, I know there's probably better options than Rust for building APIs, but I wanted to learn it, so why not?

  • jjice

    The most appealing thing of Go to me is the good batteries including tooling. I don't use it much outside of little personal projects where I really don't want to deal with dependencies and want a small binary.

    • arjie

      Yeah, I prefer Rust as a language but the ecosystem and toolchain is risky. E.g. build time scripts from upstream is too risky these days and it’s commonly used.

      Go is a good stdlib and trivial build toolchain.

      You just cargo build and all your apes gone.

  • christophilus

    I'm using it, though I'm leery of how the project is run. It's been great, to be honest. I have been able to build very low-dependency projects quite quickly. Bun's documentation is decent, and its underlying features are performant.

  • vorpalhex

    I use it heavily for personal use and find it works very well and lets me ship small applications quickly. I still use rust and other languages too as appropriate.

  • m00dy

    I always use Rust. You've made the right choice.

mpeg

Announcing that the SSR memory leak is gone as part of a product launch is wild.

yipinwong

> Bun is not 100% compatible with Node.js yet. In practice, much of the existing JavaScript ecosystem just works.

I don't care about 100% compatibility. NodeJS is a standard but dead to me.

I rather have faster feedback loop and less development/build/test time than worrying about Node.JS compatibility.

Bun is the answer for my flow.

---

Bun might as well promote itself as the total replacement of Node.JS, and I will still hop in.

yomismoaqui

I like how the "over 10 MB smaller" is dubbed, sure the video was recorded some time ago and that number changed.

https://youtu.be/i38DgEuaJwM?si=6oKAysKoRDPCihsL&t=176

luciana1u

every couple years someone rewrites the whole toolchain and we collectively agree the last one was the mistake. good to know the cycle still works.

  • hbn

    "Developing APIs is the process of building future regret."

    - Chet Haase

udbhavs

Hate to comment more on the drama, but it's only after watching Andrew Kelley's talk at Software Should Work [1] that I realized how philosophically different he is from Jarred and the broader SF AI/VC sphere. Here he is in a conference talking about agency, enshittification, and learning to deprogram from a deeply religious background and then using that experience of internal questioning to define his relationship with computers.

And somehow, the programming language he made (that currently bans AI contributions outright) ended up being instrumental for a tool that's in the center of the whole craze, and doing Tony Hawk 900 aerial spins with agentic AI software rewrites under a frontier lab. I'm not commenting on the effectiveness of the rewrite, but it seems fascinating that for a moment Zig found itself at the intersection of two very different camps that the software world seems to be divided into. It seems in retrospect like a bomb waiting to go off even if they didn't jump ship to Rust!

[1] https://www.youtube.com/watch?v=zLZwpH5lCD4

capitanazo77

Jarred looks a little like the logo which shows a great compromise with the company! thumbs up

mjmas

This blog post / changelog is extremely long. Around 50 metres long on mobile.

  • neuronexmachina

    It's pretty long, but looking through it the text seems pretty streamlined. I think there's just a lot of changes.

  • dyzone

    So what. Ask your claude to read it. You're on the $200 plan, right?

  • evolve2k

    They recently used AI to rewrite the whole app in rust. Expect the slop fest to continue for some time yet.

    A year from now folks will be; I can’t use it anymore it’s too unreliable but for now keep looking the other way.

    • hbn

      Is it slop if the product is working as intended?

      I don't use Bun, so I don't know if quality has degraded. But if it hasn't and they're shipping features users want faster than ever, I wouldn't call it slop. I don't care who wrote the code if the end product is working.

mawadev

Why do these people look and talk so stiff in the video?

ksec

While it has been used by Anthropic, the main question is if it works in other Bun's 1.3 production settings. Ignoring all the improvements, if it does work and no major bug or problems occurred, We are in for some management top down "Rewrite it in Rust" action over the next few years. And perhaps even worst, management will believe in Claude feed into Claude development.

This isn't so much about Bun or Node.js any more. It is the battleground for AI and non-AI coding.

  • aurareturn

      This isn't so much about Bun or Node.js any more. It is the battleground for AI and non-AI coding.
    
    There is no non-AI coding anymore. I guarantee you Node.js team is heavily using AI to make changes and debug.
slowpoke-tail

For me, notably absent from the release changelog and accompanying YouTube video they were excited to trumpet in the blog back in July, and the claim (still) this took 11 days. It's August 20th.

  • sionisrecur

    Yes, I'm fine with the AI rewrite, just don't claim it was done in 11 days when it actually took ~50.

    • rwz

      The rewrite part of get to functionally equivalent to the existing zig version in rust did in fact take 11 days based on the available data. When that was done, they spend some time on a ton of new features and hardening and bugfixing that the Rust rewrite enabled. This took additional time.

asT125

So this is kind of a systemd for web developers. All functionality is absorbed into a vibe coded, un-auditable black box.

Maybe run it as process 1 in a future ClaudeOS.

  • TiredOfLife

    The code is here https://github.com/oven-sh/bun/ go and audit all you want

    • blks

      The author didn’t care to himself, just merging enormous PRs with “lol” tweets about how github doesn’t display all the changes because there are too many.

      This is unmaintable mess, and the author himself is struggling already, given how he pushed the release date ten times.

      • chamomeal

        It’s not maintainable by humans because there’s not a single human person who actually wrote any of it. But I guess it’s maintainable by LLMs. Which is part of the anthropic marketing

      • tock

        > given how he pushed the release date ten times

        Jared has always done that. Thats not specific to this 1.4 release.

tumdum_

I wonder what was total token cost of the rewrite.

  • sroussey

    I think around $300-400k, but that does not include the github issue/pr/ci stuff that runs continuously, which could double or triple it. Somewhere, the first two weeks were said to be about $200k.

    • rane

      That total assumes API billing rates, which isn't what Anthropic pays for the inference. So I'm confused why people keep quoting that. It's not representative of what it'd cost for you either because you could use cheaper models.

      • vdfs

        Yeah, when you spend billions in infrastructure you get to save $300k occasionally

  • meetpateltechOP

    From the Rewriting Bun in Rust blog post: 5.9B uncached input tokens, 690M output tokens, 72B cached reads, came out to ~$165k at API pricing.

    • tumdum_

      That was the initial work, but since then there was lots of work performed with LLMs.

andsoitis

Congratulations to the Bun team!

getpokedagain

Bun honestly seems cool. But this creepy ass intro video is icky.

suriyaG

This is awesome.

slightly aside, but I find it worrying that our industry treats a lot of cannon events in stride and don't organize around that idea or to mitigate the risks around that idea.

things that everybody basically just complained but ended up working out fine,

- Bun rust rewrite. - Elon Musk firing 80% of twitter by stack ranking employees by code committed - autocompletion basically just taking over everyone

maybe I'm just taking extremely outlier outcomes. but it is still fascinating to see people complain about how LLMs don't think

  • slopinthebag

    > but it is still fascinating to see people complain about how LLMs don't think

    What does that have to do with anything? They very clearly don't "think", that doesn't mean they can't be useful....

  • mpalmer

    How are you deciding that either of these things worked out fine

    • suriyaG

      bun has lesser memory issues, more bug fixes shipped than ever before. same happening across the board with chrome, mozilla etc.

      twitter has (irrespective of the political turmoil etc.) purely as a technical product added more users, more features etc.

      to me that seems like it worked out fine.

    • solid_fuel

      Well if you ignore all the issues and declare victory, I think you’ll find it’s possible to decide anything is fine.

      • tialaramex

        Best to stand on an aircraft carrier, that really sells the message.

      • suriyaG

        I really am curious about the issues that I'm ignoring

        twitter was a dumpster fire before and now it is (to me) less of a dumpster fire.

        so far it seems like the bun rewrite is going quite well. I haven't found any major issues since the merge despite, robobun being the top committer in the repo.

reducesuffering

Absolute crickets from the "there's no way LLM's can rewrite Bun to Rust this quickly, it's going to be buggy, it's marketing" crowd

Comments here 3 months ago are quite something: https://news.ycombinator.com/item?id=48132488

  • zem

    this is currently on the front page of lobsters, I saw it even before I saw the bun 1.4 release announcement https://tipiirai.com/writing/bun-rust-rewrite-worries

    • reducesuffering

      Lobste.rs is now flagging Bun 1.4 post as spam and comments are dismissing it as nothing, even as that blog post got much more discussion and piling on about the rewrite.

      Internet echo chambers are quite a problem. AI success and its immense implications are wreaking havoc on the ability of even intellectuals in HN and lobsters to face reality in front of them, even as their predictions become falsified again and again.

      • owebmaster

        > Internet echo chambers are quite a problem. AI success and its immense implications are wreaking havoc on the ability of even intellectuals in HN and lobsters to face reality in front of them, even as their predictions become falsified again and again.

        In this scenario, do you see yourself as an intellectual? In this case, one that is illuminated by the glory of AI. Or just looking for validation and not finding?

      • zem

        honestly, no opinions on bun either way, I was just pointing out that the pushback against the big bang AI rewrite is far from quieted down.

  • solid_fuel

    Sure I’ll bite the obvious bait, why not.

    > Absolute crickets from the "there's no way LLM's can rewrite Bun to Rust this quickly, it's going to be buggy, it's marketing" crowd

    > Comments here 3 months ago are quite something: https://news.ycombinator.com/item?id=48132488

    Did you… perhaps read the entire comment you just posted? The crowd that was saying “no way they did that in 11 days” sure seems correct given that the release today is 3 months later. 3 months is longer than 11 days. Significantly so, in fact.

    • pohl

      Be honest, though: had they shipped earlier—which they probably could have safely done—they would have been called “reckless” by the detractors. There was no way to make them happy here.

      • solid_fuel

        Perhaps. But they didn’t, instead they spent months claiming it was done, while maybe adding a bunch of new features (why? Get the base rewrite out first) which only made them look worse.

    • tock

      1.4 also adds a lot of features so its more than a port. Plus Claude Code has been using the rust port since atleast July 19. So its definitely less than 3 months.

      • solid_fuel

        Or, more likely, the amount of crappy auto generated code and “features” they crammed into this release resulted in so many bugs that a “simple rewrite” would up being 3 months of whack-a-mole with the issues they created. That’s the predictable result from the lack of engineering discipline involved here.

  • ThouYS

    The copium has run out it seems

rs_rs_rs_rs_rs

I am in awe at how good the llm rewrite to rust is, not a single issue when running claude code for months now.

timetraveller26

I, for one, don't welcome our new AI overlords

preommr

omfg, that's a long post.

How is this even possible?

I know we're all using AI, but Bun seems like the one singular project where there's just been a crazy increase in the amount of output, a 10x on the 10x.

How are they doing this?

classicposter

https://bsky.app/profile/jacob.gold/post/3msvjwys7lc2t

Hey, did the memory leak really solve with slop rewrite?

ar_lan

Am I the only one starting to get annoyed by Bun just due to all the surrounding drama? I was genuinely surprised this was an actual link about an update - my gut inclination opening that was Jarred probably decided to rewrite Bun to JavaScript to stay pure or something like that.

jiangplus

I’m just very disappointed with Bun.

With LLM, Bun can ship new features effortlessly and bundle many features directly into the runtime, which could be implemented by third-party libraries.

While this is more convenient for Bun user, this development approach just steals the time-tested designs of these open-source libraries. By offering simplified bundled APIs, Bun diminishes the value of contribution on those libraries.

As a general-purpose runtime, Bun cannot continously improve on every one of these domains in depth; it can only provide the most common functionality. When changes are needed, developers also cannot easily patch or customize the interfaces bundled with the Bun runtime itself.

If Bun becomes widely adopted, its APIs could effectively become locked in. That would not be healthy for the ecosystem.

arj

Bun is still massive, my hobby attempt at smaller confined js/wasm https://github.com/arj03/seedkernel/

julenx

From the release video, something catching my attention:

> In Bun 1.4, I rewrote Bun in Rust. [...] I did it in 11 days, using Claude Code, and wrote about how, in our blog.

Everything else in the video is phrased as "we", and even the section in the blog post is "We rewrote Bun in Rust"[1].

There's no question Jarred did the work and deserves enormous credit for it. I just found the contrast interesting, because the video explicitly frames the rewrite as "I", whereas the rest of the release frames it as "we".

[1] https://bun.com/blog/bun-v1.4#we-rewrote-bun-in-rust

  • seabass

    I think this was to contrast with the multi-engineer effort the task would normally be.

npn

I wonder how many posts in this thread are AI generated or shill posted.

nobody ever reports that they installed it and ran it on production or something.

personally I only use bun to replace yarn as script executor now. Used to follow it and tried to replace node server sveltkit runtime with bun, but it didn't work reliably so I stopped the experiment.

it's too bad. when you are spoiled by crystal/go/rust written servers that consume 20MB-50MB ram only, seeing a nodejs server consume 400-500MB ram looks ridiculous bun was such an attractive option.

CuriouslyC

Bun was pretty cool as a test runner with a lot of promise for back-end services in Node shops, but it burned me with arcane issues in production repeatedly, agents changed the economics of writing software, and being owned by anthropic is the final nail in the coffin.

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection