Bazaar 2.0.0 "Instant Karma"

The 2.0 release for bzr is the release that makes the 2a format the default.

Milestone information

Project:
Bazaar
Series:
2.0
Version:
2.0.0
Code name:
Instant Karma
Released:
 
Registrant:
Martin Pool
Release registered:
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:
2 Andrew Bennetts, 1 Ian Clatworthy, 1 Jean-Francois Roy, 2 John A Meinel, 3 Robert Collins
Blueprints:
No blueprints are targeted to this milestone.
Bugs:
1 Invalid, 15 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 Bazaar2.0.0-4.pkg (md5, sig) Snow leopard installer 722
last downloaded today
download icon Bazaar-2.0.0-OSX10.5.dmg (md5, sig) Mac OS X 10.5 (Leopard) installer 425
last downloaded 3 days ago
download icon Bazaar-2.0.0-OSX10.4-universal-2.6.dmg (md5, sig) Mac OS X 10.4 universal installer (for Python 2.6) 1,333
last downloaded 8 days ago
download icon Bazaar-2.0.0-OSX10.4-universal-2.5.dmg (md5, sig) Mac OS X 10.4 universal installer (for Python 2.5) 1,144
last downloaded 8 days ago
download icon bzr-2.0.0-2-setup.exe (md5, sig) bzr 2.0.0-2 Windows Standalone Installer 6,086
last downloaded 8 days ago
download icon bzr-2.0.0-1.win32-py2.6.exe (md5, sig) bzr 2.0.0-1 python2.6 installer 547
last downloaded 8 days ago
download icon bzr-2.0.0-1.win32-py2.5.exe (md5, sig) bzr 2.0.0-1 python2.5 installer 336
last downloaded today
download icon bzr-2.0.0-1.win32-py2.4.exe (md5, sig) bzr 2.0.0-1 python2.4 installer 157
last downloaded 8 days ago
download icon bzr-2.0.0-1-nonadmin.exe (md5, sig) bzr 2.0.0-1 Windows Self-extracting zip 486
last downloaded 8 days ago
download icon bzr-2.0.0.tar.gz (md5, sig) bzr 2.0.0 source 3,645
last downloaded 8 days ago
Total downloads: 14,881

Release notes 

This release of Bazaar makes the 2a (previously 'brisbane-core') format
the default when new branches or repositories are created. This format is
substantially smaller and faster for many operations. Most of the work in
this release focuses on bug fixes and stabilization, covering both 2a and
previous formats. (See the Upgrade Guide for information on migrating
existing projects.)

This release also improves the documentation content and presentation,
including adding Windows HtmlHelp manuals.

The Bazaar team decided that 2.0 will be a long-term supported release,
with bugfix-only 2.0.x releases based on it, continuing for at least six
months or until the following stable release.

Changelog 

View the full changelog

bzr 2.0.0
#########

:2.0.0: 2009-09-22
:Codename: Instant Karma

This release of Bazaar makes the 2a (previously 'brisbane-core') format
the default when new branches or repositories are created. This format is
substantially smaller and faster for many operations. Most of the work in
this release focuses on bug fixes and stabilization, covering both 2a and
previous formats. (See the Upgrade Guide for information on migrating
existing projects.)

This release also improves the documentation content and presentation,
including adding Windows HtmlHelp manuals.

The Bazaar team decided that 2.0 will be a long-term supported release,
with bugfix-only 2.0.x releases based on it, continuing for at least six
months or until the following stable release.

Changes from 2.0.0rc2 to final
******************************

* Officially branded as 2.0.0 rather than 2.0 to clarify between things
  that "want to happen on the 2.0.x stable series" versus things that want
  to "land in 2.0.0". (Changes how bzrlib._format_version_tuple() handles
  micro = 0.) (John Arbash Meinel)

bzr 2.0.0rc2
############

:2.0.0rc2: 2009-09-10

New Features
************

* Added post_commit hook for mutable trees. This allows the keywords
  plugin to expand keywords on files changed by the commit.
  (Ian Clatworthy, #408841)

Bug Fixes
*********

* Bazaar's native protocol code now correctly handles EINTR, which most
  noticeably occurs if you break in to the debugger while connected to a
  bzr+ssh server. You can now can continue from the debugger (by typing
  'c') and the process continues. However, note that pressing C-\ in the
  shell may still kill the SSH process, which is bug 162509, so you must
  sent a signal to the bzr process specifically, for example by typing
  ``kill -QUIT PID`` in another shell. (Martin Pool, #341535)

* ``bzr check`` in pack-0.92, 1.6 and 1.9 format repositories will no
  longer report incorrect errors about ``Missing inventory ('TREE_ROOT', ...)``
  (Robert Collins, #416732)

* ``bzr info -v`` on a 2a format still claimed that it was a "Development
  format" (John Arbash Meinel, #424392)

* ``bzr log stacked-branch`` shows the full log including
  revisions that are in the fallback repository. (Regressed in 2.0rc1).
  (John Arbash Meinel, #419241)

* Clearer message when Bazaar runs out of memory, instead of a ``MemoryError``
  traceback. (Martin Pool, #109115)

* Conversion to 2a will create a single pack for all the new revisions (as
  long as it ran without interruption). This improves both ``bzr upgrade``
  and ``bzr pull`` or ``bzr merge`` from local branches in older formats.
  The autopack logic that occurs every 100 revisions during local
  conversions was not returning that pack's identifier, which resulted in
  the partial packs created during the conversion not being consolidated
  at the end of the conversion process. (Robert Collins, #423818)

* Fetches from 2a to 2a are now again requested in 'groupcompress' order.
  Groups that are seen as 'underutilized' will be repacked on-the-fly.
  This means that when the source is fully packed, there is minimal
  overhead during the fetch, but if the source is poorly packed the result
  is a fairly well packed repository (not as good as 'bzr pack' but
  good-enough.) (Robert Collins, John Arbash Meinel, #402652)

* Fix a potential segmentation fault when doing 'log' of a branch that had
  ghosts in its mainline. (Evaluating None as a tuple is bad.)
  (John Arbash Meinel, #419241)

* Fix a segmentation fault when computing the ``merge_sort`` of a graph
  that has a ghost in the mainline ancestry.
  (John Arbash Meinel, #419241)

* ``groupcompress`` sort order is now more stable, rather than relying on
  ``topo_sort`` ordering. The implementation is now
  ``KnownGraph.gc_sort``. (John Arbash Meinel)

* Local data conversion will generate correct deltas. This is a critical
  bugfix vs 2.0rc1, and all 2.0rc1 users should upgrade to 2.0rc2 before
  converting repositories. (Robert Collins, #422849)

* Network streams now decode adjacent records of the same type into a
  single stream, reducing layering churn. (Robert Collins)

* Prevent some kinds of incomplete data from being committed to a 2a
  repository, such as revisions without inventories, a missing chk_bytes
  record for an inventory, or a missing text referenced by an inventory.
  (Andrew Bennetts, #423506, #406687)

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

* Fix assertion error about "_remember_remote_is_before" when pushing to
  older smart servers.
  (Andrew Bennetts, #418931)

* Help on hooks no longer says 'Not deprecated' for hooks that are
  currently supported. (Ian Clatworthy, #422415)

* PDF and CHM (Windows HtmlHelp) formats are now supported for the
  user documentation. The HTML documentation is better broken up into
  topics. (Ian Clatworthy)

* The developer and foreign language documents are now separated
  out so that searching in the HTML and CHM files produces more
  useful results. (Ian Clatworthy)

* The main table of contents now provides links to the new Migration Docs
  and Plugins Guide. (Ian Clatworthy)

bzr 2.0.0rc1
############

:Codename: no worries
:2.0.0rc1: 2009-08-26

Compatibility Breaks
********************

* The default format for bzr is now ``2a``. This format brings many
  significant performance and size improvements. bzr can pull from
  any existing repository into a ``2a`` one, but can only transfer
  from ``2a`` into ``rich-root`` repositories. The Upgrade guide
  has more information about this change. (Robert Collins)

* On Windows auto-detection of Putty's plink.exe is disabled.
  Default SSH client for Windows is paramiko. User still can force
  usage of plink if explicitly set environment variable BZR_SSH=plink.
  (#414743, Alexander Belchenko)

New Features
************

* ``bzr branch --switch`` can now switch the checkout in the current directory
  to the newly created branch. (Lukáš Lalinský)

Bug Fixes
*********

* Fetches were being requested in 'groupcompress' order, but weren't
  recombining the groups. Thus they would 'fragment' to get the correct
  order, but not 'recombine' to actually benefit from it. Until we get
  recombining to work, switching to 'unordered' fetches avoids the
  fragmentation. (John Arbash Meinel, #402645)

* Fix a pycurl related test failure on karmic by recognizing an error
  raised by newer versions of pycurl.
  (Vincent Ladeuil, #306264)

* Fix a test failure on karmic by making a locale test more robust.
  (Vincent Ladeuil, #413514)

* Fix IndexError printing CannotBindAddress errors.
  (Martin Pool, #286871)

* Fix "Revision ... not present" errors when upgrading stacked branches,
  or when doing fetches from a stacked source to a stacked target.
  (Andrew Bennetts, #399140)

* ``bzr branch`` of 2a repositories over HTTP is much faster. bzr now
  batches together small fetches from 2a repositories, rather than
  fetching only a few hundred bytes at a time.
  (Andrew Bennetts, #402657)

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

* A better description of the platform is shown in crash tracebacks, ``bzr
  --version`` and ``bzr selftest``.
  (Martin Pool, #409137)

* bzr can now (again) capture crash data through the apport library,
  so that a single human-readable file can be attached to bug reports.
  This can be disabled by using ``-Dno_apport`` on the command line, or by
  putting ``no_apport`` into the ``debug_flags`` section of
  ``bazaar.conf``.
  (Martin Pool, Robert Collins, #389328)

* ``bzr push`` locally on windows will no longer give a locking error with
  dirstate based formats. (Robert Collins)

* ``bzr shelve`` and ``bzr unshelve`` now work on windows.
  (Robert Collins, #305006)

* Commit of specific files no longer prevents using the the iter_changes
  codepath. On 2a repositories, commit of specific files should now be as
  fast, or slightly faster, than a full commit. (Robert Collins)

* The internal core code that handles specific file operations like
  ``bzr st FILENAME`` or ``bzr commit FILENAME`` has been changed to
  include the parent directories if they have altered, and when a
  directory stops being a directory its children are always included. This
  fixes a number of causes for ``InconsistentDelta`` errors, and permits
  faster commit of specific paths. (Robert Collins, #347649)

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

* New developer documentation for content filtering.
  (Martin Pool)

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

* ``bzrlib.shelf_ui`` has had the ``from_args`` convenience methods of its
  classes changed to manage lock lifetime of the trees they open in a way
  consistent with reader-exclusive locks. (Robert Collins, #305006)

Internals
*********

Testing
*******

0 blueprints and 16 bugs targeted

Bug report Importance Assignee Status
430179 #430179 windows 2.0rc2 installer has a "Bazaar Explorer" shortcut on the desktop that does nothing 2 Critical   3 Invalid
402652 #402652 smart fetch for --2a does not opportunistically combine groups 2 Critical   10 Fix Released
406687 #406687 insert_stream doesn't check references are satisfied 2 Critical Andrew Bennetts  10 Fix Released
406687 #406687 insert_stream doesn't check references are satisfied 2 Critical Andrew Bennetts  10 Fix Released
418302 #418302 groupcompress-optimal not deterministic 2 Critical John A Meinel  10 Fix Released
422849 #422849 Incorrect conversions in 2.0rc1 and bzr.dev 2 Critical   10 Fix Released
423506 #423506 commit_write_group should ensure inventories and their chk roots are present for new revisions. 2 Critical Robert Collins  10 Fix Released
432390 #432390 beta-ppa fails to build 2.0rc2 2 Critical   10 Fix Released
439141 #439141 bzr 2.0 mac osx installer (-3) not trusted 2 Critical Jean-Francois Roy  10 Fix Released
421789 #421789 Windows installer should include explorer, qbzr, chm help, etc 3 High   10 Fix Released
421789 #421789 Windows installer should include explorer, qbzr, chm help, etc 3 High Ian Clatworthy  10 Fix Released
423818 #423818 newly converted repositories are not properly packed 3 High Robert Collins  10 Fix Released
423818 #423818 newly converted repositories are not properly packed 3 High Robert Collins  10 Fix Released
424392 #424392 --2a format still claims Development format for its format description 3 High John A Meinel  10 Fix Released
174627 #174627 pulling from dirstate-with-subtree into rich-root repo surprisingly slow 4 Medium   10 Fix Released
424392 #424392 --2a format still claims Development format for its format description 1 Undecided   10 Fix Released
This milestone contains Public information
Everyone can see this information.