One of the problems we’ve been seeing is that our code review procedure doesn’t always scale well. We have a fairly large number of committers, and a pretty liberal policy about committing new code to trunk — but we also need things to work consistently so we can keep the production code up to date.
Traditionally, code that’s been committed to SVN gets reviewed offline by me or Tim before we push things out live. If we find problems, we fix them up or revert the code to be redone correctly later.
There’s a couple big problems with this:
- We can’t easily coordinate our notes; I can’t see what Tim’s reviewed and what he hasn’t. We end up either duplicating effort or missing things.
- If we’re both busy, sick, on vacation, etc sometimes it just doesn’t get done!
- If we want more people to pitch in, coordination gets even harder.
In my spare time over the last few weeks I’ve thrown together a little CodeReview extension for MediaWiki to help with this. It pulls the SVN revision data as commits are made and presents an interface on the wiki where we can see what’s been reviewed, tag problems, and add comments for follow-up issues.
Yesterday I went ahead and put it live:
The UI’s still a little rough, and not all linking and metadata features are implemented; Aaron’s going to help polish it up. But it’s already useful, and I’ve got some revisions flagged as fixme…
Feel free to try it out, and add notes for things which need work.
Currently comments are open to any registered user on the wiki; status changes and tagging updates are limited to the ‘coder’ group, which is viral — any coder can make another user a coder.