I'm happy to announce Release Candidate 1 for Bazaar 0.17.
This release includes around a dozen bug fixes, numerous
improvements and better documentation from our developers.
Many thanks to all the contributors to this release!

The source is available here:

http://bazaar-vcs.org/releases/src/bzr-0.17rc1.tar.gz

The GPG signature is available here:

http://bazaar-vcs.org/releases/src/bzr-0.17rc1.tar.gz.sig

Please test this release and report any problems.  If there are no
major problems, this release will become 0.17 final on or around the
target release date of 18-Jun-2007.

I've attached a summary of the changes in 0.17rc1, based on NEWS.

Enjoy,
Ian Clatworthy - 0.17 Release Manager.
bzr 0.17rc1  2007-06-12

  NOTES WHEN UPGRADING:

    * The kind() and is_executable() APIs on the WorkingTree interface no
      longer implicitly (read) locks and unlocks the tree. This *might*
      impact some plug-ins and tools using this part of the API. If you find
      an issue that may be caused by this change, please let us know,
      particularly the plug-in/tool maintainer. If encountered, the API
      fix is to surround kind() and is_executable() calls with lock_read()
      and unlock() like so::

        work_tree.lock_read()
        try:
            kind = work_tree.kind(...)
        finally:
            work_tree.unlock()

  IMPROVEMENTS:
  
    * There are two new help topics, working-trees and repositories that
      attempt to explain these concepts. (James Westby, John Arbash Meinel,
      Aaron Bentley)

    * Added ``bzr log --limit`` to report a limited number of revisions.
      (Kent Gibson, #3659)

    * Revert does not try to preserve file contents that were originally
      produced by reverting to a historical revision.  (Aaron Bentley)

    * ``bzr log --short`` now includes ``[merge]`` for revisions which
      have more than one parent. This is a small improvement to help
      understanding what changes have occurred
      (John Arbash Meinel, #83887)

    * TreeTransform avoids many renames when contructing large trees,
      improving speed.  3.25x speedups have been observed for construction of
      kernel-sized-trees, and checkouts are 1.28x faster.  (Aaron Bentley)

    * Commit on large trees is now faster. In my environment, a commit of
      a small change to the Mozilla tree (55k files) has dropped from
      66 seconds to 32 seconds. For a small tree of 600 files, commit of a
      small change is 33% faster. (Ian Clatworthy)

    * Clean up the ``WorkingTree4._iter_changes()`` internal loops as well as
      ``DirState.update_entry()``. This optimizes the core logic for ``bzr
      diff`` and ``bzr status`` significantly improving the speed of
      both. (John Arbash Meinel)

    * The tutorial has been improved. (Matthew Fuller)

    * Better error message for selected file commit of merges. (Aaron Bentley)

    * Updated bash completion. (Antonin 'gree' Komenda)

  BUGFIXES:

    * ``bzr push`` should only connect to the remote location one time.
      We have been connecting 3 times because we forget to pass around
      the Transport object. This adds ``BzrDir.clone_on_transport()``, so
      that we can pass in the Transport that we already have.
      (John Arbash Meinel, #75721)

    * ``DirState.set_state_from_inventory()`` needs to properly order
      based on split paths, not just string paths.
      (John Arbash Meinel, #115947)

    * Let TestUIFactoy encode the password prompt with its own stdout.
      (Vincent Ladeuil, #110204)

    * pycurl should take use the range header that takes the range hint
      into account.
      (Vincent Ladeuil, #112719)

    * WorkingTree4.get_file_sha1 no longer raises an exception when invoked
      on a missing file.  (Aaron Bentley, #118186)

    * WorkingTree.remove works correctly with tree references, and when pwd is
      not the tree root. (Aaron Bentley)

    * Merge no longer fails when a file is renamed in one tree and deleted
      in the other. (Aaron Bentley, #110279)

    * ``revision-info`` now accepts dotted revnos, doesn't require a tree,
      and defaults to the last revision (Matthew Fuller, #90048)

    * Tests no longer fail when BZR_REMOTE_PATH is set in the environment.
      (Daniel Watkins, #111958)

    * ``bzr branch -r revid:foo`` can be used to branch any revision in
      your repository. (Previously Branch6 only supported revisions in your
      mainline). (John Arbash Meinel, #115343)

    * 'branch lp:projname' now creates ./projname as expected.

  INTERNALS:

    * Rework of LogFormatter API to provide beginning/end of log hooks and to
      encapsulate the details of the revision to be logged in a LogRevision
      object.
      In long log formats, merge revision ids are only shown when --show-ids
      is specified, and are labelled "revision-id:", as per mainline
      revisions, instead of "merged:". (Kent Gibson)

    * New ``BranchBuilder`` API which allows the construction of particular
      histories quickly. Useful for testing and potentially other applications
      too. (Robert Collins)

Reply via email to