Help fund Review Board development! Donate today.

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