===========================
RBTools 0.2.0 Release Notes
===========================

**Release date**: April 18, 2010


Introducing RBTools 0.2.0
=========================

This is the first official stable release of RBTools, a package of utility
programs for working with Review Board. In this release, there is only one
tool available, :program:`post-review`, which handles the creation and updating
of review requests on a server.


Features
========

Compatibility
-------------

RBTools supports Review Board 1.0 and the upcoming 1.5 releases. It supports
ClearCase, CVS, Git, Mercurial, Perforce, and Subversion repositories.

RBTools works on Windows, Linux, and MacOS X.


Create and update review requests
---------------------------------

:program:`post-review` is a command line tool for creating and updating review
requests. It handles the hard work of generating compatible diffs and
uploading them to new or existing review requests.

:program:`post-review` supports a large number of options depending on the
repository type, for handling such capabilities as parent branches,
post-commit review, revision ranges, and review request field editing.


Automation
----------

:program:`post-review` can be used in automation scenarios, such as posting
a new review request automatically when a change is committed to a branch.
This allows review requests to be created or updated on behalf of another
user when using the :option:`--submit-as` parameter. See the documentation
for more information.


Changes since 0.2 RC 1
======================

New Features
------------

* Added useful, human-readable error information for empty diffs and
  invalid repositories. These errors give the user some clear information
  on the problem and possible solutions.

Bugs Fixed
----------

* The UTF-8 encoding change in 0.2 RC 1 has been reverted. This caused a
  lot of problems for most people, and so has been removed.

* Fixed a crash with an uninitialized variable when parsing error codes from
  Review Board. Patch by Laurent Nicolas.

* Fixed a crash when using ClearCase. Data was being parsed incorrectly.
  Patch by Bryan Halter. (:bug:`1423`)

* Fixed the new default changeset support on newer versions of P4.
  Patch by Laurent Nicolas.

* Fixed :option:`--revision-range` with a revision of 0 on Subversion.
  Patch by Nathan Heijermans.

* We now properly support excess tabs in diff file headers from Subversion
  diffs. Some tools would generate these excess tabs, which broke our
  parser. Patchby Nathan Heijermans.

* We no longer error out during diff generation for Perforce when there's
  an error reading the diff. Patch by Laurent Nicolas.

* We now check for GNU diff when using Subversion. GNU diff is required
  for Subversion in order to work around some other problems, but this was
  not obvious to users. Now they'll get an error message telling them what's
  needed. (:bug:`769`)


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

* Bryan Halter
* Christian Hammond
* Laurent Nicolas
* Nathan Heijermans


.. comment: vim: ft=rst et
