WordPress skjuter upp React 19-uppgradering på grund av kompatibilitetsproblem med tillägg
WordPress kommer inte att implementera React 19 i sin kommande version 7.1. Beslutet kommer efter att kompatibilitetsproblem upptäckts under testning, vilket tvingar plattformen att fortsätta använda React 18.3.
WordPress har skjutit upp införandet av React 19 i sin version 7.1 på grund av betydande kompatibilitetsproblem med tillägg. Beslutet innebär att plattformen kommer att fortsätta använda React 18.3 under överskådlig tid.
WordPress utvecklingsteam identifierade potentiella problem under intern testning av React 19 inom Gutenberg-tillägget. Dessa problem härrörde från hur vissa tredjepartstillägg hanterar Reacts JSX runtime. Istället för att använda WordPress standardiserade delade skript för react-jsx-runtime, paketerar vissa utvecklare sin egen React-kod direkt i sina tillägg.
Detta förfarande leder till konflikter där tillägg samtidigt kan köra kod för både React 18 och React 19. När äldre datastrukturer skapade med React 18 hanteras av React 19:s runtime, kan inkompatibiliteter uppstå. Sådana problem kan yttra sig som trasiga blockfunktioner, fel i backend-gränssnittet eller JavaScript-fel i webbläsarens utvecklarverktygskonsoler.
För att åtgärda detta utvecklar WordPress ett automatiskt detektionsverktyg inom sin Plugin Check-funktion. Detta verktyg kommer att identifiera tillägg som antingen paketerar sin egen JSX runtime eller förlitar sig på föråldrade funktioner i React som har tagits bort i version 19. Utvecklingsteamet uppmanar tilläggsutvecklare att noggrant testa sin kod och rapportera eventuella kompatibilitetsproblem till Gutenberg-projektets GitHub-förråd.
Komplicerande för övergången är att många befintliga tillägg fortfarande är beroende av funktioner som antingen är föråldrade eller har tagits bort i React 19. Även om WordPress-teamet implementerar bakåtkompatibla lager för vissa av dessa funktioner, medger de att detta stöd för närvarande inte är tillräckligt för att garantera en smidig övergång för alla tillägg.