Skip to content

Releases: reviewboard/reviewboard

Review Board 6.0.1: Fixes for Publishing

08 Nov 20:03
Compare
Choose a tag to compare

Review Board 6.0.1 fixes a handful of bugs found in the recent 6.0 release:

  • Reviews and replies should now successfully publish in all cases.

  • Administrators can once again see and edit another user's draft review requests.

  • Compatibility issues with subdirectory installs or Local Site partitioning have been resolved.

  • Plus other bug fixes throughout the product.

All the details can be found in the release notes.

Asana and Trello integrations updates

We've also released Review Board Integrations 3.1.1, which fixes compatibility with Trello and Asana. This must be upgraded manually for now:

$ pip3 install rbintegrations==3.1.1

This is compatible with both Review Board 5 and 6.

Let's get started!

To learn more about upgrading your server, see our upgrade instructions. You can also use our official Docker images.

If you need assistance with your server, we can help under a support contract.

Announcing Review Board 6

17 Oct 09:25
Compare
Choose a tag to compare

Review Board 6 is all about focusing on your code review experience in a pleasant environment.

The UI is bright, soft, and colorful. The diffs are easier on the eyes, and easier to navigate. The review process is streamlined, a new review banner guiding you through creating, managing, and publishing your review request, reviews, and replies. Rich commenting is effortless, with Markdown formatting aided by a helpful new toolbar.

And that's just the beginning. Let us introduce you to Review Board 6.

A bright start

We’ve been improving the look and feel of Review Board, softening and brightening the visuals, giving content some breathing room, and sanding down rough edges.

An example of the new visuals seen in the diff viewer, with softer colors and better interaction controls

The color palette and font size used in diffs have been refined to make it easier to read long blocks of code.

Much of our UI has been made more accessible and mobile-friendly.

This is the first step toward a larger UI refresh planned for Review Board 7.

Looking for something less bright? Say, a dark mode? That's in the works, but for now, we find Dark Reader to be pretty useful ourselves!

An improved review experience

In past versions of Review Board, your draft review requests, reviews, and replies were all managed separately, each with its own green draft banner.

Review Board 6 now includes a new Unified Review Banner, which summarizes every draft that still needs to be published on a review request.

New review draft banner, with draft selection, Publish and Discard buttons, "Describe your changes" field, and Review menu

This banner allows you to:

  • See all your drafts in one place
  • Publish all your drafts together with fewer e-mails, or publish them independently as before
  • Create new reviews on a review request

This banner is always visible on the screen, and will help guide you through the review process.

The old Review, Add Comment, and Ship It! buttons on the review request’s action bar have been moved to a new Review menu on the banner, helping you create, manage, and publish your reviews from anywhere on a review request.

New Review menu, with "Create a new review," "Add a general comment," and "Ship it!" items.

To help get going, we’ve added new tips and tricks to the Review Dialog, shown when clicking Review -> Create a New Review.

A sample tip in the Review Dialog, stating: "To add a comment to a code change or text file attachment, click on a line number or click and drag over multiple line numbers in the diff viewer. You'll be able to see and edit the comment from both the diff viewer and here in the review dialog."

And finally, you can review your own diffs and files before they’re published, helping make comments that guide reviewers through your change.

Craft Markdown comments with a click

It’s easier than ever to compose Markdown text for your reviews, comments, and review requests through the new Markdown formatting toolbar.

The new Markdown formatting toolbar at the bottom of a text field with buttons for Bold, Italic, Strike-through, Code Literal, Insert Link, Insert Image, Insert Bullet List, Insert Numeric List

Toggle between bold, italic, strike-through, and code literals. Create lists, link to URLs, and then go beyond text by uploading and embedding images.

Better file attachment management

File attachments are an important part of many people's workflows. Review Board 6 now makes it easier to track which files are published, which you're introducing in a draft, and which are pending deletion.

A file attachment titled Important Presentation with a label in the top right corner of its thumbnail stating that it is pending deletion. There is a menu of buttons beside the thumbnail, with options for reviewing, downloading, and undoing the delete.

When adding, updating, or deleting file attachments, a label is now placed on the thumbnail showing its status:

  • New: The file attachment was newly-added in this draft.
  • New Revision: A new, updated revision of a file attachment was added in this draft.
  • Pending Deletion: The file attachment will be deleted when the draft is published.
  • Draft: The file attachment’s caption has been updated in the draft.

If a file attachment is pending deletion, you can now restore it by clicking Undo Delete in the file attachment’s actions menu.

Take action with extensions

Review Board’s extension abilities have grown once again.

The new Actions system makes it easier to add, hide, and reorder actions on the review request’s action bar, on the page header, and the navigation bar.

Client-side extensions can now be written using TypeScript and Spina, and bound together using ES Modules.

Server-side extensions can benefit from enhanced Python type hints and pytest-based unit tests.

Important compatibility updates

We’ve dropped support for Python 3.7 and added 3.12. Please note that not all third-party repository support is compatible yet with 3.12.

We’ve also dropped Subvertpy support. To use Subversion with Review Board, make sure to install PySVN.

Plus…

  • Faster automated code review results
  • A better default view for dashboards, showing all your incoming and outgoing review requests
  • A service health check URL (/health/) for monitoring, scaling, and fault tolerance
  • New Single Sign-On options, for wider Identity Provider compatibility
  • Enhanced API error reporting, with string-based error types
  • Performance and usability improvements all throughout Review Board
  • And more!

The Review Board 6 release notes cover all the changes in this release in detail.

Ready to upgrade?

For most users of Review Board 5, Review Board 6 will be a drop-in replacement with minimal downtime.

Still, make sure you have a backup of your database and site directory, and please perform a test upgrade on a test server. Then follow the upgrade instructions.

If you’re using Docker, follow our Docker instructions to deploy new containers. Review Board 6’s official Docker images are based on Ubuntu 22.04 LTS and Python 3.11.

If you need assistance, we can help support your Review Board server with a plan that meets your needs.

Review Board 6.0 Beta 3 is Looking Good!

30 Aug 21:48
Compare
Choose a tag to compare

Beta 3 is here, with a more polished Review Board look and feel, a toolbar to help format your Markdown text and attach images, a better experience for the new Review Banner, and numerous fixes and improvements throughout the product.

If you're discovering 6.0 for the first time, look at our announcements for 6.0 beta 1 and 6.0 beta 2 to learn about the new features, like the Review Banner, improved diff navigation, and all the new extension capabilities that can help tailor Review Board for your team.

A more pleasing experience

We’ve refined Review Board’s look, making small adjustments throughout the product to help it feel lighter, with easier-to-read diffs and more apparent controls.

An example of the new visuals seen in the diff viewer, with softer colors and better interaction controls

This is the beginnings of a larger effort that we’ll be continuing through Review Board 7 to help modernize the UI and give users more control over how Review Board looks on their system.

Format Markdown and upload images with just a click

We’ve made it easier to work with Markdown text anywhere you see a text field. The new Markdown formatting toolbar helps you format your reviews, comments, and review requests using Markdown.

Toggle between bold, italic, strike-through, and code literals. Create lists, link to URLs, and then go beyond text by uploading and embedding images.

The new Markdown formatting toolbar at the bottom of a text field with buttons for Bold, Italic, Strike-through, Code Literal, Insert Link, Insert Image, Insert Bullet List, Insert Numeric List

Guiding you to better reviews

We’ve added useful tips and tricks for helping compose your reviews, right at the top of the Review Dialog.

A sample tip in the Review Dialog, stating: "To add a comment to a code change or text file attachment, click on a line number or click and drag over multiple line numbers in the diff viewer. You'll be able to see and edit the comment from both the diff viewer and here in the review dialog."

In addition, the new Review Banner is now available any time you see a review request, regardless of whether it’s in draft form, published, or closed. You can also publish all reviews and review requests with one click.

Plus…

  • Usability improvements for working with text fields
  • Performance improvements for publishing drafts
  • New APIs and extension capabilities
  • Better repository validation for Git and Subversion
  • And lots of bug fixes!

See the release notes for the full list of changes and installation/upgrade instructions.

Next release will be RC1, our release candidate. We’d love to get some more testing, and have a handy Docker image you can try to get started. Your feedback will help us make 6.0 a rock-solid release.

Review Board 5.0.5: Improved SSO, New Installation Options

20 Jun 22:29
Compare
Choose a tag to compare

Review Board 5.0.5 offers improvements and fixes to Single Sign-On, web-based login for the upcoming RBTools 5, improved support for installing with Python Virtual Environments (required in this year's Linux distributions), and more.

Let's dig in.

Improved Single Sign-On

We've fixed a handful of bugs in the Review Board 5's new Single Sign-On support, improving compatibility with most services.

Now, if a page requires you to log in first, you'll be taken back to that page once successfully logged in. Thanks to everyone who let us know this wasn't working right.

Web-Based Login for RBTools 5

RBTools 5 is in development, and includes the ability to log in using the Review Board website. This means you can finally use your standard Single Sign-On authentication for RBTools.

We're hard at work on RBTools 5, and will be shipping it later this year. If you'd like to beta test this, please reach out to support for pre-release builds.

Python Virtual Environments

Python Virtual Environments provide a way to isolate Python applications and services from the system or other Python applications. They help you avoid various forms of installation problems, and they're required in Ubuntu 23.04, Debian Bookworm, and Fedora 39 (with other Linux distros soon to follow).

Starting in 5.0.5, Review Board can now help you install into a Virtual Environment and will automatically make use of it no matter what web server you're using.

We've updated our installation documentation to help you install and use Review Board in either Virtual Environments or in traditional setups.

Please note: If you're not using a Virtual Environment today, you don't need to switch to one unless you're planning to upgrade to this year's Linux distributions.

Plus...

  • It's now easier to manage review groups and repositories when configuring an integration, such as Slack or Jenkins.
  • New python and pip site management commands for running the correct versions for your environment.
  • Compatibility fixes for modern Python packaging support.

All the details can be found in the release notes.

To learn more about upgrading your server, see our upgrade instructions. You can also use our official Docker images.

If you need assistance with your server, we can help under a support contract.

Review Board 6 Beta 1

04 Apr 08:00
Compare
Choose a tag to compare
Review Board 6 Beta 1 Pre-release
Pre-release

We’re excited to announce the first beta of Review Board 6! This is a smaller release focusing on improvements to the review workflow by giving you a new starting point for creating reviews and the ability to bulk-publish drafts of reviews, replies, and review requests.

If you’re new to Review Board, it’s a free, open source, extensible web-based code review and document review tool, helping developers work together to ensure quality code on their projects, whether using Git, Mercurial, Perforce, Subversion, ClearCase, or other current or future source code management tools.

Let’s take a closer look at some of the key changes in this beta.

The New Review Banner

Since the beginning, Review Board has represented drafts of new reviews, replies, or review request changes as a green draft banner at the top of the screen. Each draft had its own banner, and each draft had to be published separately.

We’re now introducing a new unified banner, which shows everything you have in flight on a review request.

New review draft banner, with draft selection, Publish and Discard buttons, "Describe your changes" field, and Review menu

From here, you can:

  • Start or edit reviews from anywhere on the page (replacing the old “Review” and “Ship It” buttons).
  • File general comments pertaining to the review request as a whole (replacing the old “Add Comment” button).
  • Switch between drafts, if you want to publish one independently.
  • Bulk-publish all reviews, replies, and pending changes on a review request at once, resulting in fewer button clicks and e-mails.

Menu for switching the drafts to publish.

The banner is always present on a review request. You can use the Review menu to create a brand-new blank review, file a general comment, or quickly file a Ship It! review:

New Review menu, with "Create a new review," "Add a general comment," and "Ship it!" items.

There’s more coming. In beta 2, the new banner will show you your active file in a diff and let you jump to other files.

Learn more about the new review banner.

We’re opening this up to extension authors. Soon, extensions will be able to add new information and sections to the banner, giving your organization more control over your review workflow.

Also For Extension Authors

Extension authors also have a few new goodies in this release:

  • We’ve reworked our actions framework, which manages the buttons that can be found on a review request, the review banner, and the page header. It’s now easier to add, replace, or remove actions and tailor the product to your needs.
  • We’re adding Python Type Hints throughout our codebase, making it easier for your IDE to ensure you’re calling our internal APIs correctly.
  • Client-side extensions can now be written in TypeScript and use ES6 modules. Simply declare an index.ts file in your JavaScript bundle, and use that to write any TypeScript code or import from TypeScript modules.
  • You can also now use modern ES6 classes for your JavaScript/TypeScript code. We’ve introduced a new library called Spina to help create these, working as a drop-in replacement for the old Backbone.JS.

We’ll have documentation on all this before the final 6.0 is released.

Plus…

  • The dashboard now defaults to the “Overview” view, which shows all your incoming and outgoing review requests.
  • We’ve changed “Close -> Submitted” to “Close -> Completed,” removing some old and confusing Perforce-centric terminology.
  • Numerous behind-the-scenes improvements for improving performance, architecture, and stability.

See the 6.0 beta 1 release notes for the full list of changes.

Want to Help Us Test?

We’d love to have your help! We have installation information in the release notes.

Please make sure you have a dedicated testing server and database. Do not test this beta in production!

You can use the beanbag/reviewboard:6.0b1 Docker image as well. See our Docker instructions for information on setting up an environment.

Review Board 5.0.4: Compatibility Fixes, API Changes

28 Mar 07:51
Compare
Choose a tag to compare

Review Board 5.0.4 is a bug fix release, focusing on improving compatibility throughout the product, addressing problems with Single Sign-On, and making critical changes to the API.

Fixes for new Apache installs

Review Board 5.0.3 auto-generated new configurations for more web servers when first installing a site, but it was missing the new templates for Apache installs.

Review Board 5.0.4 now generates much-improved Apache configurations with wide Apache support. These new configurations help with setting up SSL and configuring mod_wsgi for different modes.

Better service compatibility

We've fixed compatibility for a few services we integrate with, including:

If you're using any of these, you'll want to upgrade to 5.0.4.

Important API changes

We introduced the following APIs in Review Board 5.0:

Due to a conflict between the names used for linking to these resources and names used for other resources in our URI templates at the top-level of our API, we've needed to rename these links. If you are using these new APIs, please see the release notes for the new names.

We try hard not to break the API, but this was the less intrusive option.

This also fixes a compatibility problem with the rbt review command.

Plus...

  • Full Single Sign-On support in Docker
  • Fixes in the presentation of the Trojan Source warning in the diff viewer
  • Better instructions when configuring Elasticsearch
  • Additional fixes throughout the product

All the details can be found in the release notes.

To learn more about upgrading your server, see our upgrade instructions. You can also use our official Docker images.

If you need assistance with your server, we can help under a support contract.

Oh, one more thing

We're releasing Review Board 6 beta 1 very soon! 6.0 will be a smaller release focused on a few improvements in the review process.

The beta will be public to everybody, but if you're interested in beta testing, we'd love to hear from you!

Review Board 5.0.3, 4.0.12, 3.0.25: Security and Bug Fixes

08 Mar 01:09
Compare
Choose a tag to compare

Today’s new releases fix a (rare) security issue when using older insecure LDAP servers. There are also installation improvements and a handful of bug fixes.

LDAP Security Fix

A security bug was found that enables a user to log in as another user when LDAP is configured. This vulnerability only exists when:

  1. Using very old LDAP servers that contain a credential verification security bug; and
  2. Enabling anonymous binds; and
  3. Logging in as a user not present in LDAP

Under these conditions, a combination of an invalid LDAP username and a non-empty password can result in LDAP claiming the credentials are valid. If that user exists in Review Board as a local user, Review Board will see that the login was “successful” in LDAP and log the user in.

Most users should never hit this issue. So far it’s only been found in an old version of Active Directory, and only when using our “LDAP” backend instead of the recommended “Active Directory.”

We've tightened the code path and added additional checks to safeguard this on our end. All of today’s releases include the fix.

If you use LDAP, we recommend upgrading to this release, ensuring your LDAP servers are up-to-date, and disabling anonymous binds if you don't need them.

New Supported Web Servers

Review Board works well with just about any modern web server, but we’ve only ever provided sample configurations for Apache.

Now, when installing a new site, sample configurations are auto-generated for these often-requested web servers:

  • Apache + mod_wsgi
  • Nginx + Gunicorn
  • Nginx + uWSGI

See our Web Server documentation for these sample configuration files and additional instructions.

Many Bug Fixes

We’ve stomped out several bugs in this release, including:

  • Problems marking a SSH key or SSL certificate as trusted when configuring a repository
  • Communicating with repositories over SSH in some setups
  • Performing manual runs of automated reviews when multiple configurations for the same tool are present
  • Workarounds for environment issues during installation on Ubuntu 20.04 LTS

New Documentation

We’ve also reworked much of our documentation. Some highlights include:

For the full list of changes, see:

To learn more about upgrading your server, see our upgrade instructions. You can also use our official Docker images.

If you need assistance with your server, we can help under a support contract.

Review Board 5.0.2: API Token Expirations, Trojan Source Options, Bug Fixes

07 Feb 09:59
Compare
Choose a tag to compare

Review Board 5.0.2 adds new time-based expiration controls for API tokens, improves your control over Trojan Source detection, adds new API features, and fixes several bugs.

Time-Based Expiration for API Tokens

In Review Board 5.0, we introduced new, stronger API tokens that could expire and be validated through automated tools.

Tokens can now be set to expire at a specific time. This is useful when creating short-lived tokens or ones that need to expire at, say, midnight on a given date.

The expiration dates/times for existing tokens can also be changed after token creation. They can even be set in the past to force a token to be expired.

Trojan Source Detection Options

Review Board 5 brought the ability to scan uploaded diffs for possible Trojan Source attacks. Since these are based on Unicode characters from a variety of languages, they can result in false-positives when working with character sets such as Cyrillic or Greek.

Now, Trojan Source detection can be toggled off entirely in Admin UI -> Diff Viewer Settings. Or you can leave it on and mark some character sets as safe.

Changes to URI Templates in the API

URI templates provide quick and easy access to various API resources, allowing a client to determine the appropriate URL simply by accessing the root resource and looking up the desired template name.

In Review Board 5, we had some new resources that conflicted with other ones. This may have impacted some in-house integrations or when using the RBTools API.

We’ve now fixed this to use the original names. The conflicting URI template names have been deprecated, and we’ve introduced a whole new set of future-proofed URI template names.

If you're a developer using our API, please see the full list of new, existing, and deprecated URI templates.

Plus...

  • Review UI support for more JSON and YAML mimetypes
  • Better defaults on new site installs for maximum diff sizes and lines for syntax highlighting
  • Extension capabilities for defining custom ACLs for accessing diffs
  • Usability fixes in the diff viewer and in configuration forms
  • Crash fixes
  • And more.

All the details can be found in the release notes.

To learn more about upgrading your server, see our upgrade instructions. You can also use our official Docker images.

If you need assistance with your server, we can help under a support contract.