Changes

m
no edit summary
Line 1: Line 1:  +
<!-- BEGIN interlang links -->
 +
<!-- Do NOT edit this section
 +
    Links below are automatically managed by PolyglotBot
 +
    You can edit links on the English source page : Developer_FAQ -->
 +
[[en:Developer_FAQ]]
 +
[[de:Entwickler_FAQ]]
 +
[[es:FAQ_Desarrolladores]]
 +
[[zh:开发者常见问题解答]]
 +
<!-- END interlang links -->
 +
 
[[Category:FAQ FR]]
 
[[Category:FAQ FR]]
 
{{TemplateDocDev}}
 
{{TemplateDocDev}}
 
Cette page contient quelques questions-réponses en rapport avec le développement de Dolibarr. Pour des questions-réponses sur l'utilisation, consulter plutot la page [[FAQ Utilisateur]].
 
Cette page contient quelques questions-réponses en rapport avec le développement de Dolibarr. Pour des questions-réponses sur l'utilisation, consulter plutot la page [[FAQ Utilisateur]].
   −
= Comment devenir développeur officiel =
+
=Comment devenir développeur officiel=
    
Dans la galaxie du projet Dolibarr, il existe plusieurs intervenants de différents niveaux/grades.
 
Dans la galaxie du projet Dolibarr, il existe plusieurs intervenants de différents niveaux/grades.
Le nombre de développeurs et contributions est important, hors tout projet qui veut atteindre un certains niveau de qualité se doit d'avoir une gestion contrôlée et des modifications validées des évolutions, aussi bien au niveau des besoins fonctionnels que du code.
+
Le nombre de développeurs et contributions est important, or tout projet qui veut atteindre un certain niveau de qualité se doit d'avoir une gestion contrôlée et des modifications validées des évolutions, aussi bien au niveau des besoins fonctionnels que du code.
Pour cette raison, les accès en écriture sur les sources (serveur GIT) sont limités et régies par une organisation qui est décrite dans les lignes qui suivent.
+
Pour cette raison, les accès en écriture sur les sources (serveur GIT) sont limités et régis par une organisation qui est décrite dans les lignes qui suivent.
Chaque développeur a un '''grade''' qui dépend de son ancienneté et de ces contributions passées. Le niveau d'habilitations d'une personne sur le projet augmente avec les étapes de promotion de grade.
+
Chaque développeur a un '''grade''' qui dépend de son ancienneté et de ses contributions passées. Le niveau d'habilitation d'une personne sur le projet augmente avec les étapes de promotion de grade.
 
  −
Le cursus d'un développeur Dolibarr passe donc par ces étapes, que l'on classe par un titre familié aux adeptes de sciences fictions. Voici ces étapes.
  −
Il est important de comprendre que cette organisation a pour seul but d'améliorer la qualité de Dolibarr et qu'il est nécessaire qu'elle soit rigoureusement respectée afin d'attendre ce but. Ne soyez donc pas offensé si, en tant que développeur, vous ne pouvez disposer d'un accès GIT en écriture avant un certain délai.
  −
 
  −
Les grades des contributeurs au projet Dolibarr sont les suivants:
  −
 
  −
<span id="Soldat">'''* Soldat'''</span>
  −
 
  −
La première chose qu'une personne désireuse d'aider doit faire et d'abord se familiariser avec les règles et normes de développements.
  −
En lisant toute la [[Documentation Développeur]], vous faites preuve de volonté suffisante pour devenir automatiquement '''Soldat''' (Votre grade est au niveau '''Soldat''').
  −
La plupart des développeurs qui s'intéressent au développement sur Dolibarr sont rangés dans cette catégorie.
  −
 
  −
L'étape suivante consiste à soumettre des patch, en commençant par des simples, soit sur la Mailing List dev (voir [[FAQ_D%C3%A9veloppeur#Soumettre_un_patch.2C_am.C3.A9lioration_ou_participer_au_d.C3.A9veloppement|FAQ Développeur]] pour la procédure), soit sur le forum (Mailing List préférée).
  −
 
  −
Vous pouvez trouver de taches en attente de patch sur le gestionnaire de taches à faire:
  −
{{TemplateURLTasks}}
  −
 
  −
Les taches sembles pour commencer sont les taches qui possède la propriété "Task opened to external developers" à "oui". Si la valeur est "non", oubliez la, cela signifie qu'elle sera traité par un développeur de grade Jedi. 
  −
 
  −
Le nombre de soldats n'est pas limité. Plus, il y en aura, plus on sera fort.
  −
Les soldats représentent la force vive principale de l'alliance Dolibarr.
  −
 
  −
Compte tenu de la nature même de ce grade, il n'est pas possible d'établir une liste de tous les acteurs du projet Dolibarr ayant ce grade (liste en perpétuelle évolution et trop longue).
     −
<span id="Z-6PO">'''* Z-6PO'''</span>
+
Le cursus d'un développeur Dolibarr passe donc par ces étapes, que l'on classe par un titre familier aux adeptes de science-fiction. Voici ces étapes.
   −
Si vous parlez couramment une langue non ou mal traduite dans Dolibarr et que vous connaissez GIT, utilisez GIT afin de forker le projet locallement et utilisez le système de push afin de publier vos corrections/ajouts.
+
Les grades des contributeurs au projet Dolibarr, et ce qu'il faut faire pour atteindre ce grade, sont définis sur la page suivante: [[Projet_Dolibarr#Les_r.C3.B4les_d.C3.A9veloppeurs|Projet Dolibarr]] dans la section '''Les rôles développeurs'''.
Si vous ne connaisser pas, envoyer vos corrections sur la dernière version par mail sur la mailing-list '''dolibarr-dev''' (Inscription depuis la page {{TemplateURLMLDev}}). Toutefois la première solution basé sur les push GIT est préférée.
     −
L'équipe vous ajoutera surement sur la page officielle des traducteurs après plusieurs soumission: [[:Category:Z-6PO]]
+
=Qui développe Dolibarr=
 
  −
<span id="Amiral">'''* Amiral'''</span>
  −
 
  −
Ce n'est qu'au bout d'un temps variable (qui peut être très long) au rang de Soldat, et si de nombreux patch de qualité satisfaisante ont été envoyée, qu'un Yoda en place vous autorisera à réaliser des commits GIT pour un motif étendu à tout correctif de bug (en plus de la traduction).
  −
Vous êtes devenu un '''Amiral''' de l'alliance Dolibarr.
  −
 
  −
Ce titre ne se demande pas, il s'obtient par décision ou proposition d'un '''Jedi''' ou '''Yoda''' qui estime que vous avez soumis suffisamment de patch pour être un sérieux '''Amiral'''.
  −
L'accès GIT d'un '''Amiral''' doit cependant n'être utilisé que pour commiter soit des traductions, soit des corrections de bugs déclarées (que ces corrections soient personnelles ou issues d'un patch soumis par un '''Soldat''').
  −
Tout commit GIT doit ainsi obligatoirement inclure, dans la description (le champ log de commit), le numéro du bug (BUG Tracker {{TemplateURLBugs}}) OU le titre du message du forum signalant le problème. Seul les traductions échappent à cette contrainte (pas de restrictions pour les traductions). Le non respect de cette contrainte, peut provoquer une rétrogradation au rang de '''Soldat'''.
  −
 
  −
L'obtention du grade d'Amiral est toutefois rare car limité. La qualité de Dolibarr ne pouvant être atteinte que par un nombre d'Amiraux contrôlé, ce qui n'empêche pas d'avoir un nombre de
  −
développeurs (Soldats) très important (grâce au système de patch).
  −
 
  −
La liste des acteurs Dolibarr avec ce grade est disponible sur la page [[:Category:Admiral]]
  −
 
  −
<span id="Jedi">'''* Jedi'''</span>
  −
 
  −
C'est au bout d'un temps variable (surement le plus long de tous) au rang de contributeur Amiral, et si la qualité des patch qui ont été envoyée est satisfaisante, qu'un Yoda vous signalera que vous êtes autorisé à réaliser des commits sans restrictions de fonctionnalités, à condition d'avoir cependant l'aval de principe d'un Maitre Yoda à qui vous aurez expliquer la fonctionnalité.
  −
Il peut toutefois y avoir une restriction temporaire définie par un Yoda pour raison de release proche.
  −
Vous êtes alors devenu un '''Jedi'''.
  −
 
  −
Ce titre ne se demande pas, il s'obtient par proposition d'un autre Jedi ou d'un Yoda.
  −
 
  −
Ce privilège est toutefois exceptionnel. La qualité de Dolibarr ne pouvant être atteinte
  −
que par un nombre de Jedi contrôlé, ce qui n'empêche pas d'avoir un nombre de
  −
développeurs (Soldats) très important, voir infini.
  −
 
  −
La liste des acteurs Dolibarr avec ce grade est disponible sur la page [[:Category:Jedi]]
  −
 
  −
<span id="Yoda">'''* Yoda'''</span>
  −
 
  −
Au nombre de 1 à 5, être un '''Yoda''', c'est assurer la gestion globale du développement du projet. Ce rang s'obtient successivement au départ d'un Yoda qui se retire, ou par décision des autres Yoda de se renforcer, par nomination directe ou vote organisé par le Yoda partant.
  −
 
  −
La liste des acteurs Dolibarr avec ce grade est disponible sur la page [[:Category:Yoda]]
  −
 
  −
'''* Et Dark Vador ?'''
  −
 
  −
Il existe hélas. Il y aura toujours des parasites qui polluent le forum ou la mailing-list de messages ou critiques non constructives, qui ralentissent le développement de Dolibarr plutôt que d'offrir des critiques aidant à progresser. Certains sont très très fort en mauvaise foie ou mauvais ton. Ce sont eux que l'on appellent les Dark Vador.
  −
Heureusement, statistiquement, on ne constate l'apparition et la mort que d'un à deux Dark Vador par an environ...
  −
 
  −
= L'équipe actuelle =
   
Voir la page [[projet Dolibarr]] pour connaitre la liste des personnes, participant au projet Dolibarr, à chaque grade actuellement.
 
Voir la page [[projet Dolibarr]] pour connaitre la liste des personnes, participant au projet Dolibarr, à chaque grade actuellement.
   −
= Démarrer le développement =
+
=Démarrer le développement=
 
Consulter intégralement la [[Documentation Développeur]] pour assimiler toutes les règles et principes imposées aux développeurs.
 
Consulter intégralement la [[Documentation Développeur]] pour assimiler toutes les règles et principes imposées aux développeurs.
 
Vous pouvez aussi consulter les FAQ suivantes.
 
Vous pouvez aussi consulter les FAQ suivantes.
   −
= Récupérer/mettre à jour les sources du projet =
+
=Récupérer/mettre à jour les sources du projet=
 
Voir la page [[FAQ Récupérer, mettre à jours les sources du projet]].
 
Voir la page [[FAQ Récupérer, mettre à jours les sources du projet]].
   −
= Comment créer un nouveau theme =
+
=Comment créer un nouveau theme=
 
Voir pour cela la page [[Themes]]
 
Voir pour cela la page [[Themes]]
   −
= Comment développer mon propre module =
+
=Comment développer mon propre module=
 
Pour développer son propre module de numérotation, voir [[Créer un module de numérotation]].
 
Pour développer son propre module de numérotation, voir [[Créer un module de numérotation]].
   Line 99: Line 44:  
Pour développer un module fonctionnel entier (écrans, tables), voir pour cela la page [[Développement module]].
 
Pour développer un module fonctionnel entier (écrans, tables), voir pour cela la page [[Développement module]].
   −
= Comment ajouter ou compléter une traduction =
+
=Comment ajouter ou compléter une traduction=
 
Voir pour cela la page [[Documentation_traducteur]]
 
Voir pour cela la page [[Documentation_traducteur]]
   −
= Changer mon système de numérotation des factures en cours de route =
+
=Changer mon système de numérotation des factures en cours de route=
 
Si le nouveau système de numérotation n'entre pas en conflit avec l'ancien, il suffit d'aller dans le menu Configuration - Modules - Configuration factures et prendre un nouveau modèle dans la liste.
 
Si le nouveau système de numérotation n'entre pas en conflit avec l'ancien, il suffit d'aller dans le menu Configuration - Modules - Configuration factures et prendre un nouveau modèle dans la liste.
 
Si le nouveau système rentre en conflit, il est nécessaire de renuméroter vos références existantes. Cela peut-être fait avec une requête SQL.
 
Si le nouveau système rentre en conflit, il est nécessaire de renuméroter vos références existantes. Cela peut-être fait avec une requête SQL.
Line 117: Line 62:  
</source>
 
</source>
   −
= Soumettre un patch, amélioration ou participer au développement =
+
=Soumettre un patch, amélioration ou participer au développement=
Si vous cherchez comment commencer ou contribuer aux développements Dolibarr, lisez le chapitre [[FAQ_Développeur#Comment devenir développeur officiel]]. Si votre patch est déjà prêt et voulez le diffuser, ce chapitre est pour vous.
+
Si vous cherchez comment commencer ou contribuer aux développements Dolibarr, lisez dans un premier temps le chapitre [[FAQ_Développeur#Comment devenir développeur officiel]]. Si votre patch est déjà prêt et voulez le diffuser, ce chapitre est pour vous.
 +
 
 +
==Avec un compte GitHub==
 +
Les accès au dépot des sources en lecture est publique. La soumission de contributions dépend toutefois de votre niveau dans le projet.
   −
== Avec un compte GitHub ==
+
*Si vous bénéficiez d'un grade Yoda (rarissime), et donc un accès en écriture direct au dépôt de référence, utilisez-le (Voir [[FAQ_D%C3%A9veloppeur#Comment_devenir_d.C3.A9veloppeur_officiel|FAQ Développeur - Devenir développeur officiel]] pour les différents grades).
Les accès en écriture au dépôt principal sont restreints (le nombre de commit étant déjà suffisamment dynamique).  
     −
* Si vous bénéficiez d'un grade Yoda, et donc un accès en écriture direct, utilisez-le (Voir [[FAQ_D%C3%A9veloppeur#Comment_devenir_d.C3.A9veloppeur_officiel|FAQ Développeur - Devenir développeur officiel]] pour les différents grades).
+
*Si vous n'avez pas d'accès en écriture direct au dépôt de référence (cas général, votre grade est donc [[Developer FAQ#Soldier|Jedi]] ou [[Developer FAQ#Soldier|Admiral]] ou [[Developer FAQ#Soldier|Soldier]]), vous devez alors utiliser GitHub en « Forkant » le dépôt sur votre compte, puis en faisant une demande de « Pull Request » de votre branche sur le dépôt principal. C'est la méthode recommandée la plus propre et la plus performante. Voir pour plus d'info la page https://wiki.dolibarr.org/index.php/FAQ_Get,update_GIT_project_sources
   −
* Si vous n'avez pas d'accès en écriture direct (votre grade est donc [[Developer FAQ#Soldier|Jedi]] ou [[Developer FAQ#Soldier|Admiral]] ou [[Developer FAQ#Soldier|Soldier]]), vous devez alors utiliser GitHub en « Forkant » le dépôt sur votre compte, puis en faisant une demande de « Pull Request » de votre branche sur le dépôt principal. C'est la méthode recommandée la plus propre et la plus performante.
+
Note:  Si vous ne savez pas bien utiliser l'outil GIT et si votre modification est petite (porte sur un ou deux fichiers), sachez qu'il est possible simplement, en allant sur votre compte GitHub et sur votre repository "Forké" depuis l'interface Web de GitHub, de modifier le fichier en ligne. Une fois la modification faite, vous pouvez utiliser la fonction soumettre Pull Request pour la suggérer au projet. Un valideur l'intégrera alors sans effort si elle est valide.
   −
* Sinon, il est nécessaire de suivre la procédure qui suit...
+
*La procédure qui suit reste un alternative techniquement possible mais n'est plus pratiquée que pour les toutes petites modifications...
   −
== Sans compte GitHub ==
+
==Sans compte GitHub==
 
Sans compte GitHub, il est nécessaire de générer et fournir par mail, sur la mailing-list développeur '''dolibarr-dev''' votre fichier patch (Voir ici pour cela {{TemplateURLMLDev}}). Voici la procédure pour générer un fichier patch:
 
Sans compte GitHub, il est nécessaire de générer et fournir par mail, sur la mailing-list développeur '''dolibarr-dev''' votre fichier patch (Voir ici pour cela {{TemplateURLMLDev}}). Voici la procédure pour générer un fichier patch:
   Line 136: Line 83:  
Voici la ''méthode Pro'' selon laquelle travailler pour pouvoir générer un tel fichier patch:
 
Voici la ''méthode Pro'' selon laquelle travailler pour pouvoir générer un tel fichier patch:
   −
- Avoir un répertoire qui contient la version de Dolibarr de référence (résultat de la mise à jour GIT ou bien tout simplement l'arborescence résultant de la décompression d'un snapshot tgz de Dolibarr). On appellera ce répertoire '''ancien_rep'''. Vous pouvez récupérer le snapshot de la version de dev en cours sur le  [http://www.dolibarr.org/downloads/ site officiel de Dolibarr - espace téléchargement - version développement].
+
- Avoir un répertoire qui contient la version de Dolibarr de référence (résultat de la mise à jour GIT ou bien tout simplement l'arborescence résultant de la décompression d'un snapshot tgz de Dolibarr). On appellera ce répertoire '''ancien_rep'''. Vous pouvez récupérer le snapshot de la version de dev en cours sur le  [https://www.dolibarr.org/downloads/ site officiel de Dolibarr - espace téléchargement - version développement].
    
- Avoir un autre répertoire qui contient l'arborescence de Dolibarr mais dans laquelle vous faites ou avez fait vos modifications. On appellera ce répertoire '''nouveau_rep'''.
 
- Avoir un autre répertoire qui contient l'arborescence de Dolibarr mais dans laquelle vous faites ou avez fait vos modifications. On appellera ce répertoire '''nouveau_rep'''.
   −
Pour générer le fichier patch, il suffit alors de lancer la commande '''diff''' (en standard sous Linux, fourni dans [http://www.cygwin.org/cygwin cygwin] sous Windows) de la manière suivante:
+
Pour générer le fichier patch, il suffit alors de lancer la commande '''diff''' (en standard sous Linux, fourni dans [https://www.cygwin.org/cygwin cygwin] sous Windows) de la manière suivante:
 
<source lang="bash">
 
<source lang="bash">
 
diff -BNaur --exclude=CVS --exclude="*.patch" --exclude=".#*" --exclude="*~" --exclude="*.rej" \
 
diff -BNaur --exclude=CVS --exclude="*.patch" --exclude=".#*" --exclude="*~" --exclude="*.rej" \
Line 173: Line 120:  
Cette mailing-list est lu de tous les développeurs principaux mais nous ne pouvons garantir que le patch sera inclus, cela dépend de sa qualité et des autres priorités de développement du moment.
 
Cette mailing-list est lu de tous les développeurs principaux mais nous ne pouvons garantir que le patch sera inclus, cela dépend de sa qualité et des autres priorités de développement du moment.
   −
= Comment packager/livrer un module =
+
=Comment packager/livrer un module=
 
Voir la page [[Développement_module#Cr.C3.A9er_un_package_pour_livrer_et_installer_votre_module|Developpement module - Créer un package pour livrer et installer votre module]]
 
Voir la page [[Développement_module#Cr.C3.A9er_un_package_pour_livrer_et_installer_votre_module|Developpement module - Créer un package pour livrer et installer votre module]]
   −
La procédure est également valide pour générer un package pour le soumettre sur la place de marché http://www.dolistore.com
+
La procédure est également valide pour générer un package pour le soumettre sur la place de marché https://www.dolistore.com
   −
= Comment être informé de ce qui se passe sur Dolibarr ? =
+
=Comment être informé de ce qui se passe sur Dolibarr ?=
 
Voir la page [[FAQ Comment être informé de l'actualité de Dolibarr ?]]
 
Voir la page [[FAQ Comment être informé de l'actualité de Dolibarr ?]]
   −
= Migrer ma base de Mysql vers PostgreSQL =
+
=Migrer ma base de Mysql vers PostgreSQL=
 
Voir la page [[FAQ Migrer ma base Mysql vers PostgreSQL]]
 
Voir la page [[FAQ Migrer ma base Mysql vers PostgreSQL]]