Edgewall Software

Code Review in Trac

Changeset commenting

  • #2035 requests Changeset commenting which would allow a rudimentary form of code review.
  • Status: There has been no development on this specifically. Fundamental generalizations of the Trac core code may be required for an acceptable implementation in core Trac.

Trac Code Review Plugins

Overview

Plugin Status Last Update Compatibility
Code Comments Plugin Maintained 2014 ≥ Trac 0.12
CodeReviewerPlugin Maintained 2015 ≥ Trac 0.12
#ExoWebCodeReviewPlugin Unmaintained? 2010 Incompatible with Trac ≥ 0.11
#PeerReviewPlugin Unmaintained? 2010 Branches 2.1 and 2.2 are ports to Trac 0.11
#CodeReviewPlugin Unmaintained 2009 Trac 0.11
#GvnTrac Unmaintained? 2009 Trac 0.11?

ExoWebCodeReviewPlugin

  • Workflow:
    • Allows creating reviews per changeset
    • Reviews can be assigned to multiple reviewers
    • Review status can be one of
      • No need to review
      • Awaiting review
      • Undergoing review
      • Completely reviewed
    • Each reviewer gets one comment text field
  • Features:
    • A new main navigation tab to create and view reviews
    • Permissions support
    • Timeline integration
    • Email notification support
  • Implementation details:
    • Uses a custom DB table for reviews and comments, and an second custom DB table to cache the path prefix of reviewed changesets
    • Still uses ClearSilver templates

PeerReviewPlugin

  • Workflow:
    • Allows creating reviews by selecting (line ranges in) files
    • Reviews can be assigned to multiple reviewers
    • Reviewers can vote for or against acceptance
    • Reviewers can comment on specific lines of code
  • Features:
    • A new main navigation tab to create and view reviews
    • Permissions support
    • Timeline integration
  • Implementation details:
    • Uses four custom DB table for reviews, assigned reviewers, selected files and comments
    • Templates were converted to Genshi in the 2.2 branch

CodeReviewPlugin

  • Workflow:
    • Simply allows commenting on a changeset
    • Changesets can be marked as accepted or rejected
  • Features:
    • Simple permissions support
  • Implementation details:
    • Uses a Genshi template stream filter to modify Trac's changeset page
    • Uses a custom DB table for changeset comments
      • (A simple hack is used to set it up lazily. There is no proper IEnvironmentSetupContributor implementation.)

GvnTrac

This plugin used to be hosted at http://projects.matt-good.net/trac/gvntrac, but is no longer available.

  • Workflow:
    • Uses Gvn changebranches for reviews.
      • (Gvn is a special Subversion client adding support for special code review branches, restricting this to Subversion repositories.)

Non-Trac Code Review Solutions

Subpages

Last modified 9 years ago Last modified on Jul 21, 2015, 6:46:37 PM
Note: See TracWiki for help on using the wiki.