Bazaar 1.2

New "merge --preview" shows the diff that would be produced by the merge. Operations over bzr+ssh and bzr+http are now faster and more robust. Several bugs have been fixed.

Milestone information

Project:
Bazaar
Series:
1.2
Version:
1.2
Released:
2008-02-15  
Registrant:
Martin Pool
Release registered:
2008-02-15
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, 1 Alexander Belchenko, 3 Andrew Bennetts, 1 James Westby, 6 Martin Pool, 2 Vincent Ladeuil
Blueprints:
No blueprints are targeted to this milestone.
Bugs:
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 Bazaar-1.2-OSX10.5.dmg (md5, sig) Mac OS X 10.5 (Leopard) installer 54
last downloaded 10 weeks ago
download icon Bazaar-1.2-OSX10.4-ppc.dmg (md5, sig) Mac OS X 10.4 (ppc) installer (for Python 2.5) 36
last downloaded 10 weeks ago
download icon bzr-1.2.0.win32-py2.5.exe (md5, sig) Windows Python Installer (for Python 2.5) 133
last downloaded 10 weeks ago
download icon bzr-1.2.0.win32-py2.4.exe (md5, sig) Windows Python Installer (for Python 2.4) 131
last downloaded 10 weeks ago
download icon bzr-setup-1.2.0.exe (md5, sig) Windows Standalone Installer 265
last downloaded 10 weeks ago
download icon bzr-1.2.tar.gz (md5, sig) bzr 1.2 source tarball 47
last downloaded 10 weeks ago
Total downloads: 666

Release notes 

bzr 1.2 2008-02-15
------------------

  BUG FIXES:

    * Fix failing test in Launchpad plugin. (Martin Pool)

bzr 1.2rc1 2008-02-13
---------------------

  NOTES WHEN UPGRADING:

    * Fetching via the smart protocol may need to reconnect once during a fetch
      if the remote server is running Bazaar 1.1 or earlier, because the client
      attempts to use more efficient requests that confuse older servers. You
      may be required to re-enter a password or passphrase when this happens.
      This won't happen if the server is upgraded to Bazaar 1.2.
      (Andrew Bennetts)

  CHANGES:

    * Fetching via bzr+ssh will no longer fill ghosts by default (this is
      consistent with pack-0.92 fetching over SFTP). (Robert Collins)

    * Formatting of ``bzr plugins`` output is changed to be more human-
      friendly. Full path of plugins locations will be shown only with
      ``--verbose`` command-line option. (Alexander Belchenko)

    * ``merge`` now prefers to use the submit branch, but will fall back to
      parent branch. For many users, this has no effect. But some users who
      pull and merge on the same branch will notice a change. This change
      makes it easier to work on a branch on two different machines, pulling
      between the machines, while merging from the upstream.
      ``merge --remember`` can now be used to set the submit_branch.
      (Aaron Bentley)

  FEATURES:

    * ``merge --preview`` produces a diff of the changes merge would make,
      but does not actually perform the merge. (Aaron Bentley)

    * New smart method ``Repository.get_parent_map`` for getting revision
      parent data. This returns additional parent information topologically
      adjacent to the requested data to reduce round trip latency impacts.
      (Robert Collins)

    * New smart method, ``Repository.stream_revisions_chunked``, for fetching
      revision data that streams revision data via a chunked encoding. This
      avoids buffering large amounts of revision data on the server and on the
      client, and sends less data to the server to request the revisions.
      (Andrew Bennetts, Robert Collins, #178353)

    * The launchpad plugin now handles lp urls of the form
      ``lp://staging/``, ``lp://demo/``, ``lp://dev/`` to use the appropriate
      launchpad instance to do the resolution of the branch identities.
      This is primarily of use to Launchpad developers, but can also
      be used by other users who want to try out Launchpad as
      a branch location without messing up their public Launchpad
      account. Branches that are pushed to the staging environment
      have an expected lifetime of one day. (Tim Penhey)

  IMPROVEMENTS:

    * Creating a new branch no longer tries to read the entire revision-history
      unnecessarily over smart server operations. (Robert Collins)

    * Fetching between different repository formats with compatible models now
      takes advantage of the smart method to stream revisions. (Andrew Bennetts)

    * The ``--coverage`` option is now global, rather specific to ``bzr
      selftest``. (Andrew Bennetts)

    * The ``register-branch`` command will now use the public url of the branch
      containing the current directory, if one has been set and no explicit
      branch is provided. (Robert Collins)

    * Tweak the ``reannotate`` code path to optimize the 2-parent case.
      Speeds up ``bzr annotate`` with a pack repository by approx 3:2.
      (John Arbash Meinel)

  BUGFIXES:

    * Calculate remote path relative to the shared medium in _SmartClient. This
      is related to the problem in bug #124089. (Andrew Bennetts)

    * Cleanly handle connection errors in smart protocol version two, the same
      way as they are handled by version one. (Andrew Bennetts)

    * Clearer error when ``version-info --custom`` is used without
      ``--template`` (Lukáš Lalinský)

    * Don't raise UnavailableFeature during test setup when medusa is not
      available or tearDown is never called leading to nasty side effects.
      (#137823, Vincent Ladeuil)

    * If a plugin's test suite cannot be loaded, for example because of a syntax
      error in the tests, then ``selftest`` fails, rather than just printing
      a warning. (Martin Pool, #189771)

    * List possible values for BZR_SSH environment variable in env-variables
      help topic. (Alexander Belchenko, #181842)

    * New methods ``push_log_file`` and ``pop_log_file`` to intercept messages:
      popping the log redirection now precisely restores the previous state,
      which makes it easier to use bzr log output from other programs.
      TestCaseInTempDir no longer depends on a log redirection being established
      by the test framework, which lets bzr tests cleanly run from a normal
      unittest runner.
      (#124153, #124849, Martin Pool, Jonathan Lange)

    * ``pull --quiet`` is now more quiet, in particular a message is no longer
      printed when the remembered pull location is used. (James Westby,
      #185907)

    * ``reconfigure`` can safely be interrupted while fetching.
      (Aaron Bentley, #179316)

    * ``reconfigure`` preserves tags when converting to and from lightweight
      checkouts. (Aaron Bentley, #182040)

    * Stop polluting /tmp when running selftest.
      (Vincent Ladeuil, #123623)

    * Switch from NFKC => NFC for normalization checks. NFC allows a few
      more characters which should be considered valid.
      (John Arbash Meinel, #185458)

    * The launchpad plugin now uses the ``edge`` xmlrpc server to avoid
      interacting badly with a bug on the launchpad side. (Robert Collins)

    * Unknown hostnames when connecting to a ``bzr://`` URL no longer cause
      tracebacks. (Andrew Bennetts, #182849)

  API BREAKS:

    * Classes implementing Merge types like Merge3Merger must now accept (and
      honour) a do_merge flag in their constructor. (Aaron Bentley)

    * ``Repository.add_inventory`` and ``add_revision`` now require the caller
      to previously take a write lock (and start a write group.)
      (Martin Pool)

  TESTING:

    * selftest now accepts --load-list <file> to load a test id list. This
      speeds up running the test suite on a limited set of tests.
      (Vincent Ladeuil)

  INTERNALS:

    * Add a new method ``get_result`` to graph search objects. The resulting
      ``SearchResult`` can be used to recreate the search later, which will
      be useful in reducing network traffic. (Robert Collins)

    * Use convenience function to check whether two repository handles
      are referring to the same repository in ``Repository.get_graph``.
      (Jelmer Vernooij, #187162)

    * Fetching now passes the find_ghosts flag through to the
      ``InterRepository.missing_revision_ids`` call consistently for all
      repository types. This will enable faster missing revision discovery with
      bzr+ssh. (Robert Collins)

    * Fix error handling in Repository.insert_data_stream. (Lukas Lalinsky)

    * ``InterRepository.missing_revision_ids`` is now deprecated in favour of
      ``InterRepository.search_missing_revision_ids`` which returns a
      ``bzrlib.graph.SearchResult`` suitable for making requests from the smart
      server. (Robert Collins)

    * New error ``NoPublicBranch`` for commands that need a public branch to
      operate. (Robert Collins)

    * New method ``iter_inventories`` on Repository for access to many
      inventories. This is primarily used by the ``revision_trees`` method, as
      direct access to inventories is discouraged. (Robert Collins)

    * New method ``next_with_ghosts`` on the Graph breadth-first-search objects
      which will split out ghosts and present parents into two separate sets,
      useful for code which needs to be aware of ghosts (e.g. fetching data
      cares about ghosts during revision selection). (Robert Collins)

    * Record a timestamp against each mutter to the trace file, relative to the
      first import of bzrlib. (Andrew Bennetts)

    * ``Repository.get_data_stream`` is now deprecated in favour of
      ``Repository.get_data_stream_for_search`` which allows less network
      traffic when requesting data streams over a smart server. (Robert Collins)

    * ``RemoteBzrDir._get_tree_branch`` no longer triggers ``_ensure_real``,
      removing one round trip on many network operations. (Robert Collins)

    * Repository has a new method ``has_revisions`` which signals the presence
      of many revisions by returning a set of the revisions listed which are
      present. This can be done by index queries without reading data for parent
      revision names etc. (Robert Collins)

    * RemoteTransport's ``recommended_page_size`` method now returns 64k, like
      SFTPTransport and HttpTransportBase. (Andrew Bennetts)

Changelog 

View the full changelog

bzr 1.2 2008-02-15
------------------

  BUG FIXES:

    * Fix failing test in Launchpad plugin. (Martin Pool)

bzr 1.2rc1 2008-02-13
---------------------

  NOTES WHEN UPGRADING:

    * Fetching via the smart protocol may need to reconnect once during a fetch
      if the remote server is running Bazaar 1.1 or earlier, because the client
      attempts to use more efficient requests that confuse older servers. You
      may be required to re-enter a password or passphrase when this happens.
      This won't happen if the server is upgraded to Bazaar 1.2.
      (Andrew Bennetts)

  CHANGES:

    * Fetching via bzr+ssh will no longer fill ghosts by default (this is
      consistent with pack-0.92 fetching over SFTP). (Robert Collins)

    * Formatting of ``bzr plugins`` output is changed to be more human-
      friendly. Full path of plugins locations will be shown only with
      ``--verbose`` command-line option. (Alexander Belchenko)

    * ``merge`` now prefers to use the submit branch, but will fall back to
      parent branch. For many users, this has no effect. But some users who
      pull and merge on the same branch will notice a change. This change
      makes it easier to work on a branch on two different machines, pulling
      between the machines, while merging from the upstream.
      ``merge --remember`` can now be used to set the submit_branch.
      (Aaron Bentley)

  FEATURES:

    * ``merge --preview`` produces a diff of the changes merge would make,
      but does not actually perform the merge. (Aaron Bentley)

    * New smart method ``Repository.get_parent_map`` for getting revision
      parent data. This returns additional parent information topologically
      adjacent to the requested data to reduce round trip latency impacts.
      (Robert Collins)

    * New smart method, ``Repository.stream_revisions_chunked``, for fetching
      revision data that streams revision data via a chunked encoding. This
      avoids buffering large amounts of revision data on the server and on the
      client, and sends less data to the server to request the revisions.
      (Andrew Bennetts, Robert Collins, #178353)

    * The launchpad plugin now handles lp urls of the form
      ``lp://staging/``, ``lp://demo/``, ``lp://dev/`` to use the appropriate
      launchpad instance to do the resolution of the branch identities.
      This is primarily of use to Launchpad developers, but can also
      be used by other users who want to try out Launchpad as
      a branch location without messing up their public Launchpad
      account. Branches that are pushed to the staging environment
      have an expected lifetime of one day. (Tim Penhey)

  IMPROVEMENTS:

    * Creating a new branch no longer tries to read the entire revision-history
      unnecessarily over smart server operations. (Robert Collins)

    * Fetching between different repository formats with compatible models now
      takes advantage of the smart method to stream revisions. (Andrew Bennetts)

    * The ``--coverage`` option is now global, rather specific to ``bzr
      selftest``. (Andrew Bennetts)

    * The ``register-branch`` command will now use the public url of the branch
      containing the current directory, if one has been set and no explicit
      branch is provided. (Robert Collins)

    * Tweak the ``reannotate`` code path to optimize the 2-parent case.
      Speeds up ``bzr annotate`` with a pack repository by approx 3:2.
      (John Arbash Meinel)

  BUGFIXES:

    * Calculate remote path relative to the shared medium in _SmartClient. This
      is related to the problem in bug #124089. (Andrew Bennetts)

    * Cleanly handle connection errors in smart protocol version two, the same
      way as they are handled by version one. (Andrew Bennetts)

    * Clearer error when ``version-info --custom`` is used without
      ``--template`` (Lukáš Lalinský)

    * Don't raise UnavailableFeature during test setup when medusa is not
      available or tearDown is never called leading to nasty side effects.
      (#137823, Vincent Ladeuil)

    * If a plugin's test suite cannot be loaded, for example because of a syntax
      error in the tests, then ``selftest`` fails, rather than just printing
      a warning. (Martin Pool, #189771)

    * List possible values for BZR_SSH environment variable in env-variables
      help topic. (Alexander Belchenko, #181842)

    * New methods ``push_log_file`` and ``pop_log_file`` to intercept messages:
      popping the log redirection now precisely restores the previous state,
      which makes it easier to use bzr log output from other programs.
      TestCaseInTempDir no longer depends on a log redirection being established
      by the test framework, which lets bzr tests cleanly run from a normal
      unittest runner.
      (#124153, #124849, Martin Pool, Jonathan Lange)

    * ``pull --quiet`` is now more quiet, in particular a message is no longer
      printed when the remembered pull location is used. (James Westby,
      #185907)

    * ``reconfigure`` can safely be interrupted while fetching.
      (Aaron Bentley, #179316)

    * ``reconfigure`` preserves tags when converting to and from lightweight
      checkouts. (Aaron Bentley, #182040)

    * Stop polluting /tmp when running selftest.
      (Vincent Ladeuil, #123623)

    * Switch from NFKC => NFC for normalization checks. NFC allows a few
      more characters which should be considered valid.
      (John Arbash Meinel, #185458)

    * The launchpad plugin now uses the ``edge`` xmlrpc server to avoid
      interacting badly with a bug on the launchpad side. (Robert Collins)

    * Unknown hostnames when connecting to a ``bzr://`` URL no longer cause
      tracebacks. (Andrew Bennetts, #182849)

  API BREAKS:

    * Classes implementing Merge types like Merge3Merger must now accept (and
      honour) a do_merge flag in their constructor. (Aaron Bentley)

    * ``Repository.add_inventory`` and ``add_revision`` now require the caller
      to previously take a write lock (and start a write group.)
      (Martin Pool)

  TESTING:

    * selftest now accepts --load-list <file> to load a test id list. This
      speeds up running the test suite on a limited set of tests.
      (Vincent Ladeuil)

  INTERNALS:

    * Add a new method ``get_result`` to graph search objects. The resulting
      ``SearchResult`` can be used to recreate the search later, which will
      be useful in reducing network traffic. (Robert Collins)

    * Use convenience function to check whether two repository handles
      are referring to the same repository in ``Repository.get_graph``.
      (Jelmer Vernooij, #187162)

    * Fetching now passes the find_ghosts flag through to the
      ``InterRepository.missing_revision_ids`` call consistently for all
      repository types. This will enable faster missing revision discovery with
      bzr+ssh. (Robert Collins)

    * Fix error handling in Repository.insert_data_stream. (Lukas Lalinsky)

    * ``InterRepository.missing_revision_ids`` is now deprecated in favour of
      ``InterRepository.search_missing_revision_ids`` which returns a
      ``bzrlib.graph.SearchResult`` suitable for making requests from the smart
      server. (Robert Collins)

    * New error ``NoPublicBranch`` for commands that need a public branch to
      operate. (Robert Collins)

    * New method ``iter_inventories`` on Repository for access to many
      inventories. This is primarily used by the ``revision_trees`` method, as
      direct access to inventories is discouraged. (Robert Collins)

    * New method ``next_with_ghosts`` on the Graph breadth-first-search objects
      which will split out ghosts and present parents into two separate sets,
      useful for code which needs to be aware of ghosts (e.g. fetching data
      cares about ghosts during revision selection). (Robert Collins)

    * Record a timestamp against each mutter to the trace file, relative to the
      first import of bzrlib. (Andrew Bennetts)

    * ``Repository.get_data_stream`` is now deprecated in favour of
      ``Repository.get_data_stream_for_search`` which allows less network
      traffic when requesting data streams over a smart server. (Robert Collins)

    * ``RemoteBzrDir._get_tree_branch`` no longer triggers ``_ensure_real``,
      removing one round trip on many network operations. (Robert Collins)

    * Repository has a new method ``has_revisions`` which signals the presence
      of many revisions by returning a set of the revisions listed which are
      present. This can be done by index queries without reading data for parent
      revision names etc. (Robert Collins)

    * RemoteTransport's ``recommended_page_size`` method now returns 64k, like
      SFTPTransport and HttpTransportBase. (Andrew Bennetts)

0 blueprints and 15 bugs targeted

Bug report Importance Assignee Status
185394 #185394 Generic bzr smart protocol error: bad request '232' when connecting to bzr 1.0 smart server 2 Critical Andrew Bennetts  10 Fix Released
187169 #187169 Partial commit with mv and rm under breaks dirstate 2 Critical Martin Pool  10 Fix Released
189771 #189771 launchpad plugin tests broken 2 Critical Martin Pool  10 Fix Released
189915 #189915 bzr 1.1 dapper PPA debs FTBFS 2 Critical Martin Pool  10 Fix Released
178353 #178353 Memory error on branch inside _deserialise_stream 3 High Andrew Bennetts  10 Fix Released
204025 #204025 Concurrent updates of separate threads in a shared repository fails 3 High   10 Fix Released
123363 #123363 selftest pollutes /tmp 4 Medium Vincent Ladeuil  10 Fix Released
124153 #124153 TestCaseInTempDir emits warning during normal use 4 Medium Martin Pool  10 Fix Released
124849 #124849 disable_test_log(enable_test_log(to_file)) should be a noop, but isn't 4 Medium Martin Pool  10 Fix Released
137823 #137823 bzr selftest failures and hanging unit tests? 4 Medium Vincent Ladeuil  10 Fix Released
180208 #180208 AttributeError in pack_repo _abort_write_group masks real exception (commit failed because of lack of disk space but with unclear message) 4 Medium Martin Pool  10 Fix Released
182040 #182040 reconfigure from lightweight checkout to checkout don't pull tags from master branch 4 Medium Aaron Bentley  10 Fix Released
182849 #182849 bzr bind to unknown host causes internal error 4 Medium Andrew Bennetts  10 Fix Released
181842 #181842 BZR_SSH environment variable is not explained in docs 5 Low Alexander Belchenko  10 Fix Released
185907 #185907 "bzr pull --quiet" should not say "Using saved location ..." 6 Wishlist James Westby  10 Fix Released
This milestone contains Public information
Everyone can see this information.