wiki:PeerReviewPlugin

Version 40 (modified by anonymous, 16 years ago) (diff)

--

Distributed Peer Review Plugin

Description

This system uses Trac's newly implemented plugin system allowing an integrated distributed peer review system for software developers. With Trac's current set of features, a peer review plugin fits nicely into its lineup. This plugin's goal is to eliminate the need for time consuming code review meetings by giving developers the ability to review code in a user-friendly web-based environment during their own time. This program is written primarily in python using many of Trac's plugin components. The interface integrates seemlessly with Subversion allowing users to browse the repository for reviewable files. Clearsilver is used as the server-side web-based scripting language with Javascript and AJAX to modernize the user interface. This program uses Trac's SQLite database and requires no changes to the user's original Trac installation.

Bugs/Feature Requests

Existing bugs and feature requests for PeerReviewPlugin are here.

If you have any issues, create a new ticket.

Recent Updates

04/25/2006 - This is our v1.0 release. We've successfully completed testing and fixed every bug we found. We added some screenshots to the page (bottom), so you can check out some sample screens from our plugin.

04/07/2006 - This update should fix almost all the problems. We've done extensive testing and everything should be stable. We've got some great bugs from the community and we think we've fixed them all. Right now we have full support for the latest versions of Internet Explorer, Firefox, Opera, Safari, and Mozilla. We've found bugs in Konqueror and as of now we have no plans on fully supporting it.

03/28/2006 - We updated the repository with a lot of bug fixes. The bug tickets opened here have all been resolved. Thanks for the feedback. As of now, the Manager Options page has bugs. We will be updating that page with a new version in the next couple of days.

Performing a code review Creating a code review - selecting line numbers

Download

Download the zipped source from [download:peerreviewplugin here].

Source

You can check out PeerReviewPlugin from here using Subversion, or browse the source with Trac.

Example

See user documentation

Recent Changes

18288 by Cinc-th on 2021-05-12 06:30:30

PeerReviewPlugin: improvements to ticket creation:

  • You may specify a list of review states for which the ticket creation section is shown.
  • A ticket template may be provided as a wiki page CodeReview/TicketTemplate
  • Ticket creation section is foldable now
  • Added documentation to plugin
18287 by Cinc-th on 2021-05-11 11:52:23
PeerReviewPlugin: improvements to changeset reviews:

  • Allow to create another changeset review when old review was closed.
  • Show pin icon in lines with comments
  • Hide/show comments

Some minor improvements to presentation like titles for revision links.

Refs #14007

18286 by Cinc-th on 2021-05-10 10:49:44
PeerReviewPlugin: review creation for a changeset failed if the changeset contained any deleted files.

Refs #14007

(more)

Author/Contributors

Author: Team5?
Contributors:
sontek
djeebus

User Comments

Got some comments about our plugin? Leave them right here.

Comment by anonymous on Sun 23 Apr 2006 08:36:39 EST

Can you put a screenshot? Thanks!

Comment by Team5 on Wed 26 Apr 2006 06:21:52 EST

We sure can - see below. Thanks for the suggestion.

Comment by Tim on Mi 10 mai 2006 21:22:15 EST

We use Trac and Subversion, but when we do a code review, the author of the code changes sends the source files he changed to other engineers via email, and they place these files into their working directory, and use subversion diff to compare the working directory with the latest source in repository. All of the changes made by the author are then very clear, and comments can be sent back to the author via email, incorporated/discussed, and then new code changes sent out for review. Obviously, this approach works, but would be much better if it was integrated into Trac. Anyway, I have looked at your documentation, and unless I am mistaken you require the code changes to be committed into repository first, then your code is used to mark each line that was changed, and needs to be reviewed. Is this correct ? If so, do you have any plans to store the code changes into a temporary location, and use subvresion diff to compare with the HEAD revision in the repository, so that the changes are very clear to the person reviewing the code ?

Comment by szm on Ma 30 mai 2006 04:31:24 EST

This plugin would be much more interesting if it could compare svn diffs rather than having the user mark the changes manually, which is error prone, and difficult to compare against the previous version.

Comment by anonymous on Vi 02 iun 2006 18:13:27 EST

It seems that the plugin interferes with the "source:" form of wiki links. These links do only return a div element, like it may be suitable for ajax requests. Is there a workaround?

Comment by anonymous on Vi 02 iun 2006 18:17:26 EST

hm. and "Add comment" implemented as GET request will lead to the above for people like me, who hit reload every once in a while.

Comment by moisei _ at _ gmail.com on Du 02 iul 2006 07:50:19 EST

Codestriker has really good concept on the code-review process. They use a "source code diff" as the item of review rather than "part of code" as it is done in this plugin. Do you have any plans to move in this direction? I wish to have our code review integrated with trac and I even raised some discussion on this topic.

Comment by anonymous on Tue Oct 17 00:52:10 2006

So is this plugin going to be updated to v0.10 and beyond? And will it be updated to work with changesets as opposed or in addition to revisions?

For peer reviews to be most successful, the actual changes to the files should be highlighted automatically by the revision control system (which the changeset view already does), and allow annotations on the entire file.

Comment by anonymous on Tue Oct 17 22:59:39 2006

So is this plugin going to be updated to v0.10 and beyond? And will it be updated to work with changesets as opposed or in addition to revisions?

For peer reviews to be most successful, the actual changes to the files should be highlighted automatically by the revision control system (which the changeset view already does), and allow annotations on the entire file.

Comment by anonymous on Thu Dec 7 02:22:25 2006

The plugin would be usable for me if:

  • I could use diffs of arbitrary revisions and/or paths in the repository (tags, trunk, branches etc.)
  • I could also use plain source at specific revision at the same time (like for initial review of old code)
  • The commenting process is more like http://gplv3.fsf.org/comments/gplv3-draft-2.html where its indicated which are is a "hot" area and much discuessed. Maybe also with an additional option to have colors not for heat but for age of the latest comment(s)

Comment by tag@… on Thu Dec 7 05:30:33 2006

I'm working on driving a project to replace this. It will have a better functional design, and be more useful to organizations that actually need to implement a real code review process. The goal is to build something we (the folks involved) can all use at our respective organizations of employment.

The project is only in the deciding what needs to be done phase (discussions and requirement gathering began 2006/12/04).

It lives here: http://www.blisted.org/wiki/projects/JianCha

Comment by Anonymous on Sat Feb 16 10:10:33 2008

Just for a reference project -- you might take a look at "Review Board" (http://code.google.com/p/reviewboard/). It looks like an excellent open source, python-based code-review project, which allows integration with Subversion, Mercurial, and several other revision-control systems. Perhaps it wouldn't be difficult to re-use some of the code from review board in this plugin.

Attachments (2)

Download all attachments as: .zip