Bazaar 1.6

The Bazaar 1.6 release milestone
Finally, the long awaited bzr 1.6 has been released. This release includes
new features like Stacked Branches, improved weave merge, and an updated
server protocol (now on v3) which will allow for better cross version
compatibility. With this release we have deprecated Knit format
repositories, and recommend that users upgrade them, we will continue to
support reading and writing them for the forseeable future, but we will
not be tuning them for performance as pack repositories have proven to be
better at scaling. This will also be the first release to bundle
TortoiseBzr in the standalone Windows installer.

Milestone information

Project:
Bazaar
Series:
1.6
Version:
1.6
Released:
 
Registrant:
John A Meinel
Release registered:
Active:
No. Drivers cannot target bugs and blueprints to this milestone.  

Download RDF metadata

Activities

Assigned to you:
No blueprints or bugs assigned to you.
Assignees:
1 Aaron Bentley, 9 Andrew Bennetts, 2 Dan Watkins, 1 Eric Holmberg, 10 John A Meinel, 2 Martin Albisetti, 4 Martin Pool, 1 Robert Collins, 3 Vincent Ladeuil
Blueprints:
No blueprints are targeted to this milestone.
Bugs:
40 Fix Released

Download files for this release

After you've downloaded a file, you can verify its authenticity using its MD5 sum or signature. (How do I verify a download?)

File Description Downloads
download icon Bazaar-1.6-OSX10.5.dmg (md5, sig) Mac OS X 10.5 (Leopard) installer 100
last downloaded 13 weeks ago
download icon Bazaar-1.6-OSX10.4-universal.dmg (md5, sig) Mac OS X 10.4 (universal) installer (for Python 2.5) 73
last downloaded 13 weeks ago
download icon bzr-setup-1.6.exe (md5, sig) Windows standalone installer 352
last downloaded today
download icon bzr-1.6.tar.gz (md5, sig) bzr 1.6 source 414
last downloaded 13 weeks ago
Total downloads: 939

Release notes 

bzr 1.6 2008-08-25
------------------

Finally, the long awaited bzr 1.6 has been released. This release includes
new features like Stacked Branches, improved weave merge, and an updated
server protocol (now on v3) which will allow for better cross version
compatibility. With this release we have deprecated Knit format
repositories, and recommend that users upgrade them, we will continue to
support reading and writing them for the forseeable future, but we will
not be tuning them for performance as pack repositories have proven to be
better at scaling. This will also be the first release to bundle
TortoiseBzr in the standalone Windows installer.

bzr 1.6rc5 2008-08-19
---------------------

  BUG FIXES:

    * Disable automatic detection of stacking based on a containing
      directory of the target. It interacted badly with push, and needs a
      bit more work to get the edges polished before it should happen
      automatically. (John Arbash Meinel, #259275)

bzr 1.6rc4 2008-08-18
---------------------

  BUG FIXES:

    * Fix a regression in knit => pack fetching. We had a logic
      inversion, causing the fetch to insert fulltexts in random order,
      rather than preserving deltas. (John Arbash Meinel, #256757)

bzr 1.6rc3 2008-08-14
---------------------

  CHANGES:

    * Disable reading ``.bzrrules`` as a per-branch rule preferences
      file. The feature was not quite ready for a full release.
      (Robert Collins)

  IMPROVEMENTS:

    * Update the windows installer to bundle TortoiseBzr and ``qbzr``
      into the standalone installer. This will be the first official
      windows release that installs Tortoise by default.
      (Mark Hammond)

  BUG FIXES:

    * Fix a regression in ``bzr+http`` support. There was a missing
      function (``_read_line``) that needed to be carried over from
      ``bzr+ssh`` support. (Andrew Bennetts)

    * ``GraphIndex`` objects will internally read an entire index if more
      than 1/20th of their keyspace is requested in a single operation.
      This largely mitigates a performance regression in ``bzr log FILE``
      and completely corrects the performance regression in ``bzr log``.
      The regression was caused by removing an accomodation which had been
      supporting the index format in use. A newer index format is in
      development which is substantially faster. (Robert Collins)

bzr 1.6rc2 2008-08-13
---------------------

This release candidate has a few minor bug fixes, and some regression
fixes for Windows.

  BUG FIXES:

    * ``bzr upgrade`` on remote branches accessed via bzr:// and
      bzr+ssh:// now works. (Andrew Bennetts)

    * Change the ``get_format_description()`` strings for
      ``RepositoryFormatKnitPack5`` et al to be single line messages.
      (Aaron Bentley)

    * Fix for a regression on Win32 where we would try to call
      ``os.listdir()`` on a file and not catch the exception properly.
      (Windows raises a different exception.) This would manifest in
      places like ``bzr rm file`` or ``bzr switch``.
      (Mark Hammond, John Arbash Meinel)

    * ``Inventory.copy()`` was failing to set the revision property for
      the root entry. (Jelmer Vernooij)

    * sftp transport: added missing ``FileExists`` case to
      ``_translate_io_exception`` (Christophe Troestler, #123475)

    * The help for ``bzr ignored`` now suggests ``bzr ls --ignored`` for
      scripting use. (Robert Collins, #3834)

    * The default ``annotate`` logic will now always assign the
      last-modified value of a line to one of the revisions that modified
      it, rather than a merge revision. This would happen when both sides
      claimed to have modified the line resulting in the same text. The
      choice is arbitrary but stable, so merges in different directions
      will get the same results. (John Arbash Meinel, #232188)

bzr 1.6rc1 2008-08-06
---------------------

This release candidate for bzr 1.6 solidifies the new branch stacking
feature. Bazaar now recommends that users upgrade all knit repositories,
because later formats are much faster. However, we plan to continue read/write and
upgrade support for knit repostories for the forseeable future. Several
other bugs and performance issues were fixed.

  CHANGES:

    * Knit format repositories are deprecated and bzr will now emit
      warnings whenever it encounters one. Use ``bzr upgrade`` to upgrade
      knit repositories to pack format. (Andrew Bennetts)

  IMPROVEMENTS:

    * ``bzr check`` can now be told which elements at a location it should
      check. (Daniel Watkins)

    * Commit now supports ``--exclude`` (or ``-x``) to exclude some files
      from the commit. (Robert Collins, #3117)

    * Fetching data between repositories that have the same model but no
      optimised fetcher will not reserialise all the revisions, increasing
      performance. (Robert Collins, John Arbash Meinel)

    * Give a more specific error when target branch is not reachable.
      (James Westby)

    * Implemented a custom ``walkdirs_utf8`` implementation for win32.
      This uses a pyrex extension to get direct access to the
      ``FindFirstFileW`` style apis, rather than using ``listdir`` +
      ``lstat``. Shows a very strong improvement in commands like
      ``status`` and ``diff`` which have to iterate the working tree.
      Anywhere from 2x-6x faster depending on the size of the tree (bigger
      trees, bigger benefit.) (John Arbash Meinel)

    * New registry for log properties handles and the method in
      LongLogFormatter to display the custom properties returned by the
      registered handlers. (Guillermo Gonzalez, #162469)

  BUG FIXES:

    * Add more tests that stacking does not create deltas spanning
      physical repository boundaries.
      (Martin Pool, #252428)

    * Better message about incompatible repositories.
      (Martin Pool, #206258)

    * ``bzr branch --stacked`` ensures the destination branch format can
      support stacking, even if the origin does not.
      (Martin Pool)

    * ``bzr export`` no longer exports ``.bzrrules``.
      (Ian Clatworthy)

    * ``bzr serve --directory=/`` now correctly allows the whole
      filesystem to be accessed on Windows, not just the root of the drive
      that Python is running from.
      (Adrian Wilkins, #240910)

    * Deleting directories by hand before running ``bzr rm`` will not
      cause subsequent errors in ``bzr st`` and ``bzr commit``.
      (Robert Collins, #150438)

    * Fix a test case that was failing if encoding wasn't UTF-8.
      (John Arbash Meinel, #247585)

    * Fix "no buffer space available" error when branching with the new
      smart server protocol to or from Windows.
      (Andrew Bennetts, #246180)

    * Fixed problem in branching from smart server.
      (#249256, Michael Hudson, Martin Pool)

    * Handle a file turning in to a directory in TreeTransform.
      (James Westby, #248448)

  API CHANGES:

    * ``MutableTree.commit`` has an extra optional keywork parameter
      ``exclude`` that will be unconditionally supplied by the command
      line UI - plugins that add tree formats may need an update.
      (Robert Collins)

    * The API minimum version for plugin compatibility has been raised to
      1.6 - there are significant changes throughout the code base.
      (Robert Collins)

    * The generic fetch code now uses three attributes on Repository objects
      to control fetch. The streams requested are controlled via :
      ``_fetch_order`` and ``_fetch_uses_deltas``. Setting these
      appropriately allows different repository implementations to recieve
      data in their optimial form. If the ``_fetch_reconcile`` is set then
      a reconcile operation is triggered at the end of the fetch.
      (Robert Collins)

    * The ``put_on_disk`` and ``get_tar_item`` methods in
      ``InventoryEntry`` were deprecated. (Ian Clatworthy)

    * ``Repository.is_shared`` doesn't take a read lock. It didn't
      need one in the first place (nobody cached the value, and
      ``RemoteRepository`` wasn't taking one either). This saves a round
      trip when probing Pack repositories, as they read the ``pack-names``
      file when locked. And during probe, locking the repo isn't very
      useful. (John Arbash Meinel)

  INTERNALS:

    * ``bzrlib.branchbuilder.BranchBuilder`` is now much more capable of
      putting together a real history without having to create a full
      WorkingTree. It is recommended that tests that are not directly
      testing the WorkingTree use BranchBuilder instead. See
      ``BranchBuilder.build_snapshot`` or
      ``TestCaseWithMemoryTree.make_branch_builder``. (John Arbash Meinel)

    * ``bzrlib.builtins.internal_tree_files`` broken into two giving a new
      helper ``safe_relpath_files`` - used by the new ``exclude``
      parameter to commit. (Robert Collins)

    * Make it easier to introduce new WorkingTree formats.
      (Ian Clatworthy)

    * The code for exporting trees was refactored not to use the
      deprecated ``InventoryEntry`` methods. (Ian Clatworthy)

    * RuleSearchers return () instead of [] now when there are no matches.
      (Ian Clatworthy)

bzr 1.6beta3 2008-07-17
-----------------------

This release adds a new 'stacked branches' feature allowing branches to
share storage without being in the same repository or on the same machine.
(See the user guide for more details.) It also adds a new hook, improved
weaves, aliases for related locations, faster bzr+ssh push, and several
bug fixes.

  FEATURES:

    * New ``pre_change_branch_tip`` hook that is called before the
      branch tip is moved, while the branch is write-locked. See the User
      Reference for signature details. (Andrew Bennetts)

    * Rule-based preferences can now be defined for selected files in
      selected branches, allowing commands and plugins to provide
      custom behaviour for files matching defined patterns.
      See ``Rule-based preferences`` (part of ``Configuring Bazaar``)
      in the User Guide and ``bzr help rules`` for more information.
      (Ian Clatworthy)

    * Sites may suggest a branch to stack new branches on. (Aaron Bentley)

    * Stacked branches are now supported. See ``bzr help branch`` and
      ``bzr help push``. Branches must be in the ``development1`` format
      to stack, though the stacked-on branch can be of any format.
      (Robert Collins)

  IMPROVEMENTS:

    * ``bzr export --format=tgz --root=NAME -`` to export a gzipped tarball
      to stdout; also ``tar`` and ``tbz2``.
      (Martin Pool)

    * ``bzr (re)merge --weave`` will now use a standard Weave algorithm,
      rather than the annotation-based merge it was using. It does so by
      building up a Weave of the important texts, without needing to build
      the full ancestry. (John Arbash Meinel, #238895)

    * ``bzr send`` documents and better supports ``emacsclient`` (proper
      escaping of mail headers and handling of the MUA Mew).
      (Christophe Troestler)

    * Remembered locations can be specified by aliases, e.g. :parent, :public,
      :submit. (Aaron Bentley)

    * The smart protocol now has improved support for setting branches'
      revision info directly. This makes operations like push
      faster. The new request method name is
      ``Branch.set_last_revision_ex``. (Andrew Bennetts)

  BUG FIXES:

    * Bazaar is now able to be a client to the web server of IIS 6 and 7.
      The broken implementations of RFC822 in Python and RFC2046 in IIS
      combined with boundary-line checking in Bazaar previously made this
      impossible. (NB, IIS 5 does not suffer from this problem).
      (Adrian Wilkins, #247585)

    * ``bzr log --long`` with a ghost in your mainline now handles that
      ghost properly. (John Arbash Meinel, #243536)

    * ``check`` handles the split-up .bzr layout correctly, so no longer
      requires a branch to be present.
      (Daniel Watkins, #64783)

    * Clearer message about how to set the PYTHONPATH if bzrlib can't be
      loaded.
      (Martin Pool, #205230)

    * Errors about missing libraries are now shown without a traceback,
      and with a suggestion to install the library. The full traceback is
      still in ``.bzr.log`` and can be shown with ``-Derror``.
      (Martin Pool, #240161)

    * Fetch from a stacked branch copies all required data.
      (Aaron Bentley, #248506)

    * Handle urls such as ftp://user@host.com@www.host.com where the user
      name contains an @.
      (Neil Martinsen-Burrell, #228058)

    * ``needs_read_lock`` and ``needs_write_lock`` now suppress an error during
      ``unlock`` if there was an error in the original function. This helps
      most when there is a failure with a smart server action, since often the
      connection closes and we cannot unlock.
      (Andrew Bennetts, John Arbash Meinel, #125784)

    * Obsolete hidden command ``bzr fetch`` removed.
      (Martin Pool, #172870)

    * Raise the correct exception when doing ``-rbefore:0`` or ``-c0``.
      (John Arbash Meinel, #239933)

    * You can now compare file revisions in Windows diff programs from
      Cygwin Bazaar.
      (Matt McClure, #209281)

    * revision_history now tolerates mainline ghosts for Branch format 6.
      (Aaron Bentley, #235055)

    * Set locale from environment for third party libs.
      (Martin von Gagern, #128496)

  DOCUMENTATION:

    * Added *Using stacked branches* to the User Guide.
      (Ian Clatworthy)

    * Updated developer documentation.
      (Martin Pool)

  TESTING:

   * ``-Dmemory`` will cause /proc/PID/status to be catted before bzr
     exits, allowing low-key analysis of peak memory use. (Robert Collins)

   * ``TestCaseWithTransport.make_branch_and_tree`` tries harder to return
     a tree with a ``branch`` attribute of the right format. This was
     preventing some ``RemoteBranch`` tests from actually running with
     ``RemoteBranch`` instances. (Andrew Bennetts)

  API CHANGES:

    * Removed ``Repository.text_store``, ``control_store``, etc. Instead,
      there are new attributes ``texts, inventories, revisions,
      signatures``, each of which is a ``VersionedFiles``. See the
      Repository docstring for more details.
      (Robert Collins)

    * ``Branch.pull`` now accepts an ``_override_hook_target`` optional
      parameter. If you have a subclass of ``Branch`` that overrides
      ``pull`` then you should add this parameter. (Andrew Bennetts)

    * ``bzrlib.check.check()`` has been deprecated in favour of the more
      aptly-named ``bzrlib.check.check_branch()``.
      (Daniel Watkins)

    * ``Tree.print_file`` and ``Repository.print_file`` are deprecated.
      These methods are bad APIs because they write directly to sys.stdout.
      bzrlib does not use them internally, and there are no direct tests
      for them. (Alexander Belchenko)

  INTERNALS:

    * ``cat`` command no longer uses ``Tree.print_file()`` internally.
      (Alexander Belchenko)

    * New class method ``BzrDir.open_containing_tree_branch_or_repository``
      which eases the discovery of the tree, the branch and the repository
      containing a given location.
      (Daniel Watkins)

    * New ``versionedfile.KeyMapper`` interface to abstract out the access to
      underlying .knit/.kndx etc files in repositories with partitioned
      storage. (Robert Collins)

    * Obsolete developer-use command ``weave-join`` has been removed.
      (Robert Collins)

    * ``RemoteToOtherFetcher`` and ``get_data_stream_for_search`` removed,
      to support new ``VersionedFiles`` layering.
      (Robert Collins)

bzr 1.6beta2 2008-06-10
-----------------------

This release contains further progress towards our 1.6 goals of shallow
repositories, and contains a fix for some user-affecting bugs in the
repository layer. Building working trees during checkout and branch is
now faster.

  BUG FIXES:

    * Avoid KnitCorrupt error extracting inventories from some repositories.
      (The data is not corrupt; an internal check is detecting a problem
      reading from the repository.)
      (Martin Pool, Andrew Bennetts, Robert Collins, #234748)

    * ``bzr status`` was breaking if you merged the same revision twice.
      (John Arbash Meinel, #235407)

    * Fix infinite loop consuming 100% CPU when a connection is lost while
      reading a response body via the smart protocol v1 or v2.
      (Andrew Bennetts)

    * Inserting a bundle which changes the contents of a file with no trailing
      end of line, causing a knit snapshot in a 'knits' repository will no longer
      cause KnitCorrupt. (Robert Collins)

    * ``RemoteBranch.pull`` needs to return the ``self._real_branch``'s
      pull result. It was instead just returning None, which breaks ``bzr
      pull``. (John Arbash Meinel, #238149)

    * Sanitize branch nick before using it as an attachment filename in
      ``bzr send``. (Lukáš Lalinský, #210218)

    * Squash ``inv_entry.symlink_target`` to a plain string when
      generating DirState details. This prevents from getting a
      ``UnicodeError`` when you have symlinks and non-ascii filenames.
      (John Arbash Meinel, #135320)

  IMPROVEMENTS:

    * Added the 'alias' command to set/unset and display aliases. (Tim Penhey)

    * ``added``, ``modified``, and ``unknowns`` behaviour made consistent (all three
      now quote paths where required). Added ``--null`` option to ``added`` and
      ``modified`` (for null-separated unknowns, use ``ls --unknown --null``)
      (Adrian Wilkins)

    * Faster branching (1.09x) and lightweight checkouts (1.06x) on large trees.
      (Ian Clatworthy, Aaron Bentley)

  DOCUMENTATION:

    * Added *Bazaar Zen* section to the User Guide. (Ian Clatworthy)

  TESTING:

    * Fix the test HTTPServer to be isolated from chdir calls made while it is
      running, allowing it to be used in blackbox tests. (Robert Collins)

  API CHANGES:

    * ``WorkingTree.set_parent_(ids/trees)`` will now filter out revisions
      which are in the ancestry of other revisions. So if you merge the same
      tree twice, or merge an ancestor of an existing merge, it will only
      record the newest. (If you merge a descendent, it will replace its
      ancestor). (John Arbash Meinel, #235407)

    * ``RepositoryPolicy.__init__`` now requires stack_on and stack_on_pwd,
      through the derived classes do not. (Aaron Bentley)

  INTERNALS:

    * ``bzrlib.bzrdir.BzrDir.sprout`` now accepts ``stacked`` to control
      creating stacked branches. (Robert Collins)

    * Knit record serialisation is now stricter on what it will accept, to
      guard against potential internal bugs, or broken input. (Robert Collins)

bzr 1.6beta1 2008-06-02
-----------------------

Commands that work on the revision history such as push, pull, missing,
uncommit and log are now substantially faster. This release adds a
translation of some of the user documentation into Spanish. (Contributions of
other translations would be very welcome.) Bazaar 1.6beta1 adds a new network
protocol which is used by default and which allows for more efficient transfers
and future extensions.

  NOTES WHEN UPGRADING:

    * There is a new version of the network protocol used for bzr://, bzr+ssh://
      and bzr+http:// connections. This will allow more efficient requests and
      responses, and more graceful fallback when a server is too old to
      recognise a request from a more recent client. Bazaar 1.6 will
      interoperate with 0.16 and later versions, but servers should be upgraded
      when possible. Bazaar 1.6 no longer interoperates with 0.15 and earlier via
      these protocols. Use alternatives like SFTP or upgrade those servers.
      (Andrew Bennetts, #83935)

  CHANGES:

    * Deprecation warnings will not be suppressed when running ``bzr selftest``
      so that developers can see if their code is using deprecated functions.
      (John Arbash Meinel)

  FEATURES:

    * Adding ``-Derror`` will now display a traceback when a plugin fails to
      load. (James Westby)

  IMPROVEMENTS:

    * ``bzr branch/push/pull -r XXX`` now have a helper function for finding
      the revno of the new revision (``Graph.find_distance_to_null``). This
      should make something like ``bzr branch -r -100`` in a shared, no-trees
      repository much snappier. (John Arbash Meinel)

    * ``bzr log --short -r X..Y`` no longer needs to access the full revision
      history. This makes it noticeably faster when logging the last few
      revisions. (John Arbash Meinel)

    * ``bzr ls`` now accepts ``-V`` as an alias for ``--versioned``.
      (Jerad Cramp, #165086)

    * ``bzr missing`` uses the new ``Graph.find_unique_ancestors`` and
      ``Graph.find_differences`` to determine missing revisions without having
      to search the whole ancestry. (John Arbash Meinel, #174625)

    * ``bzr uncommit`` now uses partial history access, rather than always
      extracting the full revision history for a branch. This makes it
      resolve the appropriate revisions much faster (in testing it drops
      uncommit from 1.5s => 0.4s). It also means ``bzr log --short`` is one
      step closer to not using full revision history.
      (John Arbash Meinel, #172649)

  BUGFIXES:

    * ``bzr merge --lca`` should handle when two revisions have no common
      ancestor other than NULL_REVISION. (John Arbash Meinel, #235715)

    * ``bzr status`` was breaking if you merged the same revision twice.
      (John Arbash Meinel, #235407)

    * ``bzr push`` with both ``--overwrite`` and ``-r NNN`` options no longer
      fails. (Andrew Bennetts, #234229)

    * Correctly track the base URL of a smart medium when using bzr+http://
      URLs, which was causing spurious "No repository present" errors with
      branches in shared repositories accessed over bzr+http.
      (Andrew Bennetts, #230550)

    * Define ``_remote_is_at_least_1_2`` on ``SmartClientMedium`` so that all
      implementations have the attribute. Fixes 'PyCurlTransport' object has no
      attribute '_remote_is_at_least_1_2' attribute errors.
      (Andrew Bennetts, #220806)

    * Failure to delete an obsolete pack file should just give a warning
      message, not a fatal error. It may for example fail if the file is still
      in use by another process.
      (Martin Pool)

    * Fix MemoryError during large fetches over HTTP by limiting the amount of
      data we try to read per ``recv`` call. The problem was observed with
      Windows and a proxy, but might affect other environments as well.
      (Eric Holmberg, #215426)

    * Handle old merge directives correctly in Merger.from_mergeable. Stricter
      get_parent_map requirements exposed a latent bug here. (Aaron Bentley)

    * Issue a warning and ignore passwords declared in authentication.conf when
      used for an ssh scheme (sftp or bzr+ssh).
      (Vincent Ladeuil, #203186)

    * Make both http implementations raise appropriate exceptions on 403
      Forbidden when POSTing smart requests.
      (Vincent Ladeuil, #230223)

    * Properly *title* header names in http requests instead of capitalizing
      them.
      (Vincent Ladeuil, #229076)

    * The "Unable to obtain lock" error message now also suggests using
      ``bzr break-lock`` to fix it. (Martin Albisetti, #139202)

    * Treat an encoding of '' as ascii; this can happen when bzr is run
      under vim on Mac OS X.
      (Neil Martinsen-Burrell)

    * ``VersionedFile.make_mpdiffs()`` was raising an exception that wasn't in
      scope. (Daniel Fischer #235687)

  DOCUMENTATION:

    * Added directory structure and started translation of docs in spanish.
      (Martin Albisetti, Lucio Albenga)

    * Incorporate feedback from Jelmer Vernooij and Neil Martinsen-Burrell
      on the plugin and integration chapters of the User Guide.
      (Ian Clatworthy)

    * More Bazaar developer documentation about packaging and release process,
      and about use of Python reprs.
      (Martin Pool, Martin Albisetti)

    * Updated Tortise strategy document. (Mark Hammond)

  TESTING:

    * ``bzrlib.tests.adapt_tests`` was broken and unused - it has been fixed.
      (Robert Collins)

    * Fix the test HTTPServer to be isolated from chdir calls made while it is
      running, allowing it to be used in blackbox tests. (Robert Collins)

    * New helper function for splitting test suites
      ``split_suite_by_condition``. (Robert Collins)

  INTERNALS:

    * ``Branch.missing_revisions`` has been deprecated. Similar functionality
      can be obtained using ``bzrlib.missing.find_unmerged``. The api was
      fairly broken, and the function was unused, so we are getting rid of it.
      (John Arbash Meinel)

  API CHANGES:

    * ``Branch.abspath`` is deprecated; use the Tree or Transport
      instead. (Martin Pool)

    * ``Branch.update_revisions`` now takes an optional ``Graph``
      object. This can be used by ``update_revisions`` when it is
      checking ancestry, and allows callers to prefer request to go to a
      local branch. (John Arbash Meinel)

    * Branch, Repository, Tree and BzrDir should expose a Transport as an
      attribute if they have one, rather than having it indirectly accessible
      as ``.control_files._transport``. This doesn't add a requirement
      to support a Transport in cases where it was not needed before;
      it just simplifies the way it is reached. (Martin Pool)

    * ``bzr missing --mine-only`` will return status code 0 if you have no
      new revisions, but the remote does. Similarly for ``--theirs-only``.
      The new code only checks one side, so it doesn't know if the other
      side has changes. This seems more accurate with the request anyway.
      It also changes the output to print '[This|Other] branch is up to
      date.' rather than displaying nothing. (John Arbash Meinel)

    * ``LockableFiles.put_utf8``, ``put_bytes`` and ``controlfilename``
      are now deprecated in favor of using Transport operations.
      (Martin Pool)

    * Many methods on ``VersionedFile``, ``Repository`` and in
      ``bzrlib.revision`` deprecated before bzrlib 1.5 have been removed.
      (Robert Collins)

    * ``RevisionSpec.wants_revision_history`` can be set to False for a given
      ``RevisionSpec``. This will disable the existing behavior of passing in
      the full revision history to ``self._match_on``. Useful for specs that
      don't actually need access to the full history. (John Arbash Meinel)

    * The constructors of ``SmartClientMedium`` and its subclasses now require a
      ``base`` parameter. ``SmartClientMedium`` implementations now also need
      to provide a ``remote_path_from_transport`` method. (Andrew Bennetts)

    * The default permissions for creating new files and directories
      should now be obtained from ``BzrDir._get_file_mode()`` and
      ``_get_dir_mode()``, rather than from LockableFiles. The ``_set_file_mode``
      and ``_set_dir_mode`` variables on LockableFiles which were advertised
      as a way for plugins to control this are no longer consulted.
      (Martin Pool)

    * ``VersionedFile.join`` is deprecated. This method required local
      instances of both versioned file objects and was thus hostile to being
      used for streaming from a smart server. The new get_record_stream and
      insert_record_stream are meant to efficiently replace this method.
      (Robert Collins)

    * ``WorkingTree.set_parent_(ids/trees)`` will now filter out revisions
      which are in the ancestry of other revisions. So if you merge the same
      tree twice, or merge an ancestor of an existing merge, it will only
      record the newest. (If you merge a descendent, it will replace its
      ancestor). (John Arbash Meinel, #235407)

    * ``WorkingTreeFormat2.stub_initialize_remote`` is now private.
      (Martin Pool)

Changelog 

This release does not have a changelog.

0 blueprints and 40 bugs targeted

Bug report Importance Assignee Status
211661 #211661 bzr.dev smart client fails on log 2 Critical John A Meinel  10 Fix Released
230550 #230550 bzr+http repeatedly queries the wrong location for BzrDir.find_repositoryV2 2 Critical Andrew Bennetts  10 Fix Released
246180 #246180 no buffer space available 2 Critical Andrew Bennetts  10 Fix Released
251871 #251871 assumes source_branch format is the same as result branch format 2 Critical Andrew Bennetts  10 Fix Released
252428 #252428 stacking must always grab full inventories 2 Critical Martin Pool  10 Fix Released
252821 #252821 autopack fails with RevisionNotPresent on a stacked repository 2 Critical Martin Pool  10 Fix Released
254797 #254797 traceback when branching from bzr+http 2 Critical Andrew Bennetts  10 Fix Released
256757 #256757 upgrade from <RepositoryFormatKnit1> to the newest format eats all my ram 2 Critical John A Meinel  10 Fix Released
125784 #125784 TooManyConcurrentRequests during unlock when using smart server over ssh 3 High Andrew Bennetts  10 Fix Released
144071 #144071 Branch6 reads entire revision index to check for missing revisions 3 High   10 Fix Released
220806 #220806 PyCurlTransport doesn't define the _remote_is_at_least_1_2 property 3 High Andrew Bennetts  10 Fix Released
230223 #230223 smart server probing in 1.4 breaks check outs of short bus http repositories [regression] 3 High Vincent Ladeuil  10 Fix Released
234287 #234287 smart server speed regression on older (e.g. Ubuntu 6.06) kernels 3 High Andrew Bennetts  10 Fix Released
234748 #234748 Knit inventory corrupt in bzr.dev with bzr.dev r3452 (KnitCorrupt) 3 High   10 Fix Released
235407 #235407 'pop(): dictionary is empty' in tsort when showing pending merges 3 High John A Meinel  10 Fix Released
235715 #235715 "bzr merge --lca" fails when the lca includes NULL_REVISION 3 High John A Meinel  10 Fix Released
238149 #238149 pull tracebacks on a lighweight checkout of bzr:// or bzr+ssh:// branch 3 High   10 Fix Released
249256 #249256 'property' object has no attribute 'initialize' 3 High Martin Pool  10 Fix Released
253891 #253891 cannot upgrade a stacked branch 3 High Martin Pool  10 Fix Released
256409 #256409 inconsistent delta with deleted directories 3 High   10 Fix Released
257180 #257180 slower log in 1.6 than 1.5 3 High   10 Fix Released
258166 #258166 please package as non-native package 3 High Martin Albisetti  10 Fix Released
64783 #64783 "bzr check" does not handle our split up .bzr layout properly (Errors if there is no branch) 4 Medium Dan Watkins  10 Fix Released
96239 #96239 check should check the working tree 4 Medium Dan Watkins  10 Fix Released
135320 #135320 dirstate updating fails if there are symlinks and non-ascii filenames 4 Medium John A Meinel  10 Fix Released
139202 #139202 "Could not acquire lock" error doesn't tell you how to fix it 4 Medium Martin Albisetti  10 Fix Released
172649 #172649 uncommit is slow with packs 4 Medium John A Meinel  10 Fix Released
174625 #174625 Performance regression with pack format in missing 4 Medium John A Meinel  10 Fix Released
211967 #211967 bzr smart server should support hooks 4 Medium Andrew Bennetts  10 Fix Released
215426 #215426 MemoryError - recv for HTTP through Proxy 4 Medium Eric Holmberg  10 Fix Released
232188 #232188 double-clicking on some line in "bzr gannotate" says "no such file", shows no diff 4 Medium John A Meinel  10 Fix Released
235055 #235055 bzr log fails with KeyError if there is a ghost in the mainline history 4 Medium Aaron Bentley  10 Fix Released
238895 #238895 'bzr merge --weave' does not conflict on permutated lines 4 Medium John A Meinel  10 Fix Released
243536 #243536 bzr log fails 4 Medium John A Meinel  10 Fix Released
212289 #212289 test_diff.TestDiffFromTool.test_prepare_files fails on Windows 5 Low   10 Fix Released
3117 #3117 commit needs a --exclude option 6 Wishlist Robert Collins  10 Fix Released
203186 #203186 authentication.conf isn't used with openssh 6 Wishlist Vincent Ladeuil  10 Fix Released
252894 #252894 generally applicable way to refer to parent or stored locations 6 Wishlist   10 Fix Released
229076 #229076 'Connection reset by peer' error when branching repository 1 Undecided Vincent Ladeuil  10 Fix Released
234229 #234229 "bzr push -r NNN" with --overwrite fails with NoSuchRevision 1 Undecided Andrew Bennetts  10 Fix Released
This milestone contains Public information
Everyone can see this information.