2009/7/13 cy_altern <cy_altern@yahoo.fr>
En date de : Lun 13.7.09, Gilles VINCENT <gilles.vincent@gmail.com> a écrit :
Avant de me lancer dans une phase de mise à
plat des plugins concernés, je lance le chantier sur le
wiki de Trac :
http://trac.rezo.net/trac/spip-zone/wiki/MiseEnBrancheque
vous pouvez compléter
Après concertation générale et stabilisation
du wiki, on fera comme l’a fait Ben : « on
bouge » 
c’est quoi dans ton idée la « procédure »? on poste en réponse à ce mail pour dire si on est d’accord ou non et les modifs qui nous semblent souhaitable ou alors on débat via le wiki (gloups! ça risque d’être accrobatique ça…)?
Je pense que le wiki doit être l’aboutissement, pas le lieu, des échanges.
La liste spip-zone est le seul endroit avec irc où on peut discuter de ça, à mon avis.
Pas la peine de ne répondre qu’à ce mail : ça fait un seul fil sur gmane (et dans d’autres lecteurs de mail comme GMail), alors que les problèmes sont multiples.
Les discutions permettront de clarifier des pages comme
http://trac.rezo.net/trac/spip-zone/wiki/CommentUtiliserSvn
et répondront je l’espère aux éternelles questions de type « j’ai fais une super adaptation de Machin, mais je ne sais pas comment le mettre sur la zone »
Du point de vue général, pas certain qu’il ne risque pas d’y avoir des problèmes avec les dépots nommés « trunk »: certains correspondent à des développements en cours effectivement (donc dans ce cas ça semble adapté) alors que d’autres correspondent à des versions pour SPIP 2.0 et ne sont pas du tout en dev: une branche 2.0 serait alors mieux adaptée.
Par ailleurs, ce qui risque d’être trompeur c’est que certains « trunk » correspondent à des versions pour SPIP 2.0 alors que d’autres sont des versions « SPIP 2.1 only »…
Bref, ça sent le « autant de cas particuliers qu’il y a de plugins » cette affaire!
Oui, je suis tout à fait d’accord en ayant fait le tour de pas mal de plugins.
Mas c’est un point qui fait défaut actuellement aux plugins :
lorsqu’on fait un checkout sur un plugin, on ne sait jamais si on a une version stable ou pas.
L’objectif d’une réorganisation est de clarifier la situation et de palier à des dérives anciennes.
Rappel du fonctionnement du trunk (ou dépôt de référence) :
- Le principe du trunk est de mettre à disposition une branche stable de référence. Un checkout sur le trunk doit toujours être fonctionnel avec la dernière version spip compatible : ça peut d’ailleurs très bien être une 1.9.2.
- En principe, on ne fait pas de développement dans le trunk, mais dans une (ou plusieurs) branche séparée.
- Cependant plusieurs projets qui utilisent Subversion ont choisi de faire des développements directement dans le trunk : c’est le cas lorsqu’on a des modifications atomiques simples à contrôler. C’est ce qui se passe actuellement avec SPIP (et Subversion lui-même). La contrainte qu’on doit garder cependant est la stabilité globale.
Pour les plugins sur lesquels j’ai commité et concernés par l’affaire je préfèrerais donc:
saveauto:
plugins/saveauto/branches/spip-1.9.1
plugins/saveauto/branches/spip-1.9.2
plugins/saveauto/branches/spip-2.0
En effet, on peut très bien se passer de trunk dans le cadre d’un plugin.
Mais le risque que j’y vois est une multiplication à terme des branches : que vas-tu faire pour spip-2.1, spip-2.2, etc. ?
Tu soulèves cependant un point intéressant : On ne sait pas si la branche spip-2.0 est stable ou pas.
C’est peut-être ici que le statut du plugin défini dans plugin.xml peut être intéressant : il serait à l’état de dev (ou test) dans la branche spip-2.0, et stable dans les 2 autres.
On pourrait imaginer de mieux structurer les branches au niveau de svn
plugins/saveauto/branches/stable/spip-1.9.1 plugins/saveauto/branches/stable/spip-1.9.2 plugins/saveauto/branches/dev/spip-2.0
Comme cela la situation est limpide pour celui qui récupère le plugin via svn (moins par celui qui le récupère via l’archive, si on ne donner pas un nom spécifique de type saveauto-dev-2.0.zip et saveauto-stable-1.9.1.zip – c’est un autre débat – )
Qu’en dis-tu ?
Sinon, pour les autres plugins il y a un truc qui me semble louche pour openid:
proposé:
plugins/authentification/openid/trunk
plugins/authentification/branches/spip-1.9.2
mais vu qu’il y a plusieurs plugins dans plugins/authentification, il semblerait plus clair de faire:
plugins/authentification/openid/trunk
plugins/authentification/openid/branches/spip-1.9.2
Ah oui bien vu !
http://trac.rezo.net/trac/spip-zone/wiki/MiseEnBranche?action=diff&version=3
.Gilles
.Gilles