Buildbot contains a lot of special-purpose code - support for nine version-control systems as of this writing, with lots of steps, change sources, status clients, and so on. No one person can understand all of this code deeply enough to maintain it. So, Buildbot is divided roughly into "components", and each component has a set of maintainers.
Components
Buildbot's components are loosely defined. Many components correspond to a few source files or classes, but others correspond to more nebulous ideas like support for a particular operating system or project-wide roles. Each component has a status, which indicates its current level of support:
- Supported: This will be a part of Buildbot forever. If no maintainers are available, the core committers will keep this component operational.
- Maintained: Someone is actively looking after this component. This component is kept in tip-top shape by an active maintainer, and bugs are fixed quickly.
- Patched: Someone is watching bugs for this component and can merge fixes. A patched component will likely remain operational, but will probably not see new development, and may contain serious bugs if nobody can figure out how to fix them.
- Orphaned: This component works, but is not actively maintained and may be removed from Buildbot if it accumulates too many bugs. Nobody is looking after an orphaned component, and bugs are unlikely to be fixed.
- Last-Rites: This component is slated to be removed in the given release, unless a maintainer steps forward. Orphaned components are given last rites when they develop too many unsolved bugs.
The canonical list of the current components can be found in MAINTAINERS.txt in the source tree.
Most components correspond to tags in Trac, and bugs are tied to components using these tags, via the BugWrangling page.
Maintainers
Maintainers are people who are familiar with the component, at any level from "experienced user" to "hacker". As a group, they are the contact point for relevant patch review, bug fixing, and even new development.
The canonical list of the current maintainers can be found in MAINTAINERS.txt in the source tree. Core developers will encourage contributors and users to become maintainers, and will add to MAINTAINERS.txt as necessary.
![[Buildbot Logo]](/chrome/site/header-text-transparent.png)