Jump to >

Review Board 3.0.18 Release Notes

Release date: June 30, 2020


  • The Pygments dependency is now capped at a version range of >=2.1,<=2.5.999.

Compatibility Changes

  • Updated GitHub repository setup to require Personal Access Tokens.

    GitHub is changing the methods by which products like Review Board can communicate with the API. Historically, we’ve taken in a username and password and exchanged these for an API token. This capability will soon be removed from GitHub.

    New GitHub accounts set up in Review Board will now require users to set up a Personal Access Token and provide that as part of the linking process, instead of a password. Information is provided on what configuration is needed for a token.

    This release will be soon be required for any new GitHub-based Review Board installations. It’s expected that the old support will be removed in November, 2020.

  • Removed Mercurial support from Bitbucket.

    Bitbucket has removed all support for Mercurial repositories. We’ve updated our support to remove the option of adding this for new repositories.

    Existing Bitbucket Mercurial repositories in Review Board will be unchanged, but can no longer be used with Bitbucket.

New Features

  • Improved performance and capabilities of condensediffs.

    The condensediffs management command, used for condensing and de-duplicating old diff data in the database, is now faster when processing MySQL databases.

    It also now accepts a --max-diffs=<value> argument, used to migrate only a set number of diffs at a time, which is useful when you want to migrate parts of a database at a time during off-hours.


  • Updated the versions of Babel, UglifyJS, and LessCSS used for compiling extension static media.

    This shouldn’t impact any extension authors. We’re simply making sure we pull in newer versions with bug fixes.

  • Fixed cases where loading a broken extension could crash Review Board.

    We now better handle extensions with syntax errors or bad configuration, making sure that they’re skipped and remaining extensions can still be loaded.

  • Improved error handling when failing to install extension media files.

  • Enhanced browser-side dialog creation capabilities using RB.DialogView().

    Subclasses can now define a map of buttons directly on the class body, simplifying initialization.

    Patch by Hannah Lin.


  • Fixed HTTP PUT operations on the Repository Resource.

    A previous release impacted HTTP PUT operations, causing all fields to have to be specified in every HTTP PUT request, rather than reusing existing values. This release makes any previously-specific field optional again.

  • Added support for setting and accessing the extra_data field on Repository Resource.

    This includes data specific to the SCM or hosting service backing the repository.

  • Fixed crashes with HTTP POST operations on a Review General Comment Resource when the user doesn’t have permission to create the comment. (Bug #4850)

Bug Fixes


  • Fixed navigating to a destination when clicking on a row of a cell in the Dashboard.

    Clicking any area of a cell will now take you to the review request. Previously, only certain linked parts of the row were clickable.

Diff Viewer

  • Very long unbreakable lines in diffs are now forced to wrap.

    This fixes the display of some diffs that have very particularly long lines.

Review Requests

  • The issue summary table no longer resets its filters when periodically reloaded from the server. (Bug #4862)

  • Pressing Enter in the Upload File Attachment dialog now begins an upload.

    Patch by Hannah Lin.

  • Bug links with a trailing ) or ] are no longer included in the bug ID.

    Patch by Erik Johansson.

  • Fixed a regression in viewing the source mode for text files in the Text Review UI when a rendered mode was available.

    Patch by Barret Rennie.

  • Fixed a crash that could occur when showing changes in fields like Description or Testing Done that contained e-mail addresses with certain Unicode characters.

Administration UI

  • Fixed showing the correct indicator for “Public Read-Only Access” in the administration sidebar when enabled.


  • Fixed crashes when configuring NIS authentication.

    This had regressed in a prior release.


  • Reduced startup times for calls to rbssh.

    This is the helper process used for establishing a SSH connection. We’ve reduced the startup time for all calls, making communication over SSH a bit faster.

    Note that SSH-based communication is generally going to be slower than HTTPS-based communication. We recommend the latter where possible.


  • Fixed HTTP 500 errors when a Bitbucket WebHook fails to authenticate with the Bitbucket API.


  • Fixed fetching more than 100 branches from a GitLab repository.

  • Added a helpful message when trying to post an existing commit on a private repository for review through the New Review Request page.

    Due to changes in GitLab, we have no capability to retrieve a diff of an existing commit on a private repository. This has been a long-standing issue with no fix to date.

    When we detect that we can’t access this diff, we show a useful error message explaining the situation and linking to our knowledge base article.


  • Fixed validating a Perforce repository with a SSL-based repository path specified in Mirror Path.

  • Fixed trying to find an available port when setting up a Perforce stunnel.

    If there was an error opening a port, the process could give up. It now continues to try other ports.


  • Fixed looking up files containing special characters in Subversion.

    If a file in a repository contained a # or ? character, or a handful of other uncommon characters, fetching a file could fail, depending on the combination of the Review Board SVN backend (PySVN or Subvertpy) and the version of Subversion.

    We now handle fixing up all file paths to allow filenames with these characters to be fetched without problems.


  • Barret Rennie

  • Christian Hammond

  • David Trowbridge

  • Erik Johansson

  • Hannah Lin

  • Xiaohui Liu