[ANN] bzr 2.4b4 released !
v.ladeuil+lp at free.fr
Tue Jun 21 11:12:36 UTC 2011
A new beta release, our fourth one, has been released: 2.4b4. 2.4.0 is
planned to be released in August 2011.
As usual, this contains all known bug fixes (including the ones we made
for the previous stable releases).
Thanks to all participants, whether you sent merge proposals, comments,
suggestions and feedback, we very much appreciate all of them.
Bazaar is now available for download from
https://launchpad.net/bzr/2.4/2.4b4/ as a source tarball.
Installers have been built in record time after the source freeze for
windows and the OSX ones will hopefully be available soon.
2.4b4 is available in Debian sid (unstable) and packages for Ubuntu are
available in the beta ppa: https://launchpad.net/~bzr/+archive/beta
Reminder: since 2.4b3, we've stopped supporting python-2.4/2.5 and hardy
there for the *beta*, the 2.3 stable series will maintain compatibility
IMPORTANT NOTE: Quickly after the beta was made available on debian sid
we had two reports of http://pad.lv/799212 . The fix has already
landed on trunk and will be available in 2.4b5. It impacts anybody
with a bazaar.conf containing some non-ascii chars but only when no
BZR_EDITOR environment variable is set. So the workaround is to set
BZR_EDITOR to a valid editor.
We'll have another (and last) beta before the final 2.4.0 release. If
you're a plugin author, please make sure you have a clearly identified
released compatible with 2.4 (preferably with a dedicated series like
http://pad.lv/p/qbzr does or at least a tag for the version you'd like
to be carried by the installers and the ppas). Whatever you decide, keep
in touch with the packagers or just reply to this mail. There is no
urgency (yet ;) but you'll get better feedback if your planned release
can be packaged with 2.4b5 (expected to be frozen 2011-07-07).
And now for the gory details:
External Compatibility Breaks
* Do not treat configuration option 'check_signatures = require' as if
it were 'create_signatures = always' (Jonathan Riddell)
* Hooks have been added for config stacks: ``get``, ``set`` and ``remove``
are called when an option is respectively read, modified or deleted. Also
added ``load`` and ``save`` hooks for config stores, called when the
stores are loaded or saved. (Vincent Ladeuil)
* New hook server_exception in bzrlib.smart.server to catch any
exception caused while running bzr serve.
(Jonathan Riddell, #274578)
* New hook set_commit_message in bzrlib.msgeditor to set
a commit message and revision properties. (Jonathan Riddell,
* Support ``-S`` as an alias for ``--short`` for the ``log`` and
``missing`` commands. (Martin von Gagern, #38655)
* ``bzr annotate`` can be run without setting whoami data first. (Jonathan
* Bazaar can now detect when a lock file is held by a dead process
originating from the same machine, and steal the lock after printing a
message to the user. This is off by default, for safety, but can be
turned on by setting the configuration variable ``locks.steal_dead`` to
(Martin Pool, #220464)
* Credentials in the log output produced by ``-Dhttp`` are masked so users
can more freely post them in bug reports. (Vincent Ladeuil, #723074)
* Fix a race condition for ``server_started`` hooks leading to a spurious
test failure. (Vincent Ladeuil, #789167)
* Fix exporting subdirectory with ``--per-file-timestamps``.
(Szilveszter Farkas, #795557)
* Handle files that get created but don't get used during TreeTransform.
``open()`` can create a file, and still raise an exception before it
returns. So anything we might have created, make sure we destroy during
``finalize()``. (Martin [gz], #597686)
* ``pack_repo`` now uses ``Transport.move`` instead of
``Transport.rename``, deleting any existing targets even on SFTP.
(Martin von Gagern, #421776)
* Pass the ``build_mo`` command to the rest of the setup() calls in
setup.py. The ``bdist_wininst`` and ``py2exe`` code paths were failing
because ``build_mo`` became a required step that they didn't know about.
(John Arbash Meinel, #787122)
* Properly avoid re-adding a file after it changes case on CICP
filesystems. (John Arbash Meinel, #798130)
* Reports the original error when an InvalidHttpResponse exception is
encountered to facilitate debug. (Vincent Ladeuil, #788530)
* Reports a non-existant file error when trying to merge in a file
that does not exist. (Jonathan Riddell, #330063)
* ``UIFactory.prompt``, ``UIFactory.get_username``,
``UIFactory.get_password`` and ``UIFactory.get_boolean`` now require a
unicode prompt to be passed in. (Jelmer Vernooij, #592083)
* Support merging into the empty tree. (Aaron Bentley, #595328)
* Improve documentation of ``bzr merge --force``.
(Neil Martinsen-Burrell, #767307)
* Make docs for configuration options for digital signatures match
reality. (Jonathan Riddell)
* Add user-guide page on GPG signatures. (Jonathan Riddell)
* Information about held lockdir locks returned from eg `LockDir.peek` is
now represented as a `LockHeldInfo` object, rather than a plain
* Remove `file_status` function.
* ``Repository.iter_reverse_revision_history`` is now deprecated.
Use ``Graph.iter_lefthand_ancestry`` instead.
(Jelmer Vernooij, #739481)
* ``tools/check-newsbugs.py`` accepts a ``--browser`` option to open
corresponding launchpad pages in a browser. (Vincent Ladeuil)
* A `ImportTariffTestCase` base class has been added in
``bzrlib.tests.test_import_tariff``, which can be used for import tariff
tests in plugins. (Jelmer Vernooij, #793465)
* Fix deadlock in `TestImportTariffs.test_simple_serve` when stderr gets
more output than fits in the default buffer. This was happening on the
Windows buildslave, and could easily happen in other circumstances where
the default OS buffer size for pipes is small or the ``python -v``
output is large. (Andrew Bennetts, #784802)
* Fix spurious test failure on OSX for WorkingTreeFormat2.
(Vincent Ladeuil, #787942)
* Re-target ``bb.test_merge.TestMerge.test_merge_reversed_revision_range``
and rewrite it as a parametrized test to avoid unrelated failures.
(Vincent Ladeuil, #795456)
* Show log file contents from subprocesses started by
`start_bzr_subprocess` in test failure details. This may help diagnose
strange hangs and failures involving subprocesses. (Andrew Bennetts)
* Skip ``utextwrap`` tests when ``sphinx`` breaks text_wrap by an hostile
monkeypatch to textwrap.TextWrapper.wordsep_re.
(Vincent Ladeuil, #785098)
* Multiple ``selftest --exclude`` options are now combined instead of
overriding each other. (Vincent Ladeuil, #746991)
* Restore some ``FTPTransport`` test coverage by allowing ``pyftpdlib
0.6.0`` to be used. Also restore ``medusa`` support while leaving it
disabled to make it easier to use if/when we can in the future.
(Vincent Ladeuil, #781140)
* `TestImportTariffs` no longer uses the real ``$HOME``. This prevents it
from polluting ``$HOME/.bzr.log`` or being accidentally influenced by
user configuration such as aliases. It still runs with all the user's
plugins enabled, as intended.
(Vincent Ladeuil, Andrew Bennetts, #789505)
More information about the bazaar-announce