Saltar al contenido principal

Lanzada la versión 7.29.0: La última versión menor de Babel 7

· 4 min de lectura
Traducción Beta No Oficial

Esta página fue traducida por PageTurner AI (beta). No está respaldada oficialmente por el proyecto. ¿Encontraste un error? Reportar problema →

¡Babel 7.29.0 ya está aquí!

Esta es la última versión menor de Babel 7 mientras nos preparamos para lanzar Babel 8.0.0. ¡Babel 8.0.0-rc también sale hoy: pruébalo!

Esta versión incluye soporte para definir objetivos de transpilación en @babel/standalone mediante un atributo data-target en elementos <script>. También añade soporte para la API asíncrona de @babel/core en @babel/standalone.

Ambos cambios están diseñados para facilitar la migración de Babel 7 a Babel 8.

Puedes leer el registro de cambios completo en GitHub. Si ya usas la beta de Babel 8, todas las nuevas características de 7.29.0 están incluidas en v8.0.0-rc.1.

Lanzamiento 7.28.0: `babel.config.ts`, gestión explícita de recursos y propuesta de enlace descartable

· 4 min de lectura
Traducción Beta No Oficial

Esta página fue traducida por PageTurner AI (beta). No está respaldada oficialmente por el proyecto. ¿Encontraste un error? Reportar problema →

¡Babel 7.28.0 ya está disponible!

Esta versión incluye soporte para babel.config.ts y babel.config.mts, la característica ES2026 de Gestión Explícita de Recursos, la propuesta de enlace descartable y la opción sourceType: "commonjs".

Puedes leer el registro completo de cambios en GitHub. Si ya estás usando la beta de Babel 8, todas las nuevas características de la 7.28.0 están incluidas en v8.0.0-beta.1.

Anunciando Babel 8 Beta

· 3 min de lectura
Traducción Beta No Oficial

Esta página fue traducida por PageTurner AI (beta). No está respaldada oficialmente por el proyecto. ¿Encontraste un error? Reportar problema →

Después de casi dos años desde el primer lanzamiento alpha de Babel 8 (8.0.0-alpha.0), por fin estamos listos.

Todos los cambios con ruptura de compatibilidad que planeábamos incluir en Babel 8 están completos, y hemos eliminado gran parte de la deuda técnica acumulada durante años que no pudimos resolver durante la vida útil de Babel 7.

Ahora necesitamos probarlo en proyectos reales para asegurarnos de que todo está correcto. Hemos estado transpilando nuestro propio código con Babel 8 desde las primeras versiones alpha, pero un solo usuario en versión preliminar no es suficiente. 😉

Lanzamiento de la versión 7.27.0: mejor alineación con el ecosistema

· 3 min de lectura
Traducción Beta No Oficial

Esta página fue traducida por PageTurner AI (beta). No está respaldada oficialmente por el proyecto. ¿Encontraste un error? Reportar problema →

¡Babel 7.27.0 ya está aquí!

Esta versión no incluye características nuevas significativas, pero mejora la alineación del comportamiento de Babel con JavaScript estándar y otras herramientas.

El generador de código ahora imprimirá por defecto la sintaxis correcta de atributos de importación, sin requerir que los usuarios activen explícitamente una opción para ello.

También ajustamos el comportamiento de la opción rewriteImportExtensions de @babel/preset-typescript para corregir diferencias respecto a --rewriteRelativeImportExtensions de TypeScript.

Finalmente, actualizamos nuestro plugin de compatibilidad estree en @babel/parser para generar nodos AccessorProperty para propiedades de clase accessor foo = "val", introducidas por la propuesta de decoradores en etapa 3. Ten en cuenta que, por razones de compatibilidad heredada, @babel/parser solo genera un AST compatible con ESTree para características de clase cuando la opción classFeatures del plugin estree está habilitada.

Hay múltiples cambios que pueden beneficiar a autores de plugins: puedes leer el registro completo de cambios en GitHub.

Lanzamiento 7.26.0: características stage 4 habilitadas por defecto y nueva impresora de código experimental

· 4 min de lectura
Traducción Beta No Oficial

Esta página fue traducida por PageTurner AI (beta). No está respaldada oficialmente por el proyecto. ¿Encontraste un error? Reportar problema →

¡Acabamos de lanzar Babel 7.26.0!

Habilita por defecto dos propuestas de ECMAScript que se estandarizaron en la última reunión de TC39: atributos de importación y modificadores en línea de expresiones regulares, además del análisis de enumeraciones de Flow.

Babel ahora también permite que los plugins proporcionen hooks asíncronos pre/post, e incluye un [modo experimental](TODO: Link) para preservar las posiciones de los tokens al generar el código transformado.

Puedes leer el changelog completo en GitHub.

7.25.0 Lanzado: Correcciones para Safari y grupos de captura con nombres duplicados

· 4 min de lectura
Traducción Beta No Oficial

Esta página fue traducida por PageTurner AI (beta). No está respaldada oficialmente por el proyecto. ¿Encontraste un error? Reportar problema →

¡Babel 7.25.0 ya está disponible!

@babel/preset-env ahora incluye por defecto soporte para la propuesta de grupos de captura con nombres duplicados en expresiones regulares, junto con una corrección para campos de clase al compilar para Safari. Esta versión también mejora el soporte para compilar importaciones de módulos JSON a CommonJS y añade compatibilidad con archivos de configuración en el modo --eval de @babel/node.

Puedes consultar el registro completo de cambios en GitHub.

7.24.0 Publicado: Actualizaciones de decoradores e importación de módulos JSON

· 5 min de lectura
Traducción Beta No Oficial

Esta página fue traducida por PageTurner AI (beta). No está respaldada oficialmente por el proyecto. ¿Encontraste un error? Reportar problema →

¡Babel 7.24.0 ya está disponible!

Actualizamos nuestra implementación de Decoradores para que coincida con la última versión de la propuesta, y mejoramos cómo transformamos campos y métodos privados de clases. También añadimos soporte para importar módulos JSON en navegadores y Node.js, una propuesta de Etapa 3 que depende de Atributos de Importación.

Puedes consultar el registro de cambios completo en GitHub.

CVE-2023-45133: Hallazgo de una Vulnerabilidad de Ejecución Arbitraria de Código en Babel

· 11 min de lectura
Traducción Beta No Oficial

Esta página fue traducida por PageTurner AI (beta). No está respaldada oficialmente por el proyecto. ¿Encontraste un error? Reportar problema →

El 10 de octubre de 2023 descubrí una vulnerabilidad de ejecución arbitraria de código en Babel, a la que posteriormente se le asignó el identificador CVE-2023-45133. En esta publicación, te guiaré a través del proceso de descubrimiento y explotación de esta intrigante falla.

7.23.0 Lanzada: ¡Metadatos de Decoradores y muchas funciones nuevas de `import`!

· 7 min de lectura
Traducción Beta No Oficial

Esta página fue traducida por PageTurner AI (beta). No está respaldada oficialmente por el proyecto. ¿Encontraste un error? Reportar problema →

¡Acabamos de lanzar Babel 7.23.0! 🎉

Incluye soporte de transformación para las propuestas Decorator Metadata, Source Phase Import, Deferred Import Evaluation y Optional Chaining Assignment. También actualizamos nuestro parser para soportar la nueva versión de TypeScript 5.2 y añadimos una opción de transformación para usar la extensión .ts en imports de TypeScript.

¡Además de lanzar la versión 7.23.0, también publicamos recientemente la primera versión alpha de Babel 8!

Puedes leer el registro de cambios completo en GitHub.

7.22.0 Publicado: Soporte para Explicit Resource Management y análisis de Import Attributes

· 7 min de lectura
Traducción Beta No Oficial

Esta página fue traducida por PageTurner AI (beta). No está respaldada oficialmente por el proyecto. ¿Encontraste un error? Reportar problema →

Babel 7.22.0 ya está disponible, con soporte de análisis/transformación para la propuesta Explicit Resource Management, incluyendo ambas variantes síncrona y asíncrona, y con soporte de análisis para Import Attributes (una evolución de la antigua propuesta Import Assertions).

También actualizamos nuestra implementación de decoradores siguiendo algunos cambios en la propuesta, y añadimos soporte para las sentencias TypeScript import ... = y export ... =.

@babel/preset-env ahora incluye por defecto soporte de transformación para el flag v de expresiones regulares, recientemente aprobado como parte del estándar ECMAScript. Por último, renombramos todos los plugins para características estables de ECMAScript de -proposal- a -transform-.

Puedes leer el registro de cambios completo en GitHub.