Ir al contenido

El medio de los artesanos de la web miércoles, 14 de octubre de 2026

MailStudio
Herramientas

Bun 1.4.3 incorpora bun check, un verificador de TypeScript hasta 6,4 veces más rápido que tsc

Bun 1.4.3 suma bun check, un verificador de tipos TypeScript integrado en el runtime que, según el equipo, llega a ser 6,4 veces más rápido que tsc. La versión también corrige una regresión que mantenía los servidores consumiendo CPU incluso en reposo.

Bun 1.4.3, publicada el 10 de octubre de 2026, incorpora bun check, un verificador de tipos TypeScript integrado en el runtime. Es un port del compilador typescript-go y reporta los mismos errores que tsc sin generar JavaScript, aprovechando todos los núcleos disponibles. La versión también corrige una regresión que mantenía activo un temporizador en los servidores inactivos, con una reducción de entre el 67 % y el 89 % del consumo de CPU en reposo.

Un verificador sin dependencia del paquete TypeScript

bun check lee directamente el tsconfig.json del proyecto y no requiere el paquete typescript. No sustituye al servidor de lenguaje del editor, que sigue apoyándose en TypeScript para la retroalimentación en tiempo real, pero se ejecuta desde la línea de comandos o integrado en otras órdenes de Bun.

bun check
bun check --no-pretty           # salida en bruto, útil para comparar con diff
bun run --check dev             # verifica tipos antes de ejecutar el script
bun test --check                # verifica archivos de prueba y sus imports
bun build --check ./src/index.ts --outdir out

El comando se apoya en el editor para la experiencia en tiempo real y en su propio motor para la verificación en línea de comandos, lo que permite integrarlo en un script de build o en un paso de CI sin instalar el compilador oficial.

Diferencias de rendimiento medidas en proyectos reales

En un Mac Apple Silicon de 16 núcleos, el equipo de Bun comparó bun check con tsc 7.0.2 sobre varias bases de código de código abierto.

ProyectoArchivosbun checktsc 7.0.2Mejora
VS Code (src)9.7951,24 s5,98 s4,8x
mikro-orm2.8831,20 s5,97 s5,0x
Next.js (packages/next)2.8810,28 s1,82 s6,4x
Playwright7060,15 s0,64 s4,2x

En el proyecto VS Code, el consumo de memoria baja a 2,14 GB frente a los 7,97 GB de tsc, es decir 3,7 veces menos. Una segunda prueba en Linux x64, con 64 hilos y promediada sobre 20 ejecuciones, confirma la diferencia en los 10.947 archivos de VS Code: 1,75 s para bun check frente a 5,88 s para tsc 7 con 16 procesos de verificación.

La cuestión de la conformidad

Un verificador más rápido solo interesa si da el mismo veredicto que el original. El equipo de Bun afirma superar el 100 % de la suite de conformidad de TypeScript 7.0.2, 51.210 pruebas, y haber comparado su salida con la de tsc en 72 proyectos de código abierto configurados deliberadamente mal.

Bun asegura haber comparado su salida con la de tsc sobre 286.267 errores reportados en 72 proyectos, con una sola discrepancia encontrada.

Estas cifras provienen del propio equipo de Bun, no de una auditoría independiente. El equipo publicó un protocolo para reproducir la comparación en cualquier proyecto: ejecutar tsc y bun check en paralelo, comparar las salidas con diff y abrir un ticket si difieren.

bunx -p [email protected] tsc --noEmit --pretty false > tsc.txt
bun check --no-pretty > bun.txt
diff tsc.txt bun.txt

Un servidor que realmente descansa en reposo

La segunda corrección notable afecta a las aplicaciones HTTP de larga duración. Desde la versión 1.4.2, una petición ocasional mantenía activo un temporizador del recolector de basura cada segundo, incluso sin tráfico. La versión 1.4.3 solo despierta el proceso para trabajo real, como una comprobación de estado cada diez segundos.

Frameworkv1.4.0v1.4.2v1.4.3
Express308 ms282 ms57 ms
Elysia280 ms197 ms21 ms
Hono263 ms195 ms21 ms
Next.js SSR628 ms815 ms268 ms

Estas cifras de CPU acumulado, medidas durante dos minutos de inactividad con una comprobación de estado cada diez segundos, afectan sobre todo a los despliegues facturados por uso, donde un proceso que corre sin motivo tiene un coste directo. La memoria en reposo también baja entre un 6 % y un 11 % respecto a la versión anterior.

El resto de la entrega

La versión añade también Bun.FetchSession, que aísla TLS, proxy y conexiones persistentes por grupo de peticiones, y una clase experimental Bun.ModuleGraph capaz de ejecutar varias instancias de una misma aplicación en un solo proceso. Varios parches de seguridad completan la entrega, entre ellos un endurecimiento TLS catalogado como CVE-2026-48618.

Para una comparativa más amplia de gestores de paquetes y runtimes de JavaScript, véase la comparativa de npm, pnpm, Bun y Deno. En el apartado específico del compilador de TypeScript, el paso a un compilador escrito en Go ya se cubrió en el artículo sobre TypeScript 7 y su compilador en Go, cuyo tsc 7.0.2 sirve aquí como referencia de comparación.

Lo que hay que recordar

Bun 1.4.3 convierte la verificación de tipos en un argumento de velocidad y no en un servicio delegado por completo al ecosistema TypeScript. Las ganancias anunciadas, de 3x a 6,4x según el proyecto, se refieren a la verificación en línea de comandos y en CI, no a la experiencia dentro del editor, que sigue dependiendo del servidor de lenguaje TypeScript habitual. Para los equipos que ejecutan servicios Bun en producción facturada por uso, la corrección del temporizador en reposo puede pesar tanto como el nuevo verificador.

La cifra que merece atención no es el 6,4x en Next.js, sino la caída del 89 % de CPU en reposo en Elysia. He visto más de una factura de hosting inflada por un proceso Node que giraba sin motivo entre peticiones que un build ralentizado por un verificador de tipos lento. Queda por ver si bun check aguanta en bases de código menos cuidadas que las elegidas para la demostración, con configuraciones tsconfig heredadas y tipos genéricos recursivos que hacen descarrilar a más de una herramienta de terceros. Mientras tanto, el script de diff publicado por el equipo es la forma correcta de comprobarlo en el propio proyecto antes de retirar tsc de una cadena de CI. — Simon Janvier

Para profundizar: la entrada oficial del equipo de Bun sobre la versión 1.4.3.

Compartir LinkedIn Bluesky Hacker News E-mail

Leer también