ReviewBoard
From MozillaWiki
Summary
You should probably be looking at this new page: https://wiki.mozilla.org/Auto-tools/Projects/MozReview
- Production url: https://reviewboard.mozilla.org/
- Docs: https://mozilla-version-control-tools.readthedocs.org/en/latest/mozreview.html
Glossary
- Code Review Tool
- A tool (group of tools) that facilitate code review process.
- Changeset
- A unit of code changes, e.g. Mercurial changeset or Git commit.
- Feature
- A number of related changesets. Can be represented by Mercurial bookmark or Git branch.
- Review Request
- A Feature that was submitted for code review and associated with particular Bugzilla bug.
Requirements
- In order to submit a Feature for review, user SHOULD NOT need to install any additional software beyond Mercurial client.
- User MUST be able to submit her Feature for review by issuing a single CLI command.
- User MUST provide a Bugzilla bug number when submitting her Feature for review.
- User MUST be able to assign a reviewer for Review Request.
- Code Review Tool MAY automatically suggest a reviewer.
- Review Request URL MUST be automatically attached to a corresponding Bugzilla bug.
- Review Request URL SHOULD NOT change when Review Request is later updated with new Changesets.
- Reviewer MUST be able to see individual Changesets of a Review Request.
- Reviewer MUST be able to comment on individual lines of Changesets.
- Reviewer MUST be able to comment on a whole Feature.
- Reviewer SHOULD be able to see a squashed diff of a Review Request.
- Reviewer MUST be able to mark Review Request as reviewed.
- Reviewer MAY be able to mark Review Request as super-reviewed.
- Review Request status MUST be visible and up-to-date in a corresponding Bugzilla bug.
- Code Review Tool SHOULD provide syntax highlighting.
- Code Review Tool MUST be able to handle tens of thousands of Review Requests during it's lifetime.
- Code Review Tool MUST preserve a history of past Review Requests, their Changests, comments etc.
- Code Review Tool MUST provide an HTTP API for all its features.
- Code Review Tool SHOULD be hosted at <something>.mozilla.org.
- Code Review Tool MAY eventually be a part of a bigger system related to continuous integration.
- Code Review Tool MAY NOT rely on Mercurial features that are not used by most of the Mozillians, e.g. bookmarks and MQ.
- Feature MAY contain Changesets that should be ignored during review.
- User SHOULD be able to ignore such Changesets when creating Review Request
- Previously ignored Changesets SHOULD be available for review later as a part of a separate Review Request.
- The mozilla-central repository MUST remain hosted on hg.mozilla.org.
- The mozilla-central repository MUST remain a Mercurial repository, not Git.
- Review Request MUST be automatically updated when new Changesets are pushed for the corresponding Feature.
- Code Review Tool MUST provide usage data to engagement tracking systems. (mhoye)