• Get Review Board
  • What's New
  • Products
  • Review Board Code review, image review, and document review
  • Documentation
  • Release Notes
  • Power Pack Enterprise integrations, reports, and enhanced document review
  • Try for 60 Days
  • Purchase
  • RBCommons Review Board as a Service, hosted by us
  • Pricing
  • RBTools Command line tools and Python API for Review Board
  • Documentation
  • Release Notes
  • Review Bot Automated code review, connecting tools you already use
  • Documentation
  • Release Notes
  • RB Gateway Manage Git and Mercurial repositories in your network
  • Documentation
  • Release Notes
  • Learn and Explore
  • What is Code Review?
  • Documentation
  • Frequently Asked Questions
  • Support Options
  • Third-Party Integrations
  • Demo
  • Review Board RBTools Power Pack Review Bot Djblets RB Gateway
    1. RBTools
    2. RBTools 3.1 Release Notes
  • Home
  • RBTools 5.2.1 Release Notes
  • RBTools 5.2 Release Notes
  • RBTools 5.1.1 Release Notes
  • RBTools 5.1 Release Notes
  • RBTools 5.0 Release Notes
  • RBTools 4.1 Release Notes
  • RBTools 4.0 Release Notes
  • RBTools 3.1.2 Release Notes
  • RBTools 3.1.1 Release Notes
  • RBTools 3.1 Release Notes
  • RBTools 3.0 Release Notes
  • RBTools 2.0.1 Release Notes
  • RBTools 2.0 Release Notes
  • RBTools 1.0.3 Release Notes
  • RBTools 1.0.2 Release Notes
  • RBTools 1.0.1 Release Notes
  • RBTools 1.0 Release Notes
  • RBTools 0.7.11 Release Notes
  • RBTools 0.7.10 Release Notes
  • RBTools 0.7.9 Release Notes
  • RBTools 0.7.8 Release Notes
  • RBTools 0.7.7 Release Notes
  • RBTools 0.7.6 Release Notes
  • RBTools 0.7.5 Release Notes
  • RBTools 0.7.4 Release Notes
  • RBTools 0.7.3 Release Notes
  • RBTools 0.7.2 Release Notes
  • RBTools 0.7.1 Release Notes
  • RBTools 0.7.0 Release Notes
  • RBTools 0.6.3 Release Notes
  • RBTools 0.6.2 Release Notes
  • RBTools 0.6.1 Release Notes
  • RBTools 0.6 Release Notes
  • RBTools 0.5.7 Release Notes
  • RBTools 0.5.6 Release Notes
  • RBTools 0.5.5 Release Notes
  • RBTools 0.5.4 Release Notes
  • RBTools 0.5.3 Release Notes
  • RBTools 0.5.2 Release Notes
  • RBTools 0.5.1 Release Notes
  • RBTools 0.5.0 Release Notes
  • RBTools 0.4.3 Release Notes
  • RBTools 0.4.2 Release Notes
  • RBTools 0.4.1 Release Notes
  • RBTools 0.4.0 Release Notes
  • RBTools 0.3.4 Release Notes
  • RBTools 0.3.3 Release Notes
  • RBTools 0.3.2 Release Notes
  • RBTools 0.3.1 Release Notes
  • RBTools 0.3.0 Release Notes
  • RBTools 0.2.0 Release Notes
  • RBTools 0.2 RC 1 Release Notes
  • RBTools 0.2 Beta 2 Release Notes
  • RBTools 0.2 Beta 1 Release Notes
  • Release Notes
  • RBTools 3.1 Release Notes¶

    Release date: May 10, 2022

    New Features¶

    Code Review for Cliosoft SOS¶

    RBTools 3.1 now supports posting and reviewing code on Cliosoft SOS!

    SOS is an enterprise-grade source code management solution widely used for hardware and software design and development. It’s built to allow teams across the globe to collaborate on large hardware-focused projects.

    RBTools can now post in-progress changes for review. This supports SOS selections and changelists (new in 7.20). Any pending changes can be posted as a review request and iterated on until approved and ready to check in.

    RBTools requires a licensed copy of SOS 7.20 or higher.

    Review Board 4.0.6, Power Pack 5.0, and SOS 7.20 is required on the server. Any user posting changes to Review Board must also be licensed in Power Pack.

    This is a collaboration between Cliosoft and Beanbag.

    See our guide on setting up SOS repositories and posting to SOS repositories for more information.

    Improved Matching of Review Requests¶

    The logic for matching review requests when running rbt post -u has been enhanced and expanded. It should now do a better job of finding a suitable match, based on the stored commit ID, summary, and description.

    Future versions of RBTools will take advantage of some of the newer features to help detect by branches and other relevant metadata as well.

    RBTools API¶

    • extra_data dictionaries on resources now behave like standard Python dictionaries.

      These can also be converted into a plain dictionary, if needed.

      These are immutable, and will raise an error if you try to modify them directly.

    • update() calls on resources can now modify extra_data fields using JSON Patch or JSON Merge Patch.

      A JSON Merge Patch can be set by passing extra_data_json={...} to these requests.

      A JSON Patch can be set by passing extra_data_json_patch=[...].

      For example:

      review_requests.update(extra_data_json={
          'key1': 'value',
          'key2': {
              'items': [1, 2, 3],
          },
      })
      

      See Patching JSON Data for details on these forms of JSON patching.

      This replaces the now-legacy extra_data__fieldname=value convention.

    • API errors now contain more useful information.

      These are sometimes shown when a more specific error isn’t available. The following changes have been made to how errors are shown:

      • API error codes and HTTP status codes are now shown alongside the name of the error.

      • The HTTP status code is no longer shown if we have an API error code.

      • There’s always a helpful default error message shown if there isn’t something more specific.

    • Added unit testing capabilities for consumers of the Python API.

      The Python API can now be tested more easily using a series of new testing classes:

      • rbtools.testing.api.transport.URLMapTransport: An API transport that enable registration of URLs to payloads, with lots of built-in registration helpers. This can be passed to a rbtools.commands.Command or rbtools.api.client.RBClient instance.

      • rbtools.testing.api.payloads.ResourcePayloadFactory: A helper class for generating consistent API response payloads for different kinds of API resources.

      • rbtools.testing.commands.CommandTestsMixin: A mixin for unittest-based test suites to help construct and run commands in the test environment.

      Along with this, rbtools.testing.testcase.TestCase can now help create new the new transport or client.

    Bug Fixes¶

    ClearCase / VersionVault¶

    • Fixed a bug with checking VOBs on Windows.

    • rbt list-repo-types now lists “VersionVault / ClearCase” in the repository list, instead of just “ClearCase”.

    Git¶

    • Fixed detecting git-p4 repositories after running git gc.

      This could sometimes cause a file used to detect git-p4 repositories to be deleted. We now employ alternative means for detection.

      Patch by Ben Jackson.

    Mercurial¶

    • Fixed launching Mercurial when encountering configuration or extension errors.

    Subversion¶

    • Fixed detecting other repository types when Subversion isn’t installed.

    Contributors¶

    • Ben Jackson

    • Christian Hammond

    • David Trowbridge

    Keep up with the latest Review Board releases, security updates, and helpful information.

    About
    News
    Demo
    RBCommons Hosting
    Integrations
    Happy Users
    Support Options
    Documentation
    FAQ
    User Manual
    RBTools
    Administration Guide
    Power Pack
    Release Notes
    Downloads
    Review Board
    RBTools
    Djblets
    Power Pack
    Package Store
    PGP Signatures
    Contributing
    Bug Tracker
    Submit Patches
    Development Setup
    Wiki
    Follow Us
    Mailing Lists
    Reddit
    Twitter
    Mastodon
    Facebook
    YouTube

    Copyright © 2006-2025 Beanbag, Inc. All rights reserved.

    Terms of Service — Privacy Policy — AI Ethics Policy — Branding

    On this page

    • [Top]
    • New Features
      • Code Review for Cliosoft SOS
      • Improved Matching of Review Requests
    • RBTools API
    • Bug Fixes
      • ClearCase / VersionVault
      • Git
      • Mercurial
      • Subversion
    • Contributors