Aller au contenu
AFUP AFUP Day 2025 Baromètre Planète PHP PUFA
 

Drupal, je vous 10 tout !

Description

Quoi ?! Vous avez encore raté le coche et vous ne savez pas que Drupal 10 sort le 14 décembre ? Allez, parce que c’est vous, on se fait une séance de rattrapage du présent et surtout du futur du CMS à la goutte d’eau. Sous le capot : Symfony 6, PHP 8.1, CKEditor 5, des thèmes modernes out of the box et du découplage facilité. En voiture !

Conférence donnée lors du Forum PHP 2022, ayant eu lieu les 13 et 14 octobre 2022.

Informations complémentaires

Vidéo

Le speaker

Marine GANDY

Développeuse PHP depuis 2015, Marine découvre Drupal dès son alternance et décide d'en faire sa spécialité. Depuis, elle s'investit dans la communauté et notamment en tant que présidente de l'association Drupal France et Francophonie.

Verbatim

_ Merci beaucoup d'être aussi nombreux. Je sais que la concurrence était terrible. Je vais commencer directement par vous mettre dans le bain. Attention, il va y avoir du son, des animations et des blagues de mauvais goût. J'espère que tout le monde est prêt. C'est parti. Il y a aussi des soucis techniques ! Heureusement qu'on a testé trois fois, avant. Je ne comprends pas. C'est super ! Ce n'est pas grave. L'ordi a planté. Tu m'as habituée à mieux ! D'accord, c'est pété. Est-ce que les slides marchent ? Il n'y a plus rien ! D'accord. On reboote. Voilà. Merci ! C'est la première fois que ça m'arrive. Il en fallait bien une. Ça marchait il y a trois minutes. Il ne veut pas rebooter. Si tu as un autre ordi, je veux bien.

_ Ce sont les aléas du direct. Merci d'être restés avec nous. C'est la première fois qui m'arrive. Qui est-ce qui parlait de crash de prod ? Je vais aller lui péter le genou ! On va tenter. Il n'y aura pas de questions. Attention, cette conférence contient des trucs inattendus. Mesdames et Messieurs, bonjour. Merci de me rejoindre sur cette émission spéciale événement pour la sortie de Drupal 10. 40 minutes moins 10 minutes de problèmes techniques. Ça va être très rentable pour vous. Nous avons des informations exclusives à vous communiquer. Je suis Marine Gandy, je suis votre reporter de terrain. Je viens vous ramener les résultats d'une grande enquête. Nous sommes en live. Je vais vous annoncer tout ce qu'il faut savoir sur Drupal 10. Pour les plus fidèles d'entre vous, vous aurez déjà vu notre émission événement il y a deux ans pour l'émission Drupal 9. Ici, on ne rigole pas avec l'actualité. On va commencer par vous faire un petit retour sur l'affaire. Drupal, première release en 2001, code émis en opensource. Des millions de sites dans le monde tournent aujourd'hui sur ce petit projet qui a connu sa période de gloire à partir de 2010 avec la sortie de Drupal 7, qui est encore aujourd'hui maintenu et actif. Tout allait bien, version stable, prospère, écosystème florissant, et là, le drame. La sortie cape de Drupal 8 en 2015 va mettre un coup d'arrêt à cette incroyable épopée de Drupal et diviser la communauté. Pour ce qui n'était pas au courant de cette tragédie, en 2015, Drupal passe sur des composants Symfony. Terrible tragédie, mais pas complètement non plus. On a quand même des petites habitudes qui sont restées. Symfony quand même. On passe d'un Drupal 7 procédural avec des "drupalismes" à un Drupal 8 très cadré par Symfony. À partir de là, c'est la fin. Les releases s'enchaînent.

Drupal 10, en 2022. Ça va beaucoup trop vite. Pourquoi ? Je vois le public qui s'interroge. Maintenant, il y a des cycles de releases beaucoup plus précis. La communauté Drupal s'est professionnalisée avec les avantages et les inconvénients que cela implique. Les avantages sont nombreux : entrer dans l'écosystème classique de l'open source actuel, est l'inconvénient : perdre tous les contributeurs qui étaient un peu plus amateurs et qui n'ont pas réussi à prendre la marche de Symfony. On était sur du Symfony 3 pour Drupal 8. Nous avons dû passer sur Drupal 9. End-of-life de Symfony prévu pour novembre prochain. Il faut que les utilisateurs aient le temps de faire leur mise à jour. On déprécie donc la version actuelle. En décembre, sortie de Drupal 10 et de 9.5. On se retrouve dans une situation assez intéressante : Drupal 8 n'est plus maintenu depuis novembre de l'an dernier, alors que Drupal 7 est toujours maintenu car les gens n'arrivent pas à faire la migration. Drupal 7 continue à faire sa vie, de son côté, avec des terroristes dangereux qui récupèrent les modules contrib et créent leur propre système. Et de l'autre côté, on a la communauté fièrement intégrée avec Symfony. On peut prédire, parce que chez nous, on peut prédire l'avenir, dans deux ans, il y aura Drupal 11. Des infos exclusives. Vous ne le saviez pas, c'est pour ça que je suis là. Les dépendances. Il y a deux ans, je vous ai parlé des dépendances. Maintenant, les dépendances, que sont-elles devenues ? Deux ans après, Composer est passé à Composer 2. C'est depuis plusieurs versions que c'est compatible. Ce sera la version 2.3 qui sera requise pour Drupal 10, donc mise à jour. PHP 8 est déjà supporté depuis plusieurs versions de Drupal 9. C'est la 8.1 qui sera requise pour Drupal 10 et la 8.2 est en cours de travail. On va passer sur Symfony 6. Normalement, jusqu'en 2027. D'après mes informations très confidentielles, il y aurait deux membres de l'organisation Drupal qui se trouve dans la security team de Symfony et qui s'engagent à sortir des patchs de sécurité. Ensuite, CKEditor 5. L'end-of-life de Symfony a été au même moment que celui de CKEditor 4.

Deux ans après, toutes les dépendances vont bien. Ils ont retrouvé le goût de la vie. Ils ont accepté de témoigner ce soir à visage découvert. On les remercie. Vous êtes venus pour les nouveautés. Info exclusive : deux nouveaux thèmes dans le core. Vous allez me dire que c'est semi-exclusif parce que j'en ai déjà parlé il y a deux ans. Mais là, ils sont par défaut. Ce sont des thèmes officiels. Olivera, qui est le thème front, qui est maintenant le thème par défaut de Drupal 10. Et Claro, qui est le thème d'administration par défaut. C'est un peu nouveau, mais pas trop. Ce que ça veut dire aussi, c'est que les anciens thèmes moches, on les jarte du core. Vous pouvez les installer si ça vous fait plaisir, mais ce n'est plus les officiels. Dans la même lignée, on s'est dit que tous ces modules, on s'en fiche un peu. Personne ne les utilise. On va écrémer. On a déjà ces modules qui partent du core et qui sont toujours disponibles en tant que modules contribués. CKEditor 4, vous n'êtes pas surpris à ce stade, on est passé à CKEditor 5, mais le 4 existe toujours en tant que module contribué. La migration vers Gitlab se poursuit. Drupal a fait sa sauce dans son coin. Pour venir contribuer au code dans Drupal, il fallait s'inscrire à 4 endroits différents, demandés des approbations, attendre 10 ans. Les personnes qui auraient pu contribuer à un petit bout de code rapide se sont découragées. L'idée est de revenir dans le giron de ce qui se fait dans le même stream. On migre donc sur Gitlab. Il y a un peu de progrès. Maintenant, les issues commencent à être migrées sur Gitlab directement plutôt que d'être avec un compte sur drupal.org où il faut déjà être membre de la communauté. Là, c'est Gitlab, c'est classique. Le Web IDE est déjà disponible. Vous pouvez éditer en live. Ça ne se verra pas, promis !

Les DrupalPod, vous pouvez lancer une instance Drupal directement dans votre navigateur. Vous pouvez choisir l'add version de Drupal. Vous pouvez même la partager avec vos copines et vos copains. À terme, c'est vraiment de sortir de tout l'écosystème Drupal. La CI, c'est aussi bien avancé. On y est presque. Le Project Browser, on est sur quelque chose qui n'est pas tout à fait prêt pour Drupal 10. Ça va venir pour les versions suivantes. On fait de l'investigation et de l'anticipation. Le Project Browser, l'idée, c'est qu'il y a des trucs comme WordPress. Il paraît que c'est très user friendly. Si vous voulez installer une extension, vous ne savez pas où, c'est normal. Le but, c'est d'avoir ce browser de projet intégré directement dans Drupal pour simplifier la vie de tous les publics qui n'est pas forcément technique, qui ne va pas aller voir le code pour voir quoi installer. C'est un module contribué. Vous pouvez aller le tester, faire vos retours, signaler des bugs. Ça va être intégré prochainement dans le cœur de Drupal. Un petit copain qui va avec, ce sont les updates automatiques. On est passé sur Composer. Tata Jeannine avec son site de toilettage de chiens, elle a du mal à faire les mises à jour avec le Composer. Mais maintenant, elle va pouvoir le faire en un clic dans le back office. C'est beau. C'est en test. Il faut aller tester, faire des retours. N'hésitez pas. C'est bientôt dans le core. Désolée pour la team des développeurs, c'est plus pour les site builders. Exclusivité ! Quoi ? On me dit qu'on a une reporter qui veut intervenir à distance. Je ne sais pas si on va pouvoir avoir son témoignage. On va essayer. Criquette...

_ Il paraît que Drupal est mort !

_ Criquette, on vous a perdue ! Il paraît que Drupal est mort, mais je suis obligée d'interrompre l'émission. Je ne peux pas laisser passer des fake news comme ça, dans l'émission. Désolée, ce sont les aléas du direct. "Drupal est mort" ? Je vous cite le fondateur de Drupal. J'ai des sources primaires de qualité. Il nous dit qu'ils ont récemment sorti la beta release de Drupal 10. Il y a trois fois plus de projets et de modules qui sont prêts. La communauté est à fond. J'ai vérifié ce matin mes chiffres. 1 204 modules sont actuellement prêts pour Drupal 10. J'ai photocopié les sources. Vous voyez la partie stable : 1 204. Pour analyser le reste, il se trouve qu'il ne reste pas grand-chose pour que la majorité des modules soient prêts et compatibles pour Drupal 11. C'est un fichier à éditer pour mettre 10 dedans, pour dire que je supporte Drupal 10. La légende veut que certains de mes modules soient dans cette catégorie. C'est sans source, il n'y a pas de preuve. On ne va pas porter crédit aux rumeurs absurdes. Globalement, on peut voir que la plupart des mises à jour qui restent à faire peuvent être automatisées. On a déjà un superbe bot qui fait des automatic issues.

Globalement, grâce à Rector, on peut automatiser énormément de dépréciations. Avec la version 9.4, toutes les API qui sont dépréciés ont été publiées. À partir de maintenant, on peut mettre à jour de son code. Il reste très peu de choses à modifier manuellement. Je trouve qu'ils sont vachement au taquet, Drupal. Deuxièmement, voyez le petit point là-haut ? C'est vous ! "Drupal est mort" ? Ça dépend. Si on compare avec WordPress, c'est près de 40 % du Web. Mais ce n'est pas du tout le même type d'usage. Il y a beaucoup de petits blogs avec WordPress. Drupal, ce n'est pas la même chose. Drupal, on est bons sur les sites à fort trafic. Je vais appeler le gouvernement pour les prévenir que Drupal est mort. Il y a beaucoup de sites alors qu'ils vont devoir refermer. Ils n'étaient pas au courant. En Australie, ils ont leur propre distribution de Drupal. Globalement, est-ce que c'est Drupal qui est mort ou est-ce que c'est les CMS, les vieux CMS monolithiques qui n'ont plus bonne presse ? Drupal, ce n'est pas très fun, mais ça marche et il y a toujours de la communauté derrière. Ce sont les chiffres de 2021, excusez-moi, on a un peu de jet lag. Les chiffres de l'année vont être publiés plus tard dans le mois. L'an dernier, l'association Drupal a fait une enquête comme tous les ans pour voir un peu au niveau des agences la proportion de business qui croît et qui décroît. On voit que tout ce qui est dans une zone de vert, l'immense majorité du camembert, c'est de la croissance. Parce que je vous aime bien et que je suis allée chercher les sources les plus fraîches, j'ai volé cette slide de la présentation de Dries à Prague il y a quelques semaines, qui a fait un petit teasing des chiffres de cette année. Toute la partie blanche sur le camembert, c'est la croissance sur cette année. Je ne sais pas si Drupal est mort, mais les agences Web ont l'air de croître. Si vous avez déjà essayé de recruter des élèves Drupal, vous savez que c'est une denrée rare. Je vous laisse interpréter. Je vous donne les sources, la data. Je ne peux pas vous laisser comme ça.

Il y a des pronostics. Quel est l'avenir du Drupal, maintenant qu'on sait qu'il n'est pas tout à fait enterré ? PHP 8.2 pour la release 10.1. Ce ne sera pas à temps pour décembre, mais la cible, c'est la release 10.1. Ça arrive très bientôt. Drupal, ce n'est pas l'excuse. Project Browser et Automatic Updates, ça va passer dans le core. Je ne sais pas si ce sera sur Drupal 10 ou sur Drupal 11. On a aussi un plug-in lenient pour Composer. Comme je vous explique, beaucoup de modules sont compatibles avec Drupal 10, mais ils n'ont pas mis l'impôt dans le petit fichier. Du coup, Composer dit qu'il n'est pas compatible. Le problème, c'est que parfois, on propose des patchs, mais les mainteneurs n'ont pas forcément le temps de les merger. Il y a un truc qui marche qu'on ne peut pas utiliser. On peut permettre à Composer d'ignorer ces conflits-là. L'idée, c'est d'avoir un plug-in dédié pour simplifier cette partie-là. Ce sera un gros gain de temps. Encore moins de modules dans le core. Je vous ai montré qu'il y avait 5 modules et 4 thèmes qui ont dit au revoir au core. Mais ça va s'aggraver. Ils se sont dits que le core, il y en a trop. Il y a 16 projets qui vont quitter le core d'ici Drupal 11, en comptant les 4 qui sont déjà partis. Un core plus léger. On estime que Drupal 11 sera 20 % plus léger que Drupal 9. Et enfin, les distributions. Le but, c'était d'avoir des bundles de et des modules clés pour créer une distribution pour le journalisme, par exemple. Mais ça ne marche pas très bien. Les mises à jour sont compliquées. On va se recentrer sur ce que le reste de la communauté faite très bien, à savoir des recipes. L'objectif est d'avoir ces fichiers qui vont permettre de décrire ce qu'on veut, gérer les mises à jour facilement, et en même temps, d'avoir ces distributions, ces bundles de fonctionnalités qui vont ensemble disponibles. C'est déjà en cours. Vous pouvez aller aider. Le terme "recipes", c'est ce qui va rester a priori.

On a aussi des Starterkits pour partir d'un thème Drupal et faire son propre thème custom, tout en bénéficiant des mises à jour où on n'a pas de problème de compatibilité. C'est presque prêt. J'ai un scoop pour vous. Déjà, c'est la fin de l'émission, bientôt. Mais on ne va pas vous laisser sur votre faim. La communauté est toujours active. Il se passe des choses. La prochaine DrupalCon Europe passe de la République tchèque à la France . Cocorico ! La prochaine DrupalCon aura lieu à Lille ! Il y a aussi les Drupal Days en juillet. Vous aurez le plaisir de retrouver toute la communauté Drupal à Lille, l'an prochain. Il y a des tractations avec des gens de la communauté PHP qui sont à Lille, pour faire des trucs. Je ne peux pas trop en dire, secret professionnel. Il va se passer des choses. Si vous aimez la bière et le PHP, pensez-y. Il y a des gaufres aussi ! Je vous remercie beaucoup d'être restés, d'avoir patienté avec moi pendant les problèmes techniques. J'espère que mon ordinateur se remettre de ses émotions. Il était plus stressé que moi. Vous pouvez aller donner une note pas trop méchante. Sinon, vous pouvez me retrouver dans pas longtemps ici aussi, pour la SymfonyCon. Je parlerai du syndrome de l'imposteur dans lequel je suis. Merci beaucoup !

_ Merci, Marine. On a le temps pour une question.

_ Une. Ne vous battez pas ! Il y a des techniciens qui sont rentrés dans la technique. Avec Drupal 10, on supporte beaucoup plus de trucs avant. Mais je n'ai pas les numéros de version parce que je n'ai pas mes notes de speaker. Je t'enverrai un message plus tard. Il y a beaucoup de supports différents. Je suis désolée, je n'ai pas le numéro là. Tu aurais pu être une question facile ! C'est tout ?

_ Bonjour. Par rapport à ce que vous disiez sur la disparition des distributions, ça veut dire qu'à terme, on va avoir une disparition de Drupal Commerce ?

_ L'idée des recipes, c'est des pouvoirs est simplifié l'installation. Drupal Commerce, c'est un module. On peut faire une recipe pour Drupal Commerce avec tous les modules que l'on veut. On peut très bien installer Drupal Commerce sans distribution et le faire à la main. Il n'y a pas forcément d'impact négatif là-dessus. Les distributions, je ne suis pas sûre qu'elles persistent. Une fois qu'il y aura une manière plus standard de les faire, je pense que ça va naturellement ne pas être maintenu.

_ Merci, Marine.

_ Merci !