Bazaar 1.10rc1

This release of Bazaar focusses on performance improvements when pushing
and pulling revisions, both locally and to remote networks. The popular
``shelve`` and ``unshelve`` commands, used to interactively revert and
restore work in progress, have been merged from bzrtools into the bzr
core. There are also bug fixes for portability, and for stacked branches.

Milestone information

Project:
Bazaar
Series:
1.10
Version:
1.10rc1
Released:
2008-11-28  
Registrant:
Martin Pool
Release registered:
2008-11-28
Active:
No. Drivers cannot target bugs and blueprints to this milestone.  

Download RDF metadata

Activities

Assigned to you:
No blueprints or bugs assigned to you.
Assignees:
1 Aaron Bentley, 2 Andrew Bennetts, 1 John A Meinel, 1 Martin Pool, 1 Vincent Ladeuil
Blueprints:
No blueprints are targeted to this milestone.
Bugs:
10 Fix Released

Download files for this release

After you've downloaded a file, you can verify its authenticity using its MD5 sum or signature. (How do I verify a download?)

File Description Downloads
download icon bzr-1.10rc1.tar.gz (md5, sig) bzr 1.10rc1 source 106
last downloaded 64 weeks ago
Total downloads: 106

Release notes 

This release does not have release notes.

Changelog 

View the full changelog

bzr 1.10rc1 2008-11-28
----------------------

This release of Bazaar focusses on performance improvements when pushing
and pulling revisions, both locally and to remote networks. The popular
``shelve`` and ``unshelve`` commands, used to interactively revert and
restore work in progress, have been merged from bzrtools into the bzr
core. There are also bug fixes for portability, and for stacked branches.

  NEW FEATURES:

    * New ``commit_message_template`` hook that is called by the commit
      code to generate a template commit message. (Jelmer Vernooij)

    * New `shelve` and `unshelve` commands allow undoing and redoing changes.
      (Aaron Bentley)

  IMPROVEMENTS:

    * ``(Remote)Branch.copy_content_into`` no longer generates the full revision
      history just to set the last revision info.
      (Andrew Bennetts, John Arbash Meinel)

    * Fetches between formats with different serializers (such as
      pack-0.92-subtree and 1.9-rich-root) are faster now. This is due to
      operating on batches of 100 revisions at time rather than
      one-by-one. (Andrew Bennetts, John Arbash Meinel)

    * Search index files corresponding to pack files we've already used
      before searching others, because they are more likely to have the
      keys we're looking for. This reduces the number of iix and tix
      files accessed when pushing 1 new revision, for instance.
      (John Arbash Meinel)

    * Signatures to transfer are calculated more efficiently in
      ``item_keys_introduced_by``. (Andrew Bennetts, John Arbash Meinel)

    * The generic fetch code can once again copy revisions and signatures
      without extracting them completely to fulltexts and then serializing
      them back down into byte strings. This is a significant performance
      improvement when fetching from a stacked branch.
      (John Arbash Meinel, #300289)

    * When making a large readv() request over ``bzr+ssh``, break up the
      request into more manageable chunks. Because the RPC is not yet able
      to stream, this helps keep us from buffering too much information at
      once. (John Arbash Meinel)

  BUG FIXES:

    * Better message when the user needs to set their Launchpad ID.
      (Martin Pool, #289148)

    * ``bzr commit --local`` doesn't access the master branch anymore.
      This fixes a regression introduced in 1.9. (Marius Kruger, #299313)

    * Don't call the system ``chdir()`` with an empty path. Sun OS seems
      to give an error in that case. Also, don't count on ``getcwd()``
      being able to allocate a new buffer, which is a gnu extension.
      (John Arbash Meinel, Martin Pool, Harry Hirsch, #297831)

    * Don't crash when requesting log --forward <file> for a revision range
      starting with a dotted revno.
      (Vincent Ladeuil, #300055)

    * Don't create text deltas spanning stacked repositories; this could
      cause "Revision X not present in Y" when later accessing them.
      (Martin Pool, #288751)

    * Pack repositories are now able to reload the pack listing and retry
      the current operation if another action causes the data to be
      repacked. (John Arbash Meinel, #153786)

    * PermissionDenied errors from smart servers no longer cause
      "PermissionDenied: "None"" on the client.
      (Andrew Bennetts, #299254)

    * Pushing to a stacked pack repository now batches writes, the same
      way writes are batched to ordinary pack repository. This makes
      pushing to a stacked branch over the network much faster.
      (Andrew Bennetts, #294479)

    * TooManyConcurrentRequests no longer occur when a fetch fails and
      tries to abort a write group. This allows the root cause (e.g. a
      network interruption) to be reported. (Andrew Bennetts, #297014)

    * RemoteRepository.get_parent_map now uses fallback repositories.
      (Aaron Bentley, #297991?, #293679?)

  API CHANGES:

    * ``CommitBuilder`` now validates the strings it will be committing,
      to ensure that they do not have characters that will not be properly
      round-tripped. For now, it just checks for characters that are
      invalid in the XML form. (John Arbash Meinel, #295161)

    * Constructor parameters for NewPack (internal to pack repositories)
      have changed incompatibly.

    * ``Repository.abort_write_group`` now accepts an optional
      ``suppress_errors`` flag. Repository implementations that override
      ``abort_write_group`` will need to be updated to accept the new
      argument. Subclasses that only override ``_abort_write_group``
      don't need to change.

    * Transport implementations must provide copy_tree_to_transport. A default
      implementation is provided for Transport subclasses.

  TESTING:

    * ``bzr selftest`` now fails if no doctests are found in a module
      that's expected to have them. (Martin Pool)

    * Doctests now only report the first failure. (Martin Pool)

0 blueprints and 10 bugs targeted

Bug report Importance Assignee Status
293679 #293679 1.9rc1 can't push to Launchpad 2 Critical   10 Fix Released
295350 #295350 Push fails with Revision {set([('null:',)])} not present in "KnitVersionedFiles 2 Critical Martin Pool  10 Fix Released
297991 #297991 Branches keep forgetting that they're stacked 3 High Aaron Bentley  10 Fix Released
300289 #300289 branching everything from a stacked branch is slow 3 High   10 Fix Released
297014 #297014 TooManyConcurrentRequests error from abort_write_group hides underlying error 4 Medium Andrew Bennetts  10 Fix Released
297831 #297831 EADDR inside pyrex readdir on x86 Solaris 4 Medium   10 Fix Released
299254 #299254 when RemoteTransport.mkdir raised PermissionDenied, the path is always None 4 Medium Andrew Bennetts  10 Fix Released
300055 #300055 "bzr log --forward FILE" crashes for revision range if first revision is not mainline 4 Medium Vincent Ladeuil  10 Fix Released
303206 #303206 crash while committing 4 Medium   10 Fix Released
295486 #295486 Autopack's debug output is wrong about how many packs will be left 5 Low John A Meinel  10 Fix Released
This milestone contains Public information
Everyone can see this information.