Contexte et déroulement de l'événement
Le plugin en question, Advanced Custom Fields (ACF), est un outil populaire qui permet aux utilisateurs de WordPress de personnaliser leurs écrans d'édition. Matt Mullenweg, cofondateur de WordPress et PDG d'Automattic, a annoncé que WordPress allait "forker" ce plugin pour créer une nouvelle version appelée Secure Custom Fields. Cette décision a été prise pour « éliminer les offres commerciales et corriger un problème de sécurité ».
Un peu d'histoire
WordPress est un système de gestion de contenu gratuit et open source utilisé par de nombreux sites web, tandis que des entreprises comme WP Engine et Automattic de Mullenweg proposent des services d'hébergement et d'autres services commerciaux.
Le mois dernier, Mullenweg a publié un article de blog critiquant WP Engine, qu'il considère comme un « cancer pour WordPress ». Ses critiques portaient sur tous les points, de l'absence de prise en charge de l'historique des révisions par WP Engine à son investisseur Silver Lake, mais il a également suggéré que la marque « WP » embrouillait les clients en donnant l'impression que l'entreprise était officiellement liée à WordPress.
Les lettres de cessation et d'interdiction sont allées dans les deux sens, WP Engine affirmant que Mullenweg avait menacé d'adopter une « approche nucléaire de la terre brûlée » si l'entreprise ne payait pas pour obtenir la licence de la marque WordPress.
WordPress a interdit à WP Engine d'accéder à WordPress.org, a brièvement levé l'interdiction, puis l'a imposée à nouveau. Cette interdiction empêche essentiellement WP Engine de mettre à jour le plugin par l'intermédiaire de WordPress.org, ce qui l'empêche de proposer des mises à jour automatiques pour résoudre les problèmes de sécurité.
WP Engine a toutefois publié une solution de contournement pour les utilisateurs qui souhaitent mettre à jour le plugin et continuer à utiliser ACF (l'entreprise précise que cette solution n'est nécessaire que pour les utilisateurs gratuits d'ACF, car les utilisateurs professionnels continueront à recevoir les mises à jour via le site web d'ACF).
À l'avenir, Mullenweg a écrit que Secure Custom Fields sera disponible en tant que plugin non commercial : « Si des développeurs souhaitent s'impliquer dans la maintenance et l'amélioration de ce plugin, n'hésitez pas à les contacter ».
WordPress.org prend le contrôle d'un plugin de WP Engine pour créer Secure Custom Fields
WordPress.org a repris un plugin populaire de WP Engine afin de « supprimer les offres commerciales et de corriger un problème de sécurité », a annoncé Matt Mullenweg, cofondateur de WordPress et PDG d'Automattic. Cette mise à jour « minimale », qu'il qualifie de « fork » du plugin Advanced Custom Fields (ACF), s'appelle désormais « Secure Custom Fields ».
Le problème de sécurité auquel Mullenweg fait référence dans son billet n'est pas clair. Il écrit qu'il « invoque le point 18 des directives du répertoire des plugins », dans lequel l'équipe de WordPress se réserve plusieurs droits, y compris celui de supprimer un plugin ou de le modifier « sans le consentement du développeur ». Mullenweg explique que cette décision est liée au procès récemment intenté par WP Engine contre lui et Automattic.
Au nom de l'équipe de sécurité de WordPress, je vous annonce que nous invoquons le point 18 des directives du répertoire des plugins et que nous transformons Advanced Custom Fields (ACF) en un nouveau plugin, Secure Custom Fields. SCF a été mis à jour pour supprimer les offres commerciales et corriger un problème de sécurité.
Le 3 octobre, l'équipe d'ACF a annoncé que les mises à jour du plugin ACF se feraient directement sur leur site web. Cette information a également été communiquée via un avis de support dans le forum de support de WordPress.org le 5 octobre. Les sites qui ont suivi les instructions de l'équipe ACF sur « Comment mettre à jour ACF » continueront à recevoir les mises à jour directement de WP Engine. Le 1er octobre 2024, WP Engine a également déployé sa propre solution pour les mises à jour et les installations de plugins et de thèmes sur les sites de ses clients à la place du service de mise à jour de WordPress.org.
Les sites qui continuent d'utiliser le service de mise à jour de WordPress.org et qui n'ont pas choisi de passer aux mises à jour ACF de WP Engine peuvent cliquer sur mettre à jour pour passer aux Secure Custom Fields. Lorsque les sites ont choisi d'activer les mises à jour automatiques des plugins de WordPress.org, ce processus de mise à jour les fera passer automatiquement de Advanced Custom Fields à Secure Custom Fields.
Cette mise à jour est aussi minimale que possible pour résoudre le problème de sécurité. Secure Custom Fields est désormais un plugin non commercial, et si des développeurs souhaitent s'impliquer dans la maintenance et l'amélioration de ce plugin, n'hésitez pas à les contacter.
Des situations similaires se sont déjà produites, mais pas à cette échelle. Il s'agit d'une situation rare et inhabituelle provoquée par les attaques juridiques de WP Engine, nous ne prévoyons pas que cela se produise pour d'autres plugins.
WP Engine a publié des instructions sur la manière d'utiliser sa version d'Advanced Custom Fields qui utilise son propre serveur de mise à jour. Vous avez donc cette option, bien que l'équipe de sécurité de WordPress ne la recommande pas tant qu'elle n'aura pas résolu les problèmes de sécurité. Vous pouvez désinstaller Advanced Custom Fields et activer Secure Custom Fields depuis le répertoire des plugins et tout ira bien.
Le 3 octobre, l'équipe d'ACF a annoncé que les mises à jour du plugin ACF se feraient directement sur leur site web. Cette information a également été communiquée via un avis de support dans le forum de support de WordPress.org le 5 octobre. Les sites qui ont suivi les instructions de l'équipe ACF sur « Comment mettre à jour ACF » continueront à recevoir les mises à jour directement de WP Engine. Le 1er octobre 2024, WP Engine a également déployé sa propre solution pour les mises à jour et les installations de plugins et de thèmes sur les sites de ses clients à la place du service de mise à jour de WordPress.org.
Les sites qui continuent d'utiliser le service de mise à jour de WordPress.org et qui n'ont pas choisi de passer aux mises à jour ACF de WP Engine peuvent cliquer sur mettre à jour pour passer aux Secure Custom Fields. Lorsque les sites ont choisi d'activer les mises à jour automatiques des plugins de WordPress.org, ce processus de mise à jour les fera passer automatiquement de Advanced Custom Fields à Secure Custom Fields.
Cette mise à jour est aussi minimale que possible pour résoudre le problème de sécurité. Secure Custom Fields est désormais un plugin non commercial, et si des développeurs souhaitent s'impliquer dans la maintenance et l'amélioration de ce plugin, n'hésitez pas à les contacter.
Des situations similaires se sont déjà produites, mais pas à cette échelle. Il s'agit d'une situation rare et inhabituelle provoquée par les attaques juridiques de WP Engine, nous ne prévoyons pas que cela se produise pour d'autres plugins.
WP Engine a publié des instructions sur la manière d'utiliser sa version d'Advanced Custom Fields qui utilise son propre serveur de mise à jour. Vous avez donc cette option, bien que l'équipe de sécurité de WordPress ne la recommande pas tant qu'elle n'aura pas résolu les problèmes de sécurité. Vous pouvez désinstaller Advanced Custom Fields et activer Secure Custom Fields depuis le répertoire des plugins et tout ira bien.
L'équipe d'Advanced Custom Fields a répondu
L'équipe ACF de WP Engine a affirmé sur X que WordPress n'a jamais « unilatéralement et de force » pris un plugin « de son créateur sans consentement » : « Nous avons été informés que le plugin Advanced Custom Fields sur le répertoire WordPress a été repris par WordPress dot org. En 21 ans d'histoire de WordPress, un plugin en cours de développement n'a jamais été retiré unilatéralement et de force à son créateur sans son consentement ».
Elle a ensuite écrit que ceux qui ne sont pas clients de WP Engine, Flywheel ou ACF Pro devront se rendre sur le site d'ACF et suivre les étapes qu'elle a publiées précédemment pour « effectuer un téléchargement unique de la version 6.3.8 authentique » afin de continuer à recevoir les mises à jour.We have been made aware that the Advanced Custom Fields plugin on the WordPress directory has been taken over by WordPress dot org.
— Advanced Custom Fields (@wp_acf) October 12, 2024
A plugin under active development has never been unilaterally and forcibly taken away from its creator without consent in the 21 year history of… pic.twitter.com/eV0qakURLc
« Cette promesse communautaire essentielle a été violée et nous demandons à chacun de réfléchir à l'éthique d'une telle action et au nouveau précédent qui a été créé ».
Comme son nom l'indique, le plugin ACF permet aux créateurs de sites web d'utiliser des champs personnalisés lorsque les champs génériques existants ne suffisent pas (ce qui, selon la présentation du plugin par ACF, est déjà une fonctionnalité native, mais « pas très conviviale », de WordPress).This essential community promise has been violated, and we ask everyone to consider the ethics of such an action, and the new precedent that has been set.
— Advanced Custom Fields (@wp_acf) October 12, 2024
Le plugin ACF n'est plus disponible sur WordPress.org
Nous avons été attristés et consternés par les actions de Matt Mullenweg ce matin s'appropriant le plugin Advanced Custom Fields que notre équipe ACF a activement développé pour la communauté WordPress depuis 2011.
Advanced Custom Fields est un plugin sophistiqué avec plus de 200 000 lignes de code, que nous développons, améliorons, supportons et investissons continuellement pour répondre aux besoins de nos utilisateurs sur WordPress. Nous avons fait plus de 15 versions au cours des deux dernières années, depuis que nous avons rejoint WP Engine, et avons ajouté de nouvelles fonctionnalités significatives au plugin gratuit, tout en améliorant continuellement les performances et nos pratiques de sécurité et de test pour atteindre le « niveau d'entreprise » que nos utilisateurs méritent.
La modification de notre distribution publiée, et sous notre « slug » qui identifie de manière unique le plugin ACF et le code auquel nos utilisateurs font confiance dans le dépôt de plugins de WordPress.org, est incompatible avec les valeurs et les principes de l'open source. La modification apportée par Mullenweg est malicieusement utilisée pour mettre à jour des millions d'installations existantes d'ACF avec un code non approuvé et non fiable par l'équipe d'Advanced Custom Fields.
Nous sommes directement en mesure de protéger les clients de WP Engine, Flywheel hosting et ACF PRO - vous n'êtes pas concernés et n'avez aucune action à entreprendre. Vous continuerez à recevoir les dernières innovations et mises à jour des experts de l'équipe ACF. Le code ACF sur wordpress.org n'est plus contrôlé par l'équipe ACF.
Advanced Custom Fields est un plugin sophistiqué avec plus de 200 000 lignes de code, que nous développons, améliorons, supportons et investissons continuellement pour répondre aux besoins de nos utilisateurs sur WordPress. Nous avons fait plus de 15 versions au cours des deux dernières années, depuis que nous avons rejoint WP Engine, et avons ajouté de nouvelles fonctionnalités significatives au plugin gratuit, tout en améliorant continuellement les performances et nos pratiques de sécurité et de test pour atteindre le « niveau d'entreprise » que nos utilisateurs méritent.
La modification de notre distribution publiée, et sous notre « slug » qui identifie de manière unique le plugin ACF et le code auquel nos utilisateurs font confiance dans le dépôt de plugins de WordPress.org, est incompatible avec les valeurs et les principes de l'open source. La modification apportée par Mullenweg est malicieusement utilisée pour mettre à jour des millions d'installations existantes d'ACF avec un code non approuvé et non fiable par l'équipe d'Advanced Custom Fields.
Nous sommes directement en mesure de protéger les clients de WP Engine, Flywheel hosting et ACF PRO - vous n'êtes pas concernés et n'avez aucune action à entreprendre. Vous continuerez à recevoir les dernières innovations et mises à jour des experts de l'équipe ACF. Le code ACF sur wordpress.org n'est plus contrôlé par l'équipe ACF.
La réaction de la communauté WordPress a été mitigée. Certains ont salué cette initiative comme une étape positive pour améliorer la sécurité et la transparence, tandis que d'autres ont critiqué cette prise de contrôle unilatérale, arguant qu'elle porte atteinte aux principes de la communauté open source. L'équipe ACF a exprimé son mécontentement, affirmant que cette action a été réalisée sans leur consentement et qu'elle crée un précédent inquiétant.
Implications pour le futur
Cette décision soulève des questions importantes sur la gouvernance et la gestion des plugins dans l'écosystème WordPress. Elle pourrait également influencer la manière dont les conflits entre les différentes parties prenantes de la communauté open source sont résolus à l'avenir. Il est crucial que WordPress continue à équilibrer les intérêts commerciaux et les valeurs de la communauté pour maintenir sa crédibilité et son intégrité.
Conclusion
L'initiative de WordPress.org de prendre le contrôle du plugin ACF et de le renommer en Secure Custom Fields est une étape significative qui pourrait avoir des répercussions durables sur l'écosystème WordPress. Cette décision, bien que controversée, met en lumière les défis et les opportunités de la gestion des plugins open source. Il sera intéressant de suivre les développements futurs pour voir comment cette situation se résoudra et quelles leçons seront tirées.
Sources : Advanced Custom Field, Secure Custom Fields, point 18 des lignes directrices pour les répertoires de plugins, installation et mise à jour vers la dernière version d'ACF
Et vous ?
Pensez-vous que WordPress.org a agi de manière appropriée en prenant le contrôle du plugin de WP Engine sans leur consentement?
Quelles implications voyez-vous pour l'avenir de la gestion des plugins dans l'écosystème WordPress?
Comment cette décision pourrait-elle influencer la confiance et la collaboration au sein de la communauté open source?
Quels pourraient être les avantages et les inconvénients de cette nouvelle version appelée Secure Custom Fields?
Selon vous, quelles mesures auraient pu être prises pour résoudre les conflits de manière plus collaborative?