Jump to >

RBTools 0.7.3 Release Notes

Release date: May 27, 2015

Compatibility Notes

  • Team Foundation Server support does not yet work with Visual Studio 2013 Update 4 or higher.

    In Visual Studio 2013 Update 4, the command line tool we used, tf.cmd, has been rewritten, and many of the features we depended on were dropped.

    For the moment, you will need to stick with Update 3 or lower in order to continue using Power Pack‘s TFS support. Alternatively, if you’re running Update 4, you can try installing Team Explorer Everywhere.

New Features

General

  • Added a --disable-ssl-verification option to all commands to disable verifying SSL certificates when running on Python 2.7.9+. (Bug #3705)

    Starting in Python 2.7.9, SSL certificates and their associated hostnames can be fully verified, improving security. However, this can cause problems for self-signed certificates. This new option disables that verification.

    We recommend that production servers do not use self-signed certificates.

  • Added new options for manipulating cache behavior.

    All commands now support a few new options for caching:

    • --disable-cache will disable all caching behavior.
    • --disable-cache-storage will enable caching behavior, but will not persist the cache to disk. The cache will only remain valid for the run of the RBTools command.
    • --cache-location specifies the path to the cache file to read from and write to.
  • Added a --disable-cookie-storage option to prevent cookies from being written to disk.

rbt patch

  • Added support for reverting patches.

    The new -R/--revert option allows reverting a patch in a review request. This is handy when applying a patch to a repository containing other modifications, and then wanting to revert that patch.

    This supports CVS, Git, Perforce, and Subversion repositories.

rbt post

  • Added a -s/--stamp flag to auto-stamp the commit message with the review request URL when posting a change.

    This is equivalent to posting a change and then manually running rbt stamp.

    The configuration option STAMP_WHEN_POSTING can be set to enable this behavior by default.

    Patch by Andrew Brandon.

Perforce

  • Added support for imported files. (Bug #3574)

    Perforce can integrate from a remote depot, which adds files using the “import” method. We now treat these like any other added files.

  • Added support for stamping commits when using rbt stamp, rbt post --stamp, or rbt land.

    Patch by Andrew Brandon.

Subversion

  • Added a --svn-prompt-password option for requesting to prompt for Subversion passwords.

    When specified on the command line, the user will be prompted for their Subversion password the first time a Subversion command needs to be performed during that run of the RBTools command.

API

  • Clients can disable persistent cookie storage by passing save_cookies=False to the RBClient constructor.

  • Clients can disable SSL certificate validation on Python 2.7.9+ by passing verify_ssl=False to the RBClient constructor.

  • Clients can alter cache behavior by passing the new allow_caching=, cache_location=, and in_memory_cache= options to the RBClient constructor.

  • Added a return_errors flag to rbtools.utils.process.execute().

    If set, the error output will be returned from the function call. This cannot be used if with_errors is set.

  • Changed some error handling cases in the API caching layer to raise a CacheError instead of exiting the process.

Bug Fixes

General

  • Failed diff commands no longer log the output of the diff. (Bug #3781)

  • Fixed crashes in some calls attempting to get data from an external process when the process returns a non-zero return code.

    Patch by Griffin Myers.

  • Providing the --username to any command now clears the current session, using the new username and password. (Bug #3858)

  • The .reviewboardrc file in the home directory is no longer parsed multiple times.

  • Data sent to the API is no longer assumed to be encoded as UTF8.

Caching

  • Fixed caching results from the API containing non-ASCII characters.

rbt patch

  • Fixed various issues patching files for Bazaar, ClearCase, CVS, Subversion, Plastic, and TFS.

    Patching previously only worked reliably for Git, Mercurial, and Perforce. We’ve expanded the support for the other supported SCMs so that patching will work everywhere.

    For patching files on Subversion, svn 1.7.0 or higher must be installed, so that we can utilize svn patch.

  • Fixed patching files in subdirectories on a Subversion repository.

rbt post

  • When excluding files during upload, the commit ID is no longer set on the review request.
  • Failing to find the correct repository now returns a sane error message. (Bug #3687)
  • Fixed posting changes using Perforce depot paths. (Bug #3864)

ClearCase

  • Fixed a crash when attempting to generate a diff with multiple revisions. (Bug #3814)

Git

  • Fixed Unicode errors when processing diffs for git-svn and git-p4 containing non-UTF8 characters. (Bug #3843)

  • Fixed a crash in the server-side git hook scripts. (Bug #3824)

    Patch by Tien Vu.

Mercurial

  • Fixed Unicode errors when processing diffs containing non-UTF8 characters.

    Patch by Halvor Lund.

Subversion

  • Fixed compatibility with svn 1.7.x and lower. (Bug #3876)

  • Fixed Unicode errors when parsing results from svn info and svn status containing non-UTF8 characters.

  • Fixed Unicode errors when processing commit logs containing non-UTF8 characters. (Bug #3844)

    Patch by Griffin Myers.

  • Fixed Unicode errors when processing diffs containing non-UTF8 characters (Bug #3870)

  • Fixed Unicode errors with non-UTF8 filenames in a change.

  • Fixed incorrect results for some operations involving the inspection of commit logs when SVN requires authentication.

    The old behavior just resulted in some cryptic error messages when SVN attempted to prompt for authentication credentials. Now, a clear error message is shown instructing the user how to proceed.

  • Improved parsing of the Subversion client version. (Bug #3834)

    Subversion versions that contain additional version details (such as 1.6.1-SlikSvn-tag-1.6.1) are now parsed correctly.

    Patch by Griffin Myers.

  • Subversion no longer attempts to ask the user whether they want to save credentials when passing them on the command line. (Bug #3871)

  • Missing or inaccessible Subversion repositories configured on Review Board no longer breaks posting changes for review. (Bug #3865)

Contributors

  • Andrew Brandon
  • Barret Rennie
  • Christian Hammond
  • David Trowbridge
  • Griffin Myers
  • Halvor Lund
  • Tien Vu