Ruby on Rails se ha actualizado a la versión 7 con importantes mejoras que los desarrolladores creen que son la realización de una visión para presentar un enfoque verdaderamente completo para el desarrollo web que aborde los desafíos de front-end y back-end con igual vigor.
Ruby on Rails es un marco de aplicación web escrito en Ruby. Está diseñado para crear aplicaciones web respaldadas por bases de datos utilizando el marco modelo – vista – controlador.
El cambio a un modelo sin nodo fue posible gracias a los avances en el soporte del navegador para ES6 / ESM y la adopción generalizada de HTTP / 2, según la información de lanzamiento.
Los desarrolladores dicen que la combinación de Hotwire de Turbo y Stimulus proporciona todas las herramientas necesarias para producir excelentes experiencias de usuario que son mucho menos complejas de crear, por lo que el nuevo método es la opción predeterminada para las nuevas aplicaciones de Rails, reemplazando opciones mucho más limitadas de Turbolinks y UJS. Rieles.
Para las aplicaciones que aún dependen de Node, también hay mejoras. Ya no necesita usar Webpack con Webpacker y, en su lugar, puede elegir cualquier paquete de JavaScript que prefiera.
Al describir la mejora, David Heinemeier Hansson,
creador de Ruby on Rails dijo:
«Ya sea que te guste esbuild (¡y a quién no en estos días!) O rollup.js o incluso Webpack, podrás usar uno a través de la nueva integración jsbundling-rails que se puede preconfigurar para nuevas aplicaciones con –javascript esbuild. «
Se adopta el mismo enfoque con los paquetes de CSS que se basan en Node. Con Rails 7, todo lo que necesitan para poder producir es un archivo application.css compilado y se integrarán sin problemas.
Además de las mejoras de front-end, el equipo de Rails ha agregado atributos encriptados a Active Record, por lo que su aplicación puede ofrecer encriptación en el trabajo además de la cobertura tradicional en reposo y en tránsito.
Active Record ahora también tiene la capacidad de rastrear fuentes de consultas con codificación de comentarios SQL, como QueryLogs, y ahora se admite la carga de consultas asincrónicas. Hansson afirma que cuando tiene una acción de controlador que necesita cargar dos consultas no relacionadas, ahora puede hacerlo al mismo tiempo a través de Relation # load_async:
«Si tiene tres consultas complejas que toman 100 ms cada una, debe gastar 300 ms en ejecutarlas una por una primero. Ahora puede ejecutarlas en paralelo, gastando solo un total de 100 ms en el set».
Rails 7 ya está disponible para descargar.