[spip-dev] SPIP 3.3 nécessitera PHP 7.3 minimum.

Bonjour,

Comme nous en discutions là https://www.mail-archive.com/spip-dev@rezo.net/msg71162.html puis là https://www.mail-archive.com/spip-dev@rezo.net/msg71253.html , nous allons tenter de modifier notre cycle de release et la version de PHP avec lequel SPIP  est compatible.

À partir de la version 3.3 à venir, SPIP sera compatible avec les versions PHP maintenues au moment de la sortie de la version SPIP (cela concerne les nouvelles versions majeures x.0.0 ou x.y.0 seulement).

SPIP 3.3 nécessitera donc compatible de PHP 7.3 à 8.0 (enfin si on la sort avant décembre ! 😁)

Concernant SPIP 3.2, nous sortirons prochainement une version qui va améliorer le support jusqu'à PHP 7.4, en corrigeant des «deprecated» et diverses petites choses qui ne sont pas actuellement bloquantes, mais qui vont alléger un peu les log des serveurs.

SPIP 3.2 sera donc compatible de PHP 5.4 Ã 7.4

MM.

1 « J'aime »

\o/ joie, bonheur !

Je me suis permis de diffuser l'info via mastodon pour que ça se sache :slight_smile:

https://mastodon.social/@b_b/105933981517748843

zoubis

Hello,

Pour le Core et les plugins-dist oui.
Pour une partie des plugins que j'utilise oui.

Ceci dit PHP 8 est admirablement sensible et termine en Fatale à la moindre incohérence en entrée de certaines fonctions. C'est bien (mieux que de tolérer une entrée dont le type n'est pas celui attendu), mais on n'est pas à l'abri de tomber sur d'autres cas comme ça a des moments, parce que les usages de SPIP sont très variés…

Un point à noter aussi c'est que pour ses fonctions natives, qui n'ont aucun argument, PHP 8 ne tolère pas d'en passer (il ne tolèrera plus non plus pour certaines fonctions natives de dépasser le nombre d'arguments prévus). C'est le cas de time() par exemple qui n'a aucun argument : https://www.php.net/manual/fr/function.time.php et nous avions dans certains squelettes : `#VAL|time` ou `#NULL|time`. PHP 8 fera une fatale dans ce cas car la première appele `time('')` et la seconde `time(null)`. Nous n'avons pas de moyen actuellement dans les squelettes SPIP d'appeler une fonction sans argument, autrement que de faire : `#EVAL{time()}`

MM.

Merci pour tes retours.

             jeanmarie

Ou de définir une function filtre_time_dist() ?
Mais bon, on va pas redéclarer tout PHP :slight_smile:

Ou alors une balise #CALL{time} ou #APPELLE{time}
pour toutes les fonctions php sans argument
(on dit pas "procédures" ?)

JL