La version 3.1 du framework de développement Web Ruby on Rails est sortie hier. Rapide aperçu des nouveautés.
La grande nouveauté, c’est l’Asset Pipeline. Il permet de gérer la compilation, la minification et la gestion des dépendances pour les feuilles de style et les fichiers javascript. Ces fichiers ne vont plus dans le dossier public, mais dans app/assets. Cela permet déjà de faire plusieurs fichiers (un par modèle ?) et l’Asset Pipeline les regroupe en un seul, les minifie et s’occupe de les servir (avec instructions de cache et un nom de fichier reflétant son contenu pour invalider le cache en cas de changements). C’était très attendu, et ça va permettre de grandement améliorer les performances de navigation.
Toujours dans les assets, Sass et CoffeeScript sont maintenant proposés par défaut. Sass (ou Scss) permet de créer des feuilles de styles plus facilement grâce à sa gestion des variables, des méthodes et d’une imbrication de sélecteurs. Bien sûr, ça compile vers du CSS via l’Asset Pipeline.
Autre nouveauté majeure, l’arrivée du HTTP streaming. Les réponses peuvent être envoyées en plusieurs morceaux, ce qui peut être utilisé pour optimiser le temps de chargement des pages.
Pour ActiveRecord, les migrations SQL ont été grandement simplifiées. Plus de Up et Down, mais une seule déclaration réversible.
Notons enfin que jQuery est devenu le framework javascript par défaut, remplaçant Prototype. Il est présent via une gem dédiée ; c’est donc plus facile de ne pas l’inclure dans ses projets, au profit de Mootools par exemple.
- Le site officiel Ruby on Rails
- Les Release Notes
- Le guide sur l’Asset Pipeline