{"componentChunkName":"component---src-templates-post-jsx","path":"/fr/getting-ready-for-drupal9","result":{"data":{"markdownRemark":{"html":"<p>Comme prévu, le 03 juin 2020 est la sortie officielle de la première version stable de Drupal 9 avec un support jusqu'à novembre 2021.</p>\n<p>Il est vrai que le passage de Drupal 7 vers Drupal 8 était très difficile pour les développeurs vu que le CMS a été quasiment refait pour adopter le paradigme d'orienté objet en utilisant des composants du framework Symfony. Cependant ça serait plus le cas avec Drupal 9 car ce dernier va suivre la même logique de son antécédent.</p>\n<h3>Les nouveautés de la version 8.8 de Drupal.</h3>\n<p>Les mises à jour mineures du cœur de Drupal 8 ont apporté plusieurs nouveautés en matière de gestion de la mise en forme du contenu ainsi que sur les différents API backend, ci-dessous quelques nouveautés de la version 8.8 de Drupal:</p>\n<ul>\n<li>L'introduction du module Layout Builder et l'amélioration de la gestion des médias (Intégration des médias dans les WYSIWYG) afin de garantir aux utilisateurs une facilité d'utilisation des médias sur Drupal.</li>\n<li>L'arrivée d'un nouveau thème d'administration expérimental  (Claro) qui est réactif et qui rentre dans l'initiative des améliorations UX de l'interface d'administration.</li>\n<li>Des améliorations remarquables concernant le module JSON:API du Core et en particulier l'ajout de nouvelles couches de cache qui réduisent le temps de réponse de l'API et réutilisant des résultats calculés et cachés.</li>\n<li>La fameuse librairie jQuery est abandonnée de plus en plus sur Drupal, le CMS va opter pour l'utilisation d'autres technologies JavaScript afin d'être plus extensible et interactif.</li>\n</ul>\n<h3>Quoi de 9 sur Drupal 9 ?</h3>\n<p>Comme on l'avait vu dans la précédente partie, Drupal a introduit de nouvelles fonctionnalités et améliorations dans le Core via des versions mineures dans la même version mère, et bien Drupal 9 va suivre la même stratégie.</p>\n<p>Même si le passage de Drupal 8.9 vers Drupal 9 va être plus rapide et automatisé avec Composer, sauf qu'il faudrait se débarrasser manuellement  des fonctions et APIs dites Deprecated afin d'avoir un code clean, conforme et surtout fonctionnel sur Drupal 9.</p>\n<p><strong>Note</strong> : il est recommandé d'utiliser des outils command-line qui permettent de détecter automatiquement l'utilisation des fonctions deprecated dans vos modules ou thèmes, à savoir :</p>\n<ul>\n<li>Le module contrib <a href=\"https://www.drupal.org/project/upgrade_status\">Upgrade Status</a></li>\n<li>L'outil <a href=\"https://github.com/drupal8-rector/drupal8-rector\">Drupal 8 Reactor</a> </li>\n<li>L'outil <a href=\"https://github.com/mglaman/drupal-check\">Drupal-check</a> </li>\n</ul>\n<p>On note aussi un passage très important vers Symfony 4 et Twig 2.0 dans la version 9 chose qui va rendre le CMS plus puissant et performant.</p>\n<h3>Étapes pour passer de Drupal 8 vers Drupal 9.</h3>\n<ol>\n<li>\n<p>S'assurer que l'environnement du projet est compatible avec les prérequis de Drupal 9 à savoir :</p>\n<ul>\n<li>Apache, avoir au moins la version 2.4.7</li>\n<li>PHP, avoir au moins la version 7.3</li>\n<li>MySQL, avoir au moins la version 5.7.8</li>\n<li>Drupal 9 exige la version 10 de Drush.</li>\n</ul>\n</li>\n<li>Il est conseillé de faire une mise à jour vers Drupal 8.9 avant de passer à Drupal 9.</li>\n<li>Mettre à jour tous les modules et thèmes Contrib utilisés dans le projet avant de mettre à jour le Core.</li>\n<li>Mettre à jour les modules Custom pour qu'ils soient compatibles avec Drupal 9 : ( moduleName.info.yml <code class=\"language-text\">core_version_requirement: ^8 || ^9</code>) .</li>\n<li>Mettre à jour le code des modules et thèmes custom pour qu'il soit conforme avec Drupal 9 (Voir <strong>Note</strong> dans la partie précédente).</li>\n<li>Procéder à la mise à jour avec Composer :   <code class=\"language-text\">composer update drupal/core --with-dependencies</code> (<a href=\"https://www.drupal.org/docs/8/update/update-core-via-composer#s-stepwise-update-instructions\">voir le guide détaillé sur drupal.org</a>).</li>\n<li>Executer le fichier update.php.</li>\n</ol>\n<h3>Conclusion</h3>\n<p>Et voilà, comme on l'avait vu dans la dernière partie, Il n'y a pas beaucoup d'étapes nécessaires pour préparer votre site pour Drupal 9, et la bonne nouvelle c'est que vous pouvez le faire maintenant et être prêt le jour de la sortie de Drupal 9 😉.</p>","excerpt":"Comme prévu, le 03 juin 2020 est la sortie officielle de la première version stable de Drupal 9 avec un support jusqu'à novembre 2021. Il est vrai que le…","frontmatter":{"date":"2020-04-04","metaDate":"2020-04-04","title":"Se préparer à Drupal 9","tags":["Drupal 8","Drupal 9","Performance","Update"],"path":"/getting-ready-for-drupal9","cover":{"childImageSharp":{"fluid":{"base64":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAHCAYAAAF/zF2uAAAACXBIWXMAAAPoAAAD6AG1e1JrAAABMUlEQVQoz2NQzLr9XyHz1n9FIGZQyb79HyTAABP1qHvwv2TWu//yIFmQEsUsiFIloAJFmGBAy2OwQN70t1BBqKxM+q3/6ZNf/Q9sfPgfZLZ7w5P/jrWP/yvCdUMZIKwMVKAEtVc2A4jTIWJwa5DthWGQw5SyEWIMMEXmZff+R3Y++29b+QBsXRbQGSBTURSCJPQL7/z3bnj437j47n+D4vv/I5oe/FfLu4OmEKpYGRpAIL5k6k24+zA8owh1lwISWxnKh2E5oHPUcu/AaWS9GAaC/CSVdvO/a92j/xNWf/2fPfHF//DG+/+9m56A5WyrH/3Pn/bqv0Ph9f95U1//1y64918+A4+BMCybeu2/ROKV/5IgnHT1v0zKNaCBkJA1Lrn/P6Dt2X+j0gdgPrJ3QRgA4I9XqRfIyH4AAAAASUVORK5CYII=","aspectRatio":2.742289239204935,"src":"/static/9bed7a56b0a46093651316c80acd9400/076bb/drupal8-9.png","srcSet":"/static/9bed7a56b0a46093651316c80acd9400/4f634/drupal8-9.png 480w,\n/static/9bed7a56b0a46093651316c80acd9400/3dcd6/drupal8-9.png 960w,\n/static/9bed7a56b0a46093651316c80acd9400/076bb/drupal8-9.png 1920w,\n/static/9bed7a56b0a46093651316c80acd9400/d9d02/drupal8-9.png 2880w,\n/static/9bed7a56b0a46093651316c80acd9400/a4d5f/drupal8-9.png 3840w,\n/static/9bed7a56b0a46093651316c80acd9400/66217/drupal8-9.png 4001w","srcWebp":"/static/9bed7a56b0a46093651316c80acd9400/d1a9d/drupal8-9.webp","srcSetWebp":"/static/9bed7a56b0a46093651316c80acd9400/bc3bf/drupal8-9.webp 480w,\n/static/9bed7a56b0a46093651316c80acd9400/39337/drupal8-9.webp 960w,\n/static/9bed7a56b0a46093651316c80acd9400/d1a9d/drupal8-9.webp 1920w,\n/static/9bed7a56b0a46093651316c80acd9400/fcbe1/drupal8-9.webp 2880w,\n/static/9bed7a56b0a46093651316c80acd9400/c136d/drupal8-9.webp 3840w,\n/static/9bed7a56b0a46093651316c80acd9400/10200/drupal8-9.webp 4001w","sizes":"(max-width: 1920px) 100vw, 1920px"},"resize":{"src":"/static/9bed7a56b0a46093651316c80acd9400/d8210/drupal8-9.png"}}}}}},"pageContext":{"isCreatedByStatefulCreatePages":false,"pathSlug":"/getting-ready-for-drupal9","locale":"fr","prev":{"fields":{"locale":"fr"},"frontmatter":{"path":"/drupal-behaviors","title":"Drupal Behaviors","tags":["jQuery","JavaScript","Module development","Performance","Ajax"]}},"next":{"fields":{"locale":"fr"},"frontmatter":{"path":"/config-api-vs-state-api","title":"Configuration API vs State API","tags":["Drupal 8","Drupal 9","Backend","Configuration","State"]}}}}}