NjĂ« version i ri stabil u publikua heshturazi Bun â 1.1.30.
Bun është një mjedis ekzekutimi ECMAScript / JavaScript, i ngjashëm në shumë aspekte me nodejs. Në thelb, Bun përdor JavaScriptCore nga Apple, por vetë Bun, si dhe shumica e moduleve të tij, janë shkruar në gjuhën zig. Bun përpiqet të jetë maksimalisht i pajtueshëm me nodejs në opsionet e linjës komandës, mbështet modulet ECMAScript (ESM) dhe CommonJS. Menaxhimi i paketave npm dhe mbështetja typescript janë të integruara drejtpërdrejt në aplikacion si kod natyror, dhe programet në typescript mund të ekzekutohen drejtpërdrejt nga interpreteri pa konfigurim paraprak.
MegjithatĂ«, Bun nuk Ă«shtĂ« thjesht njĂ« "kopje" e nodejs nĂ« aftĂ«sitĂ« e tij. PĂ«rveç performancĂ«s mĂ« tĂ« shpejtĂ« nĂ« disa skenarĂ« (duke filluar direkt nga ekzekutimi i aplikacionit) dhe mbĂ«shtetjes pothuajse tĂ« plotĂ« tĂ« API-ve tĂ« disponueshme nĂ« nodejs, Bun ofron mundĂ«si tĂ« gjera pĂ«r aplikacionet nĂ« server â nga menaxhimi i skedarĂ«ve deri te transformimi i pemĂ«s HTML (HTMLRewriter), moduli i transpilanit typescript (Bun.Transpiler), operimi i integruar me bazat e tĂ« dhĂ«nave sqlite, module pĂ«r ndĂ«rveprimin me bibliotekat native tĂ« platformĂ«s pĂ«rmes API-sĂ« sĂ« gjuhĂ«s C â ffi, njĂ« mjete testimi dhe shumĂ« mundĂ«si tĂ« tjera.
Përveç kësaj, në modin eksperimental, Bun mbështet integrimin me kodin në C përmes thirrjeve të qarta tcc:
hello.c: int hello() { return 42; } hello.js: import { cc } from "bun:ffi"; import source from "./hello.c" with { type: "file" }; const { symbols: { hello }, } = cc({ source, symbols: { hello: { args: [], returns: "int", }, }, }); console.log("Cila është përgjigjja për universin?", hello()); $ bun hello.js Cila është përgjigjja për universin? 42
Në këtë lëshim, midis gjërave të tjera, u shtua një parser CSS i bazuar në LightningCSS i cili u rikrijua posaçërisht nga teknologjitë legacy si rust në zig, duke lejuar integrimin e qartë të css dhe typescript, dhe tani është e mundur të importoni një skedar css direkt në modulin typescript:
index.ts: import "./style.css"; import Component from "./MyComponent.tsx"; // ⊠pjesa tjetër e aplikacionit style.css: /* rezultati i ndërtimit: */ /* style.css */ .hello { background: red; } /* MyComponent.css */ .MyComponent { color: green; }
Bun lejon të grumbullojë të gjithë aplikacionin me të gjitha burimet në një skedë ekzekutuese të vetme.
Burimi: linux.org.ru
