.. default-intersphinx:: rbt0.7


===========================
RBTools 0.7.7 Release Notes
===========================

**Release date:** November 22, 2016


New Features
============

rbt install
-----------

:rbtcommand:`rbt install` is a new command which can install dependencies used
by RBTools. This is currently used for new dependencies for Team Foundation
Server, as described below.


rbt post
--------

.. program:: rbt post

* Added a :option:`--field` option for setting custom fields.

  Review Board extensions can add new fields to review requests, which could be
  set through the user interface. This new option allows specifying the value
  of those fields via the command line. It can also be used to set the built-in
  fields by using ``summary``, ``description``, and ``testing-done`` as the
  field name.

  Patch by John Larmie.


Team Foundation Server
----------------------

* Add a new adapter for communicating with TFS.

  Until now, using Team Foundation Server from RBTools required installing
  `Team Explorer Everywhere`_. In this release, we've added an alternative
  adapter which improves functionality and performance. To install this, run
  :command:`rbt install tfs`.

* Add support for posting shelved changesets.

  When using the new TFS adapter, TFS shelvesets can be posted by running
  :command:`rbt post <shelveset-name>`.

.. _`Team Explorer Everywhere`:
   https://www.visualstudio.com/en-us/products/team-explorer-everywhere-vs.aspx


Bug Fixes
=========

rbt land
--------

.. program:: rbt land

* Add the :option:`--tracking-branch` option to :rbtcommand:`rbt land`.
  (:bug:`4161`)

  This command now allows specifying the tracking branch, which allows landing
  changes to upstream branches that are not the default (e.g. "origin/master").

* Fixed a crash when :rbtcommand:`rbt land` was unable to determine the
  approval state. (:bug:`4024`)

  In some cases, attempting to determine the approval state of a review request
  was encountering an unexpected error, leading to an ugly crash. In these
  cases, we now show a good error message.

  Patch by Ryan Swanson.


rbt login
---------

* Fix an error when the server is unspecified.

  If the Review Board server was not specified via the command line or config
  file, :rbtcommand:`rbt login` would fail with an ugly error. This has been
  fixed to show a helpful message.


rbt post
--------

* Work around an uncaught exception issue with a Python bug on Apple macOS
  10.11.

  Patch by Erik Lattimore.

* Fix matching repositories with the mirror path set. (:bug:`4401`)

  In the Review Board admin interface, repositories have an optional mirror
  path attribute which is used for matching on the client side. Actually
  matching the current repository to the mirror path regressed in RBTools
  0.7.6, and has been fixed here.

  Patch by Ben.


Git
---

.. program:: rbt post

* Fix a crash when using :option:`--exclude` with ``git-svn`` and
  ``git-p4`` repositories.


Mercurial
---------

* Fix compatibility with Mercurial 2.x.

  RBTools 0.7.6 introduced a fix that mistakenly relied on command line syntax
  only available in Mercurial 3.0 and newer. Compatibility with older versions
  has been fixed.


Perforce
--------

* Properly handle ``null`` client roots.

  On Windows, Perforce clients are allowed to specify the client root as
  ``null``, indicating that all paths are within the root (to allow for clients
  which span multiple drive letters). This would previously cause RBTools to
  crash.

  Patch by Martin Donlon.

* Fix posting revision ranges of submitted changelists.

  Posting a range of submitted changelists (for example,
  :command:`rbt post //a/b/c/...@23,@28`) could fail with a type exception.

  Patch by Amey Prabhu Gaonkar.


Subversion
----------

.. program:: rbt post

* Fix looking up Subversion repositories by UUID.

  RBTools 0.7.6 regressed a feature that could match the local Subversion
  repository to the repository on the server using the UUID. This has been
  fixed.

* Added a configuration file key for :option:`--svn-prompt-password`
  (:bug:`4446`)

  The value for this attribute can now be set permanently in
  :file:`.reviewboardrc` files using the ``SVN_PROMPT_PASSWORD`` key.


Contributors
============

* Amey Prabhu Gaonkar
* Barret Rennie
* Ben (full name unknown)
* Christian Hammond
* David Trowbridge
* Erik Lattimore
* John Larmie
* Martin Donlon
* Ryan Swanson
* Shaurya Sengar
