YesWiki est un Outil Libre : il est modifié et amélioré par une communauté. Chacun est libre de modifier le code de YesWiki :
soit en faisant une copie (fork) pour son propre usage (la licence libre indique que vos modifications doivent être publiées, et ce, sous la même licence) ;
soit en travaillant à amélioration de la version principale.
Versions de YesWiki
Les versions majeures de YesWiki portent le nom dʼinjures du capitaine Haddock : Bachibouzouk ou Cercopithèque par exemple. Ainsi la version 4 sʼappelle Doryphore.
Lors de nos rencontres, ou lorsque c'est nécessaire, nous mettons en commun nos améliorations et les intégrons à la version stable et officielle de YesWiki dans des mises à jour (release). En cas de modifications majeures, on change de version de YesWiki.
Le contenu des mises à jour ou versions majeures est déterminé par la communauté des utilisateurs et des développeurs et arbitré par un product owner.
GitHub — Les développements sont centralisés sur GitHub
Branche par défaut — La branche par défaut sur le dépôt GitHub est la version de développement.
Fork — On ne doit jamais développer directement dans cette branche. À l'occasion de chaque développement, on doit donc créer une nouvelle branche à partir de la branche de développement (fork).
Nommage des branches — Les branches ainsi créés seront nommées « Feat_Nom_de_ma_nouvelle_fonctionnalité » ou « Fix_Nom_de_l_erreur_a_corriger ».
Pull request — Les product owners passent ensuite en revue les modifications (correction ou ajout de fonctionnalité) et décident de leur affectation à une mise à jour ou une version majeure au moyen des tags de GitHub.
Notre dépôt GitHub
Le code de tous les outils de la famille YesWiki se trouve sur github. On y trouve :
les différentes extensions de YesWiki, dont la ferme ;
les thèmes de YesWiki ;
les templates bazar de YesWiki ;
Si vous n'êtes pas à l'aise avec GitHub, vous trouverez tout en bas de la page de documentation générale une partie dédiée au développeurs. C'est par ici.
Quelques exemples
Des idées
Corriger ou rajouter une action ou un handler dans YesWiki.
Imaginer et ajouter une extension qui sera peut être intégrée un jour dans le noyau.