summaryrefslogtreecommitdiff
path: root/doc/en/release-notes/bzr-0.92.txt
diff options
context:
space:
mode:
Diffstat (limited to 'doc/en/release-notes/bzr-0.92.txt')
-rw-r--r--doc/en/release-notes/bzr-0.92.txt342
1 files changed, 342 insertions, 0 deletions
diff --git a/doc/en/release-notes/bzr-0.92.txt b/doc/en/release-notes/bzr-0.92.txt
new file mode 100644
index 0000000..f198e28
--- /dev/null
+++ b/doc/en/release-notes/bzr-0.92.txt
@@ -0,0 +1,342 @@
+####################
+Bazaar Release Notes
+####################
+
+.. toctree::
+ :maxdepth: 1
+
+bzr 0.92
+########
+
+:Released: 2007-11-05
+
+Changes
+*******
+
+ * New uninstaller on Win32. (Alexander Belchenko)
+
+
+bzr 0.92rc1
+###########
+
+:Released: 2007-10-29
+
+Changes
+*******
+
+* ``bzr`` now returns exit code 4 if an internal error occurred, and
+ 3 if a normal error occurred. (Martin Pool)
+
+* ``pull``, ``merge`` and ``push`` will no longer silently correct some
+ repository index errors that occured as a result of the Weave disk format.
+ Instead the ``reconcile`` command needs to be run to correct those
+ problems if they exist (and it has been able to fix most such problems
+ since bzr 0.8). Some new problems have been identified during this release
+ and you should run ``bzr check`` once on every repository to see if you
+ need to reconcile. If you cannot ``pull`` or ``merge`` from a remote
+ repository due to mismatched parent errors - a symptom of index errors -
+ you should simply take a full copy of that remote repository to a clean
+ directory outside any local repositories, then run reconcile on it, and
+ finally pull from it locally. (And naturally email the repositories owner
+ to ask them to upgrade and run reconcile).
+ (Robert Collins)
+
+Features
+********
+
+* New ``knitpack-experimental`` repository format. This is interoperable with
+ the ``dirstate-tags`` format but uses a smarter storage design that greatly
+ speeds up many operations, both local and remote. This new format can be
+ used as an option to the ``init``, ``init-repository`` and ``upgrade``
+ commands. (Robert Collins)
+
+* For users of bzr-svn (and those testing the prototype subtree support) that
+ wish to try packs, a new ``knitpack-subtree-experimental`` format has also
+ been added. This is interoperable with the ``dirstate-subtrees`` format.
+ (Robert Collins)
+
+* New ``reconfigure`` command. (Aaron Bentley)
+
+* New ``revert --forget-merges`` command, which removes the record of a pending
+ merge without affecting the working tree contents. (Martin Pool)
+
+* New ``bzr_remote_path`` configuration variable allows finer control of
+ remote bzr locations than BZR_REMOTE_PATH environment variable.
+ (Aaron Bentley)
+
+* New ``launchpad-login`` command to tell Bazaar your Launchpad
+ user ID. This can then be used by other functions of the
+ Launchpad plugin. (James Henstridge)
+
+Performance
+***********
+
+* Commit in quiet mode is now slightly faster as the information to
+ output is no longer calculated. (Ian Clatworthy)
+
+* Commit no longer checks for new text keys during insertion when the
+ revision id was deterministically unique. (Robert Collins)
+
+* Committing a change which is not a merge and does not change the number of
+ files in the tree is faster by utilising the data about whether files are
+ changed to determine if the tree is unchanged rather than recalculating
+ it at the end of the commit process. (Robert Collins)
+
+* Inventory serialisation no longer double-sha's the content.
+ (Robert Collins)
+
+* Knit text reconstruction now avoids making copies of the lines list for
+ interim texts when building a single text. The new ``apply_delta`` method
+ on ``KnitContent`` aids this by allowing modification of the revision id
+ such objects represent. (Robert Collins)
+
+* Pack indices are now partially parsed for specific key lookup using a
+ bisection approach. (Robert Collins)
+
+* Partial commits are now approximately 40% faster by walking over the
+ unselected current tree more efficiently. (Robert Collins)
+
+* XML inventory serialisation takes 20% less time while being stricter about
+ the contents. (Robert Collins)
+
+* Graph ``heads()`` queries have been fixed to no longer access all history
+ unnecessarily. (Robert Collins)
+
+Improvements
+************
+
+* ``bzr+https://`` smart server across https now supported.
+ (John Ferlito, Martin Pool, #128456)
+
+* Mutt is now a supported mail client; set ``mail_client=mutt`` in your
+ bazaar.conf and ``send`` will use mutt. (Keir Mierle)
+
+* New option ``-c``/``--change`` for ``merge`` command for cherrypicking
+ changes from one revision. (Alexander Belchenko, #141368)
+
+* Show encodings, locale and list of plugins in the traceback message.
+ (Martin Pool, #63894)
+
+* Experimental directory formats can now be marked with
+ ``experimental = True`` during registration. (Ian Clatworthy)
+
+Documentation
+*************
+
+* New *Bazaar in Five Minutes* guide. (Matthew Revell)
+
+* The hooks reference documentation is now converted to html as expected.
+ (Ian Clatworthy)
+
+Bug Fixes
+*********
+
+* Connection error reporting for the smart server has been fixed to
+ display a user friendly message instead of a traceback.
+ (Ian Clatworthy, #115601)
+
+* Make sure to use ``O_BINARY`` when opening files to check their
+ sha1sum. (Alexander Belchenko, John Arbash Meinel, #153493)
+
+* Fix a problem with Win32 handling of the executable bit.
+ (John Arbash Meinel, #149113)
+
+* ``bzr+ssh://`` and ``sftp://`` URLs that do not specify ports explicitly
+ no longer assume that means port 22. This allows people using OpenSSH to
+ override the default port in their ``~/.ssh/config`` if they wish. This
+ fixes a bug introduced in bzr 0.91. (Andrew Bennetts, #146715)
+
+* Commands reporting exceptions can now be profiled and still have their
+ data correctly dumped to a file. For example, a ``bzr commit`` with
+ no changes still reports the operation as pointless but doing so no
+ longer throws away the profiling data if this command is run with
+ ``--lsprof-file callgrind.out.ci`` say. (Ian Clatworthy)
+
+* Fallback to FTP when paramiko is not installed and SFTP can't be used for
+ ``tests/commands`` so that the test suite is still usable without
+ paramiko.
+ (Vincent Ladeuil, #59150)
+
+* Fix commit ordering in corner case. (Aaron Bentley, #94975)
+
+* Fix long standing bug in partial commit when there are renames
+ left in tree. (Robert Collins, #140419)
+
+* Fix selftest semi-random noise during HTTP related tests.
+ (Vincent Ladeuil, #140614)
+
+* Fix typo in ftp.py making the reconnection fail on temporary errors.
+ (Vincent Ladeuil, #154259)
+
+* Fix failing test by comparing real paths to cover the case where the TMPDIR
+ contains a symbolic link.
+ (Vincent Ladeuil, #141382).
+
+* Fix log against smart server branches that don't support tags.
+ (James Westby, #140615)
+
+* Fix pycurl HTTP implementation by defining error codes from
+ pycurl instead of relying on an old curl definition.
+ (Vincent Ladeuil, #147530)
+
+* Fix 'unprintable error' message when displaying BzrCheckError and
+ some other exceptions on Python 2.5.
+ (Martin Pool, #144633)
+
+* Fix ``Inventory.copy()`` and add test for it. (Jelmer Vernooij)
+
+* Handles default value for ListOption in cmd_commit.
+ (Vincent Ladeuil, #140432)
+
+* HttpServer and FtpServer need to be closed properly or a listening socket
+ will remain opened.
+ (Vincent Ladeuil, #140055)
+
+* Monitor the .bzr directory created in the top level test
+ directory to detect leaking tests.
+ (Vincent Ladeuil, #147986)
+
+* The basename, not the full path, is now used when checking whether
+ the profiling dump file begins with ``callgrind.out`` or not. This
+ fixes a bug reported by Aaron Bentley on IRC. (Ian Clatworthy)
+
+* Trivial fix for invoking command ``reconfigure`` without arguments.
+ (Rob Weir, #141629)
+
+* ``WorkingTree.rename_one`` will now raise an error if normalisation of the
+ new path causes bzr to be unable to access the file. (Robert Collins)
+
+* Correctly detect a NoSuchFile when using a filezilla server. (Gary van der
+ Merwe)
+
+API Breaks
+**********
+
+* ``bzrlib.index.GraphIndex`` now requires a size parameter to the
+ constructor, for enabling bisection searches. (Robert Collins)
+
+* ``CommitBuilder.record_entry_contents`` now requires the root entry of a
+ tree be supplied to it, previously failing to do so would trigger a
+ deprecation warning. (Robert Collins)
+
+* ``KnitVersionedFile.add*`` will no longer cache added records even when
+ enable_cache() has been called - the caching feature is now exclusively for
+ reading existing data. (Robert Collins)
+
+* ``ReadOnlyLockError`` is deprecated; ``LockFailed`` is usually more
+ appropriate. (Martin Pool)
+
+* Removed ``bzrlib.transport.TransportLogger`` - please see the new
+ ``trace+`` transport instead. (Robert Collins)
+
+* Removed previously deprecated varargs interface to ``TestCase.run_bzr`` and
+ deprecated methods ``TestCase.capture`` and ``TestCase.run_bzr_captured``.
+ (Martin Pool)
+
+* Removed previous deprecated ``basis_knit`` parameter to the
+ ``KnitVersionedFile`` constructor. (Robert Collins)
+
+* Special purpose method ``TestCase.run_bzr_decode`` is moved to the test_non_ascii
+ class that needs it.
+ (Martin Pool)
+
+* The class ``bzrlib.repofmt.knitrepo.KnitRepository3`` has been folded into
+ ``KnitRepository`` by parameters to the constructor. (Robert Collins)
+
+* The ``VersionedFile`` interface now allows content checks to be bypassed
+ by supplying check_content=False. This saves nearly 30% of the minimum
+ cost to store a version of a file. (Robert Collins)
+
+* Tree's with bad state such as files with no length or sha will no longer
+ be silently accepted by the repository XML serialiser. To serialise
+ inventories without such data, pass working=True to write_inventory.
+ (Robert Collins)
+
+* ``VersionedFile.fix_parents`` has been removed as a harmful API.
+ ``VersionedFile.join`` will no longer accept different parents on either
+ side of a join - it will either ignore them, or error, depending on the
+ implementation. See notes when upgrading for more information.
+ (Robert Collins)
+
+Internals
+*********
+
+* ``bzrlib.transport.Transport.put_file`` now returns the number of bytes
+ put by the method call, to allow avoiding stat-after-write or
+ housekeeping in callers. (Robert Collins)
+
+* ``bzrlib.xml_serializer.Serializer`` is now responsible for checking that
+ mandatory attributes are present on serialisation and deserialisation.
+ This fixes some holes in API usage and allows better separation between
+ physical storage and object serialisation. (Robert Collins)
+
+* New class ``bzrlib.errors.InternalBzrError`` which is just a convenient
+ shorthand for deriving from BzrError and setting internal_error = True.
+ (Robert Collins)
+
+* New method ``bzrlib.mutabletree.update_to_one_parent_via_delta`` for
+ moving the state of a parent tree to a new version via a delta rather than
+ a complete replacement tree. (Robert Collins)
+
+* New method ``bzrlib.osutils.minimum_path_selection`` useful for removing
+ duplication from user input, when a user mentions both a path and an item
+ contained within that path. (Robert Collins)
+
+* New method ``bzrlib.repository.Repository.is_write_locked`` useful for
+ determining if a repository is write locked. (Robert Collins)
+
+* New method on ``bzrlib.tree.Tree`` ``path_content_summary`` provides a
+ tuple containing the key information about a path for commit processing
+ to complete. (Robert Collins)
+
+* New method on XML serialisers, write_inventory_to_lines, which matches the
+ API used by knits for adding content. (Robert Collins)
+
+* New module ``bzrlib.bisect_multi`` with generic multiple-bisection-at-once
+ logic, currently only available for byte-based lookup
+ (``bisect_multi_bytes``). (Robert Collins)
+
+* New helper ``bzrlib.tuned_gzip.bytes_to_gzip`` which takes a byte string
+ and returns a gzipped version of the same. This is used to avoid a bunch
+ of api friction during adding of knit hunks. (Robert Collins)
+
+* New parameter on ``bzrlib.transport.Transport.readv``
+ ``adjust_for_latency`` which changes readv from returning strictly the
+ requested data to inserted return larger ranges and in forward read order
+ to reduce the effect of network latency. (Robert Collins)
+
+* New parameter yield_parents on ``Inventory.iter_entries_by_dir`` which
+ causes the parents of a selected id to be returned recursively, so all the
+ paths from the root down to each element of selected_file_ids are
+ returned. (Robert Collins)
+
+* Knit joining has been enhanced to support plain to annotated conversion
+ and annotated to plain conversion. (Ian Clatworthy)
+
+* The CommitBuilder method ``record_entry_contents`` now returns summary
+ information about the effect of the commit on the repository. This tuple
+ contains an inventory delta item if the entry changed from the basis, and a
+ boolean indicating whether a new file graph node was recorded.
+ (Robert Collins)
+
+* The python path used in the Makefile can now be overridden.
+ (Andrew Bennetts, Ian Clatworthy)
+
+Testing
+*******
+
+* New transport implementation ``trace+`` which is useful for testing,
+ logging activity taken to its _activity attribute. (Robert Collins)
+
+* When running bzr commands within the test suite, internal exceptions are
+ not caught and reported in the usual way, but rather allowed to propagate
+ up and be visible to the test suite. A new API ``run_bzr_catch_user_errors``
+ makes this behavior available to other users.
+ (Martin Pool)
+
+* New method ``TestCase.call_catch_warnings`` for testing methods that
+ raises a Python warning. (Martin Pool)
+
+
+..
+ vim: tw=74 ft=rst ff=unix