Gestion des dépendances

Les plugins peuvent indiquer qu’ils dépendent de certaines conditions pour fonctionner. Deux attributs indiquent cela : necessite et utilise. Dans le premier cas, la dépendance est forte : un plugin qui nécessite quelque chose (une certaine version de SPIP ou d’un plugin) ne pourra pas s’activer si celui-ci n’est pas présent et actif. Une erreur sera générée si l’on tente d’activer le plugin s’il ne vérifie pas sa dépendance. Dans le second cas, la dépendance est faible, le plugin peut s’activer et fonctionner même si la dépendance n’est pas présente.

Necessite

<necessite id="prefixe" version="[version_min;version_max]" />
  • id est le nom du préfixe du plugin, ou "SPIP" pour une dépendance directe à SPIP,
  • version optionnellement peut indiquer la version minimum et/ou la version maximum d’un plugin. Les crochets sont utilisés pour indiquer que la version indiquée est comprise dedans, les parenthèses pour indiquée que la version indiquée n’est pas comprise.

Utilise

Utilise permet donc de déclarer des dépendances optionnelles, exactement avec la même syntaxe que necessite.

utilise et necessite permettent aussi, par conséquent, de surcharger les fichiers du plugin qu’ils indiquent (en étant prioritaire dans le chemin).

Exemple

// necessite SPIP 2.0 minimum
<necessite id="SPIP" version="[2.0;)" />
// necessite SPIP < 2.0
<necessite id="SPIP" version="[;2.0)" />
// necessite SPIP >= 2.0, et <= 2.1
<necessite id="SPIP" version="[2.0;2.1]" />
 
// spip_bonux 1.2 minimum
<necessite id="spip_bonux" version="[1.2;]" />

Certains plugins peuvent indiquer qu’il est possible de modifier leur configuration si le plugin CFG est présent (mais il n’est pas indispensable au fonctionnement du plugin) :

// plugin de configuration
<utilise id="cfg" version="[1.10.5;]" />

Auteur Matthieu Marcillaud Publié le : Mis à jour : 12/03/23

Traductions : English, français