Looking For

General Notes

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

Code in the mozilla/browser hierarchy is covered by the Firefox reviewers.

Review Rules

  • Unless there are extenuating circumstances, 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.
  • Super-review is now required where required by the mozilla.org super-review policy.
  • 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. 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 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

Role Name Bugzilla Address IRC nick
Module Owner Dave Townsend dtownsend@oxymoronical.com Mossop
UI Group Mike Beltzner beltzner@mozilla.com beltzner
Alex Faaborg faaborg@mozilla.com faaborg
Mike Connor mconnor@mozilla.com mconnor
Peers Mike Connor mconnor@mozilla.com mconnor
Neil Deakin enndeakin@gmail.com enn
Neil Rashbrook neil@httl.net Neil
Asaf Romano mano@mozilla.com mano
Gavin Sharp gavin.sharp@gmail.com gavin
Benjamin Smedberg benjamin@smedbergs.us bsmedberg
Robert Strong robert.bugzilla@gmail.com rs
Vladimir Vukicevic vladimir@pobox.com vlad

Due to the large and diverse nature of code included in the toolkit module, we have divided large parts of the module up into sub-modules with ownership delegated in order to spread the load appropriately and effectively. The owner or a peer may review patches in the sub-module, 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 Rob Strong, Dave Townsend
Chrome Registry chrome Benjamin Smedberg Neil Rashbrook, Dave Townsend
Breakpad (crash reporter) toolkit/crashreporter Ted Mielczarek Benjamin Smedberg, Mark Mentovai
XUL Language toolkit/content,
toolkit/components/autocomplete
Neil Deakin Neil Rashbrook, Asaf Romano
Add-ons toolkit/mozapps/extensions,
toolkit/mozapps/xpinstall,
toolkit/mozapps/plugins
Dave Townsend Rob Strong
Installer toolkit/mozapps/installer Rob Strong Jim Mathies
Application Update toolkit/mozapps/update Rob Strong Dave Townsend
Download Manager toolkit/components/downloads,
toolkit/mozapps/downloads
Shawn Wilsher Edward Lee
Password Manager/Satchel toolkit/components/passwordmgr,
toolkit/components/satchel,
Justin Dolske Paul O'Shannessy
XULRunner xulrunner Mark Finkle Benjamin Smedberg, Ted Mielczarek
Themes toolkit/themes Dão Gottwald Ryan Flint, Gavin Sharp
Locales (build/packaging only) toolkit/locales Axel Hecht Benjamin Smedberg

In addition a large number of small components and other pieces are loosely owned and should preferably be reveiwed by the following people:

Code Covered Main Reviewer other Reviewers
toolkit/components/aboutmemory Vladimir Vukicevic
toolkit/components/apppicker Jim Mathies
toolkit/components/alerts Shawn Wilsher
toolkit/components/console
toolkit/components/contentprefs Myk Melez
toolkit/components/cookie Mike Connor
toolkit/components/exthelper Mark Finkle Joey Minta, John Resig
toolkit/components/faststart Vladimir Vukicevic
toolkit/components/feeds Robert Sayre
toolkit/components/filepicker
toolkit/components/help
toolkit/components/microformats Mike Kaply Robert Sayre
toolkit/components/parentalcontrols Jim Mathies
toolkit/components/printing Neil Rashbrook
toolkit/components/search Ryan Flint Gavin Sharp, Mike Connor
toolkit/components/url-classifier David Dahl Brian Ryner
toolkit/components/urlformatter Dietrich Ayala Mike Connor
toolkit/components/viewconfig
toolkit/components/viewsource
toolkit/components/typeaheadfind Mike Connor Masayuki Nakano, Asaf Romano
toolkit/mozapps/handling Shawn Wilsher
toolkit/mozapps/preferences Mike Connor Asaf Romano
toolkit/mozapps/shared Rob Strong Dave Townsend
toolkit/obsolete
toolkit/spatial-navigation Doug Turner
toolkit/system/dbus Karl Tomlinson
toolkit/system/gnome Karl Tomlinson
toolkit/system/osxproxy Josh Aas
toolkit/system/unixproxy Karl Tomlinson
toolkit/system/windowsproxy Jim Mathies

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.