HeadlinesBriefing favicon HeadlinesBriefing.com

Compilador Rust React nativo en Vite

Hacker News •
×

Tras el lanzamiento por parte del equipo de oxc del soporte oficial para el compilador Rust React el 4 de agosto de 2026, cambiamos nuestra base de código de React Router de 1,036 archivos (Outlyne, un constructor de sitios web) a él y vimos una aceleración de ~17.6× en la parte del compilador de nuestra compilación. La versión v6.1.0 de @vitejs/plugin-react trajo "soporte experimental nativo para el compilador React", al que puede optar pasando { compiler: true } al complemento en su configuración de Vite. Y para aquellos que no pueden usar el complemento de Vite React (por ejemplo, si, como nosotros, está usando React Router en modo de marco), @acusti/vite-plugin-react-compiler es un complemento mínimo de Vite para compilar su código con React independientemente del resto de su canal de compilación.

Compilaciones más rápidas = desarrolladores más felices + CI más barato. La característica principal es la aceleración. Según Boshen, el líder del proyecto oxc: Es más de 10 veces más rápido que Babel en nuestro benchmark preliminar. Vimos una aceleración de más de 17×, con 1,036 archivos pasando de 14.3 s cuando se compilaban con Babel a 0.81 s de forma nativa (un solo hilo). Esto es enorme para nosotros porque, con el desarrollo de software asistido por agentes, el uso de CI y los minutos de GitHub Actions se han convertido en un centro de costos real. Tenga en cuenta que esas aceleraciones se aplican solo a la parte del compilador; el tiempo total de compilación mejoró alrededor de 2.4× (22.1 s → 9.3 s).

A pesar de que la velocidad es el titular, estoy más emocionado por los beneficios de estar en el último compilador React, que ha corregido limitaciones sustanciales en el soporte de JavaScript, incluida la lógica condicional en bloques try/catch, la reasignación de props desestructurados utilizados en cierres anidados y las claves de propiedades de objetos calculadas. Estas correcciones expanden la compatibilidad del compilador en siete funciones adicionales. Aún así, quedan limitaciones: lanzar desde dentro de un bloque try y los operadores de asignación lógica (??=, &&=, ||=) causan omisiones, pero el compilador Rust obtendrá esas correcciones cuando lleguen.

Finalmente, mi cadena de herramientas completa ahora usa la misma versión del compilador React con soporte de características equivalente, evitando brechas de cobertura después de adoptar el soporte del compilador React de Oxlint.

Entidades clave: Empresas: oxc, Outlyne, Vite, Babel | Personas: Boshen