Cette page devrait vous guider parmi les premières étapes de contribution à Mozilla. Bienvenue, nous sommes ravis de vous accueillir ! :)

Besoin d'aide ?

La communauté Mozilla se targue d'être une communauté ouverte, accessible et amicale pour les nouveaux participants. Si vous rencontrez des difficultés à vous impliquer ou à trouver des réponses à vos questions, vous pouvez poser ces questions sur le canal de discussion #introduction sur irc.mozilla.org (anglophone) ou #frenchmoz (en français) afin que nous puissions vous aider à démarrer.

Nous savons que – avant même de commencer à contribuer – se préparer à travailler sur Firefox et trouver un bug qui corresponde à vos compétences peut constituer un challenge. Nous sommes toujours à la recherche de diverses manières d’améliorer ce processus et rendre Mozilla plus ouvert, accessible et facile d’accès aux contributeurs. Si vous avez des difficultés à suivre cette documentation ou si vous bloquez complètement, vous pouvez contacter directement Mike Hoye à mhoye@mozilla.com (en anglais) afin de résoudre le problème pour vous et pour tous les nouveaux contributeurs suivants.

Quelles sont les compétences dont j'ai besoin ?

Mozilla est un grand projet et nous sommes heureux de recevoir des contributeurs aux compétences très différentes.

  • Si vous connaissez le C++, par exemple, vous pouvez contribuer au coeur de Firefox, Firefox OS ou d'autres produits Mozilla.
  • Si vous connaissez JavaScript ou HTML/CSS, vous pouvez contribuer au développement "front-end" de Firefox.
  • Si vous connaissez le Java, vous pouvez participer à Firefox Mobile - Firefox sur Android - et MozStumbler.
  • Si vous connaissez le Python, vous pouvez contribuer à nos services web , y compris Firefox Sync ou Firefox Accounts.
  • Si vous connaissez le Make, le shell, le Perl ou le Python, vous pouvez contribuer à la construction de nos systèmes et développer ingénierie et automatisation .
  • Si vous connaissez le C, vous pouvez contribuer à NSS, Opus et Daala.
  • Si vous connaissez le language Rust, vous pouvez contribuer à rustc, Servo, un moteur de navigateur web conçu pour le parallélisme et la sécurité, ou encore Quantum, un projet pour utiliser de grandes parties de Servo dans Gecko.
  • Et il existe aussi beaucoup de manières de contribuer à la mission de Mozilla sans programmation. Si vous souhaitez participer à la conception, au support, à la traduction, aux tests, ou d'autres types de contribution, allez voir la page des opportunités de volontariat.

Vous ne savez peut-être pas encore programmer mais vous avez envie de commencer à apprendre ? C'est également une bonne chose, il y a de nombreuses ressources disponibles sur le Réseau Mozilla des développeurs !

Étape 1 - Compiler Firefox pour Desktop ou Android.

Si vous voulez contribuer à Firefox, il existe des instructions simples pour compiler Firefox pour Desktop ici. Pour les contributeurs de la version mobile, vous pouvez démarrer ici pour compiler Firefox pour Android. La préparation peut prendre pas mal de temps – il y a quelques gros téléchargements impliqués – donc vous avez peut-être envie de passer à l’étape suivante pendant que la compilation se fait. Plus d'instuctions sur la compilation peuvent se trouver ici.

Les autres produits de Mozilla - y compris le Thunderbird supporté par la communauté - peuvent être trouvés grâce à une recherche rapide, et souvent il  n'est pas nécessaire de compiler quoique ce soit pour contribuer.

Étape 2 - Trouver quelque chose sur quoi travailler

Réparez votre bête noire

S'il y a quelque chose que vous souhaitez corriger dans Firefox, Thunderbird ou votre autre application préférée de Mozilla, c'est peut être le bon endroit pour débuter. Il y a de nombreuses manières d'y arriver :

Trouvez un bogue que nous avons identifié comme adapté pour les nouveaux contributeurs

Avec plus d'un million de bugs dans Bugzilla, il peut être difficile de savoir par où commencer, alors nous avons créé ces catégories de bogue pour rendre la participation plus facile.

  • Les « bons » premiers bogues (Good First Bugs) sont la meilleure façon de faire ses premiers pas dans l'écosystème de Mozilla. Ils concernent tous de petits changements – parfois aussi petits que quelques lignes de code – mais c'est un bon moyen d'apprendre à configurer votre environnement de développement, naviguer sur Bugzilla et faire des contributions au code de base de Mozilla.
  • Les bogues encadrés sont plus difficiles mais un mentor s'est engagé à vous aider durant le processus. Généralement, il devrait y avoir assez d’informations sur le bug pour vous permettre de commencer. Chaque fois que vous avez besoin d’aide, contactez le mentor via IRC, via le bogue lui même ou par email. Quand vous aurez terminé de corriger le bogue, les mentors vous aideront à insérer le code dans l’arbre.
  • Suivez @StartMozilla sur Twitter, où nous mettons des liens vers les Bons Premiers Bogues pour les nouveaux contributeurs de Mozilla chaque jour.
  • Visitez firebox-dev.tools, où nous listons les bugs de Firefox Developer Tools pour les nouveaux contributeurs.
  • Les projets étudiants sont de plus grande échelle, et adaptés à l'attribution de crédits pour un étudiant universitaire. Même si vous n'êtes pas étudiant, vous pouvez tout à fait corriger ces bogues. Nous maintenons deux listes, une pour les projets basés sur le code de base existant et une pour implémenter de nouvelles applications.

Étape 3 - Corriger le bogue

Nous mettons cela entre vos mains compétentes. Nous avons quelques ressources pour vous aider :

Étape 4 - Faire relire votre code

Une fois que vous ayez corrigé le bogue, attachez le patch sur le bogue (en), et demandez une relecture. Pour faire cela, cliquez sur le lien Details dans votre pièce-jointe, et changer le marqueur review à ? et entrez l'identifiant bugzilla du relecteur dans le champ qui apparaît (soit son adresse courriel ou le :NomUnique qu'ils donnent). C'est très important d'attacher un identifiant bugzilla, ou la requête sera manquée. Alors, comment savoir quelle est la bonne personne pour votre relecture ?

  • Si vous avez un bogue encadré, demandez à votre mentor, il ou elle saura ou trouvera rapidement.
  • Lancez hg blame et regardez les personnes qui ont touché aux fonctions sur lesquelles vous avez travaillé, ce sont de bons candidats.
  • Le bogue lui-même peut contenir une indication claire de la personne à qui demander la relecture.
  • Existe-t-il d'autres bogues sur des sujets similaires ? Dans ce cas, le relecteur de ces bogues peut être un bon choix.
  • Nous avons une liste des modules qui n'est plus à jour et recense les responsables et contributeurs du module, certains seront de bons relecteurs. Dans le pire des cas, marquez le responsable du module comme relecteur et suggérez en commentaire de choisir quelqu'un plus apte si il ou elle manque de temps.

Étape 4b - Faire le suivi

Une fois que vous avez demandé une relecture, un relecteur vous fera un retour généralement au bout d'un jour ou deux, pour examiner le correctif ou, en cas de retard, vous dire quand il pourra être examiné. Si vous n'avez aucune nouvelle pendant ce délai, n'hésitez pas à les relancer Ajoutez un commentaire au bogue disant « review ping? », cochez la case "Need more information from:" et ajoutez le nom du relecteur. S'il n'a toujours pas répondu au bout d'un jour ou deux, vous pouvez demander de l'aide sur IRC dans les canaux #introduction ou #developers ou contacter directement Mike Hoye.

Étape 5 - Répondre à la relecture

Pour la plupart des nouveaux contributeurs - et souvent pour les habitués aussi ! - la première relecture du patch sera notée d'un r-. Cela ne veut pas dire que vous avez fait du mauvais travail, mais cela signifie qu'il y a toujours un peu de travail à accomplir avant de pouvoir intégrer votre code dans l'arbre. Votre patch peut nécessiter des changements - parfois mineurs, parfois majeurs - et votre relecteur vous donnera des indications quant à ce que vous devrez faire ensuite.

C'est un processus important, donc ne soyez pas découragé ! Avec une base de code de longue durée et des centaines de millions d'utilisateurs, le soin et l'attention portés aux contributions pouvant apporter des correctifs solides sont la pierre angulaire du projet Mozilla. Réalisez les changements demandés par votre relecteur ; si vous n'êtes pas sûr de savpor comment, demandez ! Attachez le nouveau correctif au bogue, et demandez à nouveau une relecture de la même personne. S'il vous donne un r+ cela signifie que votre correctif est accepté dans l'arborescence !

Étape 6 - Mettre véritablement votre code dans l'arborescence

Une fois que votre patch a reçu un r+, il est prêt. Mais avant d'être inséré dans l'arbre, votre patch doit nécessairement passer avec succès l'étape du serveur de tests pour contrôler qu'il ne déclenchera aucune régression inattendue ; votre mentor ou la personne qui a procédé à la relecture de votre patch pourra vous aider à le faire si vous n'avez pas déjà utilisé le serveur de tests.

À l'issue du passage réussi (vert) dans le serveur de tests, marquez votre patch comme prêt en ajoutant le mot-clé "checkin-needed" dans le champ des mots-clés en haut du bogue. Un Mozillian amical ayant un accès de validation devrait s'en occuper en quelques jours, pousser le code dans le référentiel, et marquer le bogue comme résolu. Quand votre patch a passé tous les tests automatisés de Mozilla, il est bientôt inséré dans la branche principale et devient une partie de nos compilations nocturnes.

Étape 7 - Recommencer

Merci à vous. Vous avez corrigé votre premier bogue, et le monde du libre en est plus fort. Mais ne vous arrêtez pas maintenant.

Retournez à l'étape 3, il y a beaucoup à faire. Votre mentor peut vous suggérer un nouveau bogue à traiter ou vous pouvez en trouver un vous-même qui vous intéresse. Et maintenant que vous avez corrigé votre premier bogue, vous pouvez demander l'accès de niveau 1 au référentiel pour pousser votre code vers le serveur de tests et obtenir un retour d'informations automatique à propos de vos modifications sur plusieurs plateformes. Après avoir corrigé un certain nombre de bogues non évidents, vous pourrez demander l'accès de niveau 3 pour pousser votre propre code après relecture.

Plus d'information

Nous sommes en train d'améliorer l'information sur cette page pour les nouveaux arrivants sur le projet. Nous ajouterons plus d'informations sur ces pages bientôt, mais d'ici là vous pourrez les trouver aux endroits suivants :

Étiquettes et contributeurs liés au document

 Dernière mise à jour par : loella16,