Bazaar 1.7 Released!

John Arbash Meinel john at arbash-meinel.com
Tue Sep 23 23:14:25 BST 2008


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Thanks to everyone's support, 1.7 final has now arrived.

This isn't quite as spectacular a release as the 1.6, but it is *almost* on
time. :) We slipped a week, but at least we didn't slip a month (or more).

This release includes many bug fixes and a few performance and feature
improvements.  "bzr rm" will now scan for missing files and remove them,
similar to ``bzr add`` with unknown files. A bit more polish has been applied
to the stacking code. The b-tree indexing code has been brought in, with an
eye on using it in a future repository format.

The source code and installers are available (or will be available soon) from:
https://launchpad.net/bzr/1.7/1.7/

Ubuntu packages will be available from the bzr ppa:
https://launchpad.net/~bzr/+archive

John
=:->


Release Notes for all changes in bzr 1.7:

bzr 1.7 2008-09-23
- ------------------

This release includes many bug fixes and a few performance and feature
improvements.  ``bzr rm`` will now scan for missing files and remove them,
like how ``bzr add`` scans for unknown files and adds them. A bit more
polish has been applied to the stacking code. The b-tree indexing code has
been brought in, with an eye on using it in a future repository format.
There are only minor installer changes since bzr-1.7rc2.

  FEATURES

    * Some small updates to the win32 installer. Include localization
      files found in plugins, and include the builtin distutils as part of
      packaging qbzr. (Mark Hammond)


bzr 1.7rc2 2008-09-17
- ---------------------

A few bug fixes from 1.7rc1. The biggest change is a new
``RemoteBranch.get_stacked_on_url`` rpc. This allows clients that are
trying to access a Stacked branch over the smart protocol, to properly
connect to the stacked-on location.

  BUG FIXES:

    * Branching from a shared repository on a smart server into a new
      repository now preserves the repository format.
      (Andrew Bennetts, #269214)

   * Branching from a stacked branch via ``bzr+ssh`` can properly connect
     to the stacked-on branch.  (Martin Pool, #261315)

    * ``bzr init`` no longer re-opens the BzrDir multiple times.
      (Vincent Ladeuil)

    * Fix '_in_buffer' AttributeError when using the -Dhpss debug flag.
      (Andrew Bennetts)


bzr 1.7rc1 2008-09-09
- ---------------------

This release candidate for bzr 1.7 has several bug fixes and a few
performance and feature improvements.  ``bzr rm`` will now scan for
missing files and remove them, like how ``bzr add`` scans for unknown
files and adds them. A bit more polish has been applied to the stacking
code. The b-tree indexing code has been brought in, with an eye on using
it in a future repository format.


  CHANGES:

    * ``bzr export`` can now export a subdirectory of a project.
      (Robert Collins)

    * ``bzr rm`` will now scan for files that are missing and remove just
      them automatically, much as ``bzr add`` scans for new files that
      are not ignored and adds them automatically. (Robert Collins)

  FEATURES

    * Support for GSSAPI authentication when using FTP as documented in
      RFC2228. (Jelmer Vernooij, #49623)

  IMPROVEMENTS:

    * A url like ``log+file:///tmp`` will log all access to that Transport
      to ``.bzr.log``, which may help in debugging or profiling.
      (Martin Pool)

    * ``bzr branch`` and ``bzr push`` use the default stacking policy if the
      branch format supports it. (Aaron Bentley)

    * ``bzr init`` and ``bzr init-repo`` will now print out the same as
      ``bzr info`` if it completed successfully.
      (Marius Kruger)

    * ``bzr uncommit`` logs the old tip revision id, and displays how to
      restore the branch to that tip using ``bzr pull``.  This allows you
      to recover if you realize you uncommitted the wrong thing.
      (John Arbash Meinel)

    * Fix problems in accessing stacked repositories over ``bzr://``.
      (Martin Pool, #261315)

    * ``SFTPTransport.readv()`` was accidentally using ``list += string``,
      which 'works', but adds each character separately to the list,
      rather than using ``list.append(string)``. Fixing this makes the
      SFTP transport a little bit faster (~20%) and use a bit less memory.
      (John Arbash Meinel)

    * When reading index files, if we happen to read the whole file in a
      single request treat it as a ``_buffer_all`` request. This happens
      most often on small indexes over remote transports, where we default
      to reading 64kB. It saves a round trip for each small index during
      fetch operations. Also, if we have read more than 50% of an index
      file, trigger a ``_buffer_all`` on the next request. This works
      around some inefficiencies because reads don't fall neatly on page
      boundaries, so we would ignore those bytes, but request them again
      later. This could trigger a total read size of more than the whole
      file. (John Arbash Meinel)

  BUG FIXES:

    * ``bzr rm`` is now aliased to ``bzr del`` for the convenience of svn
      users. (Robert Collins, #205416)

    * Catch the infamous "select/poll returned error" which occurs when
      pycurl try to send a body request to an HTTP/1.0 server which has
      already refused to handle the request. (Vincent Ladeuil, #225020)

    * Fix ``ObjectNotLocked`` errors when using various commands
      (including ``bzr cat`` and ``bzr annotate``) in combination with a
      smart server URL.  (Andrew Bennetts, #237067)

    * ``FTPTransport.stat()`` would return ``0000`` as the permission bits
      for the containing ``.bzr/`` directory (it does not implement
      permissions). This would cause us to set all subdirectories to
      ``0700`` and files to ``0600`` rather than leaving them unmodified.
      Now we ignore ``0000`` as the permissions and assume they are
      invalid. (John Arbash Meinel, #259855)

    * Merging from a previously joined branch will no longer cause
      a traceback. (Jelmer Vernooij, #203376)

    * Pack operations on windows network shares will work even with large
      files. (Robert Collins, #255656)

    * Running ``bzr st PATH_TO_TREE`` will no longer suppress merge
      status. Status is also about 7% faster on mozilla sized trees
      when the path to the root of the tree has been given. Users of
      the internal ``show_tree_status`` function should be aware that
      the show_pending flag is now authoritative for showing pending
      merges, as it was originally. (Robert Collins, #225204)

    * Set valid default _param_name for Option so that ListOption can embed
      '-' in names. (Vincent Ladeuil, #263249)

    * Show proper error rather than traceback when an unknown revision
      id is specified to ``bzr cat-revision``. (Jelmer Vernooij, #175569)

    * Trailing text in the dirstate file could cause the C dirstate parser
      to try to allocate an invalid amount of memory. We now properly
      check and test for parsing a dirstate with invalid trailing data.
      (John Arbash Meinel, #186014)

    * Unexpected error responses from a smart server no longer cause the
      client to traceback.  (Andrew Bennetts, #263527)

    * Use a Windows api function to get a Unicode host name, rather than
      assuming the host name is ascii.
      (Mark Hammond, John Arbash Meinel, #256550)

    * ``WorkingTree4`` trees will now correctly report missing-and-new
      paths in the output of ``iter_changes``. (Robert Collins)

  DOCUMENTATION:

    * Updated developer documentation.  (Martin Pool)

  API CHANGES:

    * Exporters now take 4 parameters. (Robert Collins)

    * ``Tree.iter_changes`` will now return False for the content change
      field when a file is missing in the basis tree and not present in
      the target tree. Previously it returned True unconditionally.
      (Robert Collins)

    * The deprecated ``Branch.abspath`` and unimplemented
      ``Branch.rename_one`` and ``Branch.move`` were removed. (Jelmer Vernooij)

    * BzrDir.clone_on_transport implementations must now accept a stacked_on
      parameter.  (Aaron Bentley)

    * BzrDir.cloning_metadir implementations must now take a require_stacking
      parameter.  (Aaron Bentley)

  TESTING:

    * ``addCleanup`` now takes ``*arguments`` and ``**keyword_arguments``
      which are then passed to the cleanup callable as it is run. In
      addition, addCleanup no longer requires that the callables passed to
      it be unique. (Jonathan Lange)

    * Fix some tests that fail on Windows because files are deleted while
      still in use.
      (Mark Hammond)

    * ``selftest``'s ``--starting-with`` option can now use predefined
      prefixes so that one can say ``bzr selftest -s bp.loom`` instead of
      ``bzr selftest -s bzrlib.plugins.loom``. (Vincent Ladeuil)

    * ``selftest``'s ``--starting-with`` option now accepts multiple values.
      (Vincent Ladeuil)

  INTERNALS:

    * A new plugin interface, ``bzrlib.log.log_adapters``, has been added.
      This allows dynamic log output filtering by plugins.
      (Robert Collins)

    * ``bzrlib.btree_index`` is now available, providing a b-tree index
      layer. The design is memory conservative (limited memory cache),
      faster to seek (approx 100 nodes per page, gives 100-way fan out),
      and stores compressed pages allowing more keys per page.
      (Robert Collins, John Arbash Meinel)

    * ``bzrlib.diff.DiffTree.show_diff`` now skips changes where the kind
      is unknown in both source and target.
      (Robert Collins, Aaron Bentley)

    * ``GraphIndexBuilder.add_node`` and ``BTreeBuilder`` have been
      streamlined a bit. This should make creating large indexes faster.
      (In benchmarking, it now takes less time to create a BTree index than
      it takes to read the GraphIndex one.) (John Arbash Meinel)

    * Mail clients for `bzr send` are now listed in a registry.  This
      allows plugins to add new clients by registering them with
      ``bzrlib.mail_client.mail_client_registry``.  All of the built-in
      clients now use this mechanism.  (Neil Martinsen-Burrell)

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFI2WpBJdeBCYSNAAMRAhxWAKDPnMrOG/T6fJ/4C9EEM7vly+LDpgCgjfJn
+qZZcdh2gV04aR0qDRvU0lY=
=dD5K
-----END PGP SIGNATURE-----



More information about the bazaar-announce mailing list