comm-central

  • Revision slug: comm-central
  • Revision title: comm-central
  • Revision id: 113023
  • Created:
  • Creator: Standard8
  • Is current revision? No
  • Comment Add links to how to build.; 22 words added

Revision Content

comm-central is a Mercurial repository of the Thunderbird, SeaMonkey, Lightning extension and Sunbird code: http://hg.mozilla.org/comm-central.

The relevant Tinderbox pages are located at:

{{ Note("The comm-central code only includes a subset of the code required to build Thunderbird, SeaMonkey and Sunbird. See Comm-central_source_code_(Mercurial) for how to get the other required code") }}

Nightly Builds

If you're looking for Nightly Builds of comm-central, then see the links for Thunderbird, SeaMonkey (TBD) and Calendar (TBD).

Building

For the comm-central apps, see the following links:

comm-central tree rules

Requirements

Regressions

  • Automated unit tests must pass
  • Any Leak tests must not regress

Any regressions on tier-1 platforms are cause for immediate backout. Regressions on tier-2 platforms are usually not cause for backout, but you will be expected to help fix them if needed.

If you think your patch might cause regressions, land on the Thunderbird Try Server (read about what a try server is) first.

Pushing changes to comm-central

See How do I check stuff in? for help with hg commit and hg push. If you believe you should have access to mozilla-central but don't know your login details, file a bug.

  • Changes must not introduce multiple heads into comm-central.
  • Please try to keep history tidy. A single commit or a few independent changesets are preferable to many "work in progress" changesets which clutter history. Consider using Mercurial queues to manage patches before checkin.
  • At least the final changeset being pushed should list the bug number and reviewer for the relevant change.
  • Your commit comment must include the bug number and reviewers.  It should contain the summary of the bug or a clear explanation of the fix.
  • If you are not the author of the code, make that clear, preferably using commit -u "Patch Author <email@example.com>".

comm-central code layout

These directories are included in the comm-central repository:

  • build/ - Miscellaneous files used by the build process.
  • calendar/ - Lightning extension and Sunbird specific source code.
  • config/ - Files required for the comm-central build process.
  • directory/xpcom - An XPCOM wrapper for the LDAP c-sdk. Used for communicating with LDAP servers.
  • editor/ - UI for the Compose window (Thunderbird/SeaMonkey) and the Composer part of SeaMonkey.
  • mail/ - Thunderbird specific source code.
  • mailnews/ - Source code specific to the Mail and Newsgroups part of Thunderbird and SeaMonkey.
  • other-licenses/ - Code that is not under the Mozilla tri-license (e.g. official branding) see http://www.mozilla.org/MPL/ for more info.
  • suite/ - SeaMonkey specific source code.

These directories are included after client.py has been run:

{{ Note("For the directories currently pulled from cvs, it is expected that some of these will be made obsolete and some will be migrated to Mercurial.") }}

Branches

comm-central is branched at various times to provide a stable location for final development of comm-central applications and for security and stability releases. The branches to date are:

Branch Gecko Version Applications Base Tag Date Created
http://hg.mozilla.org/releases/comm-1.9.1/ 1.9.1 Thunderbird 3.0, SeaMonkey 2, Sunbird 1.0, Lightning 1.0 COMM_1_9_1_BASE Thu Oct 22 05:41:21 2009 -0700

The Base Tag is applied to both the comm-central and comm-1.9.1 repositories and shows where the branch actually took place.

See also

Revision Source

<p><strong><code>comm-central</code></strong> is a <a href="/en/Mercurial" title="en/Mercurial">Mercurial</a> repository of the <a class="internal" href="/en/Thunderbird" title="en/Thunderbird">Thunderbird</a>, <a class="external" href="http://www.seamonkey-project.org/" title="http://www.seamonkey-project.org/">SeaMonkey</a>, <a class="internal" href="/en/Calendar" title="en/Calendar">Lightning extension and Sunbird</a> code: <a class=" external" href="http://hg.mozilla.org/comm-central" rel="freelink">http://hg.mozilla.org/comm-central</a>.</p>
<p>The relevant <a href="/en/Tinderbox" title="en/Tinderbox">Tinderbox</a> pages are located at:</p>
<ul> <li><a class=" external" href="http://tinderbox.mozilla.org/Thunderbird/" rel="freelink">http://tinderbox.mozilla.org/Thunderbird/</a></li> <li><a class=" external" href="http://tinderbox.mozilla.org/SeaMonkey/" rel="freelink">http://tinderbox.mozilla.org/SeaMonkey/</a></li> <li><a class=" external" href="http://tinderbox.mozilla.org/Sunbird/" rel="freelink">http://tinderbox.mozilla.org/Sunbird/</a></li>
</ul>
<p>{{ Note("The comm-central code only includes a subset of the code required to build Thunderbird, SeaMonkey and Sunbird. See <a href='\"en/Comm-central_source_code_(Mercurial)\"'>Comm-central_source_code_(Mercurial)</a> for how to get the other required code") }}</p>
<h4>Nightly Builds</h4>
<p>If you're looking for Nightly Builds of comm-central, then see the links for <a class="internal" href="/en/Thunderbird/Thunderbird_Binaries" title="en/Thunderbird/Thunderbird Binaries">Thunderbird</a>, SeaMonkey (TBD) and Calendar (TBD).</p>
<h4>Building</h4>
<p>For the comm-central apps, see the following links:</p>
<ul> <li><a class="internal" href="/en/Simple_Thunderbird_build" title="en/Simple Thunderbird build">Simple Thunderbird Build</a></li> <li><a class="internal" href="/en/Simple_SeaMonkey_build" title="en/Simple SeaMonkey build">Simple SeaMonkey Build</a></li> <li><a class="internal" href="/en/Simple_Sunbird_build" title="en/Simple Sunbird build">Simple Sunbird Build</a></li>
</ul>
<h3 name="comm-central_tree_rules">comm-central tree rules</h3>
<h4>Requirements</h4>
<ul> <li>Do not check in until you have appropriate <a class="internal" href="/en/Code_Review_FAQ" rel="internal">review</a>, including <a class="external" href="http://www.mozilla.org/hacking/reviewers.html" rel="external nofollow" target="_blank" title="http://www.mozilla.org/hacking/reviewers.html">super-review</a> and <a class="link-https" href="https://wiki.mozilla.org/TreeStatus" rel="external nofollow" target="_blank" title="https://wiki.mozilla.org/TreeStatus">approval</a> if needed. Special review instructions to specific comm-central applications and code can be found from the links below:<br> <ul> <li><a class="internal" href="/en/Mailnews_and_Mail_code_review_requirements" title="en/Mailnews and Mail code review requirements">mailnews/ and mail/ specific rules</a></li> <li><a class="external" href="http://www.seamonkey-project.org/dev/review-and-flags" title="http://www.seamonkey-project.org/dev/review-and-flags">suite/ specific rules</a></li> <li><a class="link-https" href="https://wiki.mozilla.org/Calendar:Module_Ownership" title="https://wiki.mozilla.org/Calendar:Module_Ownership">calendar/ specific rules</a></li> <li>Build Config (TBD)</li> </ul> </li> <li>You should be available for the next hour or so in case something goes wrong with your checkin (This is roughly the time it takes to get unit test results from all platforms.</li>
</ul>
<h4>Regressions</h4>
<ul> <li>Automated unit tests must pass</li> <li>Any Leak tests must not regress</li>
</ul>
<p>Any regressions on <a href="/en/Supported_build_configurations" rel="internal">tier-1 platforms</a> are cause for immediate backout. Regressions on tier-2 platforms are usually not cause for backout, but you will be expected to help fix them if needed.</p>
<p>If you think your patch <em>might</em> cause regressions, land on the <a class="link-https" href="https://wiki.mozilla.org/Thunderbird/Infrastructure/TryServer" title="https://wiki.mozilla.org/Thunderbird/Infrastructure/TryServer">Thunderbird Try Server</a> <a class="external" href="http://wiki.mozilla.org/Build:TryServer" rel="external nofollow" target="_blank" title="http://wiki.mozilla.org/Build:TryServer">(read about what a try server is)</a> first.</p>
<h3 name="Pushing_changes_to_comm-central">Pushing changes to comm-central</h3>
<p>See <a href="/en/Mercurial_FAQ#How_do_I_check_stuff_in.3F" rel="internal">How do I check stuff in?</a> for help with hg commit and hg push. If you believe you should have access to mozilla-central but don't know your login details, <a class="link-https" href="https://bugzilla.mozilla.org/enter_bug.cgi?product=mozilla.org&amp;component=Server+Operations:+Account+Requests" rel="external nofollow" target="_blank" title="https://bugzilla.mozilla.org/enter_bug.cgi?product=mozilla.org&amp;component=Server+Operations:+Account+Requests">file a bug</a>.</p>
<ul> <li>Changes must not introduce multiple heads into comm-central.</li> <li>Please try to keep history tidy. A single commit or a few independent changesets are preferable to many "work in progress" changesets which clutter history. Consider using <a href="/en/Mercurial_Queues" title="en/Mercurial_Queues">Mercurial queues</a> to manage patches before checkin.</li> <li>At least the final changeset being pushed should list the bug number and reviewer for the relevant change.</li> <li>Your <em>commit comment</em> must include the bug number and reviewers.  It should contain the summary of the bug or a clear explanation of the fix.</li> <li>If you are not the author of the code, make that clear, preferably using commit -u "Patch Author &lt;<a class=" link-mailto" href="mailto:email@example.com" rel="freelink">email@example.com</a>&gt;".</li>
</ul>
<h3 name="comm-central_code_layout">comm-central code layout</h3>
<p>These directories are included in the comm-central repository:</p>
<ul> <li>build/ - Miscellaneous files used by the build process.</li> <li><a class="external" href="http://mxr.mozilla.org/comm-central/source/calendar/">calendar/</a> - Lightning extension and Sunbird specific source code.</li> <li>config/ - Files required for the comm-central build process.</li> <li>directory/xpcom - An XPCOM wrapper for the LDAP c-sdk. Used for communicating with LDAP servers.</li> <li>editor/ - UI for the Compose window (Thunderbird/SeaMonkey) and the Composer part of SeaMonkey.</li> <li><a class="external" href="http://wiki.mozilla.org/Thunderbird:Code_Layout">mail/</a> - Thunderbird specific source code.</li> <li><a class="external" href="http://wiki.mozilla.org/MailNews:Code_Layout">mailnews/</a> - Source code specific to the <a class="internal" href="/en/MailNews" title="en/MailNews">Mail and Newsgroups part</a> of Thunderbird and SeaMonkey.</li> <li>other-licenses/ - Code that is not under the Mozilla tri-license (e.g. official branding) see <a class=" external" href="http://www.mozilla.org/MPL/" rel="freelink">http://www.mozilla.org/MPL/</a> for more info.</li> <li><a class="external" href="http://wiki.mozilla.org/SeaMonkey:Suite_Directory_Layout">suite/</a> - SeaMonkey specific source code.</li>
</ul>
<p>These directories are included after <a href="/En/Developer_Guide/Source_Code/Getting_comm-central#Checking_out_a_source_tree" title="en/Comm-central_source_code_(Mercurial)#Checking_out_a_source_tree">client.py</a> has been run:</p>
<ul> <li><a href="/en/mozilla-central" title="en/mozilla-central">mozilla/</a> - The Firefox/xulrunner code base pulled from the <a href="/en/mozilla-central" title="en/mozilla-central">mozilla-central</a> repository. See <a href="/en/Mozilla_Source_Code_Directory_Structure" title="en/Mozilla_Source_Code_Directory_Structure">Mozilla_Source_Code_Directory_Structure</a> for more details of its structure.</li> <li><a class="external" href="http://mxr.mozilla.org/seamonkey/source/directory/c-sdk">directory/c-sdk</a> - The <a href="/en/LDAP_C_SDK" title="en/LDAP_C_SDK">LDAP C SDK</a> code pulled from CVS using the static tag '<code>LDAPCSDK_6_0_6_RTM</code>'.</li> <li><a class="external" href="http://mxr.mozilla.org/seamonkey/source/extensions/irc">mozilla/extensions/irc</a> - Code for the Chatzilla extension, pulled from CVS using HEAD.</li> <li><a class="external" href="http://hg.mozilla.org/venkman/" title="http://hg.mozilla.org/venkman/">mozilla/extensions/venkman</a> - Code for the Venkman extension, pulled from hg.</li> <li><a class="external" href="http://hg.mozilla.org/dom-inspector/" title="http://hg.mozilla.org/dom-inspector/">mozilla/extensions/inspector</a> - Code for the DOM Inspector extension, pulled from hg.</li>
</ul>
<p>{{ Note("For the directories currently pulled from cvs, it is expected that some of these will be made obsolete and some will be migrated to Mercurial.") }}</p>
<h3>Branches</h3>
<p>comm-central is branched at various times to provide a stable location for final development of comm-central applications and for security and stability releases. The branches to date are:</p>
<table align="center" border="1" cellpadding="1" cellspacing="1" style="width: 100%;"> <thead> <tr> <th scope="col">Branch</th> <th scope="col">Gecko Version</th> <th scope="col">Applications</th> <th scope="col">Base Tag</th> <th scope="col">Date Created</th> </tr> </thead> <tbody> <tr> <td align="center"><a class=" external" href="http://hg.mozilla.org/releases/comm-1.9.1/" title="http://hg.mozilla.org/releases/comm-1.9.1/">http://hg.mozilla.org/releases/comm-1.9.1/</a></td> <td align="center">1.9.1</td> <td align="center">Thunderbird 3.0, SeaMonkey 2, Sunbird 1.0, Lightning 1.0</td> <td align="center">COMM_1_9_1_BASE</td> <td align="center">Thu Oct 22 05:41:21 2009 -0700</td> </tr> </tbody>
</table>
<p>The Base Tag is applied to both the comm-central and comm-1.9.1 repositories and shows where the branch actually took place.</p>
<h3 name="See_also">See also</h3>
<ul> <li><a class="internal" href="/En/Developer_Guide/Source_Code/Getting_comm-central" title="En/Comm-central source code (Mercurial)">Comm-central source code (Mercurial)</a></li> <li><a href="/en/How_comm-central's_build_system_works" title="en/How_comm-central's_build_system_works">How comm-central's build system works</a></li> <li><a href="/en/Mercurial_FAQ" title="en/Mercurial_FAQ">Mercurial FAQ</a></li> <li><a href="/en/mozilla-central" title="en/mozilla-central">mozilla-central</a></li> <li><a class="link-https" href="https://bugzilla.mozilla.org/showdependencytree.cgi?id=433384&amp;hide_resolved=1">Tracking: issues making development difficult on mozilla-central</a></li>
</ul>
Revert to this revision