Un nouveau mécanisme pour écrire du JavaScript
En effet, jusqu'à présent, Ruby on Rails faisait appel à Webpacker pour utiliser les dernières versions de JavaScript, mais avec Rails 7 l'équipe du framework a souhaité rendre JavaScript indépendant de Node.js, avec une prise en charge étendue des navigateurs ES6/ESM, une adoption généralisée de HTTP/2 et une nouvelle norme pour l'outil Import Maps. Rails 7 vise à gérer JavaScript de manière indépendante de Node.js, en remplaçant Turbolinks et Rails UJS par Stimulus et Turbo afin de fournir une configuration frontale complète pour la création d'applications Rails.
Ainsi, selon les notes de version de la version alpha, il n'est plus nécessaire de s'occuper des dépendances de Node.js dans node_modules, des configurations de bundlers ou d'autres problèmes courants de développement JavaScript. Les développeurs de Rails ont également amélioré l'intégration entre Rails et les bundlers JavaScript+CSS. Des gems compagnons qui peuvent être déclenchés via les nouveaux -javascript[bundler] et -css[bundler] de Rails permettent de démarrer une nouvelle application ou de modifier une application qui commence avec [C=JavaScript]import maps[/B] pour utiliser Esbuild, Rollup.js, Webpack et d'autres technologies.
Autres ajouts et modifications dans Rails 7
Un certain nombre d'autres fonctionnalités ont été ajoutées et améliorées dans première version alpha de Rails 7. On distingue notamment :
- des attributs chiffrés ont été ajoutés à Active Record, permettant à une application d'offrir un chiffrement au travail en plus de la couverture traditionnelle au repos et en transit. Cela apporte une sécurité supplémentaire ;
- chargement asynchrone des requêtes pour l'exécution des requêtes en parallèle ;
- le préchargeur d'application Spring pour Rails n'est plus activé par défaut, les ordinateurs plus rapides l'ayant rendu moins pertinent ;
- ActionController::Live#send_stream permet de diffuser facilement les fichiers générés à la volée dans les actions du contrôleur ;
- Active Storage utilise désormais libvips, plus sûre et plus rapide, comme processeur de variantes par défaut ;
- Les tests parallélisés comparent désormais le nombre de cœurs de processeur au nombre de tests et échelonnent la parallélisation en conséquence.
Source : Ruby on Rails 7 (Alpha 1)
Et vous ?
Que pensez-vous des nouveautés introduites par Rails 7 ?
Voir aussi
RoR : la version 6 du framework Ruby a été publiée avec la prise en charge de plusieurs bases de données et d'autres améliorations
GitHub met progressivement à jour son fork de Rails chaque semaine et s'appuie désormais entièrement sur la dernière version Rails 6.0
RubyMine 2019.2 est disponible avec un débogueur plus rapide, la prise en charge de Ruby 2.7 et de Rails 6
Seuls 3 % des développeurs Ruby on Rails travaillent sur Windows selon un sondage. Le développeur typique de Rails est autodidacte, travaille avec Rails depuis 4 à 7 ans et le fait à distance