Bazaar 2.5b4

Milestone information

Vincent Ladeuil
Release registered:
No. Drivers cannot target bugs and blueprints to this milestone.  

Download RDF metadata


Assigned to you:
No blueprints or bugs assigned to you.
17 Jelmer Vernooij, 1 John A Meinel, 7 Martin Packman, 1 Martin Pool, 1 Matt Giuca, 1 Neil Martinsen-Burrell, 2 Shannon Weyrick, 4 Vincent Ladeuil
No blueprints are targeted to this milestone.
34 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 bzr-2.5b4-2.win32-py2.7.exe (md5, sig) Windows Python 2.7 Installer 693
last downloaded 6 weeks ago
download icon Bazaar-2.5b4-OSX-10.6-2.dmg (md5, sig) Mac OS X Installer 487
last downloaded 4 weeks ago
download icon bzr-2.5b4-1-setup.exe (md5, sig) Windows Standalone Installer 2,352
last downloaded 3 weeks ago
download icon bzr-2.5b4-1.win32-py2.6.exe (md5, sig) Windows Python 2.6 Installer 408
last downloaded 5 days ago
download icon bzr-2.5b4.tar.gz (md5, sig) Source tarball 15,354
last downloaded 4 weeks ago
Total downloads: 19,294

Release notes 

This is the fourth beta of the 2.5 series, leading to a 2.5.0 release in
February 2012. Beta releases are suitable for everyday use but may cause
some incompatibilities with plugins.

This release includes many improvements in the smart server, UI polish for
the colocated branches, optimizations for revision specifiers to avoid
history sized operations, enhancements to the config framework, bug fixes
related to unicode paths and more.

All bug fixed in previous series known at the time of this release are


View the full changelog

External Compatibility Breaks


New Features

* Provides a ``po_merge`` plugin to automatically merge ``.po`` files with
  ``msgmerge``. See ``bzr help po_merge`` for details.
  (Vincent Ladeuil, #884270)


* ``bzr branch --stacked`` now only makes a single connection to the remote
  server rather than three. (Jelmer Vernooij, #444293)

* ``bzr export --uncommitted`` will export the uncommitted tree.
  (Jelmer Vernooij, #555613)

* ``bzr rmbranch`` can now remove colocated branches.
  (Jelmer Vernooij, #831464)

* ``bzr status`` no longer shows shelves if files are specified.
  (Francis Devereux)

* ``bzr switch`` now accepts colocated branch names to switch to.
  (Jelmer Vernooij, #826814)

* Plugins can now register additional "location aliases".
  (Jelmer Vernooij)

* Revision specifiers will now only browse as much history as they
  need to, rather than grabbing the whole history unnecessarily in some
  cases. (Jelmer Vernooij)

* When using ``bzr switch`` to switch to a sibling of the current
  branch, the relative branch name should no longer be url-encoded.
  (Jelmer Vernooij)

Bug Fixes

* A new section local option ``basename`` is available to help support some
  ``bzr-pipeline`` workflows and more generally help mapping local paths to
  remote ones. See ``bzr help configuration`` for more details.
  (Vincent Ladeuil, #843211)

* Add HPSS call for looking up revision numbers from revision ids on
  remote repositories. (Jelmer Vernooij, #640253)

* Add HPSS call for retrieving file contents from remote repositories.
  Should improve performance for lightweight checkouts and exports of
  from remote repositories. (Jelmer Vernooij, #368717, #762330,

* Allow lazy compiled patterns from ``bzrlib.lazy_regex`` to be
  pickled. (Jelmer Vernooij, #893149)

* ``bzr info`` no longer shows empty output if only a control
  directory is present. (Jelmer Vernooij, #159098)

* Cope with missing revision ids being specified to
  ``Repository.gather_stats`` HPSS call. (Jelmer Vernooij, #411290)

* Fix test failures on windows related to locations.conf handling.
  (Vincent Ladeuil, #892992)

* Fixed parsing of the timestamp given to ``commit --commit-time``. Now
  prohibits several invalid strings, reads the correct number of seconds,
  and gives a better error message if the time zone offset is not given.
  (Matt Giuca, #892657)

* Give meaningful file/line references when reporting deprecation warnings
  for _CompatabilityThunkFeature based test features.
  (Vincent Ladeuil, #897718)

* Make reporting of mistakes involving unversioned files with non-ascii
  filenames work again without 'Unprintable exception' being shown.
  (Martin Packman, #898408)

* Provide names for lazily registered hooks.
  (Neil Martinsen-Burrell, #894609)

* Raise BadIndexKey exception in btree_index when a key is too large, fixing
  an infinite recursion issue. (Shannon Weyrick, #720853)

* Resolve regression from colocated branch path handling, by ensuring that
  unreserved characters are unquoted in URLs. (Martin Packman, #842223)

* Split segments from URLs for colocated branches without assuming the
  combined form is a valid. (Martin Packman, #842233)

* Support looking up revision numbers by revision id in empty branches.
  (Jelmer Vernooij, #535031)

* Support verifying signatures on remote repositories.
  (Jelmer Vernooij, #889694)

* Teach the bzr client how to reconnect if we get ``ConnectionReset``
  while making an RPC request. This doesn't handle all possible network
  disconnects, but it should at least handle when the server is asked to
  shutdown gracefully. (John Arbash Meinel, #819604)

* When a remote format is unknown, bzr will now print a single-line error
  message rather than a backtrace. (Jelmer Vernooij, #687226)

API Changes

* ``BzrDir.open_branch`` and ```` now take an optional
  ``possible_transports`` argument. (Jelmer Vernooij)

* New method ``Transport.set_segment_parameter``. (Jelmer Vernooij)

* ``Repository.verify_revision`` has been renamed to
  ``Repository.verify_revision_signature``. (Jelmer Vernooij)

* ``RevisionSpec.wants_revision_history`` now defaults to ``False`` and
  is deprecated. The ``revs`` argument of
  ``RevisionInfo.from_revision_id`` is now deprecated. (Jelmer Vernooij)

* ``Tree.get_file_by_path`` is now deprecated. Use ``Tree.get_file`` instead.
  (Jelmer Vernooij, #666897)

* Some global options for use with commands have been removed, construct
  an ``Option`` with the name instead. (Martin Packman)

* The unused exception ``HistoryMissing`` has been removed.
  (Jelmer Vernooij)


* Add HPSS call for ``Repository.pack``. (Jelmer Vernooij, #894461)

* ``bzr config`` uses the new configuration implementation.
  (Vincent Ladeuil)

* Custom HPSS error handlers can now be installed in the smart server client
  using the ``error_translators`` and ``no_context_error_translators``
  registries. (Jelmer Vernooij)

* New HPSS calls ``Repository.has_signature_for_revision_id``,
  ``Repository.make_working_trees``, ``BzrDir.destroy_repository``,
  ``BzrDir.has_workingtree``, ``Repository.get_physical_lock_status``,
  ``Branch.put_config_file``, ``Branch.break_lock``,
  ``BzrDir.destroy_branch``, ``Repository.break_lock``,
  ``Repository.all_revision_ids``, ``Repository.start_write_group``,
  ``Repository.commit_write_group``, ``Repository.abort_write_group``
  ``Repository.check_write_group``, ``Repository.iter_revisions``,
  ``Repository.add_signature_revision_text`` and
  (Jelmer Vernooij)

* ``RemoteBranch.get_config_stack`` and ``RemoteBzrDir.get_config_stack``
  will now use HPSS calls where possible. (Jelmer Vernooij)

* The registry of merge types has been moved to ``merge`` from ``option`` but
  ``merge.get_merge_type_registry`` remains as an accessor. (Martin Packman)


* Avoid failures in test_transform when OS error messages are localised.
  (Martin Packman, #891582)

* Tests are now subject to a time limit: by default 300s, and 120s when
  run from 'make check', controlled by the `selftest.timeout`
  configuration option. This is currently not supported on Windows.
  (Martin Pool)

0 blueprints and 34 bugs targeted

Bug report Importance Assignee Status
889872 #889872 not a valid key error 2 Critical Shannon Weyrick  10 Fix Released
411290 #411290 bzr info on a pushed to LP stacked branch breaks 3 High Jelmer Vernooij  10 Fix Released
819604 #819604 when an idle ssh transport is interrupted, bzrlib errors; should reconnect instead 3 High John A Meinel  10 Fix Released
842223 #842223 Change to tilde escaping causes test failures 3 High Martin Packman  10 Fix Released
884270 #884270 bzr should do smarter merging of .po files 3 High Vincent Ladeuil  10 Fix Released
889694 #889694 RemoteRepository.verify_signature() doesn't exist 3 High Jelmer Vernooij  10 Fix Released
892992 #892992 bzrlib.tests.test_config.TestStackCrossSectionsExpand.test_cross_related_sections failure 3 High Vincent Ladeuil  10 Fix Released
159098 #159098 bad "bzr info" output on dangling branch reference 4 Medium Jelmer Vernooij  10 Fix Released
427773 #427773 empty limbo dirs cause error about left-over files 4 Medium Martin Pool  10 Fix Released
444293 #444293 "bzr branch --stacked lp:<foo>" uses 5 HPSS connections 4 Medium Jelmer Vernooij  10 Fix Released
535031 #535031 IndexError in revision_id_to_revno running bzr tags 4 Medium Jelmer Vernooij  10 Fix Released
640253 #640253 "bzr tags -d REMOTE_URL" makes way too many HPSS calls 4 Medium Jelmer Vernooij  10 Fix Released
666897 #666897 Occasional AttributeError from Tree.get_file_by_path 4 Medium Jelmer Vernooij  10 Fix Released
687226 #687226 bzr: ERROR: exceptions.KeyError: 'Bazaar-NG Loom branch format 6\n' branching from smart server 4 Medium Jelmer Vernooij  10 Fix Released
714449 #714449 UnicodeDecodeError on stderr from logging non-ascii message 4 Medium Martin Packman  10 Fix Released
720853 #720853 bzr crashed with RuntimeError in normpath(): maximum recursion depth exceeded while calling a Python object 4 Medium Shannon Weyrick  10 Fix Released
762330 #762330 lightweight checkout over hpss is slow, many roundtrips 4 Medium Jelmer Vernooij  10 Fix Released
826814 #826814 support for colocated branches in "bzr switch" 4 Medium Jelmer Vernooij  10 Fix Released
831464 #831464 rmbranch should support removing colocated branches 4 Medium Jelmer Vernooij  10 Fix Released
842233 #842233 InvalidURL from tests for local_path_from_url on windows 4 Medium Martin Packman  10 Fix Released
843211 #843211 With pipelines I cannot set push_location and public_branch generally 4 Medium Vincent Ladeuil  10 Fix Released
868797 #868797 too many round trips for remote bzr log 4 Medium Jelmer Vernooij  10 Fix Released
889235 #889235 Help text of multiple value switches for commands not included in pot 4 Medium Martin Packman  10 Fix Released
891582 #891582 bt.test_transform.TestTreeTransform failures due to localised error messages 4 Medium Martin Packman  10 Fix Released
891656 #891656 Can't branch to a colocated location: BzrCommandError: Target directory "file:,branch=colo" already exists 4 Medium Jelmer Vernooij  10 Fix Released
892657 #892657 commit-time has confusing error if offset not supplied 4 Medium Matt Giuca  10 Fix Released
893149 #893149 test failures with sphinx on precise 4 Medium Jelmer Vernooij  10 Fix Released
894461 #894461 HPSS call for Repository.pack 4 Medium Jelmer Vernooij  10 Fix Released
894609 #894609 bzr hooks shows no name for lazy installed hooks 4 Medium Neil Martinsen-Burrell  10 Fix Released
897718 #897718 deprecations warnings raised by CompatabilityThunkFeature are unhelpful 4 Medium Vincent Ladeuil  10 Fix Released
898408 #898408 Unprintable exception PathsNotVersionedError 4 Medium Martin Packman  10 Fix Released
317778 #317778 Switching to a local sibling with non-ascii name causes error 5 Low Jelmer Vernooij  10 Fix Released
886652 #886652 dpush not listed in `bzr help commands` 5 Low Martin Packman  10 Fix Released
555613 #555613 export should have a --uncommited options 6 Wishlist Jelmer Vernooij  10 Fix Released
This milestone contains Public information
Everyone can see this information.