Bun v1.1.30

Bun v1.1.30

Silenciosamente se publicó una nueva versión estable Bun – 1.1.30.

Bun es un entorno de ejecución ECMAScript / JavaScript, similar en muchos aspectos a nodejs. En la base de Bun se utiliza JavaScriptCore de Apple, pero Bun, al igual que muchos de sus módulos, está escrito en zig. Bun busca ser lo más compatible posible con nodejs en las opciones de línea de comandos, soporta módulos ECMAScript (ESM) y CommonJS. La gestión de paquetes npm y el soporte de typescript están integrados directamente en la aplicación como código nativo, y los programas en typescript pueden ejecutarse directamente en el intérprete sin configuración previa.

Sin embargo, Bun no es solo una "copia" de nodejs en términos de capacidades. Además de su mayor velocidad en varios escenarios (comenzando desde el lanzamiento de la aplicación) y un soporte casi completo de la API disponible en nodejs, Bun ofrece amplias posibilidades para aplicaciones del servidor: desde la manipulación de archivos hasta la transformación del árbol HTML (HTMLRewriter), un módulo de transpileción de typescript (Bun.Transpiler), integraciones con bases de datos sqlite, módulos para interactuar con bibliotecas nativas de la plataforma a través de la API del lenguaje C – ffi, un conjunto de herramientas de pruebas y muchas otras características.

Además, en modo experimental, Bun soporta la integración con código en C a través de llamadas transparentes a 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("¿Cuál es la respuesta del universo?", hello()); $ bun hello.js ¿Cuál es la respuesta del universo? 42

En esta versión, entre otras cosas, se ha añadido un parser CSS basado en LightningCSS el cual fue reescrito específicamente desde tecnologías heredadas como rust a zig, que ha permitido integrar de forma transparente css y typescript, y ahora se puede importar un archivo css directamente en un módulo typescript:

index.ts: import ".\/style.css"; import Component from ".\/MyComponent.tsx"; // … resto de tu aplicación style.css: \/* resultado de la compilación: *\/ \/* style.css *\/ .hello { background: red; } \/* MyComponent.css *\/ .MyComponent { color: green; }

Bun permite compilar toda la aplicación con todos los recursos en un solo archivo ejecutable.

Fuente: linux.org.ru

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster