Différences

Cette page vous donne les différences entre la révision choisie et la version actuelle de la page.

Lien vers cette vue

projet:developpement:branches_et_releases [2010/01/09 19:59]
makno
projet:developpement:branches_et_releases [2010/06/04 13:50] (Version actuelle)
tosca
Ligne 2: Ligne 2:
 ---- ----
  
-<WRAP 150px left+<WRAP> 
-__Niveau de difficulté__ :\\ +^__Niveau de difficulté__ :^ Compréhension, simple. | 
-__Recommandations__ :\\ +^__Recommandations__ :^ n/c. | 
-__A lire aussi__ :\\+^__A lire aussi__ :^ Voir le message d'information |
 </WRAP> </WRAP>
-Compréhension, simple\\ +\\
-n/c\\ +
-Voir le message d'information\\ +
-<WRAP clear></WRAP> +
 <WRAP round info> <WRAP round info>
-Vous pouvez retrouver les détails des différentes releases dans cette [[ancien:historique_releases|page]].+Vous pouvez retrouver les détails des différentes versions de Piwigo dans cette [[ancien:historique_releases|page]].
 </WRAP> </WRAP>
  
 </WRAP> </WRAP>
  
-> Comment fonctionne le système des versions dans PhpWebGallery ? Quelle est la différence entre la version finale 1.3.1 et la version finale 1.4.0 ?+<wrap help>Comment fonctionne le système des versions dans Piwigo ?</wrap>
  
  
-==== Branches et versions ==== +====== Numérotation des versions ======
-Une version est une sorte d'instantané à un moment précis. La version 1.3.1 ne sera plus jamais modifiée, si nécessaire une version 1.3.2 apparaîtra. L'instantané est pris sur une branche, la version 1.3.1 est un instantané pris sur la branche 1.3. Une branche évolue : amélioration et résolution de bugs. Mais une branche ne doit pas évoluer en fonction de ces critères : il n'y aura pas de nouvelles fonctionnalités dans la version 1.3.3 par rapport à la version 1.3.0, seulement du code amélioré, de la résolution de bugs et ainsi de suite.+
  
-D'ailleurs, voici les conditions de modification d'une branche stable +Un numéro de version est toujours composé de 3 nombres (x,y,z) et si le dernier nombre est omis, on considère que sa valeur vaut 0. 
-  - Sur une branche stable, pas d'évolutionuniquement des corrections de bugs +__Exemple :__ : la version 2.1 est en fait la version 2.1.0 
-  - Sur une branche stable, on corrige les bugs bloquants mais aussi les bugs non bloquants s'ils sont triviaux à corriger +__Détails :__ 
-  - Sur une branche stable, dans la mesure du possible, on évite de casser la compatibilité des templates et des langues+  ''x'' : Numéro de phase du projet. ActuellementPiwigo est dans sa phase "2" de développement. 
 +  ''y'' : Numéro de la branche de développement. 
 +  * ''z'' : Numéro de la version mineure. //Vaut "0" si omis.//
  
----- 
  
-FIXME //Un jour, l'équipe de développement de PhpWebGallery proposera la version 2.0.0, cela signifie un changement complet dans PhpWebGallery comme une refonte complète du code à partir de rien (dans le code) avec une approche de développement orientée objet par exemple.//+====== Branches et versions ======
  
-Voici l'arbre graphique ASCII des branches et versions. +&lt;WRAP box
- +Une version est une sorte d'instantané à un moment précis.\\ 
-               +------------+ +Que l'on parle de la version 2.0.0, ou bien de la 2.0.10, ou bien encore de la 2.1.RC3, toutes ces //versions// sont bien réélles mais elles sont différentes sur le plan de la technicité.\\ 
-               | branch BSF | +En distinguera : 
-               +------------+ +  * La version majeure 
-                      | +  * La version mineure 
-                      |     +------------+ +  * La version //release candidate// (RC) 
-                      |     | branch 1.3 | +</WRAP>
-            1.3RC1 =&gt|     +------------+ +
-            1.3RC2 =|           | +
-                      +-----------+ +
-                      |           | <= 1.3.0 +
-                      |           | +
-                      |           | +
-                      |           | <= 1.3.1 +
-                      |           | +
-                      |           | +
-                      |           | <= 1.3.2 +
-                      |           | +
-                      |           | +
-                      |           | +
-                      |           | +
-                      |           | +
-                      |           | <= 1.3.3 +
-                      |           | <= 1.3.4 +
-  BSF_200411201925 => |            +
-         ...          | +
-  BSF_200412282015 => | +
-                      |     +------------+ +
-          1.4.0RC1 => |     | branch 1.4 | +
-          1.4.0RC2 => |     +------------+ +
-          1.4.0RC3 => |           | +
-                      +-----------+ +
-                      |           | <= 1.4.0 +
-  BSF_200504100014 => |           | +
-                      |           | <= 1.4.1 +
-                      |           | +
-                      |           | +
-                      |           | <= 1.4.2 +
-  BSF_200505101005 => |            +
-         ...          | +
-  BSF_200506150635 =|+
  
-==== Numérotation des versions : x.y.z ==== 
  
-Un nom de version est toujours composé de 3 nombres, si le dernier est omis, on considère que sa valeur est 0 : la version 1.3 est en fait la version 1.3.0.+===== Les branches =====
  
-  * ''x'' : le nombre de la version majeure, 1 pour le commencement et pour encore du temps je pense +Une //branche// c'est assez simplement un découpage dans l'arborescence de développement du logiciel.\\ 
-  * ''y'' : le nombre de la version mineure, améliorations ajoutées (ou supprimées) entre 2 versions mineures +A chaque version majeur correspond une "branche".\\ 
-  * ''z'' : le nombre de correction, 0 si omis. Pas de nouvelles améliorations entre 2 versions correctives, '''seulement des corrections de bug''', les différences entre 1.2 et 1.2.1 sont très mineures mais parfois sont très importantes (une correction d'un bug sur la sécurité à provoquer la mise en place de la version 1.2.1)+__Exemple :__\\ 
 +  * 1.
 +  * 2.
 +  * 2.1
  
 +Le développement part du tronc commun (trunk) pour à un moment sortir une branche. C'est complètement transposable à un arbre, qui a un tronc avec des branches charpentières et d'autres ramifications de plus en plus petites...\\
  
  
-==== Travail en parallèle ====+===== Les versions =====
  
-Le principal avantage des versions de branches est que l'équipe de développement de PhpWebGallery peut toujours continuer à créer des versions correctives sur une ancienne branche même si une nouvelle branche est disponible. Par exemple, si vous trouvez des bugs dans la version 1.3.2, l'équipe de développement de PhpWebGallery va sûrement résoudre ces bugs pour une version appelée 1.3.3 même si la version 1.4.0 est sortie depuis plusieurs mois.+==== Version majeure ====
  
-Il y a deux types de branches dans le modèle de développement de PhpWebGallery : les branches stables et les branches de développement.Il n'y a actuellement qu'une seule branche de développement appelée ''BSF'' comme ''Best So Far'' (''Le mieux jusqu'ici''). De cette branche de développement commencent les branches stables comme la branche 1.3 ou la branche 1.4.\\ +Une version majeure correspond à un travail de grande ampleur qui corrige, améliore, apporte de gros changements dans le fonctionnement de Piwigo.\\ 
-La BSF est nommée avec un nom de code attribué à la prochaine version principale qui sera publiée. Ainsi la prochaine version après la 1.6.x s'appelle ''Alligator''. Ce sera sans doute la 1.7, mais ce pourrait être la 1.8 ou la 2.0.+De manière générale, dès lors qu'une évolution importante modifie la Base De Données (BDDon parlera de __version majeure__.\\ 
 +Dans cette version, l'équipe de développement apporte beaucoup de changements, qu'il soient petits ou grands.\\ 
 +Sa fréquence de sortie est relativement longue (plusieurs mois).
  
  
 +==== Version mineure ====
  
 +Une version mineure n'apporte pas de changements lourds. Elle ne doit ni bousculer la BDD ni bloquer les différents thèmes graphiques (//templates//) de nos galeries.\\
 +Les versions mineures sont souvent utilisées pour corriger des problèmes de failles de sécurités, des coquilles ou autres petits points...\\
 +Sa fréquence de sortie est plus grande puisque tout le monde profite de ces petites avancées sans risques.
  
-==== Instantanés de développement ==== 
  
-Depuis août 2004, l'équipe projet de PhpWebGallery propose des builds instantanés de développement. Ils sont créés quand une nouvelle amélioration ou une correction de bug est disponible. L'équipe de développement décide quand créer ces builds. Les builds sont principalement créés sur la branche BSF. Le nom des builds contient le nom de la branche et la date de création du build.+==== Version "release candidate" ====
  
-Le but de ces builds est de permettre aux utilisateurs avancés de tester les nouvelles fonctionnalités, éventuellement buggées.... Les testeurs peuvent également donner leurs opinions sur le build, reporter les bugs et faire des suggestions pour de futures améliorations.+Les "Release Candidate" (appelées //__RC__//) ne sont qu'une courte étape dans la vie éphémère du développement.\\ 
 +<wrap warning>__Ces versions ne sont pas à télécharger pour les utiliser sur votre site web !!!__</wrap>\\ 
 +>//Mais alors, à quoi servent-elles ?!// 
 +>>Et bien elles servent à tester une future version de Piwigo qui est en préparation. Ces versions ne servent donc qu'à des fins de tests et autres essais pour chercher d'éventuels bugs ou autres anomalies.
  
-==== Version Beta, Version Candidate, Version Finale ====+Le support technique n'est donc pas assuré pour ces versions qui ne sont utilisables que pour chercher la petite bête dans le fonctionnement d'une future version de Piwigo.
  
-Pendant la préparation d'une version, celle-ci doit être testée et qualifiée. L'équipe de développement de PhpWebGallery travaille comme suit : 
  
-  - Premièrement, une version x.y.zbeta est disponible. Cette version est testée par les plus impatients des utilisateurs. Il est évident pour l'équipe de développement que cette version peut contenir plusieurs bugs. Le but est de les référencer pour préparer la version candidate... +====== Suivi des anciennes versions ======
-  - La version x.y.zRCn (n allant de 1 à ... vous ne pouvez pas savoir jusqu'où ça ira...). Une fois que la plupart des bugs référencés dans la liste faite dans la version x.y.zbeta ont été corrigé, l'équipe de développement propose une Version Candidate 1 (RC1). Les testeurs donnent la liste des bugs trouvés et après un (court) moment, l'équipe de développement propose une Version Candidate 2 (RC2). Et ainsi de suite. +
-  - La version x.y.z (la finale) doit être exactement la même que la dernière Version Candidate (RC), sans aucun bug connu.+
  
-Example : 1.3.0beta >> 1.3.0RC1 >> 1.3.0RC2 >> 1.3.0+Le principal avantage des versions de branches est que l'équipe de développement de Piwigo peut toujours continuer à créer des versions correctives sur une ancienne branche même si une nouvelle branche est disponible. Par exemple, si vous trouvez des bugs dans la version 1.7.3, l'équipe de développement de Piwigo va sûrement résoudre ces bugs pour une version appelée 1.7.4 même si la version 2.0.0 est sortie depuis plusieurs mois.
 
Haut de page
projet/developpement/branches_et_releases.1263063557.txt.gz · Dernière modification: 2010/01/09 19:59 par makno
 
 
github twitter facebook newsletter Faire un don Piwigo.org © 2002-2020 · Contact