A Bun 1.4 megjelent — ez a kiadás az első stabil változat a projektnek azután, hogy néhány hónappal ezelőtt a kódot Zigről Rustra írták át. A kiadási jegyzetekben a Rust-átírást meglepően háttérbe szorították, miközben a verzió egy sor nagyobb újítást és mérhető teljesítményjavulást sorol fel.
A kiadási anyag szerint a Bun 1.4 többek között a következőket hozza:
- +1,517 teszt a Node.js tesztkészletből, ami a legnagyobb előrelépés a Node.js kompatibilitás terén a Bun 1.0 óta.
- Több mint 2,900 javított probléma.
- Az üresjárati CPU-használat ötszörös csökkentése.
- Memóriafelhasználás csökkenése akár 35%-kal.
- Indulási idő felgyorsítása Linuxon körülbelül 50%-kal.
Emellett a kiadás új API-kat és parancsokat vezet be, többek közt: Bun.Image, Bun.WebView, Bun.markdown, Bun.cron(), Bun.Terminal, bun run --parallel, bun test --parallel, bun audit fix, bun dedupe és bun prune.
Bun.WebView: beépített böngésző-automatizálás
A különösen figyelemre méltó újítás a Bun.WebView, amely első osztályú támogatást ad böngészőautomatizáláshoz a Bun magjában. A megoldás két módon működik: macOS alatt natív WebKit használatával, vagy helyi Chromium folyamat vezérlésével a Chrome DevTools Protocol (CDP) segítségével. Ez lehetővé teszi webböngészőkhöz kötődő műveletek közvetlen indítását és vezérlését a Bun környezetből.
Miért számít ez: a WebView integráció egyszerűsítheti az olyan feladatok építését, amelyek oldalbetöltést, DOM-manipulációt vagy távoli JavaScript futtatást igényelnek, anélkül hogy külső böngészővezérlő könyvtárakat kellene külön telepíteni és konfigurálni.
Prototype: shot-scraper-stílusú JSON API TypeScriptben
A tesztelés részeként a szerző Claude Code segítségével készíttetett egy TypeScript szerverprototípust, amely egy shot-scraper-stílusú web API-t valósít meg. A prototípus célja az volt, hogy betöltsön egy weboldalt és JavaScriptet hajtson végre rajta, hasonlóan a shot-scraper CLI viselkedéséhez, valamint hogy felmérje, mekkora RAM-szükséglete van egy ilyen szolgáltatás futtatásának.
A publikusan említett TypeScript szerverimplementációt használva a kísérletek során konténerizált környezetben (cgroups) mérték a memóriaigényt. A mérések szerint egy teljes Chromium-mal végzett, összetett oldalakra vonatkozó futtatás körülbelül 192–256 MB konténermemóriát igényel.
Fontos megjegyezni, hogy ez a szám az adott prototípus és tesztkörnyezet függvénye: a pontos értékek változhatnak a betöltött oldalak összetettségétől, a Chromium verziójától és a konfigurációs beállításoktól.
Miért fontos mindez?
A Bun 1.4 nagy lépést jelent a Node.js-kompatibilitásban és a teljesítményben, miközben beépített eszközöket hoz webes automatizáláshoz és szerveroldali műveletekhez. A Bun.WebView különösen hasznos lehet fejlesztők és automatizálási feladatokat végző rendszerek számára, mert egyszerűsíti a böngészőalapú interakciókat és csökkentheti a külső függőségek szükségességét.
A prototípus tapasztalatai azt mutatják, hogy egy teljes Chromium-vezérelt munkafolyamat konténeres környezetben mérsékelt memóriaigénnyel működhet, de a tényleges erőforrás-szükséglet a használati eset függvénye.
Címkék
browsers, javascript, ai, rust, typescript, generative-ai, llms, coding-agents, bun



