Bazaar 2.5b5

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.
12 Jelmer Vernooij, 4 Martin Packman, 1 Neil Martinsen-Burrell, 1 Rory Yorke, 9 Vincent Ladeuil
No blueprints are targeted to this milestone.
27 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.5b5-1-setup.exe (md5, sig) Windows Standalone Installer 3,327
last downloaded 24 hours ago
download icon bzr-2.5b5-1.win32-py2.7.exe (md5, sig) Windows Python 2.7 Installer 647
last downloaded 24 hours ago
download icon bzr-2.5b5-1.win32-py2.6.exe (md5, sig) Windows Python 2.6 Installer 374
last downloaded 24 hours ago
download icon Bazaar-2.5b5-OSX-10.6-1.dmg (md5, sig) Mac OS X installer 446
last downloaded 24 hours ago
download icon bzr-2.5b5.tar.gz (md5, sig) Source tarball 1,205
last downloaded 24 hours ago
Total downloads: 5,999

Release notes 

This is the fifth (and last) 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, enhancements to the config framework and more internal uses, bug fixes related to unicode and locale support and more.

All bugs fixed in previous series known at the time of this release are included.


View the full changelog

External Compatibility Breaks

* The '.bzr/branch/email' file is no longer read to determine the users'
  identity. Instead, the 'email' setting in '.bzr/branch/branch.conf'
  should be used. (Jelmer Vernooij, #903894)

New Features

* "bzr mkdir" now includes -p (--parents) option for recursively adding
  parent directories.
  (Jared Hance, Jelmer Vernooij, #253529)

* ``config.Option`` can now declare ``override_from_env``, a list of
  environment variables which, when set, that takes precedence over values
  defined in configuration files. (Vincent Ladeuil, #907279)


* New HPSS call for ``Repository.reconcile``. (Jelmer Vernooij, #894455)

* Merge now has two new hooks ``pre_merge`` and ``post_merge``
  that are called before and after a merge and can make
  additional modifications to the trees involved.
  (Jelmer Vernooij, #906877)

* Override the value returned by ``sys.getfilesystemencoding()`` for the bzr
  script to utf-8 when it would otherwise be ascii on a posix system. This
  will mean bzr works with non-ascii files when no locale or an incorrect
  locale is set. (Martin Packman, #794353)

* ``bzr branches`` now indicates the active colocated branch.
  (Jelmer Vernooij, #891667)

* ``bzr push`` now suggests using :parent if there is a parent location
  set. (Jelmer Vernooij)

* ``bzr send`` now only opens a single connection, rather than two,
  to the target branch. (Jelmer Vernooij)

Bug Fixes

* Allow configuration option default value to be a python callable at
  registration. (Vincent Ladeuil, #832064)

* ``bzr config`` will now display the section ``[DEFAULT]`` used in
  ``bazaar.conf``. (Vincent Ladeuil, #907268)

* Configuration stores can now provides a specific quoting mechanism. This
  is required to workaround ``configobj`` conflating quoting and list values
  automatic conversion. (Vincent Ladeuil, #906897)

* Create obsolete_packs directory when repacking if it does not
  exist. (Jonathan Riddell, Jelmer Vernooij, #314314)

* Fallback to the slower ``bzr log`` implementation when displaying a range
  of revisions whose ancestry is not obviously on the same developement
  line. (Vincent Ladeuil, #904744)

* Make lazy imports resilient when resolved concurrently from multiple
  threads. Now the stand-in object will behave as a proxy for the real object
  after the initial access, rather than throwing. Assigning the object to
  multiple names should still be avoided. (Martin von Gagern, #396819)

* Not setting ``gpg_signing_key`` or setting it to ``default`` will use the
  user email (obtained from the ``email`` configuration option or its
  default value). (Vincent Ladeuil, Jelmer Vernooij, #904550)

* Prevent spurious InconsistentDelta error when committing a move of a
  non-ascii directory with contents. (Rory Yorke, #185211)

* Properly ignore '\n' in an option reference since this cannot be part of a
  config option identifier. (Vincent Ladeuil, #902125)

* Make sure that the bzr probers are always registered when
  bzrlib.workingtree is imported. (Jelmer Vernooij, #905218)

* Report mistake trying to move a removed file with a non-ascii name without
  UnicodeEncodeError being raised. (Martin Packman, #898541)

* Safely unquote configuration values in weird edge cases (a section seen as
  a dictionary which is not a supported use case for the configuration
  stacks). (Vincent Ladeuil, #908050)

* Stop altering ``sys.platform`` on OSX when initialising the locale.
  (Martin Packman, #570495)

* Uncommit no longer removes tags if they are part of the working
  trees pending merges. (Jelmer Vernooij, #905462)

API Changes

* ``Config.signature_needed``, ``Config.signing_policy``,
  ``Config.gpg_signing_key``, ``Config.gpg_signing_command``,
  ``Config.checking_policy`` and ``Config.post_commit`` are now deprecated.
  (Jelmer Vernooij)

* ``Repository.get_commit_builder`` now takes a ``config_stack``
  rather than a ``config`` argument. (Jelmer Vernooij)

* Scripts using bzrlib should now ensure setlocale is called on posix
  platforms if they need a non-ascii user encoding. (Martin Packman)

* Send formats now accept a new optional argument ``submit_branch``,
  which can be None or a Branch object for the submit branch location.
  (Jelmer Vernooij)

* ``VersionedFileRepository.add_revision`` no longer takes a ``config``
  argument. (Jelmer Vernooij)


* Add HPSS call for ``Branch.get_checkout_format``. (Jelmer Vernooij, #894459)

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

* Add HPSS calls for ``Repository.iter_files_bytes``, speeding up
  several commands including ``bzr export`` and ``bzr co --lightweight``.
  (Jelmer Vernooij, #608640)

* All bzr control directories, branch formats, repository formats and
  working tree formats now support feature flags, which are
  serialized in their respective format files. See
  ``doc/developers/feature-flags.txt`` for details.
  (Jelmer Vernooij)

* ``bzrlib.urlutils`` now includes ``quote`` and ``unquote`` functions,
  rather than importing them from ``urllib``. This prevents loading
  of the ``socket``, ``ssl`` and ``urllib`` modules for
  local bzr operations. (Jelmer Vernooij)

* Configuration options can be SI units by using ``int_SI_from_unicode`` as
  their ``convert_from_unicode`` helper. (Vincent Ladeuil)

* Configuration stacks can now use ``StartingPathMatcher`` to select the
  sections matching a location while respecting the order chosen by the user
  in the configuration file: from generic sections to specific
  sections. (Vincent Ladeuil, #832046).

* Configuration stores can now save incremental changes by using
  ``save_changes()`` instead of ``save()``. This reduces the number or
  required input/outputs and allows stores to be shared between
  stacks. (Vincent Ladeuil)

* ControlDir now has a get_branches method that returns a dictionary
  whose keys are the names of the branches and whose values are the
  branches themselves. The active branch uses the key None.
  (Neil Martinsen-Burrell)

* Helper ``osutils.path_from_environ`` added for extracting a unicode path
  from an environment variable. (Martin Packman, #832028)

* Helper ``win32utils.get_environ_unicode`` added for avoiding encoding
  problems with ``os.environ.get`` use. (Martin Packman, #262874)

* Lazy imports can now only be absolute. (Jelmer Vernooij)

* Merge3Mergers now have an optional ``other_branch`` argument
  which contains the branch from which the ``other_tree``
  was obtained, if any. (Jelmer Vernooij)

* MutableTree now has a hook ``post_build_tree`` which is called after
  a new mutable tree has been created. (Jelmer Vernooij, #912765)

* New HPSS call ``BzrDir.checkout_metadir``. (Jelmer Vernooij, #894459)

* New HPSS call ``VersionedFileRepository.get_inventories``,
  speeding up various commands including ``bzr export``,
  ``bzr checkout`` and ``bzr cat``. (Jelmer Vernooij, #608640)

* The ``ConfigCommandLineStore`` is now supported by ``bzr config`` and is
  seen as single no-name section of configuration options. (Vincent Ladeuil)


* New matcher ``ContainsNoVfsCalls`` which filters a list of HPSS
  calls for VFS requests. (Jelmer Vernooij)

* New ``MemoryStack`` class allows for diskless tests and locally injected
  configuration stacks. Lower level tests for predefined set of options can
  be written without setting up configuration files. (Vincent Ladeuil)

0 blueprints and 27 bugs targeted

Bug report Importance Assignee Status
904550 #904550 gpg signing key doesn't default to 'email' anymore 2 Critical Vincent Ladeuil  10 Fix Released
905218 #905218 bzrlib.initialize() misses out the default prober 2 Critical Jelmer Vernooij  10 Fix Released
185211 #185211 renaming out of directory with unicode name fails with InconsistentDelta 3 High Rory Yorke  10 Fix Released
314314 #314314 bzr does not automatically create 'obsolete_packs' when it is missing. 3 High Jelmer Vernooij  10 Fix Released
794353 #794353 ascii is a bad default filesystem encoding 3 High Martin Packman  10 Fix Released
832046 #832046 needs a way to specify default values for config options by path 3 High Vincent Ladeuil  10 Fix Released
902125 #902125 option references should not contain newlines 3 High Vincent Ladeuil  10 Fix Released
903894 #903894 remove support for '.bzr/branch/email' file 3 High Jelmer Vernooij  10 Fix Released
905361 #905361 bzrlib.errors.IllegalUseOfScopeReplacer: ScopeReplacer object 'StringIO' 3 High Jelmer Vernooij  10 Fix Released
905462 #905462 "bzr uncommit" removes tags for pending merges 3 High Jelmer Vernooij  10 Fix Released
908050 #908050 bzr config fails to unquote non-string values 3 High Vincent Ladeuil  10 Fix Released
262874 #262874 environment may not be in get_user_encoding() on Windows 4 Medium Martin Packman  10 Fix Released
608640 #608640 bzr export from remote branches downloads way more data than it should 4 Medium Jelmer Vernooij  10 Fix Released
832028 #832028 environment variables are not decoded properly 4 Medium Martin Packman  10 Fix Released
832064 #832064 config option default value cannot be set by calling python code 4 Medium Vincent Ladeuil  10 Fix Released
891667 #891667 bzr branches doesn't indicate current colocated branch 4 Medium Jelmer Vernooij  10 Fix Released
894455 #894455 HPSS call for reconcile 4 Medium Jelmer Vernooij  10 Fix Released
894459 #894459 HPSS call for BzrDir.checkout_metadir 4 Medium Jelmer Vernooij  10 Fix Released
904744 #904744 bzr log -r bzr-2.5b3..bzr-2.5b4 fails 4 Medium Vincent Ladeuil  10 Fix Released
906877 #906877 merge hook that allows tree overlays 4 Medium Jelmer Vernooij  10 Fix Released
906897 #906897 empty strings as option values are badly quoted 4 Medium Vincent Ladeuil  10 Fix Released
907268 #907268 bzr config doesn't display the [DEFAULT] section for bazaar.conf 4 Medium Vincent Ladeuil  10 Fix Released
907279 #907279 config.Option should provide a way to declare env vars that override config settings 4 Medium Vincent Ladeuil  10 Fix Released
912765 #912765 post_build_tree hook 4 Medium Jelmer Vernooij  10 Fix Released
893470 #893470 BzrDir.list_branches lists same branch twice when a branch reference exists 5 Low Neil Martinsen-Burrell  10 Fix Released
898541 #898541 UnicodeEncodeError on mv of a deleted non-ascii file 5 Low Martin Packman  10 Fix Released
253529 #253529 'bzr mkdir' should have a recursive option 6 Wishlist Jelmer Vernooij  10 Fix Released
This milestone contains Public information
Everyone can see this information.