15/12/2020

Les nouveautés de Drupal 9.1

Sortie au début du mois, la nouvelle évolution du gestionnaire de contenu libre Drupal embarque quelques changements notables. La prise en charge de PHP 8 entraine aussi quelques modifications techniques.

Compatibilité avec PHP 8

Drupal 9.1 apporte la compatibilité avec PHP 8 alors que dans le même temps et PHPUnit 9.0 est intégré dans Drupal 9. PHPUnit est un framework open source qui permet de faire des tests unitaires dédiés au langage de programmation PHP. Le dernier langage de programmation PHP a été lancé en novembre dernier, appelé PHP 8.0, offrant de nouvelles fonctions qui permettent d'augmenter les performances et d'offrir une meilleure sécurité.

À ce jour, Drupal 9 utilise désormais PHPUnit 9 pour exécuter des tests sur des versions de PHP supérieures à PHP 7.3. Cela permet à la version 9.1 de Drupal de rester compatible avec les versions antérieures, tels que PHP 7.3, mais également d'être compatible avec PHP 8. Malgré cette mise à jour, Drupal reste compatible avec les versions antérieures de PHP puisque de nombreux sites internet utilisent encore les anciennes versions du langage PHP. 

Compatibilité avec Composer 

Drupal 9.1 est entièrement compatible avec Composer 2, mais Composer 1 reste tout de même actif. En effet, la version 9.1 de Drupal ajuste les contraintes de production et de développement pour prendre en charge composer 2.

Pour rappel, Composer est un logiciel de gestionnaire de dépendance libre écrit en PHP. Il permet aux utilisateurs d'installer des outils, des modules ou encore des thèmes dont le développeur a besoin pour son projet. Composer 2, sortie en octobre 2020, est principalement axé sur des améliorations en termes de vitesse et d'utilisation de la mémoire, afin d'améliorer l'expérience utilisateur. 

Intégration de Symfony

Drupal 9.1 amène une intégration plus profonde de Symfony. Depuis la version 8 de Drupal, le CMS repose sur le Framework PHP Symfony. Il permet d'améliorer la performance et la viabilité du CMS. En effet, Symfony permet d'offrir la possibilité de développer de meilleures et plus grandes plateformes web, répondant à des besoins divers. Le but étant de faciliter le processus pour les développeurs dans la construction de plateformes plus puissantes. La version 9 de Drupal a pour principal objectif d'intégrer Symfony 4, pour qu'à long terme, elle puisse être compatible avec Symfony 5, qui est déjà disponible, et Symfony 6, qui est prévu pour novembre 2021.

La version 9.1 de Drupal comprend donc quelques mises à jour pour préparer en amont les modifications pour la prise en charge du système Symfony 5. L'intérêt est de s'assurer que Drupal 9 n'utilise pas les API obsolètes dans les nouvelles versions de Symfony. 

 

 

Thème expérimental Olivero

Drupal 9.1 fait place à un nouveau thème expérimental, appelé Olivero. Il permet de mettre Drupal à jour vers des tendances graphiques plus modernes attendues par les clients, plus moderne et épuré. L’objectif est d’avoir une version stable afin de le proposer comme nouveau thème par défaut en remplacement du thème Bartik dans les futures versions de Drupal. 

Optimisation de l’image native

La vitesse de chargement des pages est un paramètre critique de la performance des sites, particulièrement quand elles contiennent des images. La version 9.1 de Drupal intègre le fonctionnement "lazy load", utilisé par la plateforme Chrome. L’objectif de ce système est de ne charger que les images et iframes d’une page web visibles par les utilisateurs, afin d'optimiser la vitesse de chargement de la page ou du site internet. Cela permet ainsi d'avoir un impact considérable sur les performances des sites réalisés sous Drupal, et donc d'améliorer l'expérience de l'utilisateur en faisant apparaître le contenu plus rapidement.

 

Source : Drupal.org

Actualités