Saltar al contenido

Bun 1.4.4 añade bun fmt, un formateador compatible con Prettier

Bun 1.4.4, publicado el 22 de octubre de 2026, añade bun fmt, un formateador compatible con Prettier que, según Bun, revisa el repositorio de Prettier 286 veces más rápido.

Por Tech AI Wire Team

4 min de lectura

XLinkedIn
The Bun blog post Bun v1.4.4 by Jarred Sumner, dated October 22, 2026, with install and upgrade commands.

En cifras

bun fmt --check on Prettier's repo, per Bun
59.7 ms
Prettier 3.9.10 on the same repo
17.1 s
faster bun check on MUI docs than Bun 1.4.3
7.8x

Bun 1.4.4, publicado el 22 de octubre de 2026, añade bun fmt, un formateador de código integrado en el entorno de ejecución Bun que lee tu configuración de Prettier actual. En el propio repositorio de Prettier, Bun dice que bun fmt --check tarda 59,7 milisegundos, frente a los 17,1 segundos de Prettier. La versión también acelera bun check y migra lockfiles de Yarn Berry.

Bun es un entorno de ejecución de JavaScript que además incluye un gestor de paquetes, un ejecutor de pruebas y un verificador de tipos. Un formateador reescribe el código con un estilo uniforme, para que los equipos dejen de discutir sobre espacios y saltos de línea.

Qué hace bun fmt

bun fmt es una adaptación de Prettier, un formateador de JavaScript muy usado, según las notas de la versión Bun v1.4.4 de Jarred Sumner. Lee los archivos de configuración que el proyecto ya tiene:

  • .prettierrc*, prettier.config.* y la clave prettier de package.json
  • .editorconfig y .prettierignore
  • configuraciones de oxfmt, otro formateador
  • una sección [fmt] en bunfig.toml

Formatea JavaScript, TypeScript, JSX, CSS, SCSS, HTML, Vue, Svelte, JSON, YAML, TOML, Markdown, MDX y GraphQL, entre otros. La ordenación de clases de Tailwind, la ordenación de claves de package.json y el soporte de Svelte vienen integrados, así que esos plugins de Prettier ya no hacen falta. La ordenación de imports también viene integrada, pero está desactivada por defecto.

Los lenguajes que aún necesitan un plugin de Prettier, como Astro, recurren al Prettier instalado en el proyecto. Con un plugin no compatible, bun fmt muestra un error, se salta los archivos afectados y termina con el código de salida 2. El comando bun format sigue ejecutando el script format propio del proyecto.

Las cifras de Bun

Estas cifras son de Bun y nadie las ha comprobado de forma independiente.

Pruebabun fmtComparación
Repositorio de Prettier, 2.616 archivos59,7 ms, 48 MBPrettier 3.9.10: 17,1 s, 459 MB (286 veces)
vitest, date-fns, monkeytype, h3De 234 a 425 veces más rápido que Prettier 3.9.9
vite, con su propia configuración65,2 msoxfmt 0.74.0: 406,7 ms (6,2 veces)
fumadocs, con su propia configuración44,6 msoxfmt 0.74.0: 1.395 ms (31 veces)

El resumen de la entrada dice que bun fmt es de 3 a 6 veces más rápido que oxfmt, aunque su propia fila de fumadocs muestra 31 veces. En cuanto al resultado, Bun informa de que 9.648 de las 9.731 pruebas de formato de Prettier coinciden, un 99,1 %. Frente a Prettier con sus plugins habituales, el 97,9 % de la salida de JavaScript y TypeScript fue idéntica.

AICoder, que informó cuando el formateador llegó a la rama principal de Bun el 12 de octubre, citó otra prueba. Revisar el formato del código fuente de VS Code costó 2,9 segundos de CPU con Bun, frente a 295 segundos con Prettier 3.9.9.

Un bun check y un bun install más rápidos

La versión también mejora el verificador de tipos que llegó en Bun 1.4.3 añade bun check, un verificador de tipos de TypeScript más rápido. En la documentación de MUI, bun check tarda ahora 1,31 segundos en lugar de 10,28, y la memoria máxima baja de 11,2 GB a 1,3 GB. Un proyecto fue más lento: el src/js del propio Bun pasó de 0,11 a 0,20 segundos.

bun install ahora migra los lockfiles de Yarn 2 y posteriores ("Yarn Berry") a bun.lock y conserva las versiones fijadas. Bun 1.4.3 solo manejaba Yarn v1. Las descargas fallidas se reintentan ahora hasta cinco veces con esperas cada vez más largas. "En Bun v1.4.3, los cinco reintentos ocurrían en 5 ms, así que una breve caída del registro hacía fallar la instalación", escribe Sumner.

La versión corrige 271 problemas e incluye correcciones de seguridad para TLS, WebSocket, los clientes de bases de datos y el gestor de paquetes, aunque la entrada no da detalles. También afirma que Bun.SQL usa hasta un 48 % menos de CPU del cliente por consulta.

Cambios incompatibles que conviene revisar

La entrada menciona varios cambios de comportamiento en el texto:

  • Patrones glob como {1..3} y !(g)/a.ts ahora se tratan como patrones y no como texto literal.
  • bun publish rechaza versiones preliminares sin --tag, y --provenance ahora produce un error.
  • Bun.hash() lanza un error con null y undefined en vez de calcular su hash.
  • Los servidores TLS solo piden certificados de cliente si se define requestCert: true.
  • La cobertura "% Lines" de bun test puede bajar tras actualizar, así que revisa cualquier coverageThreshold.

Qué significa para los desarrolladores

Bun mete un formateador compatible con Prettier en una herramienta que muchos equipos ya usan, lo que quita una dependencia de un proyecto de JavaScript.

  • Pruébalo en la CI antes de cambiar. Ejecuta bun fmt --check en una rama y compara el resultado con Prettier. Con un 97,9 % de salida idéntica, espera pocos archivos cambiados.
  • Revisa tus plugins. Un plugin de Prettier no compatible hace que bun fmt termine con el código 2, lo que hará fallar una tarea de CI.
  • Actualiza por las correcciones de seguridad. Ejecuta bun upgrade. Bun menciona correcciones para TLS y WebSocket, que importan sobre todo a los servidores que funcionan con Bun.
  • Revisa primero los cambios incompatibles. El comportamiento de los glob, las reglas de bun publish y los certificados de cliente TLS han cambiado. Ejecuta tus pruebas en 1.4.4 antes de desplegarla.

Fuentes

  1. Bun v1.4.4 - Bun Blog
  2. Bun adds built-in bun lint and bun fmt: reads ESLint/Prettier configs, 1,021 rules, 2.9s vs Prettier's 295s CPU on vscode format check - AICoder

Artículos relacionados