PrestaShop et la fin du support des versions obsolètes de PHP

Par:
fredericmazue

mer, 05/06/2019 - 10:00

PHP 5.6 a bénéficié d'une longue période de support. Mais depuis mai 2019, PHP est revenu à un cycle de vie plus court d'une durée de trois ans, consistant en une nouvelle version mineure chaque année, avec deux ans d'assistance active et un an de correctifs de sécurité uniquement. Avec pour conséquence que la communauté PHP adopte les nouvelles versions et supprime la compatibilité avec les anciennes versions plus rapidement.

Cette situation a un impact important sur les CMS écrits en PHP. Par exemple WordPress, qui traditionnellement supportait de très vielles versions de PHP demande désormais un PHP 5.6 et demandera très bientôt un PHP 7.

Pour le CMS PrestaShop, qui est construit avec le framework Symfony, la situation est assez compliquée. Par exemple PrestaShop 1.7.6 prend en charge toutes les versions de PHP de 5.6 à 7.2, mais pas la dernière version 7.3. Pourquoi pas ? Parce que les changements introduits dans PHP 7.3 provoquent des problèmes de compatibilité avec des bibliothèques dont dépend PrestaShop, notamment la bibliothèque Doctrine.

Comment les choses vont elles évoluer au fil du temps ?  L'équipe de PrestaShop a défini des règles comme ceci pour établir une page de compatibilité :

Limite inférieure - Définie par la version la plus récente parmi:

  • La plus ancienne version de PHP supportée par nos principales dépendances,
  • La version la plus ancienne de PHP dont le support officiel n’est pas terminé ou n’est pas terminé depuis plus d’un an au moment de la publication de la version finale de la version PrestaShop.

Limite supérieure - Définie par la version la plus ancienne parmi:

  • La dernière version stable de PHP disponible au moment du gel des fonctionnalités de la version de PrestaShop,
  • La dernière version de PHP supportée par nos principales dépendances (quelle que soit la plus basse).

Un billet sur le blog de PrestaShop explique tout cela en détail, et donne une conclusion pour PrestaShop 1.7.7 : Cela signifie que PrestaShop 1.7.7 sera probablement compatible de PHP 7.1 à PHP 7.3.

L'équipe de PrestaShop indique que la discussion reste toutefois ouverte sur GitHub, tout en recommandant aux développeurs de modules de commencer à tester que ceux-ci se comportent bien avec PHP 7.3.