• 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
  • RBTools 5.1: Better Patching and New Settings

    December 2, 2024

    RBTools 5.1 brings a new set of patching improvements and fixes, along with a few new settings you can use to better manage your repositories.

    Much-Improved Patching

    We've completely rebuilt how RBTools applies patches files and lands changes. The new approach avoids edge cases for repositories like Mercurial, Perforce, and Subversion, and brings wider compatibility across GNU Patch, BSD Patch, and Apple Patch.

    Mercurial users will finally be able to land or patch multiple commits in one go, removing the incompatibility between RBTools and Mercurial's own patching tool.

    There's also better error handling, with breakdowns on what files failed to patch or simply conflicted with other changes, helping you hand-merge the changes.

    If you're building in-house tools that need to land changes, you can now apply patches or customize behavior using the new Patcher implementation.

    Centralized Settings Management

    TREES

    In RBTools 3, we deprecated the largely-hidden TREES setting in .reviewboardrc, which let you map repository paths to Review Board server URLs. We then removed it entirely in RBTools 4.

    Bringing this back has been a frequent request. Now, not only can you use TREES again, but you can use it to customize any setting in RBTools, using your own .reviewboardrc!

    Here's an example:

    TREES = {
        'https://svn.example.com/': {
            'REVIEWBOARD_URL': 'https://reviews.example.com',
        },
        '/home/user/dev': {
            'MARKDOWN': False,
            'TRACKING_BRANCH': 'origin/rewrite',
        }
    }
    

    Organizations can also use this in combination with a $RBTOOLS_CONFIG_PATH (Linux/macOS) or %RBTOOLS_CONFIG_PATH% (Windows) environment variable to specify central directories containing shared .reviewboardrc files, to centrally manage RBTools for all developers.

    COOKIES_STRICT_DOMAIN_MATCH

    If you’re using multiple Review Board servers on the same domain, it can be possible for session cookies (needed for authentication) to conflict with each other. For example, cookies sent from rb.example.com would be used on staging.rb.example.com, and this may not be what you want.

    You can now enable strict-domain cookies by enabling COOKIES_STRICT_DOMAIN_MATCH in .reviewboardrc (including in TREES).

    For example:

    COOKIES_STRICT_DOMAIN_MATCH = True
    

    For compatibility reasons, this is off by default.

    Plus...

    • Improved compatibility and stability for uploading binary files in commits.
    • New metadata options in rbt status-update set.
    • Compatibility fixes for older versions of Review Board.

    See the release notes for the full list of changes.

    To learn more about RBTools, see the RBTools downloads page and RBTools 5.1 documentation.

    18% off for Review Board's 18th Birthday!

    As a reminder, we're offering 18% off all new Power Pack licenses and support contracts for Review Board's 18th birthday.

    This sale lasts until the end of 2024, and will help us ensure the future of Review Board for years to come.

    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