Compatibilite plugins 4.2

Coucou,

bon comment on fait pour les tests de compatiblité 4.2 des plugins ?

Pour ma part j’ai

  1. Fait les « petits » plugins dont je suis l’auteur et marqué/adapté comme compatible
  2. Tester les plugins suivants : leurs fonctions de base marchent, et a priori il n’y a pas de raison que cela casse, je serai donc d’avis de les passer en compatible
  • alerte urgence
  • ancre douces
  • belles puces
  • en travaux
  • select2
  1. Envisage des tests plus approfondi sur : formidable et co, champs extras et co, agenda, gis, crayons.

Donc ma question est : quelle critères de tests se donnent-on pour dire « oki la ca marche, on valide et on release ».

Ah ben oui tiens je crois que le processus que j’avais proposé pour Plugins SPIP et autre a été oublié non ?
Parce qu’on a tout sur Plugins SPIP pour suivre les mises à jour mais encore faut-il que la liste des branches soient à jour.

J’ai donc commité les infos de compat pour les plugins cités, faute de réponse, à l’exception de « entravaux » où j’ai vu qu’il y une v5 uniquement pour cette branche.

@eric_tonton je ne retrouve plus la discussion en question et l’explication du processus proposé donc je veux bien un récap pour les prochains plugins testés :slight_smile:

et la page de Plugins SPIP : Plugins SPIP

1 « J'aime »

Merci.

J’ai reparcourru les échanges et reste en suspend la question de comment un•e utilisateur•rice (pas un dev, donc pas à même de tagguer ou parce que c’est pas son plugin, voir mes retours et ceux de @J-C) indique juste qu’il a testé le plugin et que, pour son usage, tout semble fonctionner.
D’où la proposition de passer par un ticket comme proposé par @b_b.

Est-ce que c’est la bonne solution ou on en a une autre ?

Bonsoir,

Après être passé en 4.2.2 grâce à l’ajout de la ligne :
define('_DEV_VERSION_SPIP_COMPAT', '4.1.99');
dans mes “mes_options.php” tous mes plugins étaient OK.
Puis yaml (v3.0.1) m’a proposé une mise à jour en v3.0.2 que j’ai fait! Problème !

Composer detected issues in your platform: Your Composer dependencies require a PHP version « >= 8.1.0 ».

Accès privé bloqué.

J’ai désactivé formidable (5.3.0) et yaml (v3.0.2) et pu récupérer mon accès privé.

Je crois qu’il n’y a pas grand chose à faire à part attendre une mise à jour de formidable à moins que… :thinking:

Oui ca a été signalé. C’est un pb de YAML. Et c’est corrigé en 3.0.3

Supprime le dossier plugins/auto/yaml, et reactive ensuite formidable (qui pour rappel n’est pas encore officiellement compatible SPIP 4.2…)

1 « J'aime »

Hop,

Perso je pense qu’il faut faire comme le disait @maieul c’est à dire tester les fonctions de base et y aller sans complexe si on sait qu’on est prêt à assurer le support quand les users tomberont sur des bugs qu’on n’avait pas repéré. Mais, je pense aussi qu’on peut se prémunir de pas mal de bugs si on fait ces tests en activant l’affichage des erreurs & warnings de PHP cf Les aides au débuggage de squelettes - SPIP.

Et surtout, amha il faut brancher les plugins afin de se concentrer sur leur maintenance pour les branches SPIP supportées, 4.1 & 4.2 à ce jour donc PHP 7.4 mini. À partir de là, on peut s’appuyer sur les outils qu’on utilise pour le core afin de se simplifier le travail (rector, phpstan et phpcbf) et être certain que le plugin ne posera pas de problème avec la version de PHP utilisée. J’ai un petit article de récap en cours de rédaction à ce sujet, je vous ferai signe quand il sera publié. Et comme le disait @eric_tonton si on a le bon goût d’utiliser un IDE, celui-ci permet de repérer facilement les erreurs grossières dans le code.

On a déjà lancé le chantier de « branchage » sur quelques plugins, et comme on peut le voir pour crayons qui était compatible de SPIP 3.1 à 4.1 (donc deux versions non maintenues de SPIP !) ça permet de faire un sacré ménage dans le code https://git.spip.net/spip-contrib-extensions/crayons/pulls/15/files. Cela permet d’assurer un suivi et des montées de versions bien moins douloureuses et chronophage pour les personnes en charge de la maintenance du plugin, et donc la pérennité du plugin.

Après, il reste bien sûr à tester la compatibilité avec les APIs de SPIP, ses boucles et ses critères, les libs JS, mais de ce côté là les différents fichiers CHANGELOG permettent maintenant de repérer la plupart des choses qui cassent d’un version à une autre, et ça c’est vraiment bien (même si ça demande un effort supplémentaire à l’équipe du core pour les renseigner convenablement).

1 « J'aime »

Oui absolument.
C’est pourquoi je ne suis pas fan d’utiliser des tickets pour que les utilisateurs nous dise ça marche ou pas. Je pense qu’il faudrait toujours qu’un développeur vérifie à minima dans ces conditions.

Bonjour,
J’ai remis formidable (v5.2.3) qui a nécessité yaml (3.0.3) et tout refonctionne :+1:
Du coup j’ai :

Formidable 5.2.3
Générateur de formulaires
Une mise à jour fonctionnelle est disponible (5.3.0).
Version incompatible : compatibilité forcée

J’en reste là pour l’instant en attendant la compatibilité de formidable.

PS : mon SPIP 4.2.2 est sous PHP 7.4.33

A ca c’est super. J’avoue que ca m’aiderait beaucoup. Ce sera sur spip.net ? parce que si c’est encore sur un site perso, on va s’y perdre :slight_smile:

J’oubliais une précision qui a son importance à ce sujet. Grâce au travail obstiné de @marcimat le core ne génère plus (ou presque plus) aucun warning et deprecated, cela facilite donc grandement le repérage de ce qui est généré par le plugin qu’on teste :slight_smile:

Pourquoi encore ? Je pensais le faire sur mon blog à la base, car je retrouve goût à y écrire, mais si vous pensez que ça a plus sa place sur un site de la communauté, on aura tout le loisir de le déplacer par la suite :slight_smile:

Je comprend le gout d’écrire sur des sites perso, mais ca disperse l’information, surtout pour des trucs de références.

1 « J'aime »

Re, pour info j’ai publié ça rapidement en mode prise de note en attendant que ça soit plus complet : Porter un plugin pour SPIP 4 - Le labo

1 « J'aime »

Le 03/05/2023 à 15:46, b_b via Discuter de SPIP a écrit :

[b_b] b_b
Mai 3

pour info j’ai publié ça rapidement en mode prise de note en attendant que ça soit plus complet : Porter un plugin
pour SPIP 4 - Le labo https://blog.eliaz.fr/article207.html

Le titre parle de portage pour SPIP4
mais le contenu présente les lignes de commande d’outils de vérif de la qualité du code.
Ya un rapport ?

JL

Je disais pourtant :

À partir de là, on peut s’appuyer sur les outils qu’on utilise pour le core afin de se simplifier le travail (rector, phpstan et phpcbf) et être certain que le plugin ne posera pas de problème avec la version de PHP utilisée.