Bun v1.1.30

Bun v1.1.30

Leise und unauffĂ€llig wurde eine neue stabile Version veröffentlicht Bun – 1.1.30.

Bun ist eine Laufzeitumgebung fĂŒr ECMAScript / JavaScript, die in vielerlei Hinsicht Ă€hnlich ist nodejs. Bun basiert auf JavaScriptCore von Apple, aber Bun selbst sowie viele seiner Module sind in einer Sprache geschrieben zig. Bun bemĂŒht sich, maximal kompatibel mit nodejs hinsichtlich der Befehlszeilenoptionen zu sein, unterstĂŒtzt ECMAScript-Module (ESM) und CommonJS. Die Verwaltung von Paketen mit npm und die UnterstĂŒtzung von typescript sind direkt in die Anwendung als nativer Code integriert, sodass Programme in typescript direkt vom Interpreter ohne vorherige Konfiguration ausgefĂŒhrt werden können.

Allerdings ist Bun nicht einfach eine "Kopie" von nodejs in Bezug auf seine Funktionen. Neben einer schnelleren Verarbeitung in einigen Szenarien (bereits beim Start der Anwendung) und nahezu vollstĂ€ndiger UnterstĂŒtzung der in nodejs verfĂŒgbaren API bietet Bun umfangreiche Möglichkeiten fĂŒr Serveranwendungen – von Dateioperationen bis hin zur Transformation von HTML-BĂ€umen (HTMLRewriter), dem TypeScript-Transpiler-Modul (Bun.Transpiler), der integrierten Arbeit mit Datenbanken sqlite, Modulen zur Interaktion mit nativen Plattformbibliotheken ĂŒber die C-API – ffi, einem integrierten Testwerkzeug und vielen weiteren Möglichkeiten.

DarĂŒber hinaus unterstĂŒtzt Bun im experimentellen Modus die Integration mit C-Code ĂŒber transparente Aufrufe 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("Was ist die Antwort auf das Universum?", hello()); $ bun hello.js Was ist die Antwort auf das Universum? 42

In dieser Version wurde unter anderem ein CSS-Parser auf Basis von LightningCSS hinzugefĂŒgt, der speziell dafĂŒr von solchen Legacy-Technologien wie rust auf zig umgeschrieben wurde, was eine transparente Integration von css und typescript ermöglicht. Jetzt kann eine CSS-Datei direkt in ein typescript-Modul importiert werden:

index.ts: import ".\/style.css"; import Component from ".\/MyComponent.tsx"; // 
 Rest Ihrer Anwendung style.css: /* Ergebnis der Zusammenstellung: */ /* style.css */ .hello { background: red; } /* MyComponent.css */ .MyComponent { color: green; }

Bun ermöglicht einzusammeln die gesamte Anwendung mit allen Ressourcen in einer einzigen ausfĂŒhrbaren Datei.

Quelle: linux.org.ru

60GB SSD 8Gb DDR4