bzr 2.2.1
#########
:2.2.1: 2010-09-17
This is a bugfix release which also includes bugfixes from 2.0.6 and
2.1.3. None are critical, but upgrading is recommended for all users on
earlier 2.2 releases.
Bug Fixes
*********
* Additional merges after an unrelated branch has been merged with its
history no longer crash when deleted files are involved.
(Vincent Ladeuil, John Arbash Meinel, #375898)
* ``bzr add SYMLINK/FILE`` now works properly when the symlink points to a
previously-unversioned directory within the tree: the directory is
marked versioned too.
(Martin Pool, #192859)
* ``bzr commit SYMLINK`` now works, rather than trying to commit the
target of the symlink.
(Martin Pool, John Arbash Meinel, #128562)
* ``bzr upgrade`` now creates the ``backup.bzr`` directory with the same
permissions as ``.bzr`` directory on a POSIX OS.
(Parth Malwankar, #262450)
* CommitBuilder now uses the committer instead of _config.username to generate
the revision-id. (Aaron Bentley, #614404)
* Configuration files in ``${BZR_HOME}`` are now written in an atomic
way which should help avoid problems with concurrent writers.
(Vincent Ladeuil, #525571)
* Cope with Microsoft FTP server that returns reply '250 Directory
created' when mkdir succeeds. (Martin Pool, #224373)
* Don't traceback trying to unversion children files of an already
unversioned directory. (Vincent Ladeuil, #494221)
* Don't traceback when a lockdir's ``held/info`` file is corrupt (e.g.
contains only NUL bytes). Instead warn the user, and allow ``bzr
break-lock`` to remove it. (Andrew Bennetts, #619872)
* Fix ``AttributeError on parent.children`` when adding a file under a
directory that was a symlink in the previous commit.
(Martin Pool, #192859)
* Fix ``AttributeError: 'NoneType' object has no attribute 'close'`` in
``_close_ssh_proc`` when using ``bzr+ssh://``. This was causing
connections to pre-1.6 bzr+ssh servers to fail, and causing warnings on
stderr in some other circumstances. (Andrew Bennetts, #633745)
* Only call ``setlocale`` in the bzr startup script on posix systems. This
avoids an issue with the newer windows C runtimes used by Python 2.6 and
later which can mangle bytestrings printed to the console.
(Martin [gz], #631350)
* Prevent ``CHKMap.apply_delta`` from generating non-canonical CHK maps,
which can result in "missing referenced chk root keys" errors when
fetching from repositories with affected revisions.
(Andrew Bennetts, #522637)
* Raise ValueError instead of a string exception.
(John Arbash Meinel, #586926)
* Reduce peak memory by one copy of compressed text.
(John Arbash Meinel, #566940)
* Repositories accessed via a smart server now reject being stacked on a
repository in an incompatible format, as is the case when accessing them
via other methods. This was causing fetches from those repositories via
a smart server (e.g. using ``bzr branch``) to receive invalid data.
(Andrew Bennetts, #562380)
* Selftest with versions of subunit that support ``stopTestRun`` will no longer
error. This error was caused by 2.0 not being updated when upstream
python merged the end of run patch, which chose ``stopTestRun`` rather than
``done``. (Robert Collins, #571437)
* Stop ``AttributeError: 'module' object has no attribute 'ElementTree'``
being thrown from ``xml_serializer`` on certain cElementTree setups.
(Martin [gz], #254278)
* Upgrading or fetching from a non-rich-root repository to a rich-root
repository (e.g. from pack-0.92 to 2a) no longer fails with
``'Inter1and2Helper' object has no attribute 'source_repo'``. This was
a regression from Bazaar 2.1. (Andrew Bennetts, #636930)
* When passing a file to ``UTF8DirReader`` make sure to close the current
directory file handle after the chdir fails. Otherwise when passing many
filenames into a command line ``bzr status`` we would leak descriptors.
(John Arbash Meinel, #583486)
Documentation
*************
* Fix a lot of references in the docs to the old http://bazaar-vcs.org to
the new http://bazaar.canonical.com or http://wiki.bazaar.canonical.com
(John Arbash Meinel, #617503)
Internals
*********
* Remove used and broken code path in ``BranchInitHookParams.__repr__``.
(Andrew Bennetts)
Testing
*******
* ``build_tree_contents`` can create symlinks.
(Martin Pool, John Arbash Meinel)
* Tracebacks from a parameterized test are no longer reported against every
parameterization of that test. This was done by adding a hack to
``bzrlib.tests.clone_test`` so that it no longer causes
testtools.TestCase instances to share a details dict.
(Andrew Bennetts, #625574)