mozilla

Compare Revisions

Developer guide

Change Revisions

Revision 491615:

Revision 491615 by LewisCowper on

Revision 499415:

Revision 499415 by SJW on

Title:
Developer Guide
Developer Guide
Slug:
Developer_Guide
Developer_Guide
Tags:
"Developing Mozilla"
Developing Mozilla,
Content:

Revision 491615
Revision 499415
t10    <table class="topicpage-table">t10    <div class="row topicpage-table">
11      <tbody>11      <div class="section">
12        <tr>
13          <td>
14            <h2 class="Documentation" id="Documentation_topics">12        <h2 class="Documentation" id="Documentation_topics">
15              Documentation topics13          Documentation topics
16            </h2>14        </h2>
17            <dl>15        <dl>
18              <dt>16          <dt>
19                <a href="/en-US/docs/Introduction" title="Introdu17            <a href="/en-US/docs/Introduction" title="Introductio
>ction">Getting Started</a>>n">Getting Started</a>
20              </dt>18          </dt>
21              <dd>19          <dd>
22                A step-by-step beginner's guide to getting involv20            A step-by-step beginner's guide to getting involved w
>ed with Mozilla.>ith Mozilla.
23              </dd>21          </dd>
24            </dl>22        </dl>
25            <dl>23        <dl>
26              <dt>24          <dt>
27                <a class="internal" href="/en-US/docs/Developer_G25            <a class="internal" href="/en-US/docs/Developer_Guide
>uide/Source_Code" title="en-US/docs/Developer_Guide/Source_Code">>/Source_Code" title="en-US/docs/Developer_Guide/Source_Code">Work
>Working with Mozilla Source Code</a>>ing with Mozilla Source Code</a>
28              </dt>26          </dt>
29              <dd>27          <dd>
30                A code overview, how to get the code, and the cod28            A code overview, how to get the code, and the coding 
>ing style guide.>style guide.
31              </dd>29          </dd>
32              <dt>30          <dt>
33                <a class="internal" href="/en-US/docs/Developer_G31            <a class="internal" href="/en-US/docs/Developer_Guide
>uide/Build_Instructions" title="en-US/docs/Developer_Guide/Build_>/Build_Instructions" title="en-US/docs/Developer_Guide/Build_Inst
>Instructions">Build Instructions</a>>ructions">Build Instructions</a>
34              </dt>32          </dt>
35              <dd>33          <dd>
36                How to build Firefox, Thunderbird, SeaMonkey, or 34            How to build Firefox, Thunderbird, SeaMonkey, or othe
>other Mozilla applications.>r Mozilla applications.
37              </dd>35          </dd>
38              <dt>36          <dt>
39                <a href="/en-US/docs/Developer_Guide/Development_37            <a href="/en-US/docs/Developer_Guide/Development_proc
>process_overview" title="en-US/docs/Developer Guide/Development p>ess_overview" title="en-US/docs/Developer Guide/Development proce
>rocess overview">Development process overview</a>>ss overview">Development process overview</a>
40              </dt>38          </dt>
41              <dd>39          <dd>
42                An overview of the entire Mozilla development pro40            An overview of the entire Mozilla development process
>cess.>.
43              </dd>41          </dd>
44              <dt>42          <dt>
45                <a href="/en-US/docs/Mozilla/Multiple_Firefox_Pro43            <a href="/en-US/docs/Mozilla/Multiple_Firefox_Profile
>files" title="en-US/docs/Mozilla/Multiple_Firefox_Profiles">Manag>s" title="en-US/docs/Mozilla/Multiple_Firefox_Profiles">Managing 
>ing multiple profiles</a>>multiple profiles</a>
46              </dt>44          </dt>
47              <dd>45          <dd>
48                When working with prerelease versions of Firefox,46            When working with prerelease versions of Firefox, it'
> it's often helpful to have multiple Firefox profiles, such as on>s often helpful to have multiple Firefox profiles, such as one fo
>e for each channel, or for different kinds of testing.>r each channel, or for different kinds of testing.
49              </dd>47          </dd>
50              <dt>48          <dt>
51                <a class="internal" href="/en-US/docs/Mozilla_aut49            <a class="internal" href="/en-US/docs/Mozilla_automat
>omated_testing" title="en-US/docs/Mozilla automated testing">Auto>ed_testing" title="en-US/docs/Mozilla automated testing">Automate
>mated Testing</a>>d Testing</a>
52              </dt>50          </dt>
53              <dd>51          <dd>
54                How to run Mozilla's automated tests, and how to 52            How to run Mozilla's automated tests, and how to writ
>write new tests.>e new tests.
55              </dd>53          </dd>
56              <dt>54          <dt>
57                <a class="internal" href="/en-US/docs/Developer_G55            <a class="internal" href="/en-US/docs/Developer_Guide
>uide/How_to_Submit_a_Patch" title="en-US/docs/Getting your patch >/How_to_Submit_a_Patch" title="en-US/docs/Getting your patch in t
>in the tree">How to submit a patch</a>>he tree">How to submit a patch</a>
58              </dt>56          </dt>
59              <dd>57          <dd>
60                After getting your patch written, you need to get58            After getting your patch written, you need to get it 
> it checked into the tree. This article explains the review proce>checked into the tree. This article explains the review process a
>ss and how to get your patch approved.>nd how to get your patch approved.
61              </dd>59          </dd>
62              <dt>60          <dt>
63                <a href="/en-US/docs/Developer_Guide/Getting_docu61            <a href="/en-US/docs/Developer_Guide/Getting_document
>mentation_updated" title="en-US/docs/Developer_Guide/Getting docu>ation_updated" title="en-US/docs/Developer_Guide/Getting document
>mentation updated">Getting documentation updated</a>>ation updated">Getting documentation updated</a>
64              </dt>62          </dt>
65              <dd>63          <dd>
66                How to ensure that documentation is kept up to da64            How to ensure that documentation is kept up to date a
>te as you develop.>s you develop.
67              </dd>65          </dd>
68              <dt>66          <dt>
69                <a class="internal" href="/en-US/docs/Mozilla_Mod67            <a class="internal" href="/en-US/docs/Mozilla_Modules
>ules_and_Module_Ownership" title="en-US/docs/Mozilla Modules and >_and_Module_Ownership" title="en-US/docs/Mozilla Modules and Modu
>Module Ownership">Mozilla modules and module ownership</a>>le Ownership">Mozilla modules and module ownership</a>
70              </dt>68          </dt>
71              <dd>69          <dd>
72                This article provides information about Mozilla's70            This article provides information about Mozilla's mod
> modules, what the role of a module owner is, and how module owne>ules, what the role of a module owner is, and how module owners a
>rs are selected.>re selected.
73              </dd>71          </dd>
74              <dt>72          <dt>
75                <a class="internal" href="/en-US/docs/Code_snippe73            <a class="internal" href="/en-US/docs/Code_snippets" 
>ts" title="en-US/docs/Code_snippets">Code snippets</a>>title="en-US/docs/Code_snippets">Code snippets</a>
76              </dt>74          </dt>
77              <dd>75          <dd>
78                Useful code samples for a wide variety of things 76            Useful code samples for a wide variety of things you 
>you might need to figure out how to do.>might need to figure out how to do.
79              </dd>77          </dd>
80              <dt>78          <dt>
81                <a class="internal" href="/en-US/docs/Mozilla_Dev79            <a class="internal" href="/en-US/docs/Mozilla_Develop
>elopment_Strategies" title="en-US/docs/Mozilla Development Strate>ment_Strategies" title="en-US/docs/Mozilla Development Strategies
>gies">Mozilla development strategies</a>>">Mozilla development strategies</a>
82              </dt>80          </dt>
83              <dd>81          <dd>
84                Tips for how to make the most of your time workin82            Tips for how to make the most of your time working on
>g on the Mozilla project.> the Mozilla project.
85              </dd>83          </dd>
86              <dt>84          <dt>
87                <a class="internal" href="/en-US/docs/Debugging" 85            <a class="internal" href="/en-US/docs/Debugging" titl
>title="en-US/docs/Debugging">Debugging</a>>e="en-US/docs/Debugging">Debugging</a>
88              </dt>86          </dt>
89              <dd>87          <dd>
90                Find helpful tips and guides for debugging Mozill88            Find helpful tips and guides for debugging Mozilla co
>a code.>de.
91              </dd>89          </dd>
92              <dt>90          <dt>
93                <a href="/en-US/docs/Performance" title="en-US/do91            <a href="/en-US/docs/Performance" title="en-US/docs/P
>cs/Performance">Performance</a>>erformance">Performance</a>
94              </dt>92          </dt>
95              <dd>93          <dd>
96                Performance guides and utilities to help you make94            Performance guides and utilities to help you make you
> your code perform well (and to play nicely with others).>r code perform well (and to play nicely with others).
97              </dd>95          </dd>
98              <dt>96          <dt>
99                <a class="internal" href="/en-US/docs/The_Mozilla97            <a class="internal" href="/en-US/docs/The_Mozilla_pla
>_platform" title="en-US/docs/The Mozilla platform">The Mozilla pl>tform" title="en-US/docs/The Mozilla platform">The Mozilla platfo
>atform</a>>rm</a>
100              </dt>98          </dt>
101              <dd>99          <dd>
102                Information about the workings of the Mozilla pla100            Information about the workings of the Mozilla platfor
>tform.>m.
103              </dd>101          </dd>
104              <dt>102          <dt>
105                <a href="/en-US/docs/Developer_Guide/Adding_APIs_103            <a href="/en-US/docs/Developer_Guide/Adding_APIs_to_t
>to_the_navigator_object" title="en-US/docs/Developer_Guide/Adding>he_navigator_object" title="en-US/docs/Developer_Guide/Adding_API
>_APIs_to_the_navigator_object">Adding APIs to the navigator objec>s_to_the_navigator_object">Adding APIs to the navigator object</a
>t</a> {{ gecko_minversion_inline("9.0") }}>> {{ gecko_minversion_inline("9.0") }}
106              </dt>104          </dt>
107              <dd>105          <dd>
108                How to augment the {{ domxref("window.navigator")106            How to augment the {{ domxref("window.navigator") }} 
> }} object with additional APIs.>object with additional APIs.
109              </dd>107          </dd>
110              <dt>108          <dt>
111                <a href="/en-US/docs/Developer_Guide/Interface_Co109            <a href="/en-US/docs/Developer_Guide/Interface_Compat
>mpatibility" title="en-US/docs/Developer Guide/Interface Compatib>ibility" title="en-US/docs/Developer Guide/Interface Compatibilit
>ility">Interface Compatibility</a>>y">Interface Compatibility</a>
112              </dt>110          </dt>
113              <dd>111          <dd>
114                Guidelines for modifying scriptable and binary AP112            Guidelines for modifying scriptable and binary APIs i
>Is in Mozilla.>n Mozilla.
115              </dd>113          </dd>
116              <dt>114          <dt>
117                <a href="/en-US/docs/Developer_Guide/Customizing_115            <a href="/en-US/docs/Developer_Guide/Customizing_Fire
>Firefox" title="en-US/docs/Developer Guide/Customizing Firefox">C>fox" title="en-US/docs/Developer Guide/Customizing Firefox">Custo
>ustomizing Firefox</a>>mizing Firefox</a>
118              </dt>116          </dt>
119              <dd>117          <dd>
120                Information about creating customized versions of118            Information about creating customized versions of Fir
> Firefox.>efox.
121              </dd>119          </dd>
122              <dt>120          <dt>
123                <a href="/en-US/docs/Developer_Guide/Virtual_ARM_121            <a href="/en-US/docs/Developer_Guide/Virtual_ARM_Linu
>Linux_environment" title="Virtual ARM Linux environment">Virtual >x_environment" title="Virtual ARM Linux environment">Virtual ARM 
>ARM Linux environment</a>>Linux environment</a>
124              </dt>122          </dt>
125              <dd>123          <dd>
126                How to set up an ARM emulator running Linux for t124            How to set up an ARM emulator running Linux for testi
>esting ARM-specific, but not necessarily platform-specific, code.>ng ARM-specific, but not necessarily platform-specific, code. Use
> Useful for mobile developers.>ful for mobile developers.
127              </dd>125          </dd>
128              <dt>126          <dt>
129                <a href="/en-US/docs/Introduction/Obsolete_Build_127            <a href="/en-US/docs/Introduction/Obsolete_Build_Cave
>Caveats_and_Tips" title="Obsolete Build Caveats and Tips">Obsolet>ats_and_Tips" title="Obsolete Build Caveats and Tips">Obsolete Bu
>e Build Caveats and Tips</a>>ild Caveats and Tips</a>
130              </dt>128          </dt>
131              <dd>129          <dd>
132                A place to put build tips which are no longer rel130            A place to put build tips which are no longer relevan
>evant to building the latest version of the code from main but ar>t to building the latest version of the code from main but are re
>e relevant when building old codebases.>levant when building old codebases.
133              </dd>
134            </dl>
135          </td>131          </dd>
136          <td>132        </dl>
133      </div>
134      <div class="section">
137            <h2 class="Tools" id="Tools">135        <h2 class="Tools" id="Tools">
138              Tools136          Tools
139            </h2>137        </h2>
140            <dl>138        <dl>
141              <dt>139          <dt>
142                <a class="link-https" href="https://bugzilla.mozi140            <a class="link-https" href="https://bugzilla.mozilla.
>lla.org/" title="https://bugzilla.mozilla.org/">Bugzilla</a>>org/" title="https://bugzilla.mozilla.org/">Bugzilla</a>
143              </dt>141          </dt>
144              <dd>142          <dd>
145                The <a class="internal" href="/en-US/docs/Bugzill143            The <a class="internal" href="/en-US/docs/Bugzilla" t
>a" title="en-US/docs/Bugzilla">Bugzilla</a> database used to trac>itle="en-US/docs/Bugzilla">Bugzilla</a> database used to track is
>k issues for Mozilla projects.>sues for Mozilla projects.
146              </dd>144          </dd>
147              <dt>145          <dt>
148                <a class="external" href="http://mxr.mozilla.org/146            <a class="external" href="http://mxr.mozilla.org/" ti
>" title="http://mxr.mozilla.org/">MXR</a>>tle="http://mxr.mozilla.org/">MXR</a>
149              </dt>147          </dt>
150              <dd>148          <dd>
151                Browse and search the Mozilla source code reposit149            Browse and search the Mozilla source code repository 
>ory on the Web.>on the Web.
152              </dd>150          </dd>
153              <dt>151          <dt>
154                <a href="http://dxr.mozilla.org/">DXR</a>152            <a href="http://dxr.mozilla.org/">DXR</a>
155              </dt>153          </dt>
156              <dd>154          <dd>
157                Next generation of searching Mozilla's source cod155            Next generation of searching Mozilla's source code. I
>e. In active development.>n active development.
158              </dd>156          </dd>
159              <dt>157          <dt>
160                <a class="external" href="http://bonsai.mozilla.o158            <a class="external" href="http://bonsai.mozilla.org/c
>rg/cvsqueryform.cgi" title="http://bonsai.mozilla.org/cvsqueryfor>vsqueryform.cgi" title="http://bonsai.mozilla.org/cvsqueryform.cg
>m.cgi">Bonsai</a>>i">Bonsai</a>
161              </dt>159          </dt>
162              <dd>160          <dd>
163                The <a class="internal" href="/en-US/docs/Bonsai"161            The <a class="internal" href="/en-US/docs/Bonsai" tit
> title="en-US/docs/Bonsai">Bonsai</a> tool lets you find out who >le="en-US/docs/Bonsai">Bonsai</a> tool lets you find out who chan
>changed what file in the repository, and when they did it.>ged what file in the repository, and when they did it.
164              </dd>162          </dd>
165              <dt>163          <dt>
166                <a class="internal" href="/en-US/docs/Mercurial" 164            <a class="internal" href="/en-US/docs/Mercurial" titl
>title="en-US/docs/Mercurial">Mercurial</a>>e="en-US/docs/Mercurial">Mercurial</a>
167              </dt>165          </dt>
168              <dd>166          <dd>
169                The distributed version-control system used to ma167            The distributed version-control system used to manage
>nage Mozilla's source code.> Mozilla's source code.
170              </dd>168          </dd>
171              <dt>169          <dt>
172                <a class="external" href="https://tbpl.mozilla.or170            <a class="external" href="https://tbpl.mozilla.org/" 
>g/" title="http://tinderbox.mozilla.org/showbuilds.cgi">TBPL (Tin>title="http://tinderbox.mozilla.org/showbuilds.cgi">TBPL (Tinderb
>derbox Push Log)</a>>ox Push Log)</a>
173              </dt>171          </dt>
174              <dd>172          <dd>
175                <span class="internal">Tinderbox Push Log</span> 173            <span class="internal">Tinderbox Push Log</span> show
>shows the status of the tree (whether or not it currently builds >s the status of the tree (whether or not it currently builds succ
>successfully).&nbsp; Check this before checking in and out, to be>essfully).&nbsp; Check this before checking in and out, to be sur
> sure you're working with a working tree.>e you're working with a working tree.
176              </dd>174          </dd>
177              <dt>175          <dt>
178                <a class="internal" href="/en-US/docs/Crash_repor176            <a class="internal" href="/en-US/docs/Crash_reporting
>ting" title="en-US/docs/Crash reporting">Crash tracking</a>>" title="en-US/docs/Crash reporting">Crash tracking</a>
179              </dt>177          </dt>
180              <dd>178          <dd>
181                Information about the <a class="link-https" href=179            Information about the <a class="link-https" href="htt
>"https://crash-reports.mozilla.com/reports" title="https://crash->ps://crash-reports.mozilla.com/reports" title="https://crash-repo
>reports.mozilla.com/reports">Socorro</a> crash reporting system.>rts.mozilla.com/reports">Socorro</a> crash reporting system.
182              </dd>180          </dd>
183              <dt>181          <dt>
184                <span class="external">Performance tracking: <a h182            <span class="external">Performance tracking: <a href=
>ref="https://datazilla.mozilla.org/">Datazilla</a> and <a href="h>"https://datazilla.mozilla.org/">Datazilla</a> and <a href="http:
>ttp://graphs.mozilla.org/">Graphs</a></span>>//graphs.mozilla.org/">Graphs</a></span>
185              </dt>183          </dt>
186              <dd>184          <dd>
187                See performance information for Mozilla projects.185            See performance information for Mozilla projects.
188              </dd>186          </dd>
189              <dt>187          <dt>
190                <a href="/en-US/docs/Developer_Guide/Callgraph" t188            <a href="/en-US/docs/Developer_Guide/Callgraph" title
>itle="en-US/docs/Developing Mozilla/Callgraph">Callgraph</a>>="en-US/docs/Developing Mozilla/Callgraph">Callgraph</a>
191              </dt>189          </dt>
192              <dd>190          <dd>
193                A tool to help perform static analysis of the Moz191            A tool to help perform static analysis of the Mozilla
>illa code by generating callgraphs automatically.> code by generating callgraphs automatically.
194              </dd>192          </dd>
195              <dt>193          <dt>
196                <a class="external" href="http://www.mozilla.org/194            <a class="external" href="http://www.mozilla.org/comm
>community/developer-forums.html" title="http://www.mozilla.org/co>unity/developer-forums.html" title="http://www.mozilla.org/commun
>mmunity/developer-forums.html">Developer forums</a>>ity/developer-forums.html">Developer forums</a>
197              </dt>195          </dt>
198              <dd>196          <dd>
199                A topic-specific list of discussion forums where 197            A topic-specific list of discussion forums where you 
>you can talk about Mozilla development issues.>can talk about Mozilla development issues.
200              </dd>198          </dd>
201              <dt>199          <dt>
202                <a class="external" href="http://www.codefirefox.200            <a class="external" href="http://www.codefirefox.com/
>com/cheatsheet/" title="http://www.brianbondy.com/mozilla/cheatsh>cheatsheet/" title="http://www.brianbondy.com/mozilla/cheatsheet/
>eet/">Mozilla Platform Development Cheat Sheet</a>>">Mozilla Platform Development Cheat Sheet</a>
203              </dt>201          </dt>
204              <dd>202          <dd>
205                Brian Bondy's list of frequently referenced infor203            Brian Bondy's list of frequently referenced informati
>mation for platform developers.>on for platform developers.
206              </dd>204          </dd>
207              <dt>205          <dt>
208                <a class="external" href="http://www.codefirefox.206            <a class="external" href="http://www.codefirefox.com/
>com/videos/" title="http://www.brianbondy.com/mozilla/cheatsheet/>videos/" title="http://www.brianbondy.com/mozilla/cheatsheet/">Fi
>">Firefox development video tutorials</a>>refox development video tutorials</a>
209              </dt>207          </dt>
210              <dd>208          <dd>
211                Brian Bondy's video tutorials on Firefox developm209            Brian Bondy's video tutorials on Firefox development.
>ent. 
212              </dd>
213            </dl>
214          </td>210          </dd>
215        </tr>211        </dl>
216      </tbody>212      </div>
217    </table>213    </div>

Back to History