Bun 1.4, een platform ontworpen voor de zelfstandige uitvoering van JavaScript- en TypeScript-applicaties en bedoeld als een naadloze vervanging voor Node.js, is uitgebracht. De 1.4-branch is opmerkelijk vanwege de migratie van de codebase van Zig naar Rust, die is gerealiseerd met behulp van Claude AI-tools. De code blijft onder de MIT-licentie.
De redenen die werden aangevoerd voor de overstap naar Rust waren onder andere de wens om problemen in Bun, veroorzaakt door geheugenlekken, aan te pakken, meningsverschillen met de Zig-auteurs over het gebruik van AI voor het programmeren, en het beleid van Zig met betrekking tot het accepteren van taalwijzigingen die de compatibiliteit verbreken, wat onacceptabel is voor grote projecten. Het belangrijkste voordeel van de overstap naar Rust is de mogelijkheid om geheugenproblemen op te sporen en te voorkomen, iets waar Bun-ontwikkelaars de afgelopen jaren veel tijd aan kwijt waren.
Uit benchmarks blijkt dat de Rust-versie 13-48% minder geheugen verbruikt, twee keer zo snel opstart en tot wel vijf keer minder CPU-kracht gebruikt in ruststand. De bestandsgrootte van het uitvoerbare bestand van de Rust-versie is met 17% verkleind. Bij het uitvoeren van Claude Code met Bun 1.4 werd de CPU-belasting gehalveerd.
Deze release bevat 1517 extra compatibiliteitstests en lost meer dan 2900 problemen op. Nieuwe bibliotheken, Bun.Image, Bun.WebView, Bun.markdown, Bun.cron() en Bun.Terminal, zijn toegevoegd aan de basisdistributie. De parallelle uitvoeringsmodus (--parallel) is nu geïmplementeerd in de commando's "bun run" en "bun test". Compatibiliteit met de Next.js 16- en vitest-frameworks is nu gegarandeerd.
Het Bun-project ondersteunt het grootste deel van de Node.js API. Het platform omvat een set tools voor het maken en uitvoeren van JavaScript- en TypeScript-applicaties, evenals een runtime voor het uitvoeren van JavaScript-applicaties zonder browser, een pakketbeheerder (compatibel met NPM), testtools, een zelfstandige pakketbouwer en een laag voor het inbedden van handlers geschreven in C. Qua prestaties presteert Bun aanzienlijk beter dan Deno en Node.js (in tests gebaseerd op het React-framework presteert Bun twee keer zo goed als Deno en bijna vijf keer zo goed als Node.js). De uitvoering van JavaScript maakt gebruik van de JavaScriptCore JavaScript-engine en WebKit-componenten met aanvullende patches.
Bron: opennet.ru
