31,003
edits
No edit summary |
mNo edit summary Tag: 2017 source edit |
||
| (39 intermediate revisions by 6 users not shown) | |||
| 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]] | ||
{{ | {{TemplateDocDevFr}} | ||
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, | 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 | 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 | 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 familier aux adeptes de science-fiction. Voici ces étapes. | |||
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'''. | |||
=Qui développe Dolibarr= | |||
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 113: | 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 131: | 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. | |||
*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). | |||
*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 | |||
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. | |||
*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 145: | 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 [ | - 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 [ | 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" \ | ||
--exclude="*.orig" --exclude="*.bak" --exclude=conf.php --exclude=documents | --exclude="*.orig" --exclude="*.bak" --exclude=conf.php --exclude=documents \ | ||
ancien_rep nouveau_rep > mypatch.patch | ancien_rep nouveau_rep > mypatch.patch | ||
</source> | </source> | ||
| Line 180: | Line 118: | ||
Une fois votre fichier patch généré et testé avec succès, vous pouvez l'envoyer sur la mailing-list de développement '''dolibarr-dev''' de Dolibarr (Voir ici pour cela {{TemplateURLMLDev}}). | Une fois votre fichier patch généré et testé avec succès, vous pouvez l'envoyer sur la mailing-list de développement '''dolibarr-dev''' de Dolibarr (Voir ici pour cela {{TemplateURLMLDev}}). | ||
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 | 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é | 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]] | ||