Le 1 août 2012 14:28, Dsls <dsls(a)morefnu.org> a écrit :
Re,
J'ai commité par erreur 2-3 modifications que je prototypais,
concernant la gestion des dépendances entre plugins.
J'aimerais discuter des différents comportements, et modifications
visuelles que ça apporte.
Coté dev, il suffira de compléter le _define.php du plugin, avec par
exemple :
$this->registerModule(
/* Name */ "Antispam",
/* Description*/ "Generic antispam plugin for
Dotclear",
/* Author */ "Alain Vagner",
/* Version */ '1.3.1',
array(
'permissions' => 'usage,contentadmin',
'priority' => 10,
'depends' => array(
'comments' => '1.0')
)
);
L'attribut 'depends' est alors un tableau des dépendances, chaque clef
du tableau étant une dépendance avec un plugin donné.
Pour la valeur associée à la clef :
* soit on met une valeur min (ex: 1.0) : dépendance avec comments v1.0
minimum
* soit on met un intervalle (ex : array('1.0','2.0')) : dépendance
avec comments v1.0 minimum, v2.0 maximum
* Soit on met rien (''), auquel cas on vérifie juste que comments est
présent.
Maintenant, comme la vérification des dépendances est potentiellement
chronophage, je propose de restreindre la vérification à certains
endroits :
* A l'accueil de l'admin : on vérifie les problèmes de dépendance, et
on désactive les plugins ayant des problèmes de dépendances.
* Dans la gestion des extensions :
* vérification de toutes les dépendances à l'accueil de la page
extensions
* vérification des dépendances à l'installation d'un plugin : si les
dépendances ne sont pas concordantes, le plugin est installé, mais
désactivé.
Ne faut-il pas prévoir un statut particulier qui indiquerait de l'activer
dès que ses dépendances seront vérifiées et valides ?
Ça permettrait d'activer le lot des plugins une fois le dernier attendu
installé sans être obligé de reprendre la liste complète, pour peu qu'on
ait pensé à la noter quelque part.
* un plugin dont dépendent d'autres plugins actifs n'est
ni
désactivable, ni supprimable (on affiche un message du pourquoi)
* un plugin n'ayant pas ses dépendances résolues n'est pas
activable, mais est supprimable.
Z'en dites ?
Au bémol évoqué plus haut ça me paraît bien.
--
Bruno
_______________________________________________
Dev mailing list
Dev(a)list.dotclear.org
http://ml.dotclear.org/listinfo/dev
--
Franck