You are currently viewing a snapshot of taken on April 21, 2008. Most of this content is highly out of date (some pages haven't been updated since the project began in 1998) and exists for historical purposes only. If there are any pages on this archive site that you think should be added back to, please file a bug.

General Notes

This document covers all patches to the mozilla/toolkit, mozilla/chrome, mozilla/xulrunner and mozilla/storage hierarchies. For questions or concerns arising from this document, please direct questions to the dev-planning mailing list/newsgroup.

Review Rules

  • Wherever possible, significant patches in a certain area should be reviewed by one of the listed sub-module owner/reviewers.
  • Peers may grant review in any area covered by toolkit, provided they feel confident in their knowledge of the code being changed.
  • One review is sufficient in most cases. If the first reviewer feels that the patch would benefit from additional reviews, they should request a second review from an appropriate person.
  • Sub-module peers may only grant review in the listed sub-module
  • Significant UI changes should get UI review from someone in the UI group, along with code review.

Unit-Test Rules

  • All patches must include unit tests which are run during make check. Once unit tests are committed, the in-testsuite+ flag should be set on the bug.
  • Unit tests must be included in patches and reviewed just like any other code.
  • If running the test during make check is not possible, consult with Robert Sayre to determine whether another test system is available.
  • If a unit test framework is needed but is not yet available, the developer should write appropriate test code and commit it. A bug should be filed on the needed test framework. The in-testsuite? flag should be set on the bug until the framework has been completed and the test code is running automatically.
  • Certain build-config or tooling bugs which don't affect the actual product cannot be usefully tested. These bugs should have the in-testsuite- flag set.

Individuals and Roles

Toolkit Technical Lead Benjamin Smedberg (bsmedberg)
UI Group Mike Beltzner (beltzner), Mike Connor (mconnor)
Peers Mike Connor (mconnor), Neil Deakin (enndeakin), Scott MacGregor (mscott), Neil Rashbrook (Neil), Asaf Romano (Mano), Gavin Sharp (gavin), Robert Strong (rstrong), Vladimir Vukicevic (vlad)
Sub-module Peers Mark Finkle (mfinkle), Ted Mielczarek (luser), Masayuki Nakano, Robert Sayre (sayrer), Seth Spitzer (sspitzer), Dave Townsend (Mossop), Shawn Wilsher (sdwilsh)

Due to the large and diverse nature of code included in the toolkit module, we have divided responsibilities by sub-module, in order to spread the load appropriately and effectively. The owner or a peer may review patches anywhere in toolkit, provided they feel confident in their knowledge of the area in question.

Sub-Module Code covered Owner Other Reviewers
Toolkit bootstrapping and startup toolkit/xre, toolkit/library, toolkit/profile, toolkit/components/startup, toolkit/components/commandlines, toolkit/components/remote, toolkit/components/build Benjamin Smedberg Darin Fisher
Breakpad (crash reporter) toolkit/crashreporter Ted Mielczarek Mark Mentovai, Benjamin Smedberg
Toolkit general UI bits toolkit/content, toolkit/components
(for those not covered elsewhere)
Mike Connor Neil Deakin, Neil Rashbrook, Asaf Romano
General Unit Testing * Robert Sayre Benjamin Smedberg
Extension Manager toolkit/mozapps/extensions Rob Strong Dave Townsend
Installer toolkit/mozapps/installer Rob Strong Benjamin Smedberg, Seth Spitzer
Find Toolbar toolkit/components/typeaheadfind Mike Connor Masayuki Nakano, Asaf Romano
Locales toolkit/locales
(build/packaging/policy stuff, en-US string approvals are ui-review fodder)
Axel Hecht Benjamin Smedberg
Prefwindow toolkit/content/widgets/preferences.xml, toolkit/mozapps/preferences Mike Connor Asaf Romano
Download Manager toolkit/components/downloads, toolkit/mozapps/downloads Shawn Wilsher Edward Lee, Mike Connor, Christian Biesinger
Password Manager/Satchel toolkit/components/passwordmgr, toolkit/components/satchel, Asaf Romano Justin Dolske, Mike Connor
Software Update toolkit/mozapps/update Seth Spitzer Benjamin Smedberg, Rob Strong
GNOME Integration bits toolkit/components/gnome Robert O'Callahan  
Chrome Registry chrome Benjamin Smedberg Neil Rashbrook
Storage storage Shawn Wilsher Vladimir Vukicevic, Mike Shaver
XULRunner xulrunner Benjamin Smedberg Mark Finkle, Ted Mielczarek

Note: the code in toolkit/components/places is owned by the Firefox team. It lives in the toolkit/ directory so that it is correctly linked.