Re: Composer et SPIP sont dans un bateau

James <[email protected]>
Newsgroups gmane.comp.web.spip.devel
Message-ID <CAE50Zk4OYSfhTsTN2Qsf1yepvAvVamFGmNU1frOdqRCyw51Q2Q@mail.gmail.com>
Le jeu. 21 mars 2019 à 19:35, Maïeul Rouquette <[email protected]> a
écrit :

> J'ai encore une question technique
> "Celleux qui activent des plugins depuis l'espace privé sans jamais
> > toucher une ligne de PHP ne verront pas la différence."
>
> Là je ne comprend pas si le fait qu'un plugin soit géré avec git +
> composer empechera qu'il soit distribué par ailleurs avec SVP. Puisque,
> à ma connaissance, nous n'avons pas encore de passerelle composer ->
> SVP.
>
>
Je vais faire plusieurs réponses, j'espère que je ne vais embrouiller
personne :

Dans le contexte de la "première étape", c'est comme aujourd'hui :

- Un plugin développé sur github qui est aussi configuré sur la zone avec
une propriété externals + archive_externals.txt se trouve de fait
installable via SVP.
- Si ce même plugin est "composerisé", il pourra être installé avec
composer en ligne de commande.
- Un plugin géré sur la zone vit sa vie comme aujourd'hui.

La question épineuse, c'est celle des dépendances de ce plugin :

Les <necessite ...> les <utilise ...> du fichier paquet.xml seront toujours
valide avec SVP tel qu'il est aujourd'hui, disons SVP 1.x, pour peu, bien
sur, que les plugins nécessités soit sur plugins.spip.net. Je ne m'avance
pas sur ce que SVP deviendra, c'est l'objet du chantier qu'on pourra
appeler "SVP Composer compatible" ou "SVP 2.0".

Un plugin "composerisé" avec des dépendances issues de l'écosystème PHP
gérées par composer ne sera opérationnel que dans un contexte ou il sera
installé en ligne de commande (toujours dans le contexte de la *première
étape*), il sera inutile de le pousser dans SVP 1.x.

Un plugin qui embarque des dépendances dans un sous-répertoire (vendor/ à
coté de paquet.xml+composer.json) sur la zone ou ou sur github, ça devient
imprédictible si on veut qu'il soit installable avec les 2 méthodes. Ça
marchera surement pour SVP 1.x et probablement pas en ligne de commande. Je
comprends les gens qui font comme ça, mais franchement, ça devra être les
premiers trucs à faire corriger aux mainteneurs de ce genre de plugins; ils
auront certainement un choix à faire, hélas. Heureusement, ils ne sont pas
très nombreux. :-)

Le chantier "SVP Composer compatible" devra tenir compte de plusieurs
problèmes techniques et de sécurité qui sont en partie déjà identifiés.
J'hésite à entrer dans les détails, parce que je ne veux perdre personne
(:D) avec de la technique, mais pourtant il va bien falloir s'y mettre. Y a
rien de magique et tant qu'il n'y aura qu'un trop petit nombre de
producteurices de code au sein de la communauté, qui expérimentent
composer, se sera très compliqué et très lent. La *première étape* aidera
peut-être à dédramatiser l'outil.

À titre personnel, ça ne me choque pas particulièrement de faire coexister
les 2 modes avec les risques d'incompatibilité que cela entraine pour un
certain temps. Ces risques d'incompatibilités seront du fait et de la
responsabilité d'un tout petit nombre de plugins facile à identifier. Mais
pour que ce temps de cohabitation soit le plus court possible, on devra
paralléliser des chantiers, SVP 2.0 étant celui qui sera, malgré tout, le
plus long je pense.

Amitiés
>
> Maïeul
>
>
Amitiés,
-- 
James
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.