faut-il migrer vers drupal 9

Vous êtes actuellement sur une version Drupal 8 (voire même Drupal 7) et vous vous posez la question de passer à Drupal 9 ?

Nous allons voir dans cet article quels sont les pré-requis et les bonnes raisons pour passer à la version 9 de Drupal.

 

Tout d'abord il est légitime de se poser la question de savoir pourquoi il est nécessaire de passer sous Drupal 9 et est-ce le bon moment ?

De plus, comment chiffrer une telle migration ?

 

Quelles sont les différences majeures de Drupal 9 ?

Il n'y a premièrement pas un changement aussi brutal de passer de la version drupal 8 à 9 que pour le version 7 vers 8. En effet, lors de la migration précédente, nous changions complètement de façon de coder. On passait d'un framework maison à un framework Symfony et du language purement procédural à un language en grande partie orienté objet.

La version 9 est principalement un passage à la version 4 de Symfony ce qui amène une plus grande puissance et flexibilité au niveau du code que nous pouvions avoir sous Drupal 8 mais globalement, un développeur qui sait (bien) faire du Drupal 8 saura faire du Drupal 9.

Ce passage supprime également toutes les fonctions obsolètes de Drupal 8.

Un des atouts majeurs est également la qualité du code. En effet les hook sont de plus en plus délaissés pour laisser la place aux EventSubscriber qui permettent une plus grande flexibilité et une qualité de code orientée objet bien plus propre que les hook.

 

Comment préparer le terrain pour passer à une version 9 ?

Globalement il faut retenir que si votre projet Drupal 8 est en version 8.9x, alors vous n'aurez aucune difficulté à migrer votre code custom (et je fais un focus sur ce point !) sous Drupal 9.

Mettez donc tout en oeuvre pour aller vers cette version 8.9x en supprimant tous les warnings de fonctions obsolètes que vous pouvez avoir dans votre code. Une fois cette étape effectuée, le passage vers la version 9 devrait être beaucoup moins douloureux... mais il reste la question des modules contrib...

 

Est-ce le bon moment pour mon projet de changer de version ?

Il est intéressant de se poser la question. Cependant la réponse dépend en grande partie des modules contrib que vous utilisez actuellement sur votre projet.

En effet, un des gros freins à l'heure actuelle, est malgré le fait que la version 9 est sortie depuis le mois de juin 2020, il existe encore de nombreux modules contrib qui n'ont toujours pas été migrés vers leur version 9. Il est donc fortement probable qu'il ne suffise pas de faire un composer update pour migrer l'intégralité de votre projet en drupal 9.

Plusieurs solutions s'offrent alors à vous :

  • Soit vous optez pour la patience et attendez que l'intégralité des modules contrib que vous utilisez soit migré vers la version 9
  • Soit vous usez de vos compétences Drupal pour adapter les modules contrib.

Dans les cas de la seconde solutions, plusieurs solution s'offrent également à vous :

  • Vous avez le choix de prendre les devants et de copier l'ex module contrib dans votre répertoire custom pour en modifier le code en attendant (et en croisant très fort les doigts) pour que ce module finisse par être migré dans sa version drupal 9
  • Vous avez possibilité de coder la fonctionnalité qui vous intéresse en vous déchargeant de l'ancien module contrib pour passer vers une version complètement custom, ce qui vous retire la dépendance de l'ancien module contrib. Par ailleurs, vous avez la possibilité de pousser votre travail sur la communauté !

 

Pourquoi au final passer sur la version 9 ?

Finalement, pourquoi passer sur cette fameuse version 9 avec tous les potentiels soucis que cela peut impliquer ?

La version 8 ne sera maintenue qu'un certain temps. Comme toute version précédente, la communauté Drupal maintient environ pendant 5 ans les versions précédentes. il sera donc de toute façon inévitable de passer sur la dernière version afin de profiter des nouvelles fonctionnalités et des mises à jour de sécurité.

Plus rapidement le projet sera passé sur la dernière version, moins le coût se fera sentir le jour où, au final, le projet passera sur la dernière version.

Cependant, de part la complexité du projet et la quantité de modules contrib utilisés, il est dans certains cas plus judicieux d'attendre encore un peu que les modules soient migrés en version 9 avant d'engager un travail qui peut s'avérer obsolète et difficilement maintenable dans quelques mois.

 

 

Pour toute question ou étude de votre projet, n'hésitez pas à nous contacter !

Contactez-nous !

 

By admin - Sun, 01/31/2021 - 18:36