[spip-dev] Dépendances par rapport aux plugins du core

Bonjour,

Je voudrais savoir, puisque le but est il me semble de pouvoir distribuer SPIP avec ou sans les plugins du core (ou juste une sélection) s'il ne faut pas indiquer dans certains plugins des dépendances vis à vis de ces plugins du core.

Par exemple, "gravatar" utilise des fonctions qui sont dans "core/filtres_images".

Malheureusement, si je mets un <necessite ...> ça ne marche plus en version stable. Mais je pourrais au moins mettre un <utilise ...>, non ?

Ou alors, il faudrait pouvoir définir des alternatives de lots de dépendances, genre "SPIP 2.0" OU ("SPIP 2.1" ET "filtres_images")... mais je m'égare... :wink:

-Nicolas

Non je ne pense pas que tu t'égares. C'est une question qui va devoir être résolu quand même assez tôt.

- Est-ce que l'ensemble des créateurs de plugins vont devoir faire une version spéciales pour SPIP 2.1 afin de mettre les bons <necessite> sans bloquer SPIP 2.0 ?

- Ou bien est-ce que dans une version mineure SPIP 2.0.X ne faut-il pas inclure une extension à la syntaxe de <necessite> afin de dire sur *quelle* version de SPIP le plugin nécessite tel ou tel autre plugin ?

C'est l'un ou l'autre non ? Et la première solution me parait un peu aberrante : s'il n'y a QUE une ligne du XML à changer c'est un peu abuser de faire deux versions de chaque plugin de la zone...

- Ou bien est-ce que dans une version mineure SPIP 2.0.X ne faut-il pas
inclure une extension à la syntaxe de <necessite> afin de dire sur *quelle*
version de SPIP le plugin nécessite tel ou tel autre plugin ?

Ou encore, que SPIP 2.0.x sache qu'il répond à <necessite filtres_images> !?

-- Fil

Je n'ai pas compris. :slight_smile:
"sache CE qu'il répond [...]" ?

Le problème c'est qu'on ne peut pas prévoir à l'avance ce qui sera découpé ou pas du core au final. Si yen a un nouveau qui arrive il faudra le rajouter ? Et il y a aussi des plugin du core de SPIP 2.1 qui marche aussi en SPIP 2.0 non (urls étendus ?) ?

D'ailleurs c'est un peu le même problème avec les boutons des menus, même sans parler des <necessite>. Comment fait-on pour qu'un plugin s'insère bien dans les menus à la fois dans l'ancienne version et dans le nouveau bandeau ? S'il n'y a que ça qui change dans un plugin est-ce qu'on doit faire deux versions juste pour ça ?

C'est un peu compliqué tout ça.

Ou encore, que SPIP 2.0.x sache qu'il répond à<necessite filtres_images>
!?

Je n'ai pas compris. :slight_smile:
"sache CE qu'il répond [...]" ?

Non, c'est bien "sache qu'il répond" (positivement à la demande)

Autrement dit ce que je suggère c'est de mettre un patch dans la
branche 2.0 disant "si le plugin nécessite filtre_images, j'ignore ce
necessite, étant donné que j'offre cette fonctionnalité". Si le patch
sait faire ça pour un array de fonctionnalités, on n'aura qu'à remplir
cet array avec les plugins exportés du core.

-- Fil

Fil a écrit :

Ou encore, que SPIP 2.0.x sache qu'il répond à<necessite filtres_images>
!?

Je n'ai pas compris. :slight_smile:
"sache CE qu'il répond [...]" ?

Non, c'est bien "sache qu'il répond" (positivement à la demande)

Autrement dit ce que je suggère c'est de mettre un patch dans la
branche 2.0 disant "si le plugin nécessite filtre_images, j'ignore ce
necessite, étant donné que j'offre cette fonctionnalité". Si le patch
sait faire ça pour un array de fonctionnalités, on n'aura qu'à remplir
cet array avec les plugins exportés du core.

il faudrait un patch rétroactif...
JL

il faudrait un patch rétroactif...

peut-être qu'un programmeur hyperactif pourrait faire un patch radioactif

ou alors on crée un virus qui va infecter les sites spip existants dans le passé

-- Fil

nan nan pas de panique, j'ai un plan, mais chaque chose en son temps.
Je ne crois pas qu'on en soit à faire des plugins distribuables pour la 2.1

Cédric

Je ne crois pas qu'on en soit à faire des plugins distribuables pour la 2.1

toi peut-être pas mais moi je travaille déjà sur les plugins de la
3.1, qui seront écrits en python+LISP

-- Fil