RBTools 3.0 Release Notes¶
Release date: March 22, 2022
New Features¶
HCL VersionVault and IBM ClearCase¶
Review Board Power Pack 4.0 includes new support for HCL VersionVault and IBM ClearCase, built in cooperation with HCL. This replaces the old community-driven ClearCase implementation in Review Board, offering better compatibility, official support, and modern functionality. It includes many long-requested features such as the ability to include multiple VOBs in a single repository.
Support for this new backend has been added, and support for the old community-driven backend has been significantly rewritten to improve performance and reliability.
rbt review¶
The new rbt review command makes it possible to perform reviews from the command line.
This command offers several sub-commands, including the ability to create comments of different types, and create, edit, and publish reviews.
Based on work by Anahita Mohapatra.
JSON Output¶
All commands now include a --json
option for printing output in a
machine-readable format. At a minimum this output will include the success or
error status of the command, and most commands include additional keys for the
data.
Patch by Ryan Kang.
Other Improvements¶
The performance of the repository detection mechanism which most commands use at start-up has been significantly improved. We still recommend setting
REPOSITORY
andREPOSITORY_TYPE
in.reviewboardrc
(or using--repository
and--repository-type
) in order to avoid the need for auto-detection entirely.Added support for setting the
Proxy-Authorization
header.Some proxy servers and authentication gateways require setting this header. A new config key and command-line flag have been added to support this.
Patch by Lukasz Kawczynski.
Show custom commands and aliases with
--help
The help output has been extended to discover custom commands (added via Python entry points), as well as any aliases defined in
.reviewboardrc
files.Patch by Matthew Blythe.
Improved command initialization.
If you’re building custom RBTools commands, your command subclass can now use the
needs_api
,needs_scm_client
, andneeds_repository
attributes to automatically initialize any required functionality. This reduces the amount of boilerplate code required, and keeps all that implementation in a centralized place. Existing commands can be updated to use these but the older initialization methods will still work.
Bug Fixes and Other Changes¶
Fixed a bug with exclude patterns and multi-commit diffs (Bug #4941).
When posting multiple commits on Git, the individual commits would respect any exclude patterns, but the cumulative diff which is also posted to the server would not. This has been fixed.
Patch by Andrej Radović.
Fixed the type of the
User-Agent
header.Under Python 3, the
User-Agent
header could be formatted incorrectly.Patch by Lukasz Kawczynski.
Fixed displaying some aliases using
rbt alias --dry-run
.If an alias was defined as a system command alias (using the
!
prefix),rbt alias --dry-run
would fail to print out the alias correctly.The old
TREES
config key has been deprecated.Early in RBTools’ history, a config key was added to map filesystem locations to Review Board server names. This was never properly documented, and has been scheduled for removal in RBTools 4.0.
Contributors¶
Anahita Mohapatra
Andrej Radović
Christian Hammond
David Trowbridge
Laurent Marechal
Lukasz Kawczynski
Matthew Blythe
Ruonan Jia
Ryan Kang