GSoC/GCI Archive
Google Summer of Code 2009

Review Board

Web Page: http://www.review-board.org/wiki/Summer_of_Code_Ideas

Mailing List: reviewboard@googlegroups.com

Review Board is a powerful open source web-based code review tool that offers developers an easy way to handle code reviews. It's used in several open source projects, including parts of KDE, as well as many startups and large companies, including Twitter and Yahoo, helping them to write better code and more stable products.

Review Board is built on top of Python and Django. It works on Linux, Windows and MacOS X, and supports a wide variety of source code management systems, including Subversion, CVS, Perforce, Git, Mercurial, Bazaar, and ClearCase.

Projects

  • Diff Viewer and Policy Support: Pleasing everyone. Proposal for improvements in Diff Viewer, in order to enhance user experience e diminish mistakes during review process. For admins a Policy System implementation, with a customizable interface with a Domain Specific Language backend. Advanced users can then write policies based on the DSL and a hook-based system supporting arbitrary rules on any actions.
  • Review Board Eclipse Integration This project integrates Review board into Eclipse. The Eclipse plugin will be done as a Mylyn connector. It will have the following features: * Support for connections to multiple Review Board instances * Querying and listing of review requests * Showing and editing of review request attributes and comments * Reviewing without leaving the IDE * Posting new review requests * Integration with Eclipse version control plugins
  • Signals-based notification API and WebHooks support ReviewBoard's increasing adoption across many diverse development environments has led to a need for integration with other tools that has outgrown its development capacity and focus, driving a growing need for extensibility. There is already an HTTP API and support for third-party extensions is on the way, but we still need a standard way to support event-based integration with other apps. This project aims to fill that gap by implementing support for WebHooks [1].