bzr 0.90rc1 2007-08-14
BUGFIXES:
* ``bzr init`` should connect to the remote location one time only. We
have been connecting several times because we forget to pass around the
Transport object. This modifies ``BzrDir.create_branch_convenience``,
so that we can give it the Transport we already have.
(John Arbash Meinel, Vincent Ladeuil, #111702)
* Get rid of sftp connection cache (get rid of the FTP one too).
(Vincent Ladeuil, #43731)
* bzr branch {local|remote} remote don't try to create a working tree
anymore.
(Vincent Ladeuil, #112173)
* All identified multiple connections for a single bzr command have been
fixed. See bzrlib/tests/commands directory.
(Vincent Ladeuil)
* ``bzr rm`` now does not insist on ``--force`` to delete files that
have been renamed but not otherwise modified. (Marius Kruger,
#111664)
* ``bzr selftest --bench`` no longer emits deprecation warnings
(Lukáš Lalinský)
* ``bzr status`` now honours FILE parameters for conflict lists
(Aaron Bentley, #127606)
* ``bzr checkout`` now honours -r when reconstituting a working tree.
It also honours -r 0. (Aaron Bentley, #127708)
* ``bzr add *`` no more fails on Windows if working tree contains
non-ascii file names. (Kuno Meyer, #127361)
* allow ``easy_install bzr`` runs without fatal errors.
(Alexander Belchenko, #125521)
* Graph._filter_candidate_lca does not raise KeyError if a candidate
is eliminated just before it would normally be examined. (Aaron Bentley)
* SMTP connection failures produce a nice message, not a traceback.
(Aaron Bentley)
IMPROVEMENTS:
* Don't show "dots" progress indicators when run non-interactively, such
as from cron. (Martin Pool)
* ``info`` now formats locations more nicely and lists "submit" and
"public" branches (Aaron Bentley)
* New ``pack`` command that will trigger database compression within
the repository (Robert Collins)
* Implement ``_KnitIndex._load_data`` in a pyrex extension. The pyrex
version is approximately 2-3x faster at parsing a ``.kndx`` file.
Which yields a measurable improvement for commands which have to
read from the repository, such as a 1s => 0.75s improvement in
``bzr diff`` when there are changes to be shown. (John Arbash Meinel)
* Merge is now faster. Depending on the scenario, it can be more than 2x
faster. (Aaron Bentley)
* Give a clearer warning, and allow ``python setup.py install`` to
succeed even if pyrex is not available.
(John Arbash Meinel)
* ``DirState._read_dirblocks`` now has an optional Pyrex
implementation. This improves the speed of any command that has to
read the entire DirState. (``diff``, ``status``, etc, improve by
about 10%).
``bisect_dirblocks`` has also been improved, which helps all
``_get_entry`` type calls (whenever we are searching for a
particular entry in the in-memory DirState).
(John Arbash Meinel)
* ``bzr pull`` and ``bzr push`` no longer do a complete walk of the
branch revision history for ui display unless -v is supplied.
(Robert Collins)
* ``bzr log -rA..B`` output shifted to the left margin if the log only
contains merge revisions. (Kent Gibson)
* The ``plugins`` command is now public with improved help.
(Ian Clatworthy)
* New bundle and merge directive formats are faster to generate, and
more robust against email mangling. New `send` command replaces
`bundle-revisions` and `merge-directive`. (Aaron Bentley)
* Annotate merge now works when there are local changes. (Aaron Bentley)
* Commit now only shows the progress in terms of directories instead of
entries. (Ian Clatworthy)
* Fix ``KnitRepository.get_revision_graph`` to not request the graph 2
times. This makes ``get_revision_graph`` 2x faster. (John Arbash
Meinel)
* Fix ``VersionedFile.get_graph()`` to avoid using
``set.difference_update(other)``, which has bad scaling when
``other`` is large. This improves ``VF.get_graph([version_id])`` for
a 12.5k graph from 2.9s down to 200ms. (John Arbash Meinel)
* The ``--lsprof-file`` option now generates output for KCacheGrind if
the file starts with ``callgrind.out``. This matches the default file
filtering done by KCacheGrind's Open Dialog. (Ian Clatworthy)
* Fix ``bzr update`` to avoid an unnecessary
``branch.get_master_branch`` call, which avoids 1 extra connection
to the remote server. (Partial fix for #128076, John Arbash Meinel)
* Log errors from the smart server in the trace file, to make debugging
test failures (and live failures!) easier. (Andrew Bennetts)
* The HTML version of the man page has been superceded by a more
comprehensive manual called the Bazaar User Reference. This manual
is completed generated from the online help topics. As part of this
change, limited reStructuredText is now explicitly supported in help
topics and command help with 'unnatural' markup being removed prior
to display by the online help or inclusion in the man page.
(Ian Clatworthy)
* HTML documentation now use files extension *.html (Alexander Belchenko)
* The cache of ignore definitions is now cleared in WorkingTree.unlock()
so that changes to .bzrignore aren't missed. (#129694, Daniel Watkins)
* ``bzr selftest --strict'' fails if there are any missing features or
expected test failures. (Daniel Watkins, #111914)
* Link to registration survey added to README. (Ian Clatworthy)
* Windows standalone installer show link to registration survey
when installation finished. (Alexander Belchenko)
LIBRARY API BREAKS:
* Deprecated dictionary ``bzrlib.option.SHORT_OPTIONS`` removed.
Options are now required to provide a help string and it must
comply with the style guide by being one or more sentences with an
initial capital and final period. (Martin Pool)
* KnitIndex.get_parents now returns tuples. (Robert Collins)
* Ancient unused ``Repository.text_store`` attribute has been removed.
(Robert Collins)
* The ``bzrlib.pack`` interface has changed to use tuples of bytestrings
rather than just bytestrings, making it easier to represent multiple
element names. As this interface was not used by any internal facilities
since it was introduced in 0.18 no API compatibility is being preserved.
The serialised form of these packs is identical with 0.18 when a single
element tuple is in use. (Robert Collins)