Guide du développeur

Outils utilisés

Code Java

Version de Java Java 8
Interface graphique JavaFX
Parseur Markdown Python-ZMarkdown [1]
Tests unitaires Junit 4.12
[1]Le même parseur qu’utilisé sur Zeste de Savoir (l’application émule un interpreteur Python grace à Jython).

Livraison continue

Intégration continue Linux et Os X Travis CI travisCI
Windows AppVeyor appVeyor
Couverture des tests Coveralls coverAlls
Vérification de dépendances VersionEye versionEye
Analyse du code OpenHub OpenHub
Sonar à venir
Publication de documentation ReadTheDocs ReadTheDocs

Workflow

Principe

Vous devez travailler sur une branche séparée de master, ensuite pousser vos modifications sur GitHub et faire votre Pull Request via l’interface web.

Guide pas à pas

  1. Forkez le projet sur GitHub en cliquant sur l’icône Fork en haut à droite ;
  2. sur la page de votre dépôt, cliquez sur le bouton Clone or download et copiez l’URL ;
  3. clonez votre propre dépôt : git clone url_de_votre_dépôt ;

Avertissement

Si votre projet local provient d’un clone du dépôt principal et non du votre, pensez à modifier la destitation de remote origin :

git remote set-url origin url_de_votre_dépôt

Vous pouvez ensuite vérifier avec git remote -v.

  1. buildez le projet, en suivant la partie Installation depuis les sources (sauf l’étape 3.) ;
  2. placez-vous sur une nouvelle branche : git checkout -b "new_feature" (new_feature étant généralement le nom de votre PR) ;

Note

Si vous avez déjà apporté vos modifications (non commitées) sur master, vous pouvez les remiser : git stash, git checkout -b "new_feature", puis git stash pop.

  1. apportez vos modifications en autant de commits que nécessaire (sans oublier de commenter votre code avec la Javadoc) ;

  2. vérifier que ces modifications passent les tests unitaires :

    gradle check

  3. poussez vos modification sur une branche distante dédiée : git push origin new_feature ;

  4. ensuite, revenez sur la page du dépôt principal et cliquez sur le bouton New pull request, puis décrivez celle-ci ;

  5. vérifiez, au bout de quelques minutes, que l’integration continue s’est bien passée (All checks have passed en commentaire de la PR).

    Le cas échéant, cliquez sur details au niveau de la vérification qui pose problème, analysez les logs, puis apportez vos modification et poussez-les sur votre branche (elle seront directement intégrée sur la PR).

  6. pensez à récupérer régulièrement les derniers changements effectués sur le dépôt principal : git fetch https://github.com/firm1/zest-writer depuis master ;

Astuce

Vous pouvez créer un git remote qui pointe vers le dépôt principal :

git remote add firm1 https://github.com/firm1/zest-writer

... ainsi vous n’aurez pas à taper l’URL du dépôt pour récupérer les derniers changements par exemple (ie, l’étape ci-dessus devient git fetch firm1).

Tests unitaires

À faire

Rédiger une documentation pour les tests unitaires (@firm1).