Compare Revisions

Contributing to the Mozilla codebase

Change Revisions

Revision 480131:

Revision 480131 by jdm on

Revision 482591:

Revision 482591 by kscarfone on

Title:
Contributing to the Mozilla codebase
Contributing to the Mozilla codebase
Slug:
Introduction
Introduction
Tags:
"Developing Mozilla", "Firefox OS", Firefox, Guide, thunderbird
"Developing Mozilla", "Firefox", "Firefox OS", "Guide", "Thunderbird"
Content:

Revision 480131
Revision 482591
n8      This page should guide you through the first steps of contrn8      This page should guide you through the first steps of contr
>ibuting to Mozilla. Welcome, we're delighted to see you :)>ibuting to Mozilla. Welcome, we're delighted to see you! :)
n23      <li>If you know <strong>C++</strong>, for instance, you cann23      <li>If you know <strong>C++</strong>, for instance, you can
> contribute to the core layers of Firefox, Firefox OS and other M> contribute to the core layers of Firefox, Firefox OS, and other 
>ozilla products.>Mozilla products.
n31      <li>If you know Make, shell, Perl or Python, you can contrin31      <li>If you know Make, shell, Perl, or Python, you can contr
>bute to our build system.>ibute to our build system.
n42      Step 1 - Build Firefox, Firefox OS, Thunderbird or another n42      Step 1 - Build Firefox, Firefox OS, Thunderbird, or another
>application> application
n45      If you wish to contribute to Firefox, Thunderbird or Firefon45      If you wish to contribute to Firefox, Thunderbird, or Firef
>x OS, follow our set of <a href="/en-US/docs/Simple_Firefox_build>ox OS, follow our set of <a href="/en-US/docs/Simple_Firefox_buil
>" title="Simple Firefox Build">simple instructions to build Firef>d" title="Simple Firefox Build">simple instructions to build Fire
>ox</a>, or to <a href="/en-US/docs/Simple_Thunderbird_build" titl>fox</a>, or to <a href="/en-US/docs/Simple_Thunderbird_build" tit
>e="Simple Thunderbird build">build Thunderbird</a>, or to <a href>le="Simple Thunderbird build">build Thunderbird</a>, or to <a hre
>="https://developer.mozilla.org/en-US/docs/Mozilla/Boot_to_Gecko/>f="https://developer.mozilla.org/en-US/docs/Mozilla/Boot_to_Gecko
>Building_and_installing_Firefox_OS" title="/en-US/docs/">build Fi>/Building_and_installing_Firefox_OS" title="/en-US/docs/">build F
>refox OS</a>. This is straightforward, but may take some time, so>irefox OS</a>. This is straightforward, but may take some time, s
> you may want to move on to the next steps while it builds. More >o you may want to move on to the next steps while it builds. More
>build instructions can be <a href="/en-US/docs/Developer_Guide/Bu> build instructions can be <a href="/en-US/docs/Developer_Guide/B
>ild_Instructions" title="Developer_Guide/Build_Instructions">foun>uild_Instructions" title="Developer_Guide/Build_Instructions">fou
>d here</a>.>nd here</a>.
n50    <h2 id="Step_3_-_Find_something_to_work_on">n50    <h2 id="Step_2_-_Find_something_to_work_on">
n57      If there's something you'd like to fix about Firefox, Thundn57      If there's something you'd like to fix about Firefox, Thund
>erbird or your other favourite Mozilla application, this can be a>erbird, or your other favorite Mozilla application, this can be a
> good place to start. There are a number of ways to do this:> good place to start. There are a number of ways to do this:
n82        <a class="link-https" href="https://bugzil.la/kw:student-n82        <a class="link-https" href="https://bugzil.la/kw:student-
>project" title="https://bugzil.la/kw:student-project">Student Pro>project" title="https://bugzil.la/kw:student-project">Student Pro
>jects</a> are larger projects, such as might be suitable for a un>jects</a> are larger projects, such as might be suitable for a un
>iversity student for credit. Of course, if you are not a student,>iversity student for credit. Of course, if you are not a student,
> you should still feel free to fix one of these bugs. We maintain> you should still feel free to fix one of these bugs. We maintain
> two lists, one for projects <a href="https://bugzil.la/kw:studen> two lists, one for projects <a href="https://bugzil.la/kw:studen
>t-project" title="https://bugzil.la/kw:student-project">based on >t-project" title="https://bugzil.la/kw:student-project">based on 
>the existing codebase</a>, one for <a href="https://github.com/Yo>the existing codebase</a> and one for <a href="https://github.com
>ric/Mozilla-Student-Projects/issues" title="https://github.com/Yo>/Yoric/Mozilla-Student-Projects/issues" title="https://github.com
>ric/Mozilla-Student-Projects/issues">implementing new application>/Yoric/Mozilla-Student-Projects/issues">implementing new applicat
>s</a>.>ions</a>.
n85    <h2 id="Step_4_-_Fix_the_bug">n85    <h2 id="Step_3_-_Fix_the_bug">
n92      <li>Ask for help in a comment on the bug, or in <a class="ln92      <li>Ask for help in a comment on the bug, or in <a class="l
>ink-https" href="https://chat.mibbit.com/?url=irc%3A%2F%2Firc.moz>ink-https" href="https://chat.mibbit.com/?url=irc%3A%2F%2Firc.moz
>illa.org%2F%23introduction">#introduction</a> or <a class="link-h>illa.org%2F%23introduction">#introduction</a> or <a class="link-h
>ttps" href="https://chat.mibbit.com/?url=irc%3A%2F%2Firc.mozilla.>ttps" href="https://chat.mibbit.com/?url=irc%3A%2F%2Firc.mozilla.
>org%2F%23developers">#developers</a>.>org%2F%23developers">#developers</a>
n94      <li>Check out <a href="/en-US/docs/Developer_Guide" title="n94      <li>Check out <a href="/en-US/docs/Developer_Guide" title="
>En/Developer_Guide">https://developer.mozilla.org/En/Developer_Gu>En/Developer_Guide">https://developer.mozilla.org/En/Developer_Gu
>ide</a>,>ide</a>
n97    <h2 id="Step_5_-_Get_your_code_reviewed">n97    <h2 id="Step_4_-_Get_your_code_reviewed">
n101      Once you fix the bug, <a href="/en-US/docs/Developer_Guide/n101      Once you fix the bug, <a href="/en-US/docs/Developer_Guide/
>How_to_Submit_a_Patch" title="How to Submit a Patch">attach a pat>How_to_Submit_a_Patch" title="How to Submit a Patch">attach a pat
>ch to the bug</a>, and ask for review. Do this by clicking the <s>ch to the bug</a> and ask for review. Do this by clicking the <st
>trong>Details</strong> link on your attachment, then setting the >rong>Details</strong> link on your attachment, then setting the <
><strong>review</strong> flag to <strong>?</strong> and entering t>strong>review</strong> flag to <strong>?</strong> and entering th
>he reviewer's bugzilla ID in the text field that appears (either >e reviewer's bugzilla ID in the text field that appears (either t
>their email address of the :UniqueName they provide). It is very >heir email address or the :UniqueName they provide). It is very i
>important to attach a bugzilla ID, or the request will be missed.>mportant to attach a bugzilla ID, or the request will be missed. 
> So how do you figure out the right person to ask for a review?>So how do you figure out the right person to ask for a review?
n104      <li>If you have a mentored bug, ask your mentor, they will n104      <li>If you have a mentored bug, ask your mentor; they will 
>know or can find out easily.>know or can find out easily.
n106      <li>Run <code>hg blame</code> and look at the people who han106      <li>Run <code>hg blame</code> and look at the people who ha
>ve touched the function's you've worked on - they will be a good >ve touched the functions you've worked on - they will be a good c
>candidate.>andidate.
n115    <h3 id="Step_5b_-_Follow_it_up">n115    <h3 id="Step_4b_-_Follow_it_up">
n121    <h2 id="Step_6_-_Respond_to_the_review">n121    <h2 id="Step_5_-_Respond_to_the_review">
n127    <h2 id="Step_7_-_Actually_get_the_code_into_the_tree">n127    <h2 id="Step_6_-_Actually_get_the_code_into_the_tree">
n133    <h2 id="Step_8_-_Repeat">n133    <h2 id="Step_7_-_Repeat">
n137      Congratulations, you've fixed your first bug. Now go back tn137      Congratulations, you've fixed your first bug. Now go back t
>o step 3 and repeat. Now that you've got your first bug in, you s>o step 3 and repeat. Now that you've got your first bug in, you s
>hould request level 1 access to the repository so that you can pu>hould request level 1 access to the repository so that you can pu
>sh to rhw tryserver and get automated feedback about your changes>sh to the tryserver and get automated feedback about your changes
> on multiple platforms. After fixing a nontrivial number of bugs,> on multiple platforms. After fixing a nontrivial number of bugs,
> you should request level 3 access so that you can push your own > you should request level 3 access so that you can push your own 
>code after it has been <strong>r+</strong>ed.>code after it has been <strong>r+</strong>ed.
n147        <a class="external" href="http://www.joshmatthews.net/blon147        <a class="external" href="http://www.joshmatthews.net/blo
>g/2010/03/getting-involve-with-mozilla/">A guide to learning the >g/2010/03/getting-involve-with-mozilla/">A guide to learning the 
>mozilla codebase</a>.>mozilla codebase</a>
n150        <a class="link-https" href="https://wiki.mozilla.org/Javan150        <a class="link-https" href="https://wiki.mozilla.org/Java
>Script:New_to_SpiderMonkey">A beginner's guide to SpiderMonkey, M>Script:New_to_SpiderMonkey">A beginner's guide to SpiderMonkey, M
>ozilla's Javascript engine.</a>>ozilla's Javascript engine</a>
t153        <a class="external" href="http://www.brianbondy.com/mozilt153        <a class="external" href="http://www.brianbondy.com/mozil
>la/cheatsheet/" title="http://www.brianbondy.com/mozilla/cheatshe>la/cheatsheet/" title="http://www.brianbondy.com/mozilla/cheatshe
>et/">Mozilla platform development cheatsheet.</a>>et/">Mozilla platform development cheatsheet</a>

Back to History