We can host Review Board for you! Give us a try at RBCommons.

November 15, 2011

chipx86
New Review Board Security Releases: 1.5.7 and 1.6.3

It was brought to our attention today that Review Board 1.5.x and 1.6.x had a security vulnerability involving browser-side script injection in the diff viewer and screenshot pages. We take such things seriously, and are putting out a couple of releases to fix it. We strongly advise everyone to update, especially if you're running a public server.

Review Board 1.5.7 and 1.6.3 have been released. If you're running 1.6.x, just upgrade as normal, but if you're running 1.5.x, you need to upgrade by doing:

$ sudo easy_install -U ReviewBoard==1.5.7

Otherwise, you'll automatically upgrade to 1.6.x.

Thanks to Damian Johnson for letting us know about this vulnerability and providing a patch to fix it.

Comments

November 10, 2011

chipx86
Review Board 1.6.2 released

Review Board 1.6.2 is out. It's a bug fix release that takes care of several issues people have hit. In particular, it should have a proper Apache WSGI configuration for subdirectory installs out of the box, some SCM integration fixes, browser compatibility improvements, and various other things.

We also have a couple bits of new API for those who want to automate review group creation, or archive deprecated repositories.Check out the release notes for the full list.

Comments

September 26, 2011

chipx86
RBTools 0.3.4 released

RBTools 0.3.4 is out. It features an authentication fix for users on RBCommons, fixes for --guess-summary with newlines on Git, solves diff uploading problems on Python 2.7, and adds a new --change-description parameter.

Full release notes are available.

Comments

September 10, 2011

chipx86
Review Board 1.6.1 released

Hot on the tails of 1.6, we have an important security update and bug fix release. 1.6.1 bumps our required Django version to 1.3.1, which contains a number of important security fixes.

It also fixes the counters bug that many people have noticed in the dashboard, where the number of review requests is listed as 0 or a negative number. This was caused by an incorrect default value set when upgrading. Upgrading to 1.6.1 will fix this default, and reset the counts for all users. You should see correct values the next time you use the dashboard.

Release notes are available.

Comments

September 5, 2011

chipx86
Review Board 1.6 released

That's a wrap, people. Review Board 1.6 is done, and ready to be installed.

1.6 is a major release, which focuses on better review workflows, faster reviews, access control, generic file attachments, speed improvements, and much, much more. The entire list of features are covered in our release notes.

Before upgrading, we recommend that you back up your database and your site directory, in case anything goes wrong. If you do have problems, you can reach us on our mailing list.

From here on out, we'll be focusing on Review Board 1.6.x releases alongside the upcoming 2.0 release, which will feature support for using third party extensions.

Note: If you're staying with Review Board 1.5.x releases, you will need to be careful how you upgrade to new 1.5.x releases. Instead of the usual:

$easy_install -U ReviewBoard
You will need to do:
$ easy_install -U ReviewBoard==version

Where version would be 1.5.6 or whatever version you're upgrading to. Otherwise, you will end up upgrading to Review Board 1.6.

Again, let us know if you hit any issues. A lot has changed in this release, and we'll probably be shaking out a few bugs with the new features over the next few point releases.

Comments

August 20, 2011

chipx86
Review Board 1.5.6 released

Review Board 1.5.6 is out the door, packed with some good fixes and a couple small feature additions. Many of these are fixes backported from the in-development 1.6 releases.

Of note are fixes for caching large diffs/files, fixes for screenshot captions on drafts, performance improvements in syntax highlighting (if you haven't installed recently or upgraded Pygments), and support for Fedora Hosted as a hosting service.

See the release notes for the complete list.

Comments

August 16, 2011

chipx86
RBTools 0.3.3 released

RBTools 0.3.3 is out the door, and it's a biggie. There's fixes and goodies for pretty much everybody.

Git received a lot of fixes in this release, as did post-review itself. One of the biggest set of changes, though, that I'd like to call to attention is Jan Koprowski's wonderful work in rewriting our Clear Case support. He put in a lot of effort and fixed a number of problems with the old implementation. Thanks Jan!

We're hard at work on some large-scale changes to RBTools. The 0.4.0 release is in progress, and it'll form the foundation of the 1.0 release. Soon we'll have a new set of tools that can be used to interact with Review Board, and a Python API that developers can use to talk to Review Board. Exciting stuff! Stay tuned.

For now, see the release notes for the full list of changes.

Comments

July 21, 2011

chipx86
Review Board 1.6 RC2 released!

So.. close..

Review Board 1.6 RC2 is out the door and packed full of fixes, polish, and a few new features that snuck in.

Yes, we may have done a bit more in this release than we anticipated, but it's turned out really well, and will make for a strong final 1.6. We've fixed a number of usability problems (losing changes when leaving the page or accidentally canceling), added some great new features, improving the API, and fixing a good handful of bugs.

Some of the new features include:

  • File attachment drag-and-drop. Files can now be dragged and dropped onto the page and uploaded as either screenshots or file attachments. The UI for drag-and-drop has greatly improved.

  • Close descriptions. After discarding a review request or marking it as submitted, you can leave a description. You can use this to tell what revision it was committed in, or why the change was discarded. Up to you!
  • Confirmation before accidentally losing changes. Ever accidentally hit cancel or navigate away from a page when typing a new description? Now you'll be prompted before you lose what you worked on.

Those are a few of the user-facing improvements made, but there are many improvements for administrators as well, including HTTP Basic Auth support when accessing Git repositories, Perforce stunnel support, and better instructions when things go wrong (new Manual Updates pages).

For the full list, see the release notes.

We're frozen at this point for the final release. Only critical bug fixes will go in. Otherwise, we're working on docs, and should be done with the release soon. So if you're planning to upgrade to 1.6, please give RC2 a try, because it won't be much different from the final 1.6.

Comments

June 23, 2011

chipx86
Review Board 1.6 RC1 released

One step closer to the finale. Tonight we released Review Board 1.6 RC1, which is full of bug fixes and some fantastic new features.

The highlights of this release are file attachments, private profiles, Private GitHub Organizations, and performance enhancements. Let's break a couple of those down.

The file attachment support makes it possible to upload any type of file to a review request. Tarballs containing important resources to commit that can't appear in the diff viewer, log files, sample data, or anything else. Reviewers can add a comment on the file, which will show up in the review.

Private profiles allow users to prevent other users from seeing their e-mail address on their user page or through the API. The name is also stripped from both locations, though not from review requests themselves. This feature is mostly geared toward open source projects.

There's also many bug fixes and improvements. All of which can be found in the release notes.

We'll be polishing things up, fixing a couple more bugs, and then getting the final 1.6 out the door hopefully soon. Stay tuned, and let us know if you hit any problems!

Comments

May 9, 2011

chipx86
Review Board 1.6 beta 2 released

UPDATE: 1.6 beta 2 is re-released! We had to pull the update due to some PostgreSQL regressions and an annoying visual problem on every page. Whether you downloaded 1.6 beta 2 before or are on 1.6 beta 1, grab this update!

Fresh out of the oven is the new 1.6 beta 2 release. It smells of warm chocolate chip cookies and awesome new features. Some of the key highlights:

  • Basic issue tracking. Reviewers can mark a comment as a defect in the code, and reviewers will get a handy UI under the comment for quickly marking that defect as resolved. It's like replying with "Fixed," but with less typing!
  • Quick search. Every install now has a search field with quick search enabled. Type some part of a user's name, a group name, a review request summary, or a review request ID, and immediately search results will appear below the box.
  • Better review draft banners. The draft banners now stay on screen while any part of a review is being shown. No more hunting for the top of the review for the banner.

There's way more in this release, but those are some of the most common user-visible changes. Much work has been put into this beta, from us and from many contributors, so please check it out.

See the release notes for more information.

We plan for one more beta/RC before the final release with a few more features and fixes.

Comments

March 28, 2011

chipx86
Review Board 1.5.5 released

Review Board 1.5.5 is out, which is a pretty standard bug fix release with a variety of fixes here and there, plus a new and convenient link on the Add/Change Repository pages to show the current SSH key.

There are some good fixes for crashes that could happen in rare occasions in the diff viewer and admin UIs, fixes to image fetching in HTML e-mails, fixes for conflicting change numbers across multiple Perforce repositories, and more.

One real important fix, which is the main reason for tonight's release, is that one of our dependencies, python-dateutil, recently released a new version that was only compatible with Python 3. Due to Review Board requesting the latest and greatest, we'd attempt to install it, which would cause problems. If you've recently tried installing Review Board (just over the past couple of days) and have hit strange errors, try finding and removing your python_dateutil directory and install Review Board 1.5.5.

Release notes are available with the complete list of fixes.

Comments

February 24, 2011

chipx86
Review Board 1.6 beta 1 released

Finally, definitive proof that when I don't sleep, good things happen.

Tonight (this morning?) we've released Review Board 1.6 beta 1, and there's a lot of awesome things for users and administrators alike.

Prior to 1.6, administrators that wished to limit access to repositories for different users (say, main engineering and contractors) would need to set up different Review Board deployments, which means double the maintenance and upgrade work. Anyone with access to a Review Board server had access to everything on it. No longer.

1.6 introduces access control, allowing administrators to create invite-only groups, hidden groups, and limit repository access to certain users/groups. These are all set up on the Group and Repository database pages in the administration UI. Now, you can ensure that people have access only to what they're allowed access to.

We've put together a special form of access control: Local site divisions. This is a special feature still undergoing development. it allows a single Review Board instance to be split up into different divisions that each have their own list of users, repositories, groups, and review requests. Handy for giving QA, engineering, and contractors their own separate sites, for instance. Users can only view their site (and therefore the dashboard, review request lists, groups, repositories, etc.) if they belong to that site, and it's up to administrators to decide that. This is an experimental feature and will undergo continued development over the next couple releases.

On top of all that, we've greatly enhanced our authentication backend support. Companies or organizations who have developed custom authentication backends in the past know how much a pain it is to use them with Review Board. We've fixed that in 1.6. Review Board now scans for authentication backends that comply with the new API and shows them in the list alongside Active Directory, LDAP, etc. Authentication backends can provide their own settings forms, can list the things they support (changing e-mail addresses or passwords, for instance), and then handle those types of changes.

Not to be left out, we have some great features for users as well. One-click Ship It!, collapsible reviews, Plastic SCM support, improved user pages, and user info bubbles, just to name a few.

For the full list of features in 1.6, see the release notes.

Our goal is to get through the beta cycle fast and get the final 1.6 release out the door in a couple months time. If you're planning to beta test 1.6, please let us know if you run into any problems (or even if things are working well).

Comments

February 20, 2011

chipx86
Review Board 1.5.4 released

Review Board 1.5.4 is out the door, with some good bug fixes and new API functionality some people have been asking for.

We've extended the new API to bring back support for updating change numbers on review requests, and to update review requests based on change numbers. The next release of post-review will use this when working with Perforce.

There's also new API for creating, modifying, and removing repositories, which should help for large deployments tracking hundreds of Git repositories. The Repository API documentation go into some detail on this.

Along with that, we have several small fixes for problems reported since 1.5. Most only affect certain users.

Release notes are available with the complete list of fixes and improvements.

Comments

February 9, 2011

chipx86
RBTools 0.3.2 released

Perforce users who switched to Review Board 1.5.2 and RBTools 0.3.1 this week hit an unfortunate problem updating review requests with change numbers. It turns out there's a validation error in our new API involving change numbers, which we'll be getting to soon.

For now, RBTools 0.3.2 is out the door, and works around this breakage by falling back to the old API. If you're on Perforce, you'll want to upgrade and make sure things are back to normal. Sorry about that!

There's also a fix for parsing CVSROOTs that don't have a username in the path, and choosing Mercurial over Perforce in a Perforce repository when there's an existing Mercurial user configuration.

As always, release notes are available.

Comments

February 7, 2011

chipx86
Review Board 1.5.3 released

Another release tonight! This time, Review Board 1.5.3.

After our 1.5.2 release, some users hit issues with the new SSH infrastructure. In particular, Windows users, CVS users, and Bazaar users hit different problems. We've ironed them out and put together a new testing infrastructure here to make sure they keep working. If you've been bitten by 1.5.2 and SSH, please try this release out and let us know how it goes.

Along with this, we've updated our API so that RBTools 0.3.1 (and any other clients) can use a repository name instead of a path when creating a new review request. This greatly simplifies setting things up when there are lots of possible repository paths involved. See the RBTools 0.3.1 release announcement for some more information on this.

There are also a few other fixes thrown in. See the release notes for more information.

Comments

February 7, 2011

chipx86
RBTools 0.3.1 released

RBTools 0.3.1 is out the door, with an important crash fix for users running Review Board versions older than 1.5.2, and a brand new feature sure to make administrators a bit happier.

Starting in 0.3.1, .reviewboardrc has gained a new configuration option, REPOSITORY. This can be used to override what repository information is sent to the Review Board server when creating a new review request. You can give it a different path, or, with the upcoming Review Board 1.5.3, you can give it the name of the repository (the same name you'd see for it in the New Review Request page).

This is particularly useful when repositories are SSH-backed and include a username. If you have more than two possible paths to a repository, you can choose the one to send to the server with this setting. Your upstream repository you want to use may be svn+ssh://bob@example.com/var/lib/svn, but your users may be using their own usernames instead of "bob." In these cases, you can set something like the following in your project's .reviewboardrc:

REPOSITORY = 'svn+ssh://bob@example.com/var/lib/svn'
Or even:
REPOSITORY = 'My Repository'
Assuming "My Repository" is what it's named on the server. For more information, see the release notes.
Comments

January 30, 2011

chipx86
RBTools 0.3 released

Tonight we released RBTools 0.3, the latest and greatest update since 0.2. RBTools, aka "That thing post-review lives in," supports the new API in Review Board 1.5.x and contains fixes and enhancements for CVS, Subversion, ClearCase, Mercurial, Perforce, and more.

The are so many improvements in this release, but two big highlights I'd like to point out are the support for the new Review Board 1.5.x API, and the addition of Plastic SCM support.

Review Board 1.5.x's new API is extensive, and we're working to make RBTools take advantage of it. To start with, we've updated post-review to make use of it, which is important because the old API is going away in the upcoming Review Board 1.6 release. The plan is to introduce new scripts alongside post-review that call into the new API, replicating nearly all of the web UI's functionality from the command line. At the same time, we'll have a Python API that developers can use to talk to Review Board. All this will happen for the RBTools 1.0 release.

As I mentioned, we received Plastic SCM support by way of Dick Porter, one of the Plastic SCM developers. This is a new cross-platform DVCS provided by Codice Software, with professional and community editions. It's meant to work with the Plastic SCM support going into Review Board 1.6. If you're using Plastic SCM, you should be able to start using Review Board and Plastic SCM together soon.

There was also a big push for improvements to ClearCase, Mercurial, and Perforce. I'd like to thank Jan Koprowski for the ClearCase work, Dan Buch for Mercurial, and Ben Hollis for Perforce. And of course, there were many other contributors with critical bug fixes and enhancements in this release.

For the full list of changes and contributors, see the release notes.

Please note: If you're using Review Board 1.5.x and after upgrading to RBTools 0.3 you can't log in, you may have an incompatible WSGI configuration. Please see the FAQ entry on fixing this.

Comments

January 10, 2011

chipx86
Review Board 1.5.2 released

Happy New Year, everyone! Hopefully everyone's had a good holiday and start of the new year. We've been hard at work through the holidays on many improvements to Review Board, and tonight have released 1.5.2.

Review Board 1.5.2 is a fairly substantial and critical feature and bug fix release. It fixes many of the problems developers have encountered with the new API we introduced in 1.5, particularly with authentication. Developers working with our API should consider the 1.5.2 release to be the minimum requirement from here on out.

If you're using WSGI, it's very important that you read the release notes for updating your configuration, or you'll hit problems with the API in the future.

Administrators trying to set up SSH-backed repositories, particularly private GitHub repositories (both standard and GitHub Organizations) should now have a much easier time getting going. We've introduced SSH key management to make it easy to generate new SSH keys, upload existing ones, or view the public key for an existing key. Review Board will be able to use the configured SSH key to access SSH-backed repositories without having to change the home directory for the web server's user.

There are many other fixes in this release. I've only mentioned a couple of them. See the release notes for everything else in this release.

Comments

November 20, 2010

chipx86
Review Board 1.5.1 released

Review Board 1.5.1 has been released. It's a small bug fix release that fixes a few small problems, including lighttpd installation, serialization problems with the API's XML output, breakages with SCons files, and better error reporting for Git repositories with incorrect permissions, to name a few.

It's a pretty small, safe release with no real emergency fixes, but it's worth an upgrade, particularly if you're affected by one of the problems.

Full release notes are available.

Comments

September 30, 2010

chipx86
Review Board 1.5 Released!

At long last, after just over a year of development, we present to you for your consideration... Review Board 1.5!

Review Board 1.5 is a major release with many new features for users, administrators, and third party developers. We have improved usability, improved error feedback and logging, and made it easier to review changes.

Users will see notification bubbles when a review request is updated and improved e-mails with fragments of diffs and screenshots. They'll see when code blocks have moved in the diff viewer, see which class or function a block of code is in, and better control how they see whitespace. Comment regions are more clear in the diff viewer. Reviewing on an iPhone and iPad now works. Screenshots can be uploaded by dragging them from the file manager into the page. Auto-complete matches first and last names, and group names.

Administrators can more easily create and manage repositories and bug trackers on various services. They can decide which ones are shown and which are not. They can view and filter the Review Board log file when diagnosing problems. Offload uploaded data to Amazon S3. Write custom management commands for administering Review Board.

Remote Git repositories are now possible. Repositories over HTTPS or SSH can be added and accessed without complex workarounds.

Third party developers have a much more powerful, flexible, and manageable API for integrating Review Board into their applications and services. They can do most of what Review Board's own web UI can do. They can even implement custom diff viewers if needed.

This is just part of the feature set of Review Board 1.5. See the full release notes for all the great things in this release.

At this point, all of our work will focus on 1.5 and the upcoming 1.6. The goal is to keep the 1.6 release shorter with a smaller feature set. We likely won't be releasing any 1.0.x releases unless major security problems are found.

If you are using Review Board 1.0.x, performing an upgrade will automatically install 1.5. You can upgrade by typing:

$ easy_install -U ReviewBoard

If you want to stay on the 1.0.x branch, you need make sure you upgrade to the exact version you want by specifying it during package installation. For example:

$ easy_install -U ReviewBoard==1.0.9

Thanks to everyone who helped make this release possible! That includes all those who have helped spread Review Board in your organization. If you use Review Board and would like to come celebrate with us, please let us know through this simple form.

Comments

September 19, 2010

chipx86
Review Board 1.5 RC 2 released

We can see the end of the tunnel, and it's bright and full of marshmallows!

Tonight we released Review Board 1.5 RC 2, the (hopefully) final RC release before 1.5 goes live. After our testing with RC 1, we're pretty confident we're at a good point to ship the final release soon. How soon? Why, next week, if all goes well. But you didn't hear it from me.

1.5 RC 2 fixes some remaining compatibility problems and usability problems found in RC 1. It smooths out the new API quite a bit as well.

Some of the key highlights include:

  • Python 2.7 packages
  • Compatibility with PyLucene 3.x
  • Support for review requests without a diff (for reviewing screenshots)
  • Improvements to screenshot drag-and-drop to make the experience a bit more reliable
  • Some various authentication fixes for NIS, LDAP and Active Directory.

As usual, full release notes are available.

If you are at all planning to use Review Board 1.5, please upgrade to RC 2 and let us know if there are any major regressions. At this point, the goal is to release very soon, with any non-showstopper bugs being targetted for 1.5.1.

We always like to hear from our users, so drop us a line if you're using it, and with your permission, we'll add you to our Happy Users list.

We're planning a release party in the Silicon Valley, California area for some time in October. Details are still being worked out, but if you live in the area and would love to join us and some fellow users for dinner and drinks, contact us on the mailing list with your general availability (preference for week day vs. weekend, when you could tentatively make it) and we'll let you know when the plans are set.

Comments

July 5, 2010

chipx86
Review Board 1.0.9 and 1.5 RC 1 released

Why, hello everyone. I hope everyone had a great 4th of July, whether it was a holiday or just any ol' Sunday. The 4th is now over, and I had hoped to get this ready before the day was up, but well, the 5th will do nicely.

I have two presents for you. Two fresh, new, shiny Review Board releases.

Review Board 1.0.9 is simple release that fixes a few random bugs (UTF-8 fixes for syntax highlighting, Subversion keyword collapsing problems, linkified text for bug numbers and paths, and the Starred Groups page), as well as switching the default memcached Python module to python-memcache. This new memcached release is more up-to-date, and is now installed by default along with Review Board. If you're upgrading Review Board, you shouldn't have to do anything.

Review Board 1.5 RC 1 is a much bigger release, and is hopefully the last release before the final 1.5. This release contains all the changes and fixes in 1.0.9, but also introduces many new enhancements and fixes.

The main enhancements include improved move detection, WSGI installation, and support for using the main web UI on the iPhone and iPad. It also improves the new web API by allowing callers to retrieve basic information on the active session, filtering review requests by date/time, and downloading patches or parsed diff opcodes.

At this point, we want to get the final 1.5 out the door ASAP. Much of our time will be spent on documentation updates and fixing any critical bugs that pop up. If you're planning to upgrade to 1.5 soon, it may be worth upgrading a copy of your installation to RC 1 soon to make sure you won't hit any show-stopping bugs. We'll be limiting the bugs we fix for 1.5, pushing things out to 1.5.x unless they're major regressions.

More information can be found in the 1.0.9 release notes and 1.5 RC 1 release notes.

Comments

May 13, 2010

chipx86
Review Board 1.5 beta 2 released

After several months of hard work, we finally cut a release of Review Board 1.5 beta 2! This is a much more stable beta than 1.5 beta 1, and includes some new usability improvements, new features, many bug fixes, and a new public API.

One of the nicer improvements in this release include the new diff viewer comment flags, which span the range of lines that the comment was made on instead of only pointing to the first line in the range. This is much nicer looking and much more usable. They also no longer overlap the line numbers, so it's easier to see what line is being commented on.

The largest change in this version is the new REST API. We've had a public API for a long time that worked on a resource model, allowing third party applications to interface with Review Board, but it was hard to maintain and had many warts. The new API is actually a RESTful API, meaning that it's fully resource-based, uses standard HTTP methods and HTTP response codes, is largely self-documenting, and every resource links to related or child resources.

There isn't any documentation yet for this, but we'll be working on some before the final 1.5 release. We'd like to encourage developers using the existing API to begin supporting the new one. You can start browsing the resource tree by pointing your browser to your site's /api/ path. If you're using Firefox, you can use the fantastic JSONView extension to better browse the tree.

Many things were fixed in this release and I'd like to thank everyone for providing feedback, reporting bugs, and submitting patches.

Going forward, we may have a third beta in order to finalize some of our API code and fix most of the remaining bugs, and then we'll try to crank out the release candidate and then final release as soon as we can.

More information can be found in the release notes.

Comments

May 12, 2010

chipx86
Clearvision integrates Review Board code review into UCM4SVN v2.2

We at Review Board are pleased to announce that Clearvision has released the latest version of their UCM4SVN (Unified Change Management for Subversion) product with out-of-the-box support for Review Board. From their press release:

In April 2010 Cleavision released version 2.2 of UCM4SVN which included an integration with the open source code review tool Review Board.

UCM4SVN is a lightweight process layer which sits above the open source configuration management tool Subversion and enables development teams to quickly and easily structure their code and work items.

UCM4SVN removes all of the complication within Subversion associated with branching, merging, release management, permission management, change management integration etc. by providing a single browser based interface.

The new integration with Review Board will allow developers, team leaders and project managers to perform code reviews as part of the natural but managed process instigated by UCM4SVN. The high level steps are as follows;

  • Via UCM4SVN a team leader assigns development ‘activities’ which either originate from one of the integrated change management tools (IBM Rational ClearQuest, Atlassian Jira, Trac) or as a UCM4SVN created activity;
  • Via UCM4SVN the developer accepts the activity and UCM4SVN performs a Subversion checkout;
  • The developer uses their preferred Subversion IDE (Tortoise, Eclipse, command line) etc. to work on the change set or file for the activity and eventually completes the work and performs a final SVN commit;
  • The developer, via UCM4SVN chooses to perform a ‘Close’ or ‘Deliver’ action and integrate the activity of changes into a common integration branch;
  • The act of ‘Close’ or ‘Deliver’ automatically creates a ‘Review Board’ request ticket for the team member acting as a reviewer;
  • The reviewer, via UCM4SVN, can decide to perform a review by selecting the ticket. Such action automatically opens Review Board and from this point Review Board manages the review process and stores all review comments;
  • The interaction between Review Board and UCM4SVN is most valuable when a reviewer decides to fail a review. Under these circumstances, a UCM4SVN change request is automatically created and assigned to the original code developer to ensure the code changes are implemented;
  • UCM4SVN manages the entire process to ensure the original activity and the code change requests from Review Board are implemented into the final integration branch.

Through the integration between UCM4SVN and Review Board the reviewer’s comments and requests to improve the quality of code are never forgotten or misplaced, a full audit trail is clearly recorded.

The natural development process managed by UCM4SVN is strong and agile enough for companies of all sizes.

Clearvision initially considered developing their own code review tool however, after researching the market and evaluating a number of similar products, realised the Review Board product was an ideal fit and matched Clearvision’s goal of producing simple but effective applications.

Clearvision would like to give special thanks to all those involved in Review Board.

Clearvision provide Subversion training, subversion consulting, subversion support and a range of subversion products including integrations between ClearQuest, Jira, Trac, Subversion, Git and a variety of migration tools. UCM4SVN will shortly be extended to provide Application lifecycle Management for the open source configuration management product Git.

For any questions related to open source development within the software change and configuration management arena please contact www.clearvision-cm.com or sales@clearvision-cm.com.

Comments

May 12, 2010

chipx86
Review Board 1.0.8 released

Tonight we put out a small bug fix release that fixes a few small bugs, including some dashboard rendering issues when adding/removing columns. It also allows support for handling log rotation, so that the web server doesn't have to be restarted in order to resume logging after a log rotate.

We're focusing our efforts now on wrapping up the 1.5 release. Beta 2 will be out soon, and barring any regressions, we likely won't put out any more 1.0.x releases for a while.

More information can be found in the release notes.

Comments

April 19, 2010

chipx86
Review Board 1.0.7 released

It's release night! We have yet another one for you. We just released Review Board 1.0.7, which is a fairly small release with some further performance improvements for the dashboard.

After getting feedback from users of the 1.0.6 release, we discovered that, while the dashboard speed improvements did make a difference, the dashboard was still slower than it should have been on large deployments. We investigated this and found some further improvements we could make, which have massively reduced loading times on these large deployments.

It also restores compatibility with the betas of Django 1.2. Careful readers might note that we announced compatibility in 1.0.6, but as luck would have it, the following day we were broken again. We fixed the latest breakage, and hopefully won't see another.

More information can be found in the release notes.

Comments

April 19, 2010

chipx86
RBTools 0.2.0 released

Tonight we released the final build of RBTools 0.2.0. The is the first official stable release of RBTools and is compatible with both Review Board 1.0.x and the upcoming 1.5 release.

RBTools is a collection of a tools for working with Review Board. Right now, there is only one tool, post-review, which makes it easy to create and update review requests. It's useful for end users, automation, and as a way to integrate with other products.

Users of previous versions will find some good bug fixes in the final release. In particular, a couple crash bugs and a UTF-8 encoding bug in RBTools 0.2 RC 1 have been fixed.

We have many plans for future versions. Some new tools will be added for querying review requests and otherwise working with review requests. RBTools will also provide a Python module, allowing custom tools to be written. These new tools will likely require Review Board 1.5.

More information can be found in the release notes.

Comments

March 27, 2010

chipx86
Review Board 1.0.6 released

We have a pretty good point release out for everybody running Review Board 1.0.x. We just put out 1.0.6, which, among other things, has some huge performance improvements for the Dashboard, and what we believe is a solution to that pesky stale settings bug many of you have encountered.

The Dashboard has never been the fastest part of Review Board, and some companies have hit some serious speed issues with increased loads. During the 1.5 release cycle, we've looked hard into the problems plaguing the Dashboard, and have made many performance improvements. Not only do these increase loading times of the Dashboard, but it reduces stress on the web server and database server, which should contribute to overall performance of the site.

The stale settings bug has been a problem for many users. Depending on the server setup, setting changes in the Administration UI wouldn't necessarily take effect for all users until the web server was restarted. This has been an elusive problem, but we think we've identified a couple subtle bugs in the caching code used to synchronize the settings across across the web server threads/processes. We're going to watch carefully over time to see if new users still hit this bug, but for now, we think we've fixed it.

There are several other fixes as well, such as for the broken screenshot comment thumbnails problem some users have encountered.

More information can be found in the release notes.

Comments

February 14, 2010

chipx86
Review Board 1.5 beta 1 released

Happy Valentines to everyone with someone special to share the day with. For the rest of you, spend the day with the all new Review Board 1.5 beta 1 release! Because Review Board <3 you.

What happened to 1.1, you may ask? The original intent was for the 1.1 release to be fairly small, with just a few new features. However, after our 1.0 release, we received a surge of new feature requests and enhancements, and had a few of our own that we wanted to get in as well. So over time, the release grew, and we decided that 1.5 was more appropriate.

There are many new, exciting features in this release, and we hope people will provide some good feedback on them as we get closer to the final 1.5 release. Among them are:

  • Move detection in the diff viewer. The diff viewer will now show whether a block of code has moved within the file, instead of just showing inserts/deletes. This feature is still young and may need some fine-tuning before release, but it's already proving to be a powerful aid in code review.
  • Function/class headers in the diff viewer. When looking at a collapsed section of a diff, the diff viewer will now show the function or class that most closely precedes that section, in order to give you some idea as to where you are in the file. These headers are also shown in the comments on a review and in the HTML e-mails. This supports C, C++, C#, Objective-C, Java, JavaScript, Perl, PHP, Python, and Ruby files.
  • Screenshot drag-and-drop for HTML 5-capable browsers. Newer HTML 5-capable browsers, such as Firefox 3.6, support the ability to drag-and-drop files from a file manager into a webpage. We can take advantage of this to allow users to upload screenshots by drag-and-drop. This has so far only been tested with Firefox 3.6, but we'd welcome some help in testing with other newer browsers.
  • Support for private GitHub repositories. It's now easy to link up a Review Board installation with a private GitHub repository. See the release notes for more information.
  • Speed improvements in the diff viewer and dashboard. Much work has been done to reduce the overhead in the diff viewer and dashboard, leading to speed improvements in many cases.

More information can be found in the release notes.

Comments

February 13, 2010

chipx86
RBTools 0.2 RC 1 released

RBTools 0.2 RC 1 is now available for download. This is one of the last releases before the final 0.2 release, and everyone should upgrade to it soon, particularly if you're using the Review Board 1.1 alphas or nightlies.

Git users will benefit from the improved branch detection in this release. Previously, diffs were generated based on "master," regardless of whether the current branch was even based on "master" or whether "master" was tied to the right origin. Now post-review properly determines what the branch is based on. The new --tracking-branch option can be used to explicitly specify the branch as well.

post-review has gained a new --diff-filename option for specifying a diff file to upload, instead of generating a new diff. This can be useful for automation and third party integration purposes. Passing "-" as the filename will cause post-review to read from stdin.

There are also various bug fixes and compatibility improvements for Mercurial, Subversion, and Perforce.

This release is essential if you're using the 1.1 alphas or nightlies. It has some API compatibility changes that will be needed for one of the upcoming Review Board betas.

Full release notes are available.

Comments

November 15, 2009

chipx86
Review Board 1.1 alpha 2 released

Just in time for the holidays, we've released Review Board 1.1 alpha 2. This is a pretty significant release with many new features that users have been asking for for some time. We'd like to get this release heavily tested, but remember that it is an alpha release, and is best set up on a non-production system.

Some of the new features in this release include:

  • HTTPS Subversion repository support
  • SSH-backed repository support for Bazaar, CVS, Git, Mercurial, and Subversion
  • Amazon S3 storage for screenshots
  • Captchas for new user registration, to reduce spam

Full release notes are available.

Going forward, we're hoping to have a beta out by mid-December. This may be pushed out to January, depending on holiday schedules and how much testing this release gets. We may sneak another feature or two for the beta, but after that the focus is on a solid release.

We'd also like to dedicate this release to Vinay Venkatesh, a good friend and co-worker of ours who passed away earlier this month. He was a long-time supporter of the project, helped us keep our sanity during difficult times, and helped with ideas and suggestions for the project. Thanks for everything, Vinay.

Comments

October 22, 2009

chipx86
Review Board 1.0.5 released

Tonight we released Review Board 1.0.5, a small bug fix release that fixes a handful of issues reported in some installations.

The main issue fixed that affected most people was that a previous version of Djblets, one of our dependencies, broke compatibility with Internet Explorer 6 and up. Review Board 1.0.4 required this version, meaning that users of Internet Explorer faced problems with anything involving a text area. We now require the newer version, 0.5.5, which resolves this problem.

Binary files and diff expansion were broken in previous releases, but are now fixed in 1.0.5. There are a handful of other fixes for Active Directory, the administration UI, and large bug numbers.

The one new "feature" in this release is that we now inform users on the New Review Request page about the existance of post-review, with a brief description and a link to the documentation. We're hoping more people will start to use post-review, improving their experience with Review Board.

Full release notes are available.

Updated: A bug was found making the New Review Request page unusable. A 1.0.5.1 release has been made to fix this issue.

Comments

October 4, 2009

chipx86
Review Board 1.0.4 Released

Google Chrome fan? You'll like this release.

Tonight we released Review Board 1.0.4, which brings one of the most highly-requested features: Google Chrome compatibility. On older versions, Chrome had numerous problems with text areas and the screenshot commenting feature, which are now fixed. Chrome users should now find Review Board to be much more usable.

Opera got some much-needed love as well. Newer versions of Opera had some problems with uploading diffs and screenshots, which should now work in this release.

That's not all, though. Several small bugs were fixed with diff caching, CVS, replies to comments on interdiffs, Active Directory, LDAP, and more.

Full release notes are available.

Comments

September 21, 2009

chipx86
RBTools 0.2 beta 2 released

It's been a long time coming, but we've finally pushed out a release of RBTools 0.2 beta 2.

This is a large bug fix release, fixing several issues with ClearCase, Git, Mercurial, Perforce and Subversion. It also introduces several new features, such as installing post-review.exe on Windows.

This version is required if you want to use post-review against our own Review Board server, or any Review Board server using repositories on GitHub.

Full release notes are available.

Comments

September 20, 2009

chipx86
Review Board 1.1 alpha 1 released

We've been hard at work since the release of Review Board 1.0 on our next major release, Review Board 1.1. Several several great features for users and administrators have been developed, with more to come.

Tonight, we've released Review Board 1.1 alpha 1. Highlights include:

  • Update notification bubbles. Little update bubbles appear in the bottom-right of the review request and diff viewer changes when the review request or diff has been updated, or when a review or reply has been posted. No more reloading the review request with the hope that somebody has responded since you last reloaded.
  • Better auto-complete. When auto-completing users or groups, the first name and last name are now searched along with the username. We also now show the first and last name in the results.
  • Upload screenshots by drag-and-drop. You can now drag-and-drop screenshots from your file manager into the review request to upload them. Right now, this functionality requires a modern version of Google Gears. (Note that, unfortunately, this is broken with Google Gears v0.5.32.0 when used with Firefox 3.5+, but they have a fix coming.)
  • HTML e-mails. The e-mails sent out for review request updates and review discussion now have an HTML version sent, which contains the portions of diffs or screenshots reviewed, much like the review request page. Users using e-mail clients set not to show HTML e-mails will see the original text-only e-mails.
  • Showing/hiding whitespace-only changes. Lines in the diff viewer containing only whitespace changes (such as removing trailing whitespace for a line) can now be hidden on-the-fly, making it easier to review some changes.
  • Easier repository configuration. Configuring a repository entry against Bitbucket, GitHub, Google Code or SourceForge code repositories is now really easy. You won't need to figure out the repository URLs for these services. We also make it easy to configure the repository with several different bug trackers, which include Bugzilla, Trac, and the bug trackers on Bitbucket, Google Code, Redmine and SourceForge.
  • Remote Git support. It's now much easier to configure Review Board with Git repositories. Instead of keeping a copy of the Git repository always up-to-date on the Review Board server, you can now configure Review Board to use gitosis, cgit, gitweb, GitHub, or another web front-end to fetch files from a Git repository.
  • Filterable server log. The Review Board server log can be viewed from within the Administration UI. You can sort by date or filter by date range and severity.

These are just some of the changes made in Review Board 1.1 alpha 1. See the release notes for all the changes.

We strive to make each release as stable as can be, but with any alpha release, there will probably be some bugs. We would love to see people beta test these releases, but please don't use this on a production server!

To install Review Board 1.1 alpha 1, you can run:

$ easy_install -f http://downloads.review-board.org/releases/ReviewBoard/1.1/ -U ReviewBoard

See Installing Development Releases for more details.

Comments

September 16, 2009

chipx86
Review Board 1.0.3 released

Last night's 1.0.2 release had two fairly critical bugs. The first being that, due to some code shuffle in the tree, the web server configuration templates weren't bundled with Review Board, making initial installations fail. The second bug only manifested if you had Django 1.0.2 installed. We required some functionality that only existed in 1.0.3 and higher, but didn't specify this requirement for the package.

The new 1.0.3 release is now out, and fixes these two problems. We now require Django 1.1 or higher. This brings with it a number of stability and speed improvements behind the scenes. It also gives administrators a new ability to batch delete items in the database, which can be useful when cleaning up spam or test comments. In the future we'll add new batch edit functionality based on this.

Full release notes are available.

Update: The upgrade to Django 1.1 broke the styles for the administration UI. A 1.0.3.1 patch release is available which just fixes the styles in the administration UI.

Comments

September 16, 2009

chipx86
Review Board 1.0.2 released

Over the past few weeks, we've been hard at work fixing many bugs impacting our users and improving error handling. Tonight, we bring to you Review Board 1.0.2.

This release contains fixes for 17 bugs. Many of these have impacted quite a number of end users and administrators since 1.0, so we highly recommend upgrading. This release will also help with diagnosing of new bugs that cause Internal Server Errors, as we do a better job of logging crashes.

Full release notes are available.

Comments

August 2, 2009

chipx86
Review Board 1.0.1 released

Review Board 1.0.1 was released, which contains bug fixes and minor feature enhancements.

This release fixes several first-time install problems people have had with Review Board 1.0. Particularly bugs on Windows with finding cvs.exe, a missing ClearCase repository type, and installing patch or patch.exe for the first time. It also introduces compatibility with Mercurial 1.3.

Full release notes are available.

Comments

June 20, 2009

chipx86
Review Board 1.0 released!

After nearly two and a half years of development, over 2000 commits, and contributions from over 120 people, we are proud and excited to bring to you the culmination of our work: Review Board 1.0.

A lot has been put into this release. There were many times in the past where we wanted to just get 1.0 out the door, but decided to wait until the time was ready. We believe it was worth the wait.

The release notes are up, giving an overview of Review Board 1.0 and listing some small changes since RC3. If you're new to Review Board, we recommend reading through the release notes and checking out the screenshots.

For those in the Bay Area, we're planning to throw a release party on July 11th somewhere around Palo Alto, CA. The location is still being worked out, but the plan is to find a restaurant and meet up for drinks and food. It's a great opportunity to meet the developers and other users. Anyone is invited, so if you want to join us, please RSVP.

Thanks to everyone who has helped contribute to this release! Without the bug reports, code contributions and financial support we've received, Review Board would not be where it is today.

Over the next few months we'll be putting together the 1.1 release with some cool new features and improved usability and setup. Stay tuned!

Comments

June 13, 2009

chipx86
Review Board 1.0 RC3 released

Today brings what should be the final RC release before Review Board 1.0!

RC2 introduced a slowdown with a particular SQL query on the All Review Requests page that caused problems on large installations. Not only has that query been fixed, but further optimizations have been made to our queries to speed up the dashboard and other pages even more.

At this point, we're confident in our 1.0 release. Aside from the slowdown, we haven't seen any other showstopper issues. Assuming we don't see any this week, we plan to release 1.0 next weekend.

New Features:

  • rb-site.exe is now provided on Windows and installed in the Python path, making installation easier. (Bug #1110)
  • Added a loading indicator for the news display in the Adminsitration Dashboard.
  • Automatically updates the stored path for media files when moving the site directory. Previously, this would break with no easy way to fix it, but now Review Board notices the move and updates the stored media directory properly.
  • Added support for parent diffs for Mercurial. Patch by Colin Caughie.

Bugs Fixed:

  • Fixed some major speed problems on large installs. One of the queries on the All Review Requests page could take an unusually long amount of time to finish when ran against a large number of review requests, which on some database setups could stall other queries, which would affect all users. These have been resolved. A side effect of this is that the "Last Updated" column in the dashboard may revert back to the "Last Updated" time on the review request after the upgrade to RC3, but this is a one-time issue and should be at worst an annoyance. (Bug #1144).
  • Reduced concurrency issues when saving multiple comments when the server is slow. This could lead to broken reviews, causing errors. We now queue up the saves so that we don't attempt to save multiple comments at once.
  • Fixed issues where files with \r\r\n newlines would break the diff viewer. This can happen in some Perforce setups when dealing with a file checked out from one platform and modified on another. Patch by Raghu Kaippully. (Bug #1071)
  • Interdiffs containing two files with different revisions but the same content no longer displays an error. (Bug #1032)
  • Properly marked the Password field as a password field in the Add/Change Repository form in the Administration UI. Patch by Sharan Rao. (Bug #942)
  • The "Ship It" column now has the appropriate style on the All Review Requests page. (Bug #1115)
  • Reduce the chances of concurrency issues internally when saving the Comment and ScreenshotComment database models. (Bug #709)
  • Nercurial's HTTP support would fail when the repository served up raw files using the /raw-file URL instead of /raw. Our Mercurial support now tries both paths before giving up. This provides compatibility with http://bitbucket.org.
  • The LDAP support no longer breaks when e-mail information isn't provided by either the LDAP settings or the server. An error in this case is now logged to the Review Board log file. Patch by Paolo Borelli.
  • Improved the checks for the Git binary and for a valid repository in our Git support. Patch by Alexey Morozov.
  • A review request with a bug number no longer causes a 500 error when the bug tracker URL doesn't have a "%s" in it. Patch by Paolo Borelli.
  • Fixed the link for deleting a screenshot when on the diff viewer page. It was pointing to the wrong path. (Bug #1147)
Comments

May 8, 2009

chipx86
Review Board 1.0 RC2 released

It seems a few bad bugs snuck into RC1 that affected many users. Thanks to everyone who tested RC1 early and let us know! We've just released RC2, which should prove to be a much more reliable release.

We will probably put out one more RC release after this, which will improve installation on Windows and fix any remaining showstoppers. We'll then release 1.0 shortly after.

Bugs Fixed:

  • Installation of new sites using rb-site was broken. (Bug #1012)
  • The dashboard threw an exception when using PostgreSQL. (Bug #1099)
  • LDAP e-mail generation was broken and caused an exception.
  • Active Directory was broken for some users and caused an exception. (Bug #1112)
  • We hit concurrency issues when saving reviews sometimes. We now register each with a ConcurrencyManager.
  • Apache configuration files with spaces in filenames were still broken. (Bug #1111)

Feature Enhancements:

  • Control-Enter now saves in the comment dialog, and Escape cancels the comment.
Comments

May 3, 2009

chipx86
Review Board 1.0 RC1 released

Update: There's a known bug in RC1 where rb-site install will fail on a fresh new install. We will have a new release soon, once we make sure there aren't any other major regressions. You can either attempt to install a previous beta and then upgrade to RC1, or you can use the May 4th nightly by running: easy_install -f http://downloads.review-board.org/nightlies/ -U ReviewBoard

One more giant step toward 1.0! We've just released 1.0 RC1, which contains a number of bug fixes, some new features, and usability improvements.

We've reached a new milestone with this release. Every pre-release issue in our bug database tagged for 1.0 has been fixed. This is a release candidate, so the hope is that this version will be stable enough for a final 1.0 release. If we don't see any major show-stopping bugs in the next couple of weeks, we'll release 1.0.

At this point, we are feature frozen. No new features will go in for 1.0, nor will bug fixes for minor bugs. Following 1.0, we'll be working simultaneously on a 1.1 and a 1.5 (or 2.0) release. The 1.1 release will contain bug fixes and some features, while 1.5 (or 2.0) will be a major feature enhancement release.

So with that, here's what you can expect from 1.0 RC1.

Bugs Fixed:

  • The review request page was "jumpy" on load. The review request and review draft banners would display after the page loaded. We now display these along with the page, minimizing the jumpiness of the page.
  • Saved settings weren't always taking effect until after the server was restarted. (Bug #734)
  • The comment dialog wasn't appearing on screenshots. (Bug #1013)
  • The comment dialog width was incorrect when showing existing comments.
  • The Registration page wasn't working after upgrading to beta 1 until you forced a save on the General Settings page. (Bug #1033)
  • Comment flags weren't always being shown on diffs. (Bug #1028)
  • Site paths with spaces in the path resulted in broken web server configuration files. (Bug #1015)
  • We were redirecting to the review request page when just saving a review, instead of staying on the same page. (Bug #1056)
  • The left-hand side of a diff would be collapsed into a small column when showing an interdiff for a newly added file. (Bug #730)
  • rb-site didn't properly allow for specifying a database host with a port number. Patch by Eric Huss.
  • Different versions of a diff fragment were being cached with the same cache key, causing display problems when switching between diffs and interdiffs containing new or deleted files. This also broke anchors in the diff viewer. (Bug #1036)
  • The review request page was caching the page contents without taking into account whether the user had a pending review or reply, making it appear as if the review/reply was lost.
  • Linkified URLs were breaking when the URL was followed by an entity. Part of the entity was being embedded in the URL, breaking both the URL and the display. (Bug #1069)
  • The black selection rectangle in the diff viewer was too far off to the left in Internet Explorer 8.
  • Fixed some speed issues and warnings in our PNG transparency support for Internet Explorer 6. (Bug #817)
  • LDAP and Active Directory broken on servers that don't support "givenName" and "sn" fields. (Bug #891)
  • Bug tracker URLs that didn't include a "%s" marker caused breakages on review requests using bug numbers. (Bug #1091)
  • The "Download Diff" link was displaying even when the diff wasn't accessible. We now use the same rules as we use for the "View Diff" link. Patch by Eric Huss.
  • Clicking the edit icon (the pencil) on review requests sometimes caused the browser to scroll. (Bug #1057)

New Features:

  • Added an activity indicator at the top of the page to show when a request is being made. Examples include saving a comment, marking a change as submitted, or saving fields on a review request. This appears as a small but eye-catching box at the top of the page with a spiner, letting the user know that the request is still being processed. (Bug #945)
  • Changed the "Ship It" column to show the number of reviews marked "ship it" next to the checkmark. This makes it easier to see at a glance how many people have signed off on the review request.
  • Drastically sped up the dashboard. (Bug #406) We were making a lot of queries in the dashboard, depending on the columns used. In a worst-case scenario, this resulted in a few hundred queries. A lot of work has gone into reducing the number, which both lightens the load on the database server and speeds up loading the page.
  • Added an "All My Requests" entry to the dashboard's sidebar, which shows all open and submitted review requests that the user has made. Patch by Noah Miller. (Bug #503)
  • Added a field to the General Settings page for selecting the timezone. (Bug #1038)
  • Added URL, bug number, and review request ID linkification to reviews and replies. This works the same way that review request linkification works. (Bug #916)
  • Added support for using mod_fcgid on Apache through the generated fastcgi Apache configuration file. Patch by Mark Knittig.
  • Added "x" and "c" shortcut keys in the diff viewer for going to the previous/next comment. This is useful on French keyboards that don't have "[" and "]" keys. (Bug #1031)
  • rb-site now warns about missing dependencies before starting the install, and limits configuration to what's available. This prevents the case where people would get part-way through an install and see it fail due to a missing Python module or database server. (Bugs #755, #756)
  • Made the user selection fields in the administration UI more usable. They now display as a side-by-side view, with selected users on the right, and the list of users is searchable. Patch by Eric Huss. (Bug #912)
  • Improved compatibility with Active Directory servers, allowing for using a "custom search root" that administrators can override for specific setups, and for using the server's "mail" field when available for e-mail addresses. (Bug #908)
  • Added subtle animations for the review draft banner, indicating whether we're creating a new review or discarding one.
Comments

March 29, 2009

chipx86
Review Board 1.0 beta 2 released

A last-minute regression was found in our beta 1 release due to some API changes made in jQuery. We've fixed these issues and released beta 2, which all beta 1 users will need to upgrade to.

We don't anticipate further showstopper regressions in beta 2 (knock on wood), but if there are, please e-mail the mailing list and file a bug and we'll take care of it!

Comments

March 29, 2009

chipx86
Review Board 1.0 beta 1

We've just taken one big step toward our 1.0 tonight with the release of Review Board 1.0 beta 1. This is an important release, and introduces new features, many performance enhancements, and a whole lot of bug fixes.

Two of the big highlights include the ability to disable user registration and some major performance enhancements.

The review request page now handles large numbers of reviews and comments in a much more elegant way. Previously, we'd fetch a diff fragment per comment from the server, which mean that if there were 100 comments, we'd fetch 100 diff fragments, slowing down loading. Now, we're only performing one fetch per reviewed file, no matter how many comments are on that file.

The other major improvement is in the diff viewer. Some deep profiling work was done on the comment and diff loading code in the diff viewer, and we've managed to speed things up significantly. In one of our tests, a large file with only 15 comments would take over 1 second of browser time to load and place comments on the diff. With the new improvements, that has dropped to about 150 milliseconds.

A full summary of the changes are below:

Bugs Fixed:
  • Fixed index errors shown during some interdiffs and empty diffs. (Bug #892)
  • Interdiffs would break when one revision had a newly added file. (Bug #847)
  • Interdiffs no longer pre-load all files on a page before showing anything. They now load each file independently, like normal diffs.
  • We no longer display the "Download Diff" button on interdiffs. (Bug #873)
  • Clicking the "ghost" comment flag in the diff viewer wasn't triggering a comment dialog for that line.
  • We now correctly parse Git diffs that don't include "a/" and "b/" prefixes in the filenames. Patch by Andrey Fedorov. (Bug #883)
  • We now forward on the Perforce Empty Changeset error, instead of returning an Internal Server Error.
  • Fixed some problems with Perforce errors on newer versions of the P4 API, and fixed some issues where we were sometimes stripping valuable data from an error message. (Bug #710)
  • Fixed an Internal Server Error when showing the review dialog with a comment made on a screenshot with no caption.
  • The "Ship It" label in the review dialog is now associated with the checkbox, meaning the label can be clicked to check/uncheck "Ship It." (Bug #922)
  • For LDAP backends, we now log on as an anonymous user before searching for the real user to log in as. This fixes some breakages with people encountered. Patch by Alexey Morozov.
  • Changed the default LDAP scope to SUBTREE, in order to fix authentication on some LDAP servers. (Bug #959)
  • We now use the review request's draft summary, if set, on the screenshot detail page. (Bug #981)
  • HTML tags are no longer interpreted in the Description and Testing Done fields. (Bug #894)
  • The "branch" field in change descriptions no longer escape entities (such as arrows). (Bug #898)
  • Fixed some XHTML validation errors in the dashboard. Patch by Onkar Shinde. (Bug #932)
  • We no longer require logging in for read-only API calls, if anonymous access is enabled on the site. (Bug #767)
  • Fixed some small breakages with Django 1.1.
Feature Improvements:
  • Added a faster, more scalable version of diff fragment loading. We used to make a call to the server for each comment shown in a review, which became very slow on large reviews. We now only make one call per file, regardless of how many comments are made against that file. This speeds up load times of the review page considerably. (Bug #906)
  • Greatly improved performance in the diff viewer. Loading comments and placing them in the diff viewer wasn't nearly as fast as it could have been. Due to these new improvements, a sample diff with 15 comments that used to take over 1 second now takes ~150ms to load. Other improvements have also been made, and should make a noticeable difference in large deployments.
  • Improved accessibility for inline editors on the review request page. The "edit" icons can now be activated using the Enter key. Patch by Brad Taylor. (Bug #965)
  • Added a new icon for the "My Comments" column in the dashboard that's used when you've specifically posted a review marked "Ship It." (Bug #909)
  • Change descriptions are now a lot more readable for the Description and Testing Done fields. (Bug #913)
  • Added a dependency on Pygments, in order to install it by default.
New Features:
  • Added support for disabling user registration. This provides a checkbox in the General Settings page for disabling user registration. This only takes effect when using standard authentication, and will hide the "Register" link and redirect requests made to /account/register/ to the /account/login/ page instead.
  • Added new administration, user documentation, and a FAQ. This is available on http://www.review-board.org/docs/, and is also available in the reviewboard/docs/ directory.
Comments

February 16, 2009

chipx86
Review Board 1.0 alpha 4 released

Some last-minute brokenness snuck into alpha 3, so we're releasing a quick alpha 4 that should fix it. If you installed alpha 3, upgrade immediately.

Bugs Fixed:
  • post-review should now work with SVN regardless of the locale set. (Bug #888)
  • Fixed an infinite loop in the Git diff parser. Patch by Dennis Schön. (Bug #887)
  • The first file in the diff viewer would sometimes come back as escaped HTML. It's now embedded correctly.
  • The comment dialog's "dirty" state wasn't being reset for new comments. This would leave reviewers unable to make new comments.
Comments

February 15, 2009

chipx86
Review Board 1.0 alpha 3 released

Review Board 1.0 alpha 3 has just been released. This release fixes a few major bugs introduced by 1.0 alpha 2 (over-aggressive caching primarily) and several browser-compatibility problems. Safari and Internet Explorer both had compatibility issues with some of the features we introduced, and we've since worked around them.

To upgrade from a previous alpha, just run:

$ sudo easy_install -U ReviewBoard
$ rb-site upgrade /path/to/site

A full summary of the changes are below:

Bugs Fixed in rb-site:
  • Generated settings_local.py files no longer have DEBUG=True enabled by default.
  • The generated FastCGI and Apache config files should now work better out of the box. We had path issues in reviewboard.fcgi. We also now set the PYTHON_EGG_CACHE directory and default to processing .htaccess files in htdocs (which some distros don't have enabled by default).
Bugs Fixed in the Diff Viewer:
  • Fixed some major performance issues when typing in the diff viewer. This was the cause of many reports of slowdown and visual oddities when creating comments.
  • Unchanged files should no longer show errors in interdiffs.
  • Fixed file-based navigation ("<" and ">" keys) in the diff viewer. (Bug #696)
  • We no longer show a nonsensical error when SVN logins fail. (Bug #721)
  • Fixed anchors in the diff viewer. (Bug #828)
  • Fixed the "Expand/Collapse Diffs" toggle in the diff viewer. (Bug #862)
Bugs Fixed in Reviews:
  • The review request page is no longer cached across login sessions. We were over-aggressive in the caching and are now a lot more careful.
  • Upload Diff/Screenshot dialogs on Safari are now centered instead of being docked to the far-left side.
  • Uploading diffs and screenshots now works on Safari.
  • Empty Changeset errors in Perforce should now properly be shown to the user. They were in some cases triggering a server-side error.
  • The Change Description field no longer animates open on page load.
  • Sentences containing the word "bug" or "issue" no longer generate links unless followed by either specifically a number or a "#" followed by alphanumeric characters.
  • Fixed some escaping issues in the review request summary, which would cause characters (such as quotes) to appear incorrectly. (Bug #860)
  • Fixed some issues with auto-linking text in the Description and Testing Done fields. There were issues on initial page loads with linking URLs that were followed by quotes, "<" and ">". (Bug #864)
Feature Improvements:
  • We now pre-load the first file on a page in the diff viewer, in order to make it appear that the page is loading faster. Many people felt the new, faster diff viewer was slower because even after the initial page load, they had to wait to see any diffs. They're now able to work with the first diff the moment the diff viewer loads.
  • Added hover/clicked styling for the review request action buttons.
Comments

February 3, 2009

chipx86
Review Board 1.0 alpha 2 released

We've just put out a release of Review Board 1.0 alpha 2. This release has some major improvements and bug fixes over alpha 1, and we recommend that everybody upgrades.

The main improvements are performance-related. We've added aggressive browser-side caching support, as well as reorganized load times in our pages in order to reduce load times. The diff viewer now loads almost instantly and then progressively loads diffs on the fly, meaning you can start reviewing right away.

If you have mod_expires and mod_deflate (Apache) or mod_gzip (lighttpd) enabled, you'll see the cache and load time improvements. Apache users will get the new configuration for taking advantage of this for free, but if you're a lighttpd user, you'll need to update your configuration based on our lighttpd.conf template.

Going forward, upgrades using easy_install will not grab nightlies. They will only be grabbing stable releases. If you want to continue using nightlies, please refer to the Getting Started guide.

A full summary of the changes in this release are below:

Bugs Fixed in post-review:

  • We now strip the filename coming in from Perforce. There can be a trailing newline sometimes, resulting in a failed upload. (Bug #726)
  • We set the correct locale now when invoking svn. Patch by Łukasz Jernaś. (Bug #822)
  • Fixed backwards version comparison logic in post-review's GitClient. Patch by Stacey Sheldon.
  • Added support for hgsubversion. Patch by Augie Fackler
  • Added support for Clearcase. Patch by Daniel Belz.

Bugs Fixed in rb-site:

  • rb-site now sets "postgresql_psycopg2" as the DATABASE_ENGINE for PostgreSQL installs. Patch by Rusty Burchfield. (Bug #822)
  • rb-site should now generate config files that work correctly on Windows servers.

Bugs Fixed in Review Board:

  • Whitespace from usernames are now stripped on LDAP accounts, which prevents duplicate user accounts in the database. (Bug #728)
  • Fixed a bug where anchors in comment flags were incorrect and were getting lost when setting the comment count for the flag. This was breaking anchors to parts of the diff. (Bug #820)
  • The fields in the comment dialog are now disabled if the user is not logged in. (Bug #827)
  • Key presses in dialogs or in the review request details box no longer trigger navigation in the diff viewer. (Bug #828)
  • The "Review" link on a review request is no longer displayed if the user is not logged in.
  • Trailing whitespace wasn't shown in diff fragments on the review request page.
  • Trailing whitespace wasn't always shown in the diff viewer, if it appeared in the middle of a comment block.
  • Removed some old YUI files that were still in the repository.

Feature Improvements:

  • Improved lighttpd and Apache+fastcgi support. A Review Board install using either lighttpd or Apache+fastcgi should now work out of the box without setting up any custom scripts for launching fastcgi.
  • The diff fragments placeholders in the review request page are now set to the same size as the fragment itself. This means that progressively loaded fragments should no longer cause the page to jump nearly as much, resulting in a smoother loading experience.
  • When displaying the Review form, we now make sure that the form is scrolled to the top. This fixes a bug where the page was often scrolled to the bottom of the list of comments.
  • Several improvements were made to Bazaar support. We now use bzrlib and support revid information in the diff header.
  • The comment dialog is now slightly wider and has slightly smaller text, resulting in more room for comments.

New Features:

  • Load times for nearly all parts of Review Board have greatly increased. The browser is now instructed to aggressively cache media files and many pages, meaning fewer downloads when going to any particular page.

    We optimize the order in which resources are loaded in order to take advantage of the browser's ability to parallelize downloads of similar resources types (such as CSS files or JavaScript).

    The results of these files are GZip'd to further increase transfer speeds.

    Apache users will get these improvements for free. lighttpd users will need to upgrade their lighttpd config file based on the template provided with Review Board in the contrib/conf/ directory.

    On top of this, we now use jQuery 1.3.1, which is many times faster than the previous version of jQuery we were using, and we also have a number of improvements such as progressive loading of the diff viewer.

  • Added progressive loading of the diff viewer. This is one of the main features of this release. Regardless of the size of the diff, the diff viewer now loads quickly, and loads each file's diff progressively. This gives people the ability to review code before all the diffs have even been generated.

    This also fixes some major scalability issues we've had with large diffs. In theory, it's now possible to review very large diffs that span many pages.

  • Added support for linkifying pieces of text in the Description and Testing Done fields. (Issue #258)

    The following formats are supported:

    • URLs
    • /r/123 numbers (even /r/123/diff and such)
    • bug/issue numbers (in the form of "bug abc123", "bug #abc123", "issue abc123" and "issue #abc123")
  • Added support for Clearcase repositories. This depends on a mounted view on the Review Board server. Patch by Daniel Belz.
Comments

January 19, 2009

chipx86
Review Board 1.0 alpha 1 released

After a long time in development, we're finally approaching our landmark 1.0 release. Today we've released Review Board 1.0 alpha 1, which can be downloaded by following the instructions on our downloads page or through our Getting Started guide.

This release has been considered stable enough for production use. A number of companies have been using the nightlies leading up to this release for quite a while. If you've been using nightly releases until now, you'll automatically be switched over to the 1.0 alpha 1 release the next time you upgrade. If you want to keep using nightlies to help test the latest and greatest, see the "Nightly Releases" section in our Getting Started guide for instructions on switching back.

In the following months, we expect to release one more alpha, two betas, a release candidate, and the final 1.0 release. The plans leading up to the 1.0 release are available in our roadmap. We're going to be focusing on complete installation, administration and user documentation, as well as enhancing usability and stabilizing the product. This also means we're going to begin entering a feature freeze, where we'll only accept new features if we agree they're critical to this release. Most new features will be saved until after 1.0.

We'd like to thank the 100+ contributors who have helped make Review Board such an awesome code review tool. If you have questions, need support, or would like to help out with the project, you can contact us on our mailing list or file bug reports. And if you're a happy user, we'd love to hear from you too!

Comments