Migration de Drupal 9 vers Drupal 10 : Dois-je faire appel à un développeur ?

par | 24 Nov 2023 | Développement | 0 commentaires

Rester à jour quand on gère un site Drupal est complexe, mais aussi essentiel, non seulement pour la sécurité et la performance, mais aussi pour maintenir une longueur d’avance sur la concurrence en matière de fonctionalités. Le 14 décembre 2022, la communauté Drupal a franchi un jalon significatif avec la sortie de Drupal 10 en version publique, une version qui promet de moderniser et d’optimiser les systèmes de gestion de contenu pour les développeurs et les utilisateurs finaux. Cette mise à niveau est devenue obligatoire en novembre 2023 var la communauté a annoncé que Drupal 9 ne serait plus maintenu et que la migration vers Drupal 10 devenait obligatoire pour garantir la sécurité et l’évolutivité des sites. Mais cette migration présente son lot de défis pour ceux qui exploitent encore Drupal 9.

Pourquoi est-il si important de migrer vers Drupal 10 ?
D’une part, cette nouvelle version apporte des améliorations significatives, telles que l’élimination du code obsolète, des mises à jour majeures de dépendances clés comme CKEditor, Symfony et Twig, et l’introduction de nouveaux thèmes et modules. D’autre part, avec l’approche de la fin de vie de Drupal 9 et Symfony 4 en novembre 2023, les sites qui restent sur des versions antérieures seront confrontés à des risques accrus en termes de sécurité et de compatibilité. En d’autres termes, la migration vers Drupal 10 n’est pas seulement une question d’adoption de nouvelles fonctionnalités, mais aussi une démarche essentielle pour garantir la pérennité de votre site web.

Face à cette urgence (novembre 2023 est dépassé au moment où vous lisez ces lignes), la question se pose : est-il nécessaire de faire appel à un développeur pour gérer cette migration ? La réponse est oui car un certain nombre d’interventions techniques sont indispensables pour réaliser convenablement la migration, sans perdre de données ni de fonctionnalités au passage. Ce guide vise à explorer en détail les aspects de la migration de Drupal 9 à Drupal 10, en mettant en lumière les défis, les étapes cruciales du processus et les raisons pour lesquelles l’expertise d’un développeur professionnel est indispensable dans ce contexte.

Suivez-moi dans ce parcours détaillé pour tout comprendre et pour découvrir comment mes services en tant que développeur freelance peuvent vous aider à naviguer dans ce processus complexe et essentiel.

 

Processus de compatibilité lors de la migration vers Drupal 10

 

Comprendre les différences entre Drupal 9 et Drupal 10

Lorsqu’on envisage la migration d’un site de Drupal 9 à Drupal 10, il est essentiel de comprendre les différences techniques entre ces deux versions. Drupal 10 est une évolution majeure qui apporte des changements significatifs et des améliorations par rapport à son prédécesseur.

Suppression du code obsolète

La différence la plus notable est la suppression du code obsolète. Drupal 10 est essentiellement une version épurée de Drupal 9.5.0, où tout le code déprécié a été retiré. Cette élimination du code vieillissant non seulement allège la plateforme, mais ouvre également la voie à une meilleure performance et à une maintenance plus facile. Pour les propriétaires de sites, cela signifie un système plus agile et sécurisé, mais aussi la nécessité de s’assurer que tout code personnalisé ou module contribué sur leur site est à jour et compatible avec cette nouvelle version. Il s’agit là d’un des points critiques de la migration : déterminer si les modules utilisés sont bien compatibles avec Drupal 10. Certains le sont déjà, d’autres sont en cours de migration et certains ne le seront jamais, souvent parce que leur architecture technique ancienne ne leur permet plus  d’évoluer vers une version compatible. C’est souvent le cas pour les modules qui ont été développés pour Drupal 8 et qui bénéficiaient encore d’une tolérance de compatibilité avec l’API pré Symfony et dont certains éléments étaient encore présents dans Drupal 9.
Dans ce cas, il faut soit choisir un module à jour et qui propose les mêmes fonctionnalités, soit réécrire un module sur-mesure qui propose les mêmes fonctionnalités. Il est aussi possible de proposer du soutien à la communauté qui maintient les modules open-source, mais elle n’est pas toujours réactive et n’accepte que rarement les demandes de merge pour compatibilité Drupal 10 dont elle n’est pas à l’origine.

 

Mises à jour des dépendances majeures

Drupal 10 introduit des mises à jour majeures pour plusieurs dépendances clés. Trois changements principaux méritent une attention particulière :

  1. CKEditor : Drupal 10 passe de CKEditor 4 à CKEditor 5. Cette mise à jour apporte une interface utilisateur améliorée, de meilleures fonctionnalités d’édition et une sécurité renforcée. Pour les sites utilisant CKEditor 4, cela signifie qu’une mise à jour manuelle est nécessaire, ce qui pourrait impliquer des ajustements dans la manière dont le contenu est géré et présenté.
  2. Symfony : Le framework sous-jacent de Drupal, Symfony, est passé de la version 4 dans Drupal 9 à la version 6 dans Drupal 10. Cette transition affecte la façon dont Drupal interagit avec son environnement de serveur, influençant potentiellement les performances et la sécurité, il faut souvent prévoir une évolution de l’hébergement pour passer à PHP 8.2 afin d’être pleinement compatible.
  3. Twig : Le moteur de template Twig a également été mis à jour, passant de la version 2 dans Drupal 9 à la version 3 dans Drupal 10. Cette mise à jour implique des changements dans la manière dont les thèmes et les modèles sont gérés, offrant plus de flexibilité et de nouvelles fonctionnalités pour les développeurs de thèmes.

 

Impact sur les sites Drupal 9 existants

Ces changements ont un impact direct sur les sites existants. Les modules et thèmes personnalisés qui dépendent de l’ancien code ou des anciennes versions des dépendances peuvent ne plus fonctionner correctement après la mise à jour. Il est donc crucial d’effectuer une révision complète du site avant d’entamer le processus de mise à niveau. Les propriétaires de sites doivent vérifier la compatibilité de chaque module et thème avec Drupal 10, et prévoir des mises à jour ou des remplacements pour ceux qui ne sont pas compatibles.

Le module Upgrade Status permet de faire un premier état des lieux des difficultés que vous pourriez rencontrer en migrant un site vers Drupal 10.

En résumé, la migration de Drupal 9 à Drupal 10 offre des avantages considérables en termes de performances, de sécurité et de fonctionnalités. Cependant, elle nécessite une compréhension approfondie des changements techniques et de leur impact sur les sites existants. Une planification minutieuse et une mise en œuvre experte sont essentielles pour assurer une transition en douceur et tirer pleinement parti des nouvelles capacités de Drupal 10.

 

Le processus de migration d’un site

Voici un aperçu simplifié du processus de migration :

  1. Assurez-vous que votre site est sur Drupal 9.4.4 ou ultérieur : Avant de commencer, votre site doit être mis à jour vers au moins la version 9.4.4 de Drupal. Cette étape est cruciale car elle prépare votre site à recevoir les nouvelles fonctionnalités et mises à jour de Drupal 10.
  2. Mise à jour vers CKEditor 5 : CKEditor, l’éditeur de texte utilisé dans Drupal, doit être mis à niveau vers la version 5. Cette version offre une meilleure expérience utilisateur et une sécurité accrue. Si votre site utilise encore l’ancienne version, CKEditor 4, il sera nécessaire de la mettre à jour.
  3. Mettre à jour les projets contribués : Les modules et thèmes supplémentaires que vous avez ajoutés à votre site Drupal (appelés « projets contribués ») doivent être compatibles avec Drupal 10. Vérifiez chaque module et thème pour vous assurer qu’ils fonctionneront avec la nouvelle version.
  4. Mettre à jour le code personnalisé : Si vous avez du code personnalisé sur votre site, il devra être adapté pour fonctionner avec Drupal 10. Cela garantit que toutes les fonctionnalités uniques de votre site continueront de fonctionner correctement après la mise à niveau.
  5. Vérifier les exigences de l’hébergement : Drupal 10 peut avoir des exigences spécifiques en matière d’hébergement, telles que des versions spécifiques de PHP ou de bases de données. Assurez-vous que votre environnement d’hébergement est prêt pour Drupal 10.
  6. Le processus de mise à niveau du noyau en utilisant Composer : La mise à niveau elle-même est réalisée à l’aide d’un outil appelé Composer, qui gère les dépendances et les mises à jour du noyau de Drupal. Cette étape est technique et peut nécessiter l’aide d’un développeur.
  7. Dépannage : Des problèmes courants comme les erreurs de permission ou les difficultés avec l’installation de certains modules peuvent survenir. Ces problèmes nécessitent souvent une intervention technique pour être résolus.

 

Problèmes de droits lors d'une migration sous Drupal 10

 

Pour en savoir plus, Drupalize Me propose un excellent article à destination des plus techniques des lecteurs.

Le rôle d’un développeur dans le processus de mise à niveau

La mise à niveau d’un site de Drupal 9 à Drupal 10 peut être un défi technique, surtout pour les sites complexes dotés de code personnalisé ou d’un grand nombre de modules contribués. Un développeur joue un rôle essentiel dans ce processus, en apportant expertise technique et perspective professionnelle pour assurer une transition en douceur.

Naviguer dans les complexités

Chaque site a ses particularités, et un développeur expérimenté est apte à identifier et à résoudre les défis spécifiques à chaque projet. La présence d’un grand nombre de modules contribués, par exemple, peut compliquer la mise à niveau, nécessitant une évaluation minutieuse pour assurer la compatibilité et le fonctionnement optimal après la mise à jour.

Garantir une migration sans encombre

Un développeur spécialisé Drupal a l’expertise nécessaire pour gérer les étapes techniques de la mise à niveau, y compris l’utilisation de Composer pour les mises à jour du noyau de Drupal et la gestion des modifications de configuration. Cette expertise est cruciale pour éviter des erreurs qui pourraient rendre un site inopérant ou vulnérable. Un développeur veille également à ce que les meilleures pratiques soient suivies tout au long du processus, minimisant les risques et garantissant la stabilité du site.

Prévoir et résoudre les problèmes

La capacité à anticiper et à résoudre les problèmes est un atout majeur d’un développeur expérimenté. Que ce soit pour résoudre des erreurs de permission, des problèmes d’installation de packages ou d’autres complications techniques, un développeur peut identifier rapidement les problèmes pour vous et mettre en œuvre des solutions efficaces. Cette compétence est particulièrement importante lors de la migration vers une nouvelle version de Drupal, où des problèmes inattendus surviennent toujours (j’aurai beaucoup d’expériences à partager à ce sujet…).

 

En résumé, la mise à niveau vers Drupal 10 est une étape essentielle pour assurer la sécurité, la performance et la pérennité de votre site web. Ce processus, bien que complexe, est une opportunité de revitaliser et d’optimiser votre présence en ligne.

L’intervention d’un développeur expérimenté dans ce processus n’est pas seulement une question de résolution technique, c’est un investissement stratégique. En confiant cette tâche à un professionnel, vous économisez un temps précieux et évitez des coûts supplémentaires qui pourraient découler d’erreurs ou de problèmes non anticipés. Un développeur qualifié vous offre non seulement la tranquillité d’esprit, mais aussi l’assurance que votre site sera mis à niveau de manière efficace, sécurisée et en accord avec les dernières évolutions technologiques.

Ne sous-estimez pas l’importance de cette migration pour la compétitivité et la sécurité de votre site. Si vous envisagez de mettre à niveau votre site Drupal, ou si vous avez des questions sur le processus et ses implications, je suis là pour vous aider.

N’hésitez pas à me contacter pour une consultation personnalisée. Ensemble, nous pouvons évaluer vos besoins spécifiques et élaborer un plan de mise à niveau qui correspond à votre situation unique. Vous pouvez me joindre via LinkedIn ou via le formulaire de contact sur mon site web.

Lancez-vous dans cette démarche décisive pour l’avenir de votre site web dès aujourd’hui.

 

Vos questions / Réponses au sujet de la migration Drupal 10

  1. Qu’est-ce qui a changé dans Drupal 10 par rapport à Drupal 9 ?
    • Drupal 10 s’appuie sur les innovations de Drupal 9 mais inclut des mises à jour importantes comme un nouveau thème administratif (Claro) et un thème frontal (Olivero), la mise à jour de CKEditor de V4 à V5, la modernisation de JavaScript, et le passage de Symfony 4 à Symfony 6.
  2. Pourquoi est-il important de mettre à niveau vers Drupal 10 ?
    • La mise à niveau est cruciale pour des raisons de sécurité, de performance et pour accéder aux nouvelles fonctionnalités. Drupal 9 ne sera plus pris en charge après novembre 2023, donc la mise à niveau assure la viabilité à long terme de votre site.
  3. Quelles sont les étapes clés pour migrer de Drupal 9 à Drupal 10 ?
    • Les étapes clés incluent la mise à niveau vers au moins Drupal 9.4.4, la mise à niveau vers CKEditor 5, la vérification de la version PHP (doit être 8.1 ou supérieure), et la mise à jour des modules et thèmes pour assurer la compatibilité avec Drupal 10.
  4. Drupal 10 est-il rétrocompatible avec Drupal 9 ?
    • Oui, Drupal 10 est rétrocompatible avec Drupal 9, ce qui rend la migration plus facile par rapport aux mises à niveau précédentes.
  5. Quels sont les principaux défis techniques lors de la migration vers Drupal 10 ?
    • Les défis incluent la mise à jour des dépendances majeures, la compatibilité des modules et thèmes, et la nécessité de mettre à jour le code personnalisé.
  6. Comment savoir si mes modules et thèmes sont compatibles avec Drupal 10 ?
    • Vous devez vérifier chaque module et thème pour s’assurer qu’ils sont compatibles avec Drupal 10. Si un module ou thème a été supprimé du noyau de Drupal, téléchargez la version du projet contribué avant de migrer.
  7. Dois-je tester mon site après la mise à niveau vers Drupal 10 ?
    • Oui, il est essentiel de tester votre site après la mise à niveau pour s’assurer que tout fonctionne comme prévu, y compris les formulaires, liens et navigation de page.
  8. Quel est l’impact de la mise à niveau sur le code personnalisé de mon site ?
    • Tout code personnalisé doit être révisé et éventuellement modifié pour assurer la compatibilité avec les nouvelles spécifications de Drupal 10.
  9. Drupal 10 nécessite-t-il une version spécifique de PHP ?
    • Oui, Drupal 10 nécessite PHP 8.1 ou supérieur.
  10. Puis-je effectuer la mise à niveau de Drupal 9 à 10 moi-même ?
    • Bien que techniquement possible, la mise à niveau peut être complexe, surtout pour les sites avec du code personnalisé ou de nombreux modules contribués. L’assistance d’un développeur expérimenté est recommandée.

0 commentaires

Journaux de bord récents