Bazaar 2.1.0b2

Milestone information

Project:
Bazaar
Series:
2.1
Version:
2.1.0b2
Released:
2009-11-03  
Registrant:
John A Meinel
Release registered:
2009-11-03
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:
6 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-2.1.0b2-1-setup.exe (md5, sig) bzr 2.1.0b2-1 Windows Standalone Installer 308
last downloaded 12 weeks ago
download icon bzr-2.1.0b2-1.win32-py2.6.exe (md5, sig) bzr 2.1.0b2-1 python2.6 installer 77
last downloaded 12 weeks ago
download icon bzr-2.1.0b2-1.win32-py2.5.exe (md5, sig) bzr 2.1.0b2-1 python2.5 installer 55
last downloaded 12 weeks ago
download icon bzr-2.1.0b2-1.win32-py2.4.exe (md5, sig) bzr 2.1.0b2-1 python2.4 installer 53
last downloaded 12 weeks ago
download icon bzr-2.1.0b2.tar.gz (md5, sig) bzr 2.1.0b2 source 677
last downloaded 56 weeks ago
Total downloads: 1,170

Release notes 

This is our second feature-filled release since 2.0, pushing us down the path to a 2.1.0. Once again, all bugfixes in 2.0.2 are present in 2.1.0b2.

Key highlights in this release are: improved handling of failures-during-cleanup for commit, fixing a long-standing bug with
``bzr+http`` and shared repositories, all ``lp:`` urls to be resolved behind proxies, and a new StaticTuple datatype, allowing us to reduce memory consumption (50%) and garbage collector overhead (40% faster) for many operations.

Changelog 

View the full changelog

bzr 2.1.0b2
###########

:Codename: a load off my mind
:2.1.0b2: 2009-11-02

This is our second feature-filled release since 2.0, pushing us down the
path to a 2.1.0. Once again, all bugfixes in 2.0.2 are present in 2.1.0b2.

Key highlights in this release are: improved handling of
failures-during-cleanup for commit, fixing a long-standing bug with
``bzr+http`` and shared repositories, all ``lp:`` urls to be resolved
behind proxies, and a new StaticTuple datatype, allowing us to reduce
memory consumption (50%) and garbage collector overhead (40% faster) for
many operations.

Bug Fixes
*********

* ``bzr+http`` servers no longer give spurious jail break errors when
  serving branches inside a shared repository. (Andrew Bennetts, #348308)

* Errors during commit are handled more robustly so that knock-on errors
  are less likely to occur, and will not obscure the original error if
  they do occur. This fixes some causes of ``TooManyConcurrentRequests``
  and similar errors. (Andrew Bennetts, #429747, #243391)

* Launchpad urls can now be resolved from behind proxies.
  (Gordon Tyler, Vincent Ladeuil, #186920)

* Reduce the strictness for StaticTuple, instead add a debug flag
  ``-Dstatic_tuple`` which will change apis to be strict and raise errors.
  This way, most users won't see failures, but developers can improve
  internals. (John Arbash Meinel, #471193)

* TreeTransform.adjust_path updates the limbo paths of descendants of adjusted
  files. (Aaron Bentley)

* Unicode paths are now handled correctly and consistently by the smart
  server. (Andrew Bennetts, Michael Hudson, #458762)

Improvements
************

* When reading index files, we now use a ``StaticTuple`` rather than a
  plain ``tuple`` object. This generally gives a 20% decrease in peak
  memory, and can give a performance boost up to 40% on large projects.
  (John Arbash Meinel)

* Peak memory under certain operations has been reduced significantly.
  (eg, 'bzr branch launchpad standalone' is cut in half)
  (John Arbash Meinel)

Documentation
*************

* Filtered views user documentation upgraded to refer to format 2a
  instead of pre-2.0 formats. (Ian Clatworthy)

API Changes
***********

* Remove deprecated ``CLIUIFactory``. (Martin Pool)

* ``UIFactory`` now has new ``show_error``, ``show_message`` and
  ``show_warning`` methods, which can be hooked by non-text UIs.
  (Martin Pool)

Internals
*********

* Added ``bzrlib._simple_set_pyx``. This is a hybrid between a Set and a
  Dict (it only holds keys, but you can lookup the object located at a
  given key). It has significantly reduced memory consumption versus the
  builtin objects (1/2 the size of Set, 1/3rd the size of Dict). This is
  used as the interning structure for StaticTuple objects.
  (John Arbash Meinel)

* ``bzrlib._static_tuple_c.StaticTuple`` is now available and used by
  the btree index parser and the chk map parser. This class functions
  similarly to ``tuple`` objects. However, it can only point to a limited
  collection of types. (Currently StaticTuple, str, unicode, None, bool,
  int, long, float, but not subclasses). This allows us to remove it from
  the garbage collector (it cannot be in a cycle), it also allows us to
  intern the objects. In testing, this can reduce peak memory by 20-40%,
  and significantly improve performance by removing objects from being
  inspected by the garbage collector. (John Arbash Meinel)

* ``GroupCompressBlock._ensure_content()`` will now release the
  ``zlib.decompressobj()`` when the first request is for all of the
  content. (Previously it would only be released if you made a request for
  part of the content, and then all of it later.) This turns out to be a
  significant memory savings, as a ``zstream`` carries around approx 260kB
  of internal state and buffers. (For branching bzr.dev this drops peak
  memory from 382MB => 345MB.) (John Arbash Meinel)

* When streaming content between ``2a`` format repositories, we now clear
  caches from earlier versioned files. (So 'revisions' is cleared when we
  start reading 'inventories', etc.) This can have a significant impact on
  peak memory for initial copies (~200MB). (John Arbash Meinel)

0 blueprints and 6 bugs targeted

Bug report Importance Assignee Status
471193 #471193 StaticTuple failure while pulling from bzr+ssh 2 Critical John A Meinel  10 Fix Released
186920 #186920 bzr xmlrpc client doesn't use http proxy, causing network errors trying to resolve lp: urls 3 High Vincent Ladeuil  10 Fix Released
348308 #348308 Smart server jail breaks bzr+http with shared repos 3 High Andrew Bennetts  10 Fix Released
445171 #445171 ObjectNotLocked doing 'bzr log -r 199 path/to/file' 3 High Andrew Bennetts  10 Fix Released
436794 #436794 Preview diff generation can die with unicode filenames 4 Medium Aaron Bentley  10 Fix Released
446033 #446033 NoneType has no attribute st_mode in _readdir_pyx.UTF8DirReader.read_dir 4 Medium Martin Pool  10 Fix Released
This milestone contains Public information
Everyone can see this information.