<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Bazaar Release Notes — Bazaar 2.7.0 documentation</title> <link rel="stylesheet" href="../_static/classic.css" type="text/css" /> <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> <script type="text/javascript"> var DOCUMENTATION_OPTIONS = { URL_ROOT: '../', VERSION: '2.7.0', COLLAPSE_INDEX: false, FILE_SUFFIX: '.html', HAS_SOURCE: true }; </script> <script type="text/javascript" src="../_static/jquery.js"></script> <script type="text/javascript" src="../_static/underscore.js"></script> <script type="text/javascript" src="../_static/doctools.js"></script> <link rel="shortcut icon" href="../_static/bzr.ico"/> <link rel="search" title="Search" href="../search.html" /> <link rel="top" title="Bazaar 2.7.0 documentation" href="../index.html" /> <link rel="up" title="Bazaar Release Notes" href="index.html" /> <link rel="next" title="Bazaar Release Notes" href="bzr-1.15.html" /> <link rel="prev" title="Bazaar Release Notes" href="bzr-1.17.html" /> </head> <body role="document"> <div class="related" role="navigation" aria-label="related navigation"> <h3>Navigation</h3> <ul> <li class="right" style="margin-right: 10px"> <a href="bzr-1.15.html" title="Bazaar Release Notes" accesskey="N">next</a></li> <li class="right" > <a href="bzr-1.17.html" title="Bazaar Release Notes" accesskey="P">previous</a> |</li> <li><a href="http://bazaar.canonical.com/"> <img src="../_static/bzr icon 16.png" /> Home</a> | </li> <a href="http://doc.bazaar.canonical.com/en/">Documentation</a> | </li> <li class="nav-item nav-item-0"><a href="../index.html">Table of Contents (2.7.0)</a> »</li> <li class="nav-item nav-item-1"><a href="index.html" accesskey="U">Bazaar Release Notes</a> »</li> </ul> </div> <div class="document"> <div class="documentwrapper"> <div class="bodywrapper"> <div class="body" role="main"> <div class="section" id="bazaar-release-notes"> <h1>Bazaar Release Notes<a class="headerlink" href="#bazaar-release-notes" title="Permalink to this headline">¶</a></h1> <div class="toctree-wrapper compound"> </div> <div class="section" id="bzr-1-16-1"> <h2>bzr 1.16.1<a class="headerlink" href="#bzr-1-16-1" title="Permalink to this headline">¶</a></h2> <table class="docutils field-list" frame="void" rules="none"> <col class="field-name" /> <col class="field-body" /> <tbody valign="top"> <tr class="field-odd field"><th class="field-name">Released:</th><td class="field-body">2009-06-26</td> </tr> </tbody> </table> <p>End user testing of the 2a format revealed two serious bugs. The first, #365615, caused bzr to raise AbsentContentFactory errors when autopacking. This meant that commits or pushes to 2a-format repositories failed intermittently.</p> <p>The second bug, #390563, caused the smart server to raise AbsentContentFactory when streaming 2a stacked 2a-format branches. This particularly affected branches stored on Launchpad in the 2a format.</p> <p>Both of these bugs cause command failures only, neither of them cause data corruption or data loss. And, of course, both of these bugs are now fixed.</p> <div class="section" id="bug-fixes"> <h3>Bug Fixes<a class="headerlink" href="#bug-fixes" title="Permalink to this headline">¶</a></h3> <ul class="simple"> <li>We now properly request a more minimal set of file texts when fetching multiple revisions. (Robert Collins, John Arbash Meinel, #390563)</li> <li>Repositories using CHK pages (which includes the new 2a format) will no longer error during commit or push operations when an autopack operation is triggered. (Robert Collins, #365615)</li> <li><code class="docutils literal"><span class="pre">chk_map.iter_interesting_nodes</span></code> now properly uses the <em>intersection</em> of referenced nodes rather than the <em>union</em> to determine what uninteresting pages we still need to look at. Prior to this, incrementally pushing to stacked branch would push the minimal data, but fetching everything would request extra texts. There are some unhandled cases wrt trees of different depths, but this fixes the common cases. (Robert Collins, John Arbash Meinel, #390563)</li> <li><code class="docutils literal"><span class="pre">GroupCompress</span></code> repositories now take advantage of the pack hints parameter to permit cross-format fetching to incrementally pack the converted data. (Robert Collins)</li> <li><code class="docutils literal"><span class="pre">Repository.commit_write_group</span></code> now returns opaque data about what was committed, for passing to the <code class="docutils literal"><span class="pre">Repository.pack</span></code>. Repositories without atomic commits will still return None. (Robert Collins)</li> <li><code class="docutils literal"><span class="pre">Repository.pack</span></code> now takes an optional <code class="docutils literal"><span class="pre">hint</span></code> parameter which will support doing partial packs for repositories that can do that. (Robert Collins)</li> <li>RepositoryFormat has a new attribute ‘pack_compresses’ which is True when doing a pack operation changes the compression of content in the repository. (Robert Collins)</li> <li><code class="docutils literal"><span class="pre">StreamSink</span></code> and <code class="docutils literal"><span class="pre">InterDifferingSerialiser</span></code> will call <code class="docutils literal"><span class="pre">Repository.pack</span></code> with the hint returned by <code class="docutils literal"><span class="pre">Repository.commit_write_group</span></code> if the formats were different and the repository can increase compression by doing a pack operation. (Robert Collins, #376748)</li> </ul> </div> </div> <div class="section" id="bzr-1-16"> <h2>bzr 1.16<a class="headerlink" href="#bzr-1-16" title="Permalink to this headline">¶</a></h2> <table class="docutils field-list" frame="void" rules="none"> <col class="field-name" /> <col class="field-body" /> <tbody valign="top"> <tr class="field-odd field"><th class="field-name">Codename:</th><td class="field-body">yesterday-in-california</td> </tr> <tr class="field-even field"><th class="field-name">1.16rc1:</th><td class="field-body">2009-06-11</td> </tr> <tr class="field-odd field"><th class="field-name">1.16:</th><td class="field-body">2009-06-18</td> </tr> </tbody> </table> <p>This version of Bazaar contains the beta release of the new <code class="docutils literal"><span class="pre">2a</span></code> repository format, suitable for testing by fearless, advanced users. This format or an updated version of it will become the default format in Bazaar 2.0. Please read the NEWS entry before even thinking about upgrading to the new format.</p> <p>Also included are speedups for many operations on huge projects, a bug fix for pushing stacked new stacked branches to smart servers and the usual bevy of bug fixes and improvements.</p> <div class="section" id="changes-from-1-16rc1-to-1-16final"> <h3>Changes from 1.16rc1 to 1.16final<a class="headerlink" href="#changes-from-1-16rc1-to-1-16final" title="Permalink to this headline">¶</a></h3> <ul class="simple"> <li>Fix the nested tree flag check so that upgrade from development formats to 2a can work correctly. (Jelmer Vernooij, #388727)</li> <li>Automatic format upgrades triggered by default stacking policies on a 1.16rc1 (or later) smart server work again. (Andrew Bennetts, #388675)</li> </ul> </div> <div class="section" id="compatibility-breaks"> <h3>Compatibility Breaks<a class="headerlink" href="#compatibility-breaks" title="Permalink to this headline">¶</a></h3> <ul class="simple"> <li>Display prompt on stderr (instead of stdout) when querying users so that the output of commands can be safely redirected. (Vincent Ladeuil, #376582)</li> </ul> </div> <div class="section" id="new-features"> <h3>New Features<a class="headerlink" href="#new-features" title="Permalink to this headline">¶</a></h3> <ul> <li><p class="first">A new repository format <code class="docutils literal"><span class="pre">2a</span></code> has been added. This is a beta release of the brisbane-core (aka group-compress) project. This format now suitable for wider testing by advanced users willing to deal with some bugs. We would appreciate test reports, either positive or negative. Format 2a is substantially smaller and faster for many operations on many trees. This format or an updated version will become the default in bzr 2.0.</p> <p>This is a rich-root format, so this repository format can be used with bzr-svn. Bazaar branches in previous non-rich-root formats can be converted (including by merge, push and pull) to format 2a, but not vice versa. We recommend upgrading previous development formats to 2a.</p> <p>Upgrading to this format can take considerable time because it expands and more concisely repacks the full history.</p> <p>If you use stacked branches, you must upgrade the stacked branches before the stacked-on branches. (See <<a class="reference external" href="https://bugs.launchpad.net/bugs/374735">https://bugs.launchpad.net/bugs/374735</a>>)</p> </li> <li><p class="first"><code class="docutils literal"><span class="pre">--development7-rich-root</span></code> is a new dev format, similar to <code class="docutils literal"><span class="pre">--dev6</span></code> but using a Revision serializer using bencode rather than XML. (Jelmer Vernooij, John Arbash Meinel)</p> </li> <li><p class="first">mail_client=claws now supports –body (and message body hooks). Also uses configured from address. (Barry Warsaw)</p> </li> </ul> </div> <div class="section" id="improvements"> <h3>Improvements<a class="headerlink" href="#improvements" title="Permalink to this headline">¶</a></h3> <ul> <li><p class="first"><code class="docutils literal"><span class="pre">--development6-rich-root</span></code> can now stack. (Modulo some smart-server bugs with stacking and non default formats.) (John Arbash Meinel, #373455)</p> </li> <li><p class="first"><code class="docutils literal"><span class="pre">--development6-rich-root</span></code> delays generating a delta index for the first object inserted into a group. This has a beneficial impact on <code class="docutils literal"><span class="pre">bzr</span> <span class="pre">commit</span></code> since each committed texts goes to its own group. For committing a 90MB file, it drops peak memory by about 200MB, and speeds up commit from 7s => 4s. (John Arbash Meinel)</p> </li> <li><p class="first">Numerous operations are now faster for huge projects, i.e. those with a large number of files and/or a large number of revisions, particularly when the latest development format is used. These operations (and improvements on OpenOffice.org) include:</p> <ul class="simple"> <li>branch in a shared repository (2X faster)</li> <li>branch –no-tree (100X faster)</li> <li>diff (2X faster)</li> <li>tags (70X faster)</li> </ul> <p>(Ian Clatworthy)</p> </li> <li><p class="first">Pyrex version of <code class="docutils literal"><span class="pre">bencode</span></code> support. This provides optimized support for both encoding and decoding, and is now found at <code class="docutils literal"><span class="pre">bzrlib.bencode</span></code>. <code class="docutils literal"><span class="pre">bzrlib.utils.bencode</span></code> is now deprecated. (Alexander Belchenko, Jelmer Vernooij, John Arbash Meinel)</p> </li> </ul> </div> <div class="section" id="id1"> <h3>Bug Fixes<a class="headerlink" href="#id1" title="Permalink to this headline">¶</a></h3> <ul class="simple"> <li>Bazaar can now pass attachment files to the mutt email client. (Edwin Grubbs, #384158)</li> <li>Better message in <code class="docutils literal"><span class="pre">bzr</span> <span class="pre">add</span></code> output suggesting using <code class="docutils literal"><span class="pre">bzr</span> <span class="pre">ignored</span></code> to see which files can also be added. (Jason Spashett, #76616)</li> <li><code class="docutils literal"><span class="pre">bzr</span> <span class="pre">pull</span> <span class="pre">-r</span> <span class="pre">123</span></code> from a stacked branch on a smart server no longer fails. Also, the <code class="docutils literal"><span class="pre">Branch.revision_history()</span></code> API now works in the same situation. (Andrew Bennetts, #380314)</li> <li><code class="docutils literal"><span class="pre">bzr</span> <span class="pre">serve</span></code> on Windows no longer displays a traceback simply because a TCP client disconnected. (Andrew Bennetts)</li> <li>Clarify the rules for locking and fallback repositories. Fix bugs in how <code class="docutils literal"><span class="pre">RemoteRepository</span></code> was handling fallbacks along with the <code class="docutils literal"><span class="pre">_real_repository</span></code>. (Andrew Bennetts, John Arbash Meinel, #375496)</li> <li>Fix a small bug with fetching revisions w/ ghosts into a new stacked branch. Not often triggered, because it required ghosts to be part of the fetched revisions, not in the stacked-on ancestry. (John Arbash Meinel)</li> <li>Fix status and commit to work with content filtered trees, addressing numerous bad bugs with line-ending support. (Ian Clatworthy, #362030)</li> <li>Fix problem of “directory not empty” when contending for a lock over SFTP. (Martin Pool, #340352)</li> <li>Fix rule handling so that eol is optional, not mandatory. (Ian Clatworthy, #379370)</li> <li>Pushing a new stacked branch to a 1.15 smart server was broken due to a bug in the <code class="docutils literal"><span class="pre">BzrDirFormat.initialize_ex</span></code> smart verb. This is fixed in 1.16, but required changes to the network protocol, so the <code class="docutils literal"><span class="pre">BzrDirFormat.initialize_ex</span></code> verb has been removed and replaced with a corrected <code class="docutils literal"><span class="pre">BzrDirFormat.initialize_ex_1.16</span></code> verb. 1.15 clients will still work with a 1.16 server as they will fallback to slower (and bug-free) methods. (Jonathan Lange, Robert Collins, Andrew Bennetts, #385132)</li> <li>Reconcile can now deal with text revisions that originated in revisions that are ghosts. (Jelmer Vernooij, #336749)</li> <li>Support cloning of branches with ghosts in the left hand side history. (Jelmer Vernooij, #248540)</li> <li>The ‘’bzr diff’’ now catches OSError from osutils.rmtree and logs a helpful message to the trace file, unless the temp directory really was removed (which would be very strange). Since the diff operation has succeeded from the user’s perspective, no output is written to stderr or stdout. (Maritza Mendez, #363837)</li> <li>Translate errors received from a smart server in response to a <code class="docutils literal"><span class="pre">BzrDirFormat.initialize</span></code> or <code class="docutils literal"><span class="pre">BzrDirFormat.initialize_ex</span></code> request. This was causing tracebacks even for mundane errors like <code class="docutils literal"><span class="pre">PermissionDenied</span></code>. (Andrew Bennetts, #381329)</li> </ul> </div> <div class="section" id="documentation"> <h3>Documentation<a class="headerlink" href="#documentation" title="Permalink to this headline">¶</a></h3> <ul class="simple"> <li>Added directory structure and started translation of docs in Russian. (Alexey Shtokalo, Alexander Iljin, Alexander Belchenko, Dmitry Vasiliev, Volodymyr Kotulskyi)</li> </ul> </div> <div class="section" id="api-changes"> <h3>API Changes<a class="headerlink" href="#api-changes" title="Permalink to this headline">¶</a></h3> <ul class="simple"> <li>Added osutils.parent_directories(). (Ian Clatworthy)</li> <li><code class="docutils literal"><span class="pre">bzrlib.progress.ProgressBar</span></code>, <code class="docutils literal"><span class="pre">ChildProgress</span></code>, <code class="docutils literal"><span class="pre">DotsProgressBar</span></code>, <code class="docutils literal"><span class="pre">TTYProgressBar</span></code> and <code class="docutils literal"><span class="pre">child_progress</span></code> are now deprecated; use <code class="docutils literal"><span class="pre">ui_factory.nested_progress_bar</span></code> instead. (Martin Pool)</li> <li><code class="docutils literal"><span class="pre">graph.StackedParentsProvider</span></code> is now a public API, replacing <code class="docutils literal"><span class="pre">graph._StackedParentsProvider</span></code>. The api is now considered stable and ready for external users. (Gary van der Merwe)</li> <li><code class="docutils literal"><span class="pre">bzrlib.user_encoding</span></code> is deprecated in favor of <code class="docutils literal"><span class="pre">get_user_encoding</span></code>. (Alexander Belchenko)</li> <li>TreeTransformBase no longer assumes that limbo is provided via disk. DiskTreeTransform now provides disk functionality. (Aaron Bentley)</li> </ul> </div> <div class="section" id="internals"> <h3>Internals<a class="headerlink" href="#internals" title="Permalink to this headline">¶</a></h3> <ul class="simple"> <li>Remove <code class="docutils literal"><span class="pre">weave.py</span></code> script for accessing internals of old weave-format repositories. (Martin Pool)</li> </ul> </div> <div class="section" id="testing"> <h3>Testing<a class="headerlink" href="#testing" title="Permalink to this headline">¶</a></h3> <ul class="simple"> <li><code class="docutils literal"><span class="pre">make</span> <span class="pre">check</span></code> no longer repeats the test run in <code class="docutils literal"><span class="pre">LANG=C</span></code>. (Martin Pool, #386180)</li> <li>The number of cores is now correctly detected on OSX. (John Szakmeister)</li> <li>The number of cores is also detected on Solaris and win32. (Vincent Ladeuil)</li> <li>The number of cores is also detected on FreeBSD. (Matthew Fuller)</li> </ul> </div> </div> </div> </div> </div> </div> <div class="sphinxsidebar" role="navigation" aria-label="main navigation"> <div class="sphinxsidebarwrapper"> <h3><a href="../index.html">Table Of Contents</a></h3> <ul> <li><a class="reference internal" href="#">Bazaar Release Notes</a><ul> <li><a class="reference internal" href="#bzr-1-16-1">bzr 1.16.1</a><ul> <li><a class="reference internal" href="#bug-fixes">Bug Fixes</a></li> </ul> </li> <li><a class="reference internal" href="#bzr-1-16">bzr 1.16</a><ul> <li><a class="reference internal" href="#changes-from-1-16rc1-to-1-16final">Changes from 1.16rc1 to 1.16final</a></li> <li><a class="reference internal" href="#compatibility-breaks">Compatibility Breaks</a></li> <li><a class="reference internal" href="#new-features">New Features</a></li> <li><a class="reference internal" href="#improvements">Improvements</a></li> <li><a class="reference internal" href="#id1">Bug Fixes</a></li> <li><a class="reference internal" href="#documentation">Documentation</a></li> <li><a class="reference internal" href="#api-changes">API Changes</a></li> <li><a class="reference internal" href="#internals">Internals</a></li> <li><a class="reference internal" href="#testing">Testing</a></li> </ul> </li> </ul> </li> </ul> <h4>Previous topic</h4> <p class="topless"><a href="bzr-1.17.html" title="previous chapter">Bazaar Release Notes</a></p> <h4>Next topic</h4> <p class="topless"><a href="bzr-1.15.html" title="next chapter">Bazaar Release Notes</a></p> <div role="note" aria-label="source link"> <h3>This Page</h3> <ul class="this-page-menu"> <li><a href="../_sources/release-notes/bzr-1.16.txt" rel="nofollow">Show Source</a></li> </ul> </div> <div id="searchbox" style="display: none" role="search"> <h3>Quick search</h3> <form class="search" action="../search.html" method="get"> <div><input type="text" name="q" /></div> <div><input type="submit" value="Go" /></div> <input type="hidden" name="check_keywords" value="yes" /> <input type="hidden" name="area" value="default" /> </form> </div> <script type="text/javascript">$('#searchbox').show(0);</script> </div> </div> <div class="clearer"></div> </div> <div class="related" role="navigation" aria-label="related navigation"> <h3>Navigation</h3> <ul> <li class="right" style="margin-right: 10px"> <a href="bzr-1.15.html" title="Bazaar Release Notes" >next</a></li> <li class="right" > <a href="bzr-1.17.html" title="Bazaar Release Notes" >previous</a> |</li> <li><a href="http://bazaar.canonical.com/"> <img src="../_static/bzr icon 16.png" /> Home</a> | </li> <a href="http://doc.bazaar.canonical.com/en/">Documentation</a> | </li> <li class="nav-item nav-item-0"><a href="../index.html">Table of Contents (2.7.0)</a> »</li> <li class="nav-item nav-item-1"><a href="index.html" >Bazaar Release Notes</a> »</li> </ul> </div> <div class="footer" role="contentinfo"> © Copyright 2009-2011 Canonical Ltd. Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.4.9. </div> </body> </html>