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.
- 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.
- 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|
(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.