Hacker News new | ask | show | jobs
by jgraham 4431 days ago
There is Opera Critic [1], which was originally developed for working on the Opera web browser and subsequently open-sourced. I have used it (with a few patches) in conjunction with GitHub to fix many of the issues that are mentioned in the article. In particular it has the following features:

* Works with git. There isn't any VCS abstraction so if you want to use it with mercurial or whatever you're out of luck.

* The review tool (typically) owns the repository that code is pushed to (obviously this is a bit different when integrated with GitHub). Starting a review is typically something like "git push critic branch:r/branch".

* Because reviews are just branches you get all the features that the VCS implicity provides but patch based systems have to replicate (e.g. interdiffs) for free.

* Because reviews are just branches, multiple people can push to the same review so if you want e.g. a database expert to make the database changes for a particular change that is otherwise mostly written by a UI expert, that's possible.

* Assignment to reviewers is based on filters i.e. the tool picks the right reviewer for each change. There may be more than one reviewer for different parts of a single review request (e.g. where you have different owners for the database and ui code and a patch touches both those parts will be reviewed by different people). Reviews can be assigned to specific individuals when required.

* Review progress is tracked per commit and per file, so you can do long reviews in pieces rather than all at once.

* When issues are raised on particular lines of code it optimistically assumes that any subsequent push that touches those lines addresses the issue. If it wasn't addressed the reviewer reopens the issue. This works surprisingly well in practice.

* Rebases of the review branch are handled through "equivalent merge commits", which means that you retain all comments and progress from before the rebase.

* the UI is generally very "engineer designed" and won't win any beauty contests. But it has essential features that some other tools inexplicably lack, such as side-by-side diffs and syntax highlighting.

[1] https://critic-review.org

1 comments

I found the website very lacking. It's cool that I can see the tool in action. But some context and explanations would be much appreciated.
Agreed. Unfortunately no one involved with the project has the right combination of skills and motivation to do a nice introductory website. It's a pity because technically the tool is great, but the PR/design side is almost entirely lacking.