Megjelent a Bun 1.2

A JavaScript és TypeScript fejlesztők számára izgalmas hírt közölt a Bun csapata, amelyben bemutatták a most megjelent a Bun 1.2, az all-in-one futtatókörnyezet és eszközkészlet legújabb verzióját. Ez a frissítés jelentős javulásokat hoz a Node.js kompatibilitás terén, valamint új, beépített funkciókkal bővül, mint az Amazon S3 objektumtároló API és a PostgreSQL kliens.

Mi az a Bun és hogy került ide?

A Bun egy innovatív, all-in-one JavaScript futtatókörnyezet és eszközkészlet, amelyet Jarred Sumner fejlesztett ki 2022-ben. A Bun célja, hogy egyszerűsítse és felgyorsítsa a JavaScript és TypeScript projektek fejlesztését, tesztelését és futtatását.

A Bun a JavaScriptCore motort használja, amely jelentősen gyorsabb, mint a Node.js által használt V8 motor. Ugyanakkor a Bun nem csak egy futtatókörnyezet, hanem csomagkezelő, bundler és tesztfuttató is. Célja a 100%-os Node.js kompatibilitás, így könnyen helyettesítheti a Node.js-t meglévő projektekben.

Szintén fontos információ, hogy a Bun-t a mostanában egyre népszerűbb Zig nyelven írták, amely egy C-hez vagy Rust-hoz hasonló alacsony szintű programozási nyelv és hozzájuk hasonlóan rendkívül hatékony és gyors kódot lehet vele írni.

Node.js kompatibilitás javítása

A Bun csapata a 1.2-es verzióval új megközelítést alkalmazott a Node.js kompatibilitás tesztelésére és javítására. Mostantól a Node.js tesztcsomagját futtatják minden egyes módosítás után, ami lehetővé tette több ezer hiba azonosítását és javítását. Ennek eredményeként 11 Node.js modul már több mint 90%-ban átmegy a teszteken a Bun-nal.

Ez a megközelítés lehetővé tette a csapat számára, hogy mélyreható refaktorálásokat végezzenek, és célul tűzzék ki a 100%-os Node.js kompatibilitás elérését. A tesztelés során számos belső API-val és hibaüzenettel kapcsolatos kihívással szembesültek, amelyeket sikeresen megoldottak a kompatibilitás javítása érdekében.

Új beépített funkciók

A Bun 1.2 számos új funkcióval bővült, amelyek tovább növelik a fejlesztők hatékonyságát:

  • Beépített Amazon S3 API: A Bun.s3 segítségével a fejlesztők közvetlenül érhetik el és kezelhetik az S3 objektumtárolókat, megkönnyítve az adatok kezelését és tárolását.

  • Beépített PostgreSQL kliens: A Bun.sql mostantól támogatja a PostgreSQL adatbázisok kezelését, lehetővé téve az adatbázis-műveletek közvetlen végrehajtását. A csapat tervezi a MySQL támogatás bevezetését is a közeljövőben.

  • Új szövegalapú lockfile: A bun.lock bevezetésével a csomagok zárolási mechanizmusa átláthatóbbá és kezelhetőbbé vált, elősegítve a verziókezelést és a telepítési folyamatok megbízhatóságát.

Teljesítményjavulás és további fejlesztések

A Bun 1.2-ben az Express keretrendszer akár háromszor gyorsabban képes HTTP-kéréseket kiszolgálni, mint a Node.js-ben, ami jelentős teljesítményjavulást jelent a webalkalmazások számára.

Ezen kívül a bun install mostantól 30%-kal gyorsabb, mint a korábbi verziókban, csökkentve a telepítési időt és növelve a fejlesztési folyamat hatékonyságát.

További új funkciók és fejlesztések

  • Kísérleti C program támogatás: A fejlesztők mostantól kísérleti jelleggel fordíthatnak és futtathatnak C programokat JavaScriptből, lehetővé téve a C rendszerkönyvtárak használatát építési lépések nélkül.

  • NPM konfiguráció támogatása: A Bun 1.2 támogatja az .npmrc fájl olvasását, amely lehetővé teszi az NPM-regiszter és a scoped csomagok konfigurálását. Emellett a csomagok közzététele is egyszerűbbé vált a bun publish parancs segítségével, amely az npm publish közvetlen helyettesítője.

  • Új CSS-elemző és HTML importálás támogatása: Az új CSS-elemző és a HTML importálás támogatása tovább bővíti a Bun képességeit a frontend fejlesztés terén.

  • Egyéni hibaüzenetek támogatása: Az expect() használatával mostantól egyéni hibaüzenetek is definiálhatók, megkönnyítve a tesztelést és a hibakeresést.

Összegzés

A Bun 1.2 jelentős előrelépést jelent a JavaScript és TypeScript fejlesztők számára, különösen a Node.js kompatibilitás és a beépített funkciók terén. Az újítások és fejlesztések célja, hogy a fejlesztők hatékonyabban és gyorsabban dolgozhassanak, miközben kihasználják a Bun nyújtotta lehetőségeket.

A Bun telepítéséhez és frissítéséhez szükséges információk megtalálhatók a hivatalos blogbejegyzésben.     

Osszd meg ezt a cikket
Új szabványos lock fájlformátum a Python csomagkezelésében
A Python fejlesztőközössége a PEP 751 elfogadásával bevezeti a pylock.toml formátumot, amely egységes és biztonságos megoldást kínál a függőségek kezelésére. Ez a lépés egy régi problémát old meg, hiszen eddig nem létezett olyan hivatalos szabvány, amely garantálta volna a csomagverziók és függőségek konzisztens kezelését különböző környezetekben.
Megérkezett a Babylon.js 8.0
A Microsoft egy évnyi intenzív fejlesztés után végre bemutatta a Babylon.js legújabb, 8.0-s verzióját. Az új kiadás számos korszerű funkcióval érkezik, melyek célja, hogy még gyorsabb és látványosabb, interaktív webes élményeket tegyen lehetővé. Az IBL árnyékok segítségével a környezet megvilágítása valósághűbbé válik, míg a területi fények lehetőséget adnak arra, hogy a 2D-s fénykibocsátás egyszerűen, de hatékonyan jelenjen meg. Emellett az alfa állapotban bemutatott Node Render Graph révén a fejlesztők teljes irányítást kapnak a renderelési folyamat felett, míg az új Lightweight Viewer és a WGSL Core Engine shaderek tovább csökkentik a fejlesztési időt és javítják a teljesítményt.
Tízszeres gyorsulás a TypeScript motor Go nyelvre való átírása után
A TypeScript csapata többször próbálta már az eredeti JavaScript motort átírni, más programozási nyelvre, de ez idáig ezek a próbálkozások nem hozták a kívánt eredményt. A napokban azonban bejelentették, hogy a Go nyelvre történő átírással áttörést értek el.
VoidZero az egységesített JavaScript eszközkészlet
Evan You, a Vue.js keretrendszer és a Vite fejlesztési eszközkészlet alkotója nemrég bejelentette a VoidZero Inc. létrehozását.