Review Board 6.0 Beta 3 Release Notes¶
Release date: August 30, 2023
This release contains all bug fixes and features from Review Board version 5.0.5 and 6.0 beta 2.
Installation/Upgrade¶
Review Board 6.0 Beta 3 is compatible with Python 3.8 - 3.11.
Follow our installation guide to prepare your system for Review Board to to upgrade your existing install.
To install this release, run:
$ pip3 install \
-f https://downloads.reviewboard.org/betas/reviewboard/6.0-beta-3/ \
--pre -U ReviewBoard
Warning
We do not recommend upgrading a production server with this version of Review Board. It’s best to install on a test server, with a copy of your production database, in case there are any major problems.
To learn more, see:
For assistance with your server, talk to us about support.
Packaging¶
Review Board 6.0 beta 3 supports Python 3.8 - 3.11.
Support for Python 3.7 has been dropped in this beta.
Djblets 4.0 beta 3 is required.
New Features¶
A more polished look¶
We’ve been improving the look and feel of the product, softening the visuals, giving content some breathing room, sanding rough edges, and reworking the color palette and font size to make diffs easier to review.
Further improvements are still coming for Review Board 6, and are a step toward a larger UI refresh planned for Review Board 7.
Markdown formatting toolbar¶
The new toolbar can help you format your text (bold, italic, strike-through, or code literals), create lists (numeric or bullet point), insert links, or upload images.
It’s shown any time you’re writing Markdown content, such as when leaving a comment, replying to a review, or filling out a review request field.
Helpful tips for composing reviews¶
Now, when creating or editing a review, the Review Dialog will show a slideshow of useful tips on reviewing in Review Board. This will teach you how to leave multi-line comments, comment on regions of images, publish drafts, and more.
Future-proofed upgrades¶
Upgrading a Review Board site now carefully updates the
reviewboard.wsgi
file to remove any legacy settings, add modern
settings, and preserve custom settings. The new versions include improved
support for Python virtual environments (which are now recommended for all
new installs).
We’ve also bullet-proofed virtual environment management to avoid replacing an existing virtual environment if not managed by Review Board.
Removed Features¶
Dropped support for subvertpy for Subversion repositories.
Subvertpy hasn’t been maintained in a long time, and suffered from many compatibility and installation issues.
We now require PySVN for Subversion. See the installation instructions for details on installing PySVN.
Usability Improvements¶
Clicking a text field on a review request now positions the cursor where you click.
Previously, it would position the cursor at the start of the field.
The new Unified Review Banner will now pop up the Review Dialog when creating a new review.
The diff revision slider now uses a splash of color to show it can be interacted with.
When expanding parts of a diff, the collapse button is now better positioned and labeled.
Performance Improvements¶
Publishing review requests is now faster.
Web API¶
-
Added a
?show-invisible=true
query argument to include hidden accessible review groups.Added a
?invite-only=<true|false>
query argument to filter review groups based on theinvite_only
value.Fixed including hidden invite-only review groups when the special
reviews.can_view_invite_only_groups
user permission is set.
Extensions and Internal Changes¶
Custom
menu actions
:Fixed using the new HideActionHook with the Log in, Log out, My account, Admin, and Follow actions.
Custom
SCMTools
(repository implementations) can now storeextra_data
on a draft review request when parsing a changeset.This allows additional data about a changeset to be stored for later use.
Running rbext without any parameters will now output helpful instructions.
Improved Python type hints throughout more of the product.
Switched our extension support to use modern Python packaging support.
Tools for working with Python packages have changed significantly in the past few years. We’ve updated all of Review Board to move from the legacy tooling to modern tooling.
This is a large behind-the-scenes change, but it shouldn’t have any noticeable change in functionality. If your extension package no longer works, please reach out to support.
Ported more of the JavaScript codebase to ES6 classes with Spina.
Extension authors can use Spina to write better JavaScript/TypeScript extensions, using Spina for cleaner code and better typing.
Bug Fixes¶
Review Requests¶
Fixed a crash when clicking Add File.
This broke in 6.0 beta 2.
Fixed a display bug with Markdown code blocks that could occur when showing content starting with a
#!
.Fixed a display bug with the file attachment diff revision slider.
Fixed an issue where a click could sometimes be ignored on a review request text field.
This could happen if the mouse cursor position moves slightly when clicking, indicating a possible drag.
Fixed repeated reloads of the Issue Summary Table while automated code reviews are running.
Diff Viewer¶
Fixed showing the content of deleted files in diffs.
Fixed a bug copying content from diffs to the clipboard.
Repositories¶
Remote Git repositories can no longer be configured without a Raw File URL for accessing file contents.
Git doesn’t provide any way to remotely fetch the contents of files across a network, meaning we require a hosting service (such as GitHub, GitLab, or RB Gateway). We work around that with a “Raw File URL”, which is a URL to a GitWeb-like service for fetching the contents of a file.
We now require the Raw File URL for all remote Git repositories.
Subversion repositories configured with a filesystem path are no longer allowed.
URLs are required for Subversion. We now require
file://
if using a filesystem path.Fixed reporting errors with Bazaar/Breezy when Python modules are missing.
Administration¶
Configurable lists of review groups now include hidden accessible review groups and repositories.
Contributors¶
Christian Hammond
David Trowbridge
Hannah Lin
Michelle Aubin