WordPress retarde la mise à jour React 19 en raison de problèmes de compatibilité des plugins
WordPress n'adoptera pas React 19 dans sa prochaine version 7.1. Cette décision fait suite à des problèmes de compatibilité découverts lors des tests, obligeant la plateforme à continuer d'utiliser React 18.3.
WordPress a reporté l'intégration de React 19 dans sa version 7.1 en raison de problèmes importants de compatibilité des plugins. La décision signifie que la plateforme continuera d'utiliser React 18.3 dans un avenir prévisible.
L'équipe de développement de WordPress a détecté des problèmes potentiels lors des tests internes de React 19 au sein du plugin Gutenberg. Ces problèmes provenaient de la manière dont certains plugins tiers gèrent le runtime JSX de React. Au lieu d'utiliser le script partagé standardisé de WordPress pour react-jsx-runtime, certains développeurs intègrent leur propre code React directement dans leurs plugins.
Cette pratique entraîne des conflits où les plugins peuvent exécuter simultanément du code pour React 18 et React 19. Lorsque des structures de données plus anciennes créées avec React 18 sont traitées par le runtime de React 19, des incompatibilités peuvent survenir. De tels problèmes peuvent se manifester par des fonctionnalités de blocage cassées, des erreurs dans l'interface backend ou des erreurs JavaScript dans les consoles des outils de développement du navigateur.
Pour résoudre ce problème, WordPress développe un outil de détection automatisé au sein de sa fonctionnalité Plugin Check. Cet outil identifiera les plugins qui incluent leur propre runtime JSX ou qui s'appuient sur des fonctions obsolètes de React supprimées dans la version 19. L'équipe de développement exhorte les auteurs de plugins à tester minutieusement leur code et à signaler tout problème de compatibilité au dépôt GitHub du projet Gutenberg.
La transition est également compliquée par le fait que de nombreux plugins existants dépendent encore de fonctionnalités obsolètes ou supprimées dans React 19. Bien que l'équipe WordPress mette en œuvre des couches de rétrocompatibilité pour certaines de ces fonctions, elle reconnaît que ce support est actuellement insuffisant pour garantir une transition en douceur pour tous les plugins.