[ANN] bzr 2.4b3 released !
v.ladeuil+lp at free.fr
Tue May 31 13:23:19 UTC 2011
My name is vila and... err, wrong channel.
We have a new beta release: the third one in the 2.4 series (2.4.0 is
planned to be released in August 2011).
Our beta releases are suitable for everyday use but you may encounter
small incompatibilities with some plugins.
Since this is our third beta, most of them have already been addressed
though; so file bugs for the remaining ones !
All fixes done on our previous stable releases are included (it's always
the case but it's worth reminding).
I'm happy to thank everyone who contributed to this release whether you
sent merge proposals, patches, suggestions and feedback, this is much
appreciated, keep them coming !
Bazaar is now available for download from
https://launchpad.net/bzr/2.4/2.4b3/ as a source tarball.
Installers have been built in record time after the source freeze for
windows and OSX.
Packages for Ubuntu are available in the beta ppa:
Note that we've stopped supporting python-2.4/2.5 and hardy there for
the *beta*, the 2.3 stable series will maintain compatibility with
And now for the gory details:
External Compatibility Breaks
* ``bzr-2.4`` has officially dropped support for python2.4 and python2.5.
We will continue to maintain ``bzr-2.3`` for people who still need to
use those versions of python. (John Arbash Meinel)
* The text compressor used for 2a repositories now has a tweakable
parameter that can be set in bazaar.conf.
``bzr.groupcompress.max_entries_per_source`` default of 65536.
When doing compression, we build up an index of locations to match
against. Setting this higher will result in slightly better compression,
at a cost of more memory. Note that a value of 65k represents fully
sampling a 1MB file. So this only has an effect when compressing texts
larger than N*16 bytes. (John Arbash Meinel, #602614)
* ``bzr branch --stacked`` from a smart server uses the network a little
more efficiently. For a simple branch it reduces the number of
round-trips by about 20%. (Andrew Bennetts)
* ``bzr log --line`` scales the width of the author field with the size of
the line. This means that the full author name is shown when the
environment variable BZR_COLUMNS=0. (Neil Martinsen-Burrell)
* ``bzr pull`` now properly triggers the fast
``CHKInventory.iter_changes`` rather than the slow generic
inter-Inventory changes. It used to use a ``DirStateRevisionTree`` as
one of the source trees, which is faster when we have to read the whole
inventory anyway, but much slower when we can get just the delta out of
the repository. On a 70k record tree, this changes ``bzr pull`` from 28s
down to 17s. (John Arbash Meinel, #780677)
* Slightly reduced memory consumption when fetching into a 2a repository
by reusing existing caching a little better. (Andrew Bennetts)
* Speed up ``bzr status`` by a little bit when there are a couple of
modified files. We now track how many files we have seen that need
updating, and only rewrite the dirstate file if enough of them have
changed. The default is 10, and can be overridden by setting the branch
(Ian Clatworthy, John Arbash Meinel, #380202)
* Speed up ``bzr uncommit``. Instead of resetting the dirstate from
scratch, use ``update_basis_by_delta``, computing the delta from the
repository. (John Arbash Meinel, #780544)
* All Tree types can now be exported as tar.*, zip or directories.
* ``bzr merge --no-remember location`` never sets ``submit_branch``.
(Vincent Ladeuil, #782169)
* ``bzr pull --no-remember location`` never sets
``parent_location``. ``bzr push --no-remember location`` never
sets ``push_location``. ``bzr send --no-remember
submit_location public_location`` never sets ``submit_branch``
nor ``public_branch``. (Vincent Ladeuil)
* Conflicts involving non-ascii filenames are now properly reported rather
than failing with a UnicodeEncodeError. (Martin [GZ], #686161)
* Correct parent is now set when using 'switch -b' with bound branches.
(A. S. Budden, #513709)
* Fix `bzr plugins` regression in bzr 2.4 which resulted in a traceback
from writelines on ckj terminals. (Martin [GZ], #754082)
* ``WT.inventory`` and ``WT.iter_entries_by_dir()`` was not correctly
reporting subdirectories that were tree references (in formats that
supported them). (John Arbash Meinel, #764677)
* Merging into empty branches now gives an error as this is currently
not supported. (Jonathan Riddell, #242175)
* Do not show exception to user on pointless commit error (Jonathan
* ``WT.update_basis_by_delta`` no longer requires that the deltas match
the current WT state. This allows ``update_basis_by_delta`` to be used
by more commands than just commit. Updating with a delta allows us to
not load the whole inventory, which can take 10+s with large trees.
(Jonathan Riddell, John Arbash Meinel, #781168)
* Restore the workaround for option names including dots (--1.14) which was
disabled when we stopped listing --1.9 as a format.
(Vincent Ladeuil, #782289)
* ``annotate_file`` has been deprecated in favor of
``annotate_file_revision_tree``. (Jelmer Vernooij, #775598)
* ``Branch.fetch`` now takes an optional ``limit`` argument.
(Andrew Bennetts, Jelmer Vernooij, #750175)
* ``Inter.get`` now raises ``NoCompatibleInter`` if there are no
compatible optimisers rather than an instance of the class it is called
on. (Jelmer Vernooij)
* ``Branch.push`` now takes a ``lossy`` argument.
``Branch.lossy_push`` has been removed.
* New method ``Repository.get_file_graph`` which can return the
per-file revision graph. (Jelmer Vernooij, #775578)
* The default implementation of ``Branch`` is now oriented to
storing the branch tip. Branch implementations which store the full
history should now subclass ``FullHistoryBzrBranch``.
``Branch._last_revision_info`` has been renamed to
``Branch._read_last_revision_info`` (Jelmer Vernooij)
* ``Tree.__iter__`` has been deprecated; use ``Tree.all_file_ids``
instead. (Jelmer Vernooij)
* ``Tree.get_symlink_target`` now takes an optional ``path``
argument. (Jelmer Vernooij)
* Removed ``bzrlib.branch._run_with_write_locked_target`` as
``bzrlib.cleanup`` provides the same functionality in a more general
way. (Andrew Bennetts)
* A test that was expected to fail but passes instead now counts as a failure
catching up with new testtools and subunit handling. (Martin [GZ], #654474)
* Make it easier for plugins to reuse the per_workingtree scenarios by
restoring the wt_scenarios helper that was accidentally deleted.
(Vincent Ladeuil, #783472)
* Removed ``test_breakin`` tests that were excessively prone to hanging,
did not work on Wine, and partly already disabled.
(Martin Pool, #408814, #746985)
* Windows locations are different and should be tested accordingly.
(Vincent Ladeuil, #788131)
More information about the bazaar-announce