wiki:fr/processus
developer.jelix.org is not used any more and exists only for history. Post new tickets on the Github account.
developer.jelix.org n'est plus utilisée, et existe uniquement pour son historique. Postez les nouveaux tickets sur le compte github.

Version 7 (modified by laurentj, 10 years ago) (diff)

--

Les processus de développement sur le projet Jelix

Le processus de développement de Jelix vise à permettre un développement de qualité.

Peer-review

Sur le projet jelix, on suit un processus de "peer-review". C'est à dire que toute modification (correction de bug, évolutions..) qu'un développeur veut inclure dans Jelix (donc dans le dépôt subversion) doit d'abord être revue par un deuxième développeur avant que la modification soit effectivement incluse.

Concrètement, cela se passe ainsi :

  • un contributeur propose la correction d'un bug ou autre modification en faisant un patch (fichier diff) attaché à un ticket. Un autre solution est de s'enregistrer sur bitbucket.org, de "forker" le dépot de jelix, de commiter dans son clone, et de proposer ensuite les changements ("pull request"). Dans ce cas, il faut avertir en commentaire dans le ticket pour ce pull.
  • un reviewer relit le code, vérifie que ce code respecte les conventions de codage, que le code n'apporte pas des régressions, que le code est optimisé etc.
  • toute nouvelle fonctionnalité doit en plus avoir l'aval du project leader.
  • quand le patch est accepté, un développeur ayant un accès en écriture au dépôt des sources se charge d'intégrer le patch dans le dépôt. Remarque : ce développeur peut-être celui qui a proposé le patch.
  • chaque nuit, des archives de jelix sont crées et disponibles en téléchargement : ce sont les "nightlies". Dans le même temps, des tests unitaires sont lancés et le chef du projet reçoit les résultats par mail.

Tests unitaires

Des tests unitaires sont développés pour chaque nouvelle fonctionnalité et chaque bug trouvé, permettant ainsi de vérifier le bon fonctionnement du framework après une modification. Tout patch doit donc être accompagné des tests correspondants.

Les acteurs

Parmi les développeurs de jelix, il y a :

  • Les contributeurs : ils contribuent en proposant des patchs, des améliorations. Ils ne peuvent accéder en écriture au dépôt principal.
  • Les "commiters" : les contributeurs réguliers, ceux qui ont fait "leur preuves". Ils ont accès en écriture au dépôt principal. Ils font parti de l'équipe de développement du projet.
  • Les "reviewers" : ce sont des commiters qui relisent des patchs avant de donner l'accord d'un commit. Ils connaissent nécessairement le code de jelix en profondeur, ou alors sont expérimentés sur une ou des parties précises de Jelix, et font des reviews uniquement sur les patchs concernant ces parties.
  • Le "projet leader" : celui qui a le dernier mot :-) Il est le garant du respect de la roadmap, de la cohérence du framework. Il s'assure que les évolutions sont compatibles avec les objectifs premiers du framework (légèreté, performance, simplicité).