Bun 1.4, en platform designet til standalone-udførelse af JavaScript- og TypeScript-applikationer og beregnet til at fungere som en problemfri erstatning for Node.js, er blevet udgivet. 1.4-grenen er kendt for sin kodebasemigrering fra Zig til Rust, udført ved hjælp af Claude AI-værktøjer. Koden forbliver licenseret under MIT-licensen.
De anførte årsager til at omskrive til Rust inkluderer et ønske om at løse problemer i Bun forårsaget af hukommelseslækager, samt uenigheder med Zig-forfatterne vedrørende brugen af AI til kodning, og Zigs politik vedrørende accept af sprogændringer, der bryder kompatibiliteten, hvilket er uacceptabelt for store projekter. Den største fordel ved at skifte til Rust er evnen til at fange og forhindre hukommelsesfejl, som har optaget Bun-udviklernes tid i de senere år.
Baseret på benchmarks bruger Rust-versionen 13-48% mindre hukommelse, starter dobbelt så hurtigt og bruger op til 5 gange mindre CPU, når den er inaktiv. Størrelsen på den eksekverbare fil i Rust-versionen er blevet reduceret med 17%. CPU-belastningen blev halveret, når Claude Code blev kørt med Bun 1.4.
Udgivelsen inkluderer 1517 yderligere kompatibilitetstests og retter over 2900 problemer. Nye biblioteker, Bun.Image, Bun.WebView, Bun.markdown, Bun.cron() og Bun.Terminal, er blevet tilføjet til basisdistributionen. Parallel udførelsestilstand (--parallel) er nu implementeret i kommandoerne "bun run" og "bun test". Kompatibilitet med Next.js 16 og vitest frameworks er nu sikret.
Bun-projektet understøtter det meste af Node.js API'en. Platformen inkluderer et sæt værktøjer til at oprette og køre JavaScript- og TypeScript-applikationer, samt en runtime til at udføre JavaScript-applikationer uden en browser, en pakkehåndtering (kompatibel med NPM), en testsuite, en selvstændig pakkebygger og et lag til at integrere handlere skrevet i C. Med hensyn til ydeevne overgår Bun Deno og Node.js betydeligt (i test baseret på React-frameworket overgår Bun Deno med en faktor 2 og Node.js med en faktor 5). JavaScript-udførelse bruger JavaScriptCore JavaScript-motoren og WebKit-komponenter med yderligere patches.
Kilde: opennet.ru
