[spip-dev] Plugins refusent de s'activer

Fil écrivit le 6/7/2008 à 18:08

Le format de necessite dans plugin.xml a changé :
Connexion · GitLab

Il n'y a pas moyen de conserver une compat ascendante ?

Aucune version stable de spip n'offre de gestion des dépendances,
et celle ci doit être efficace, compréhensible, pérenne et très stable,
donc je ne pense pas que sa compatibilité ascendante avant 2.0
finale doivent être une priorité.

(voir aussi
« Mais à partir de la 2,
il faudra vraiment décréter les méthodes comme pérennes. »
dans Martin Arnaud,
http://article.gmane.org/gmane.comp.web.spip.devel/48386 )

Par exemple implanter l'idée de

casserait toutes les dépendances actuellement écrites.

Je peux faire 1, 2 (pour la zone, et sans indiquer une version de spip
très précise), 3.

excellent !

1 fait par moi et realet, même si perfectionnable
2 fait par realet
3 je le ferais au plus tard lors de la version 2.0 finale, en modifiant
en plus le mod_le
http://trac.rezo.net/trac/spip-zone/browser/_plugins_/plugin_template
et en ajoutant des utilise si nécessaire
4 Je crois qu'un volontaire s'est signalé dans
http://trac.rezo.net/trac/spip/ticket/687#comment:1
5 qui s'en charge ?

6 et 7 :
Puisque aucune version stable publiée de SPIP n'utilise necessite
et utilise, et que cela me semble une brique critique du système,
je pense (c'est jsute mon avis personnel) qu'il ne faut pas hésiter à
tester et casser si nécessaire pour obtenir un système de dépendance
efficace, compréhensible, pérenne et très stable (cf. ci-dessus).

À présent la comparaison de version se fait avec
$spip_version_branche + $spip_version_code

exemple ave un plugin demandant
necessite id='SPIP' version='[2.0.0.12000;]'

$spip_version_branche = 2.0.0
$spip_version_code = 12001
concaténation 2.0.0.12001
plugin utilisable ? oui

$spip_version_branche = 2.0.1
$spip_version_code = 12002
concaténation 2.0.1.12001
plugin utilisable ? oui

$spip_version_branche = 2
$spip_version_code = 12001
concaténation 2.12001
plugin utilisable ? oui

$spip_version_branche = 2.0.0c
$spip_version_code = 12003
concaténation 2.0.0.c.12003
plugin utilisable ? non <--- Erreur

$spip_version_branche = 2.0.0.1
$spip_version_code = 12001
concaténation 2.0.0.1.12001
plugin utilisable ? non <--- Erreur

$spip_version_branche = 2.0 beta 1
$spip_version_code = 12000
concaténation 2.0.beta.1.12000
plugin utilisable ? non

necessite id='SPIP' version='[;2.0.0.13000)'

$spip_version_branche = 2.0.0
$spip_version_code = 13050
concaténation 2.0.0.13050
plugin utilisable ? non

$spip_version_branche = 2.0.0.1
$spip_version_code = 13050
concaténation 2.0.0.1.13050
plugin utilisable ? oui <--- Erreur

Aucun problème avec
http://trac.rezo.net/trac/spip-zone/browser/_plugins_/_stable_/champs_extras/plugin.xml#L8
« <necessite id='SPIP' version='[2.0.0 dev;]' /> » ?

Qui a regardé
http://www.copix.org/index.php/wiki/modulexml/fr#Section-dependencies ?
(au passage, des comptes rendus des RMLL ?)

D'après les tests ci-dessus, le fonctionnement d'aujourd'hui contraint
$spip_version_branche à conserver ad vitam eternam (pour toujours)
le même nombre de subdivisions qu'au départ (3), et interdit les
noms avec lettre tel 1.9.2a (cf. http://trac.rezo.net/trac/spip/ticket/687 ).