A mettre à jour avec la nouvelle forge : https://redmine.ryxeo.com

Proposer un patch pour améliorer le code source d'AbulÉdu

Si vous voulez proposer une amélioration du code source d'AbulÉdu il est préférable de nous envoyer directement un patch que l'un de nos développeurs pourra ensuite appliquer, tester, valider et envoyer sur la forge dans le code source commun.

Tout d'abord sachez que nos ressources sont limitées

Alors, comment faire un patch pour nous faire gagner du temps (ou éviter d'en perdre trop) ?

Segmentez vos développements en unités logiques. Envoyez nous un patch qui améliore UNE fonctionnalité, ne mélangez pas tout c'est le meilleur moyen pour qu'on perde du temps et qu'au final votre boulot finisse aux oubliettes.

Ensuite, pensez à vous ajouter dans la liste des auteurs !

Regardez bien chaque fichier, vous devriez voir en entête une ligne de copyright avec le nom du ou des développeurs qui ont bossé sur le fichier sur lequel vous travaillez.

AJOUTEZ SYSTÉMATIQUEMENT UNE LIGNE AVEC VOTRE NOM ET VOTRE EMAIL à chaque fois que vous modifiez un fichier !

Ensuite, connectez-vous sur la forge

Rejoignez le projet sur lequel vous voulez travailler sur le site de développement communautaire http://gforge.ryxeo.com.

  • Récupérez le code source via SVN. Par exemple pour le projet webadmin :
svn checkout http://svn.gforge.ryxeo.com/svn/horizon-webadm
  • Vérifiez que ce que vous voulez ajouter n'a pas déjà été implémenté, les paquets débian ont parfois un peu de retard par rapport au code source disponible sur la forge (c'est normal);
  • Modifiez ce code pour lui ajouter vos améliorations ;
  • Testez bien que tout marche ;
  • Créez un patch :
svn diff > /tmp/mesModifications.patch 
  • Envoyez-le nous par email sur la liste dev@abuledu.org et si vous ne pouvez/voulez pas vous y abonner,envoyez alors votre patch avec une description de ce qu'il fait (surtout si ce n'est pas trivial) à devteam@ryxeo.com ;

Si vous ne pouvez pas vous connecter sur la forge

Faites une mise à jour de votre serveur pour avoir le code source le plus à jour possible (ça sera quand même moins à jour que si vous le récupérez sur la forge via svn).

  • Modifiez ce code pour lui ajouter vos améliorations ;
  • Testez bien que tout marche ;
  • Créez un patch :
diff -u fichier_original fichier_modifie > /tmp/mesModifications.patch 
  • Envoyez-le nous par email sur la liste dev@abuledu.org et si vous ne pouvez/voulez pas vous y abonner envoyez alors votre patch avec une description de ce qu'il fait (surtout si ce n'est pas trivial) à devteam@ryxeo.com ;

Un exemple de patch : la traduction d'AbulEdu

Récupérez , modifiez et transmettez vos modifications comme indiqué précédemment

  1. récupérer des sources sur la forge
  2. créer un diff/patch
  3. envoyer ce dernier sur la liste dev@abuledu.org

FAQ du traducteur débutant

Les contributeurs capable de traduire un texte sont nombreux. Encore faut-il répondre à quelques questions posées par la nature spécifique des textes à traduire et pour lesquelles le néophyte en développement n'a pas de réponses.

Quel logiciel utiliser ?

Scite permet de colorer la syntaxe du code ce qui est une aide précieuse. C'est un logiciel multi-plateformes, libre et gratuit.

Quelle partie modifier ?

La partie principale est le tronc commun : “Trunk” (La partie “Branches” sert à travailler sur des versions à venir) Ce dossier contient plusieurs sous-dossiers : conf lib php python rrd share testsuite

Rendez-vous dans le dossier “php” pour traduire l'interface webadmin. Sur une interface webadmin d'un serveur AbulEdu, observer l'adresse de la page que vous visitez pour trouver le nom du fichier à modifier (ugadmin, aadmin…).

Quel type de fichier modifier ?

Il suffit ensuite de traduire, modifier, adapter les fichiers avec l'extension PHP.

J'ai telle syntaxe, que traduire ?

Attention, le texte doit toujours être encadré par la syntaxe suivante “_(” avant et “)” après. Par exemple :

 _( texte traduisible )

Ne touchez pas aux balises “%s” (s'il y en a) qui renvoient à des variables particulières.

Merci d'avance pour vos contributions.

Éric Seigne (OpenID) 2009/01/20 23:28