en essayant de valider certains plugins dans la branche dev de SPIP on
s'aperçoit que pour gérer le cas d'un plugin intégré au core il manque
quelque chose. Si par exemple on a un plugin toto qui nécessite les
itérateurs, il faut qu'il indique :
toto/plugin.xml = <necessite id="ITERATEURS" />
il faudrait donc que le "core.xml" de la version dev soit en mesure de dire
<fournit id="ITERATEURS" />
et c'est pareil avec job_queue (je crois que c'est tout).
On peut aussi imaginer qu'un plugin se substitue à un autre pour
"fournir" un service, ou en fournisse plusieurs…
Je ne crois pas que ces cas soient prévus dans la DTD ? Peut-on les ajouter ?
Si c'est compliqué ou pas mûr, je pensais ajouter dans l'immédiat
juste un petit hack traitant à part ces deux cas, histoire de ne pas
avoir à réécrire tous les plugin.xml avec une duplication du xml selon
les versions de SPIP : car c'est vraiment très moche, et de deux maux
choisir le moindre
Juste pour comprendre, le problème c'est d'éviter d'activer un plugin si le
core le fournit déjà ?
oui c'est d'ignorer ce <necessite> si le core <fournit> la fonctionnalité
Est ce que de ce point vue ça désactiverait aussi le necessite iterateurs
quand le core le fournit ? Parce que là ça serait intéressant car on
n'aurait plus besoin de modifier le plugin.xml ou paquet.xml pour êtrre
compatible avec la version de dev.
oui c’est d’ignorer ce si le core la fonctionnalité
Est ce que de ce point vue ça désactiverait aussi le necessite iterateurs
quand le core le fournit ? Parce que là ça serait intéressant car on
n’aurait plus besoin de modifier le plugin.xml ou paquet.xml pour êtrre
compatible avec la version de dev
j’ai essayé d’ajouter dans ecrire/core.xml :
mais comment faire pour le prendre en compte. J’imagine qu’il faut bosser dans la branche 2.2 ?
aie, va falloir merger ça avec ce que Emmanuel et Eric on fait sur la branche 2.2…
Pour ma part j’avais pris le parti de ne rien faire côté plugin sur la branche dev tant que le merge était pas fait pour éviter ce problème.