Sophie

Sophie

distrib > Mageia > 7 > aarch64 > by-pkgid > 7e647d9940d31b34c253e6f71c416c4b > files > 3083

bzr-2.7.0-6.mga7.aarch64.rpm


<!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="X-UA-Compatible" content="IE=Edge" />
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Bazaar Release Notes &#8212; 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" id="documentation_options" data-url_root="../" src="../_static/documentation_options.js"></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>
    <script type="text/javascript" src="../_static/language_data.js"></script>
    
    <link rel="shortcut icon" href="../_static/bzr.ico"/>
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="Bazaar Release Notes" href="bzr-2.2.html" />
    <link rel="prev" title="Bazaar Release Notes" href="bzr-2.4.html" /> 
  </head><body>
    <div class="related" role="navigation" aria-label="related navigation">
      <h3>Navigation</h3>
      <ul>
        <li class="right" style="margin-right: 10px">
          <a href="bzr-2.2.html" title="Bazaar Release Notes"
             accesskey="N">next</a></li>
        <li class="right" >
          <a href="bzr-2.4.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>&nbsp;|&nbsp;</li>
<a href="http://doc.bazaar.canonical.com/en/">Documentation</a>&nbsp;|&nbsp;</li>

        <li class="nav-item nav-item-0"><a href="../index.html">Table of Contents (2.7.0)</a> &#187;</li>

          <li class="nav-item nav-item-1"><a href="index.html" accesskey="U">Bazaar Release Notes</a> &#187;</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-2-3-5">
<h2>bzr 2.3.5<a class="headerlink" href="#bzr-2-3-5" 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">2.3.5:</th><td class="field-body">NOT RELEASED YET</td>
</tr>
</tbody>
</table>
<div class="section" id="external-compatibility-breaks">
<h3>External Compatibility Breaks<a class="headerlink" href="#external-compatibility-breaks" title="Permalink to this headline">¶</a></h3>
</div>
<div class="section" id="new-features">
<h3>New Features<a class="headerlink" href="#new-features" title="Permalink to this headline">¶</a></h3>
</div>
<div class="section" id="improvements">
<h3>Improvements<a class="headerlink" href="#improvements" title="Permalink to this headline">¶</a></h3>
</div>
<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>Cope cleanly with buggy HTTP proxies that close the socket in the middle
of a multipart response.  (Martin Pool, #198646).</li>
<li>cStringIO is now unconditionally imported in <code class="docutils literal notranslate"><span class="pre">bzrlib.config</span></code>.
(Jelmer Vernooij, #905361)</li>
<li>Fix “Unprintable exception” error when a RetryWithNewPacks error is
displayed.  (Andrew Bennetts)</li>
</ul>
</div>
<div class="section" id="documentation">
<h3>Documentation<a class="headerlink" href="#documentation" title="Permalink to this headline">¶</a></h3>
</div>
<div class="section" id="api-changes">
<h3>API Changes<a class="headerlink" href="#api-changes" title="Permalink to this headline">¶</a></h3>
</div>
<div class="section" id="internals">
<h3>Internals<a class="headerlink" href="#internals" title="Permalink to this headline">¶</a></h3>
</div>
<div class="section" id="testing">
<h3>Testing<a class="headerlink" href="#testing" title="Permalink to this headline">¶</a></h3>
</div>
</div>
<div class="section" id="bzr-2-3-4">
<h2>bzr 2.3.4<a class="headerlink" href="#bzr-2-3-4" 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">One and counting</td>
</tr>
<tr class="field-even field"><th class="field-name">2.3.4:</th><td class="field-body">2011-07-14</td>
</tr>
</tbody>
</table>
<p>This is a bugfix release. Upgrading is recommended for all users of earlier
2.3 releases.</p>
<p>This mainly fixes bug #786980 which blocked the SRU process for Ubuntu Natty.</p>
<div class="section" id="id1">
<h3>External Compatibility Breaks<a class="headerlink" href="#id1" title="Permalink to this headline">¶</a></h3>
</div>
<div class="section" id="id2">
<h3>New Features<a class="headerlink" href="#id2" title="Permalink to this headline">¶</a></h3>
</div>
<div class="section" id="id3">
<h3>Improvements<a class="headerlink" href="#id3" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li>Tweak an RPC implementation for <code class="docutils literal notranslate"><span class="pre">Repository.get_parent_map</span></code>, it was
doing an inefficient <code class="docutils literal notranslate"><span class="pre">small_set.difference_update(large_set)</span></code> when we
can do <code class="docutils literal notranslate"><span class="pre">small_set</span> <span class="pre">=</span> <span class="pre">small_set.difference(large_set)</span></code>. This speeds up
discovery time by about 10%. (John Arbash Meinel)</li>
</ul>
</div>
<div class="section" id="id4">
<h3>Bug Fixes<a class="headerlink" href="#id4" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li>Accept some differences for <code class="docutils literal notranslate"><span class="pre">bound_location</span></code> from the config files that
were leading to a ‘ReadOnlyError: A write attempt was made in a read only
transaction’ error.  (Vincent Ladeuil, #786980)</li>
<li>Don’t fail with traceback if <cite>bzr serve</cite> is running as a service on Windows,
and there is no USERNAME, nor BZR_EMAIL or other whoami-related environment
variables set. (Alexander Belchenko, Bug #660174)</li>
</ul>
</div>
<div class="section" id="id5">
<h3>Documentation<a class="headerlink" href="#id5" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li>Updated the “Using stacked branches” section of the user guide to
describe committing to stacked branches and expanded its discussion of
pushing a stacked branch.  (Andrew Bennetts)</li>
</ul>
</div>
<div class="section" id="id6">
<h3>API Changes<a class="headerlink" href="#id6" title="Permalink to this headline">¶</a></h3>
</div>
<div class="section" id="id7">
<h3>Internals<a class="headerlink" href="#id7" title="Permalink to this headline">¶</a></h3>
</div>
<div class="section" id="id8">
<h3>Testing<a class="headerlink" href="#id8" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li>Remove the deprecation decorators for <code class="docutils literal notranslate"><span class="pre">failUnlessExists</span></code> and
<code class="docutils literal notranslate"><span class="pre">failIfExists</span></code>. The deprecation “will” occur in 2.4, not
before. Providing the wrappers is enough as far as 2.3 is concerned.
(Vincent Ladeuil #794960)</li>
</ul>
</div>
</div>
<div class="section" id="bzr-2-3-3">
<h2>bzr 2.3.3<a class="headerlink" href="#bzr-2-3-3" 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">2.3.3:</th><td class="field-body">2011-05-13</td>
</tr>
</tbody>
</table>
<p>This is a bugfix release. Upgrading is recommended for all users of earlier
2.3 releases.</p>
<p>This fixed a bug in the test suite triggered by python-2.7 deprecating some
tests helpers.</p>
<div class="section" id="id9">
<h3>Testing<a class="headerlink" href="#id9" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li>Stop using <cite>failIf</cite>, <cite>failUnless</cite>, <cite>failIfEqual</cite>, etc, that give
<cite>PendingDeprecationWarnings</cite> on Python2.7.
(Martin Pool, #760435)</li>
</ul>
</div>
</div>
<div class="section" id="bzr-2-3-2">
<h2>bzr 2.3.2<a class="headerlink" href="#bzr-2-3-2" 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">2.3.2:</th><td class="field-body">2011-05-12</td>
</tr>
</tbody>
</table>
<p>This is a bugfix release. Upgrading is recommended for all users of earlier
2.3 releases.</p>
<p>This was never released due to bug #760435 interrupting the release process by
breaking the test suite under python-2.7 on natty.</p>
<div class="section" id="id10">
<h3>External Compatibility Breaks<a class="headerlink" href="#id10" title="Permalink to this headline">¶</a></h3>
<p>None</p>
</div>
<div class="section" id="id11">
<h3>New Features<a class="headerlink" href="#id11" title="Permalink to this headline">¶</a></h3>
<p>None</p>
</div>
<div class="section" id="id12">
<h3>Improvements<a class="headerlink" href="#id12" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li>Getting all entries from <code class="docutils literal notranslate"><span class="pre">CHKInventory.iter_entries_by_dir()</span></code> has been
sped up dramatically for large trees. Iterating by dir is not the best
way to load data from a CHK inventory, so it preloads all the items in
the correct order. (With the gcc-tree, this changes it (re)reading 8GB
of CHK data, down to just 150MB.) This has noticeable affects for things
like building checkouts, etc.  (John Arbash Meinel, #737234)</li>
</ul>
</div>
<div class="section" id="id13">
<h3>Bug Fixes<a class="headerlink" href="#id13" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li>Bazaar now infers the default user email address on Unix from the local
account name plus the contents of <code class="docutils literal notranslate"><span class="pre">/etc/mailname</span></code> if that file exists.
In particular, this means that committing as root through etckeeper will
normally not require running <code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">whoami</span></code> first.
(Martin Pool, #616878)</li>
<li><code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">merge</span> <span class="pre">--preview</span> <span class="pre">--pull</span></code> should respect the <code class="docutils literal notranslate"><span class="pre">--preview</span></code> option
first, and not actually change the branch tip revision.
(John Arbash Meinel, Dennis Duchier, #760152)</li>
<li><code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">push</span></code> into a repository (that doesn’t have a branch), will no
longer copy all revisions in the repository. Only the ones in the
ancestry of the source branch, like it does in all other cases.
(John Arbash Meinel, #465517)</li>
<li>Fix <code class="docutils literal notranslate"><span class="pre">UnboundLocalError:</span> <span class="pre">local</span> <span class="pre">variable</span> <span class="pre">'lock_url'</span> <span class="pre">in</span> <span class="pre">wait_lock</span></code> error,
especially while trying to save configuration from QBzr.
(Martin Pool, #733136)</li>
<li>Fix “Unable to obtain lock” error when pushing to a bound branch if tags
had changed.  Bazaar was attempting to open and lock the master branch
twice in this case.  (Andrew Bennetts, #733350)</li>
<li>Standalone bzr.exe installation on Windows: user can put additional python
libraries into <code class="docutils literal notranslate"><span class="pre">site-packages</span></code> subdirectory of the installation directory,
this might be required for “installing” extra dependencies for some plugins.
(Alexander Belchenko, #743256)</li>
<li>When reporting a crash without apport, don’t print the full list of
plugins because it’s often too long.
(Martin Pool, #716389)</li>
</ul>
</div>
<div class="section" id="id14">
<h3>API Changes<a class="headerlink" href="#id14" title="Permalink to this headline">¶</a></h3>
<p>None.</p>
</div>
<div class="section" id="id15">
<h3>Testing<a class="headerlink" href="#id15" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li>FreeBSD8 has switched to python-2.7 which revealed a re-occurrence of a test
failure in the launchpad plugin. <code class="docutils literal notranslate"><span class="pre">xmlrpclib.py</span></code> on natty carries a patch
that is not in python-2.7 upstream and masked the issue. An additional fix
has been added in the interim
(&lt;<a class="reference external" href="http://psf.upfronthosting.co.za/roundup/tracker/issue8194">http://psf.upfronthosting.co.za/roundup/tracker/issue8194</a>&gt; should be fixed
in python &gt; 2.7.1).  (Vincent Ladeuil, #654733)</li>
</ul>
</div>
</div>
<div class="section" id="bzr-2-3-1">
<h2>bzr 2.3.1<a class="headerlink" href="#bzr-2-3-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">2.3.1:</th><td class="field-body">2011-03-10</td>
</tr>
</tbody>
</table>
<p>This is a bugfix release. Upgrading is recommended for all users of earlier
2.3 releases.</p>
<div class="section" id="id16">
<h3>Bug Fixes<a class="headerlink" href="#id16" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li>Correctly resolve text conflicts for files in subdirs.
(Vincent Ladeuil, #715058)</li>
<li>Fix “AssertionError: repository.user_url … does not match URL from
server response” when reusing a smart transport.
(Andrew Bennetts, #726584)</li>
<li>Restore proper logging of bytes transferred. We accidentally reset the
counter when commands finished before we logged the total transferred.
(John Arbash Meinel, #713258)</li>
</ul>
</div>
</div>
<div class="section" id="bzr-2-3-0">
<h2>bzr 2.3.0<a class="headerlink" href="#bzr-2-3-0" 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">2.3.0:</th><td class="field-body">2011-02-03</td>
</tr>
</tbody>
</table>
<p>This release marks the start of another long-term-stable series. From here, we
will only make bugfix releases on the 2.3 series (2.3.1, etc, and support it
until August 2012), while 2.4 will become our new development series. The 2.1
and 2.2 series will also continue to get bugfixes. (Currently 2.0 is planned
to be EOLed circa September 2011 and will receive only critical bugfixes.)</p>
<p>This is a bugfix and polish release over the 2.2 series, with a large number
of bugs fixed (&gt;130), and some performance improvements. Some features have
been enhanced including commits on stacked branches, upgrades of related
branches, shortcut URL schemes for ubuntu and debian on launchpad and better
conflict resolution.</p>
<p>Only bugfixes from other stables series have been included since 2.3b5 so all
known fixed bugs are included here.</p>
<p>Users are encouraged to upgrade from the other stable series.</p>
</div>
<div class="section" id="bzr-2-3b5">
<h2>bzr 2.3b5<a class="headerlink" href="#bzr-2-3b5" 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">2.3.b5:</th><td class="field-body">2011-01-13</td>
</tr>
</tbody>
</table>
<p>This is the fifth and <strong>last</strong> beta of the 2.3 series, leading up to a 2.3.0
release in February. Beta releases are suitable for everyday use but may cause
some incompatibilities with plugins.</p>
<p>2.3b5 includes bug fixes for committing to stacked branches, smoother upgrades
of multiple branches, compatibility with python-2.7, full test suite passing
on Ubuntu Natty and windows, less round-trips for several smart server
operations, better support text conflicts resolve actions and some more.</p>
<p>All known fixed bugs in other series (2.0, 2.1, 2.2) are also included here.</p>
<div class="section" id="id17">
<h3>External Compatibility Breaks<a class="headerlink" href="#id17" title="Permalink to this headline">¶</a></h3>
<p>(none)</p>
</div>
<div class="section" id="id18">
<h3>Improvements<a class="headerlink" href="#id18" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li>A redundant parent inventories calculation was removed from
<code class="docutils literal notranslate"><span class="pre">fetch.py</span></code>, as <code class="docutils literal notranslate"><span class="pre">Repository.insert_stream</span></code> already reports any
missing inventories.  This removes at least one network roundtrip when
pushing to a stacked branch.  (Andrew Bennetts)</li>
<li><code class="docutils literal notranslate"><span class="pre">ControlDir.sprout</span></code> no longer opens the target repository more than
once.  This avoids some unnecessary IO, and removes a network roundtrip
when doing <code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">branch</span></code> to a smart server URL.  (Andrew Bennetts)</li>
<li><code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">modified</span></code> now read-locks the working tree (and branch and
repository) just once.  (Andrew Bennetts)</li>
<li><code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">resolve</span></code> now accepts <code class="docutils literal notranslate"><span class="pre">--take-this</span></code> and <code class="docutils literal notranslate"><span class="pre">--take-other</span></code> actions
for text conflicts. This <em>replace</em> the whole file with the content
designated by the action. This will <em>ignore</em> all differences that would
have been merge cleanly otherwise. (Vincent Ladeuil, #638451)</li>
<li><code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">tags</span></code>’s “sort” argument now allows registering custom sort
methods using the <code class="docutils literal notranslate"><span class="pre">bzrlib.tag.tag_sort_methods</span></code> registry.
(Jelmer Vernooij, #701244)</li>
<li><code class="docutils literal notranslate"><span class="pre">bt.test_http</span></code> was breaking <code class="docutils literal notranslate"><span class="pre">os.environ</span></code> by erasing the values saved by
<code class="docutils literal notranslate"><span class="pre">TestCase</span></code> leading to <code class="docutils literal notranslate"><span class="pre">bt.test_import_tariff</span></code> failures.
(Vincent Ladeuil, #690563)</li>
<li><code class="docutils literal notranslate"><span class="pre">upgrade</span></code> now upgrades dependent branches when a shared repository is
specified. It also supports new options: <code class="docutils literal notranslate"><span class="pre">--dry-run</span></code> for showing what
will happen and <code class="docutils literal notranslate"><span class="pre">--clean</span></code> to remove the backup directory on successful
completion. (Ian Clatworthy, Matthew Fuller, #89830, #374734, #422450)</li>
</ul>
</div>
<div class="section" id="id19">
<h3>Bug Fixes<a class="headerlink" href="#id19" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li>Avoid leaking SSH subprocess communication socket into unrelated child
processes, which could cause bzr to hang on exit. (Max Bowsher, #696285)</li>
<li><code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">break-lock</span></code> on a corrupted lock file works correctly, rather than
raising a PermissionDenied error. We were accidentally holding open the
file we were trying to delete. (John Arbash Meinel, #659978)</li>
<li><code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">update</span></code> in a checkout of a readonly branch works again, without
trying to set the tags in the master branch. This had been broken by the
bug fix for bug #603395.  (John Arbash Meinel, #701212)</li>
<li>Per-transport tests now prefer to use <code class="docutils literal notranslate"><span class="pre">Transport.get_bytes()</span></code> rather
than <code class="docutils literal notranslate"><span class="pre">Transport.get().read()</span></code>. The SFTP code uses an async message to
close the file handle if you let the handle die from refcounting, while
it uses a synchronous message if you close it directly. This should help
prevent random test suite failures from race conditions.
(John Arbash Meinel, #681047)</li>
<li>Stop using <code class="docutils literal notranslate"><span class="pre">bzrlib.tuned_gzip.GzipFile</span></code>. It is incompatible with
python-2.7 and was only used for Knit format repositories, which haven’t
been recommended since 2007. The file itself will be removed in the next
release. (John Arbash Meinel)</li>
<li>The BZR_COLUMNS environment variable can be set to 0 to indicate no
limitation on the width of the terminal.  (Neil Martinsen-Burrell, #675652)</li>
<li>Treat WSAECONNABORTED the same as WSAECONNRESET for the purposes of
considering a smart data stream as being interrupted. This fixes a
failure in the windows test suite, that was trying to ensure we cleanly
handled a server disconnect.  (John Arbash Meinel, #581311, #686587)</li>
<li>Unshelving changes that occur in a now-unversioned directory now restore
the directory properly rather than crashing.
(John Arbash Meinel, #389674)</li>
<li>You are now able to commit directly to a stacked branch. Any needed
parent inventories will be filled in as part of the commit process.
(John Arbash Meinel, #375013)</li>
</ul>
</div>
<div class="section" id="id20">
<h3>Documentation<a class="headerlink" href="#id20" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li>Better document the rules to update the bzr freshmeat page when
doing a release. (Vincent Ladeuil, #690515)</li>
</ul>
</div>
<div class="section" id="id21">
<h3>API Changes<a class="headerlink" href="#id21" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li><code class="docutils literal notranslate"><span class="pre">Branch.sprout</span></code>, <code class="docutils literal notranslate"><span class="pre">BranchFormat.initalize</span></code> and
<code class="docutils literal notranslate"><span class="pre">ControlDir.create_branch</span></code> now take an optional <code class="docutils literal notranslate"><span class="pre">repository</span></code> keyword
argument, and <code class="docutils literal notranslate"><span class="pre">BranchFormat.open</span></code> now takes an optional
<code class="docutils literal notranslate"><span class="pre">found_repository</span></code> keyword argument.  These provide the repository
object for new branch object to use (for cases when the caller has
already opened that repository).  Implementations of these APIs will
need to be updated to accept these arguments.  (Andrew Bennetts)</li>
<li><code class="docutils literal notranslate"><span class="pre">bzrlib.tuned_gzip.GzipFile</span></code> is now deprecated and will be removed in
the bzr-2.4 series. Code that was using it can just use the python
stdlib <code class="docutils literal notranslate"><span class="pre">gzip.GzipFile</span></code>. (John Arbash Meinel)</li>
</ul>
</div>
<div class="section" id="id22">
<h3>Testing<a class="headerlink" href="#id22" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li><code class="docutils literal notranslate"><span class="pre">bzrlib.tests</span></code> defines <code class="docutils literal notranslate"><span class="pre">isolated_environ</span></code> with the definitions of all
the environment variables the tests should care about. It also defines
<code class="docutils literal notranslate"><span class="pre">override_os_environ</span></code> and <code class="docutils literal notranslate"><span class="pre">restore_os_environ</span></code> to properly implement
isolation from <code class="docutils literal notranslate"><span class="pre">os.environ</span></code> for tests. <code class="docutils literal notranslate"><span class="pre">bzrlib.tests</span></code> now defines a
<code class="docutils literal notranslate"><span class="pre">DocTestSuite</span></code> class using this facility for all <code class="docutils literal notranslate"><span class="pre">bzrlib</span></code>
doctests. (Vincent Ladeuil, #321320)</li>
<li>Catch exceptions related to bug #637821 during test cleanup to avoid
spurious failures. (Vincent Ladeuil, #686008).</li>
<li>Check sphinx compatibility for tests requiring older sphinx versions.
(Vincent Ladeuil, #688072)</li>
<li><code class="docutils literal notranslate"><span class="pre">test_onto_transport</span></code> in the Launchpad plugin can now run with Python
2.7. (Vincent Ladeuil, #654733)</li>
<li><code class="docutils literal notranslate"><span class="pre">TestCase._captureVar</span></code> and <code class="docutils literal notranslate"><span class="pre">TestCase._old_env</span></code> have been deleted due to
bug #690563. Test writers are encouraged to use <code class="docutils literal notranslate"><span class="pre">TestCase.overrideEnv</span></code>
instead. (Vincent Ladeuil)</li>
<li><code class="docutils literal notranslate"><span class="pre">TestDebuntuExpansions</span></code> was escaping the test isolation by calling the
wrong base class <code class="docutils literal notranslate"><span class="pre">setUp</span></code>. (Vincent Ladeuil, #684662)</li>
</ul>
</div>
</div>
<div class="section" id="bzr-2-3b4">
<h2>bzr 2.3b4<a class="headerlink" href="#bzr-2-3b4" 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">2.3.b4:</th><td class="field-body">2010-12-03</td>
</tr>
</tbody>
</table>
<p>This is the fourth beta of the 2.3 series, leading up to a 2.3.0 release in
February. Beta releases are suitable for everyday use but may cause some
incompatibilities with plugins.</p>
<p>2.3b4 includes bug fixes for the <code class="docutils literal notranslate"><span class="pre">config</span></code> command and conflict
resolution. More changes were made for the test scripts handling to make it
easier to add reproducing recipes to bugs.</p>
<p>It also includes bug fixes from the 2.2.2 release as well as the bug fixes
in the upcoming 2.0.7, 2.1.4 and 2.2.3 releases. This means that all known
fixed bugs at the time of this release are included.</p>
<div class="section" id="id23">
<h3>External Compatibility Breaks<a class="headerlink" href="#id23" title="Permalink to this headline">¶</a></h3>
<blockquote>
<div>(none)</div></blockquote>
</div>
<div class="section" id="id24">
<h3>Improvements<a class="headerlink" href="#id24" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li>Bazaar now caches a branch’s tags while that branch is read-locked.
This removes 1 network roundtrip from most interactions with a remote
branch.  (Andrew Bennetts)</li>
<li><code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">config</span> <span class="pre">&lt;option&gt;</span></code> will now display only the value itself so scripts
can use it to query the currently active configuration. Displaying several
options matching a given regular expression is now controlled via the
<code class="docutils literal notranslate"><span class="pre">--all</span></code> option.  (Vincent Ladeuil, bug #670251)</li>
<li><code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">resolve</span></code> now reports the number of conflicts resolved and the
number of remaining conflicts. This provides a better feedback about the
whole resolution process. (Vincent Ladeuil)</li>
<li>Read configuration files in $XDG_CONFIG_HOME/bazaar on Unix if there is
already a directory there.  (Neil Martinsen-Burrell, #195397)</li>
</ul>
</div>
<div class="section" id="id25">
<h3>Bug Fixes<a class="headerlink" href="#id25" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li>Better message if there is an error while setting ownership of
<code class="docutils literal notranslate"><span class="pre">.bazaar</span></code> directory. (Parth Malwankar, #657553)</li>
<li><code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">config</span></code> properly displays list values. (Vincent Ladeuil, #672382)</li>
<li><code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">config</span></code> will now respect option policies when displaying the value
and display the definition sections when appropriate.
(Vincent Ladeuil, #671050)</li>
<li>Don’t create commit message files in the current directory to avoid nasty
interactions with emacs (which tries to establish the status of the file
during the commit which breaks on windows). (Vincent Ladeuil, #673637)</li>
<li><code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">resolve</span> <span class="pre">--take-other</span> <span class="pre">&lt;file&gt;</span></code> will not crash anymore if <code class="docutils literal notranslate"><span class="pre">&lt;file&gt;</span></code>
is involved in a text conflict (but the conflict is still not
resolved). (Vincent Ladeuil, #646961)</li>
<li>Merge will now correctly locate a lca where there is a criss-cross merge
of a new root. (Gary van der Merwe, #588698)</li>
<li>Report error if non-ASCII command option given. (Rory Yorke, #140563)</li>
<li><code class="docutils literal notranslate"><span class="pre">tools/check-newsbug.py</span></code> is now based on <code class="docutils literal notranslate"><span class="pre">lp:hydrazine</span></code> and no longer
crashes when encountering private bugs (they are just displayed as such).
(Vincent Ladeuil, #354985)</li>
</ul>
</div>
<div class="section" id="id26">
<h3>Internals<a class="headerlink" href="#id26" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li><code class="docutils literal notranslate"><span class="pre">BranchBuilder.build_snapshot</span></code> now accepts parent_ids == [].
This can be used to create a new root in the graph. (Gary van der Merwe)</li>
<li>Old repository development formats
RepositoryFormatCHK1 and RepositoryFormatCHK2 have been removed, and so
have the corresponding metadir format options <code class="docutils literal notranslate"><span class="pre">development-rich-root</span></code>,
<code class="docutils literal notranslate"><span class="pre">development6-rich-root</span></code>, and <code class="docutils literal notranslate"><span class="pre">development7-rich-root</span></code>.</li>
</ul>
</div>
<div class="section" id="id27">
<h3>Testing<a class="headerlink" href="#id27" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li>Add a null_output_matches_anything keyword argument with default False to
bzrlib.tests.script.ScriptRunner.run_script to specify that the command
output should not be checked (as opposed to expecting an empty output).
(Neil Martinsen-Burrell, #662509)</li>
<li>Blank output section in scriptrunner tests no longer match any output.
Instead, use ‘…’ as a wildcard if you don’t care about the output.
(Martin Pool, #637830)</li>
<li>Bump minimum testtools version required to run <code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">selftest</span></code> from 0.9.2
to 0.9.5 which will allow tests that need the fixed unicode handling to be
written. (Martin [gz])</li>
<li>Introduce an <code class="docutils literal notranslate"><span class="pre">overrideEnv()</span></code> helper for tests that needs to change the
environment variables while respecting the isolation rules. Get rid of
TestCase._restoreEnvironment which is now useless.
(Vincent Ladeuil, #690563)</li>
<li>Printing selftest results to a non-UTF-8 console will now escape characters
that can’t be encoded rather than aborting the test run with an exception.
(Martin [gz], #633216)</li>
</ul>
</div>
</div>
<div class="section" id="bzr-2-3b3">
<h2>bzr 2.3b3<a class="headerlink" href="#bzr-2-3b3" 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">2.3b3:</th><td class="field-body">2010-11-05</td>
</tr>
</tbody>
</table>
<div class="section" id="id28">
<h3>External Compatibility Breaks<a class="headerlink" href="#id28" title="Permalink to this headline">¶</a></h3>
<p>(none)</p>
</div>
<div class="section" id="id29">
<h3>New Features<a class="headerlink" href="#id29" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li>Add –no-tree option to ‘bzr push’ and ‘bzr init’ for creating a
new or mirrored branch without working trees.
(Matthew Gordon, #506730)</li>
<li><code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">config</span></code> is a new command that displays the configuration options for
a given directory. It accepts a glob to match against multiple options at
once. It can also be used to set or delete a configuration option in any
configuration file. (Vincent Ladeuil)</li>
<li>New shortcut URL schemes <code class="docutils literal notranslate"><span class="pre">ubuntu:</span></code> and <code class="docutils literal notranslate"><span class="pre">debianlp:</span></code> access source
branches on Launchpad.  E.g. <code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">branch</span> <span class="pre">ubuntu:foo</span></code> gives you the source
branch for project <code class="docutils literal notranslate"><span class="pre">foo</span></code> in the current distroseries for Ubuntu while
<code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">branch</span> <span class="pre">debianlp:lenny/foo</span></code> gives you the source branch (on Launchpad)
for project <code class="docutils literal notranslate"><span class="pre">foo</span></code> in Debian Lenny.
(Barry Warsaw, #609186)</li>
<li>Provide a configuration option “default_format” that controls the
default format for new branches created with <code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">init</span></code>.
(Neil Martinsen-Burrell, #484101)</li>
</ul>
</div>
<div class="section" id="id30">
<h3>Bug Fixes<a class="headerlink" href="#id30" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li>Always set PATH in start_bzr.bat on Windows. (Matthäus G. Chajdas, #470264)</li>
<li><code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">status</span> <span class="pre">-r</span> <span class="pre">X..Y</span></code> was failing because RevisionTree didn’t implement
<code class="docutils literal notranslate"><span class="pre">get_shelf_manager</span></code>. (John Arbash Meinel, #662053)</li>
<li>Correctly add directory contents when the name was previously added as a
normal file, rather than throwing <code class="docutils literal notranslate"><span class="pre">AttributeError:</span> <span class="pre">children</span></code> during
smart_add. (Martin [gz], #251864)</li>
<li>Correctly handle the <code class="docutils literal notranslate"><span class="pre">--directory</span></code> option for all code paths of
<code class="docutils literal notranslate"><span class="pre">resolve</span></code> and <code class="docutils literal notranslate"><span class="pre">shelve</span></code>, this was previously ignored when paths were
provided as parameters. When both are provided, <code class="docutils literal notranslate"><span class="pre">--directory</span></code> becomes
the base directory for the other paths. (Vincent Ladeuil, #670851)</li>
<li>Correctly set the Content-Type  header when HTTP POSTing to comply
with stricter web frameworks. (Vincent Ladeuil, #665100)</li>
<li>Don’t force openssh to use protocol=2, since that is now the default.
(Neil Martinsen-Burrell, #561061)</li>
<li>Fix <code class="docutils literal notranslate"><span class="pre">KeyError:</span> <span class="pre">'port'</span></code> when getting the stored password for an HTTP  URL.
(Martin Pool, #654684)</li>
<li>Make <code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">tag</span> <span class="pre">--quiet</span></code> really quiet. (Neil Martinsen-Burrell, #239523)</li>
<li>Missing files (files bzr add’ed and then OS deleted) are now shown in <code class="docutils literal notranslate"><span class="pre">bzr</span>
<span class="pre">status</span></code> output. (Rory Yorke, #134168)</li>
<li><code class="docutils literal notranslate"><span class="pre">NotBranchError</span></code> no longer allows errors from calling
<code class="docutils literal notranslate"><span class="pre">bzrdir.open_repository()</span></code> to propagate.  This is unhelpful at best,
and at worst can trigger infinite loops in callers.  (Andrew Bennetts)</li>
<li>The <code class="docutils literal notranslate"><span class="pre">branch.tags.merge_to(target_branch)</span></code> API used by plugins such as
<code class="docutils literal notranslate"><span class="pre">bzr-builddeb</span></code> now propagates changes to the master branch of the
target branch (if there is one).  This makes it consistent with the
other tag APIs.  (Andrew Bennetts, #603395)</li>
<li>Windows installers no longer requires the Microsoft vcredist to be
installed. (Martin [gz], Gary van der Merwe, #632465)</li>
</ul>
</div>
<div class="section" id="id31">
<h3>Documentation<a class="headerlink" href="#id31" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li>Add documentation of the ability to edit hunks when shelving.
(Neil Martinsen-Burrell, #517660)</li>
<li>Be more specific about the meaning of revision ranges for <code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">diff</span></code>.
(Neil Martinsen-Burrell, #247282)</li>
<li>Document the comment character in the .bzrignore file, including a
workaround for ignore patterns that begin with #.
(Neil Martinsen-Burrell, #631515)</li>
</ul>
</div>
<div class="section" id="id32">
<h3>API Changes<a class="headerlink" href="#id32" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li>Add <code class="docutils literal notranslate"><span class="pre">bzrlib.pyutils</span></code> module with helper functions for some Python
tasks such as resolving a dotted name to a Python object
(<code class="docutils literal notranslate"><span class="pre">get_named_object</span></code>).  (Andrew Bennetts)</li>
<li><code class="docutils literal notranslate"><span class="pre">bzrlib.tests.ForwardingResult</span></code> no longer exists.  Use
<code class="docutils literal notranslate"><span class="pre">testtools.ExtendedToOriginalDecorator</span></code> instead.  (Andrew Bennetts)</li>
<li><code class="docutils literal notranslate"><span class="pre">known_hooks_key_to_parent_and_attribute</span></code> in <code class="docutils literal notranslate"><span class="pre">bzrlib.hooks</span></code> has been
deprecated in favour of <code class="docutils literal notranslate"><span class="pre">known_hooks.key_to_parent_and_attribute</span></code> in
the same module.  (Andrew Bennetts)</li>
</ul>
</div>
<div class="section" id="id33">
<h3>Internals<a class="headerlink" href="#id33" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li><code class="docutils literal notranslate"><span class="pre">tools/fixed-in.py</span></code> find a bug in NEWS from its number or a regexp
matching the news entry and display the corresponding release, date, fix
authors and the news entry itself. (Vincent Ladeuil)</li>
</ul>
</div>
<div class="section" id="id34">
<h3>Testing<a class="headerlink" href="#id34" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li>Blank output section in scriptrunner tests no longer match any output.
Instead, use ‘…’ as a wildcard if you don’t care about the output.
(Martin Pool, #637830)</li>
<li><code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">test-script</span> <span class="pre">script</span></code> is a new command that runs a shell-like script
from an the <code class="docutils literal notranslate"><span class="pre">script</span></code> file. (Vincent Ladeuil)</li>
<li>Fix spurious test failures on babune related to the http pipe cleanup and
get rid of some ‘bytes left on the HTTP socket’ useless log messages.
(Vincent Ladeuil, #655557)</li>
<li><code class="docutils literal notranslate"><span class="pre">bzrlib.tests.per_workingtree.TestCaseWithWorkingTree.make_branch_builder</span></code>
respects its <code class="docutils literal notranslate"><span class="pre">relpath</span></code> parameter. (Vincent Ladeuil)</li>
</ul>
</div>
</div>
<div class="section" id="bzr-2-3b2">
<h2>bzr 2.3b2<a class="headerlink" href="#bzr-2-3b2" 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">2.3b2:</th><td class="field-body">2010-10-08</td>
</tr>
</tbody>
</table>
<div class="section" id="id35">
<h3>External Compatibility Breaks<a class="headerlink" href="#id35" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li>The <code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">tags</span></code> command sorts tag names using a natural sort by
default (so tag2 sorts before tag10).  The previous default was
strictly “asciibetical”.  That behavior is still available as <code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">tags</span>
<span class="pre">--sort=alpha</span></code>. (Neil Martinsen-Burrell, #640760)</li>
<li><code class="docutils literal notranslate"><span class="pre">BzrDir.generate_backup_name</span></code> has been deprecated and replaced by a
private method. <code class="docutils literal notranslate"><span class="pre">osutils.available_backup_name</span></code> provides an extensible
replacement. This allowed the deprecation of
<code class="docutils literal notranslate"><span class="pre">bzrlib.transform.get_backup_name</span></code>,
<code class="docutils literal notranslate"><span class="pre">bzrlib.transform._get_backup_name</span></code> and
<code class="docutils literal notranslate"><span class="pre">bzrlib.transform.TreeTransformBase.has_named_child</span></code>.
(Vincent Ladeuil)</li>
</ul>
</div>
<div class="section" id="id36">
<h3>New Features<a class="headerlink" href="#id36" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li>Add <code class="docutils literal notranslate"><span class="pre">mainline</span></code> revision specifier, which selects the revision that
merged a specified revision into the mainline.  (Aaron Bentley)</li>
<li>Add <code class="docutils literal notranslate"><span class="pre">annotate</span></code> revision specifier, which selects the revision that
introduced a specified line of a file.  (Aaron Bentley)</li>
<li>Add <code class="docutils literal notranslate"><span class="pre">-Dmem_dump</span></code> debug flag, which uses meliae to dump memory to
a file upon an out of memory error.
(Karl Bielefeldt, #551391)</li>
<li><code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">status</span></code> now displays a summary of existing shelves after
the other status information. This is done using a <code class="docutils literal notranslate"><span class="pre">post_status</span></code>
hook.
(Parth Malwankar, #403687)</li>
<li>GNU lsh is now a supported lsh client; just set BZR_SSH to ‘lsh’.
Also, bzr will recognize if the ‘ssh’ comand is a symlink to lsh.
(Matthew Gordon, #374700)</li>
<li>The <code class="docutils literal notranslate"><span class="pre">pull</span></code> and <code class="docutils literal notranslate"><span class="pre">update</span></code> commands now take a <code class="docutils literal notranslate"><span class="pre">--show-base</span></code>
option that, in the case of conflicts, shows the base revision text.
(Rory Yorke,  #202374)</li>
</ul>
</div>
<div class="section" id="id37">
<h3>Improvements<a class="headerlink" href="#id37" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li><code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">break-lock</span> <span class="pre">--force</span></code> breaks the lock without prompting.  (Before
using this, make sure the process holding the lock really is dead.)
(Martin Pool, #397315)</li>
<li><code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">remove</span></code> now takes a <code class="docutils literal notranslate"><span class="pre">--no-backup</span></code> option for when you don’t want it
to backup anything, just delete it. This option used to be called <code class="docutils literal notranslate"><span class="pre">--force</span></code>
which is now deprecated.
(Marius Kruger, #400554)</li>
<li>When using the pycurl client module, Bazaar shows some of the text from
HTTP server error messages.
(Martin Pool, #656667)</li>
</ul>
</div>
<div class="section" id="id38">
<h3>Bug Fixes<a class="headerlink" href="#id38" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li>Don’t force openssh to use protocol=2, since that is now the default.
(Neil Martinsen-Burrell, #561061)</li>
<li>Fix signature of RemoteBzrDir.create_workingtree to match that of its
superclass.  (Neil Martinsen-Burrell, Martin Pool, #524627)</li>
<li>Fix traceback with python-2.7’s xmlrpclib
(Toshio Kuratomi, #612096)</li>
<li>Print junk rather than throwing a UnicodeDecodeError from <code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">version-info</span></code>
when using the rio format (with non-ascii information) on a non-utf-8
terminal.  (Andrej A Antonov, #518609)</li>
<li>Treat all IO, OS, and socket errors consistently when establishing
SSH/SFTP connections via a subprocess.  (Andrew Bennetts)</li>
<li><code class="docutils literal notranslate"><span class="pre">unshelve</span> <span class="pre">--preview</span></code> now can show diff in a non-ascii encoding.
(Andrej A Antonov, #518916)</li>
<li>Deleting a versioned directory can leave orphans: unversioned files that
were present don’t have a parent anymore. The
<code class="docutils literal notranslate"><span class="pre">bzr.transform.orphan_policy</span></code> configuration option controls the <code class="docutils literal notranslate"><span class="pre">bzr</span></code>
behaviour: <code class="docutils literal notranslate"><span class="pre">conflict</span></code> (the default) leave the orphans in place and
create a conflict for the directory, <code class="docutils literal notranslate"><span class="pre">move</span></code> create orphans named
<code class="docutils literal notranslate"><span class="pre">&lt;file&gt;.~#~</span></code> in a <code class="docutils literal notranslate"><span class="pre">bzr-orphans</span></code> directory at the root of the working
tree.  (Vincent Ladeuil, #323111)</li>
</ul>
</div>
<div class="section" id="id39">
<h3>Improvements<a class="headerlink" href="#id39" title="Permalink to this headline">¶</a></h3>
</div>
<div class="section" id="id40">
<h3>Documentation<a class="headerlink" href="#id40" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li>Correct the documentation for setting up the smart server with Apache.
(Neil Martinsen-Burrell, #311518)</li>
<li>Fix rst typos in bzrlib/help_topics/en/conflict-types.txt.
(Vincent Ladeuil, #660943)</li>
<li>Provide more detailed help on the Launchpad plugin at “bzr help
plugins/launchpad”.  (Neil Martinsen-Burrell, #589379)</li>
<li>Suggest <code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">revert</span></code> for restoring locally deleted files in help text
for <code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">update</span></code>.  (John C Barstow, #191466)</li>
</ul>
</div>
<div class="section" id="id41">
<h3>API Changes<a class="headerlink" href="#id41" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li><code class="docutils literal notranslate"><span class="pre">WorkingTree</span></code> methods <code class="docutils literal notranslate"><span class="pre">pull</span></code>, <code class="docutils literal notranslate"><span class="pre">update</span></code>, and <code class="docutils literal notranslate"><span class="pre">_update_tree</span></code>
now have an optional argument, <code class="docutils literal notranslate"><span class="pre">show_base</span></code>, which is by default
False.  This is flag is ultimately passed to <code class="docutils literal notranslate"><span class="pre">merge.merge_inner</span></code>
in each case. (Rory Yorke, #202374)</li>
</ul>
</div>
<div class="section" id="id42">
<h3>Internals<a class="headerlink" href="#id42" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li>Small change to GroupCompressBlock to work more in terms of ‘chunks’
rather than ‘content’ for its compressed storage. (John Arbash Meinel)</li>
<li>When running <code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">selftest</span> <span class="pre">--subunit</span></code> the subunit stream will no
longer include the “log” information for tests which are considered to
be ‘successes’ (success, xfail, skip, etc) (John Arbash Meinel)</li>
</ul>
</div>
<div class="section" id="id43">
<h3>Testing<a class="headerlink" href="#id43" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li>Add a new simpler way to generate multiple test variations, by setting
the <cite>scenarios</cite> attribute of a test class to a list of scenarios
descriptions, then using <cite>load_tests_apply_scenarios</cite>.  (See the testing
guide and <cite>bzrlib.tests.scenarios</cite>.) Simplify <cite>test_http</cite> using this.
(Martin Pool, #597791)</li>
<li>Add <code class="docutils literal notranslate"><span class="pre">tests/ssl_certs/ca.crt</span></code> to the required test files list. Test
involving the pycurl https test server fail otherwise when running
selftest from an installed version. (Vincent Ladeuil, #651706)</li>
<li>Fix tests that failed when run under <code class="docutils literal notranslate"><span class="pre">LANG=C</span></code>.
(Andrew Bennetts, #632387)</li>
<li>Skip tests that needs a bzr source tree when there isn’t one. This is
needed to successfully run the test suite for installed versions.
(Vincent Ladeuil, #644855).</li>
<li>Skip the tests that requires respecting the chmod bits when running as root.
(Vincent Ladeuil, #646133)</li>
<li>Suppress the “maximum recursion depth exceeded in __subclasscheck__”
warning on stderr emitted during <code class="docutils literal notranslate"><span class="pre">test_dict_deepnested</span></code> in
<code class="docutils literal notranslate"><span class="pre">bzrlib/tests/test__bencode.py</span></code>.  (Andrew Bennetts)</li>
<li>Use tests.TestCaseInTempDir for tests that requires disk resources.
(Vincent Ladeuil, #650001)</li>
</ul>
</div>
</div>
<div class="section" id="bzr-2-3b1">
<h2>bzr 2.3b1<a class="headerlink" href="#bzr-2-3b1" 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">2.3b1:</th><td class="field-body">2010-09-20</td>
</tr>
</tbody>
</table>
<p>This is the first beta of the 2.3 series, leading up to a 2.3.0
release in January or February.  Beta releases are suitable for everyday use
but may cause some incompatibilities with plugins.  Some plugins may need
small updates to work with 2.3b1.</p>
<p>2.3b1 includes some performance improvements in both speed and memory
consumption, some preliminary support for generating a texinfo version of
the doc and better support for launchpad.  Many changes were made to make
our test suite more robust as well as numerous documentation fixes.  It
improves the common infrastructure for dealing with colocated named
branches and foreign branches.  We plan to continue with these themes
through the 2.3 series.</p>
<p>It also includes bug fixes for 2.0.6, 2.1.3 and 2.2.1 and over 40 fixes of
its own.</p>
<div class="section" id="id44">
<h3>External Compatibility Breaks<a class="headerlink" href="#id44" title="Permalink to this headline">¶</a></h3>
<p>(none)</p>
</div>
<div class="section" id="id45">
<h3>New Features<a class="headerlink" href="#id45" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li>Added <code class="docutils literal notranslate"><span class="pre">pre_status</span></code> and <code class="docutils literal notranslate"><span class="pre">post_status</span></code> hooks. This allows plugins
to register custom handlers which will be invoked before/after the
standard status output is displayed. (Parth Malwankar)</li>
<li><code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">break-lock</span> <span class="pre">--config</span> <span class="pre">[location]</span></code> can now break config files
locks. (Vincent Ladeuil, #525571)</li>
<li><code class="docutils literal notranslate"><span class="pre">bzrlib.config.LockableConfig</span></code> is a base class for config files that
needs to be protected against multiple writers. All methods that
change a configuration variable value must be decorated with
&#64;needs_write_lock (set_option() for example).
(Vincent Ladeuil,  #525571)</li>
<li>The <code class="docutils literal notranslate"><span class="pre">lp:</span></code> prefix will now use your known username (from
<code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">launchpad-login</span></code>) to expand <code class="docutils literal notranslate"><span class="pre">~</span></code> to your username.  For example:
<code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">launchpad-login</span> <span class="pre">user</span> <span class="pre">&amp;&amp;</span> <span class="pre">bzr</span> <span class="pre">push</span> <span class="pre">lp:~/project/branch</span></code> will now
push to <code class="docutils literal notranslate"><span class="pre">lp:~user/project/branch</span></code>.  (John Arbash Meinel)</li>
<li>New development format <code class="docutils literal notranslate"><span class="pre">development8-subtree</span></code> which is similar to the
<code class="docutils literal notranslate"><span class="pre">2a</span></code> format and adds subtree support. (Jelmer Vernooij)</li>
</ul>
</div>
<div class="section" id="id46">
<h3>Improvements<a class="headerlink" href="#id46" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li>Allow using both <code class="docutils literal notranslate"><span class="pre">--using</span></code> and <code class="docutils literal notranslate"><span class="pre">--diff-options</span></code>.
(Matthäus G. Chajdas, #234708)</li>
<li>Allow using non-integer bug ID with generic bug trackers.
(Alexandre Garnier, #440472)</li>
<li><code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">remove</span></code> now just backs up changed files instead of exiting,
forcing you to choose to either keep or delete them. Bazaar will now delete
the files if they can easily be recovered using revert, otherwise they
will be backed up (adding an extension of the form .~#~).
(Marius Kruger, #400554)</li>
<li><code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">revert</span></code> and <code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">status</span></code> are up to 15% faster on large trees
with many changes by not repeatedly building a list of all file-ids.
(Andrew Bennetts)</li>
<li>Decrease memory consumption when many chk index pages are loaded. (Such
as during <code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">co</span></code> or <code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">ls</span> <span class="pre">-R</span></code> of a large tree.) Often we need to
read many chk pages because the individual chk map nodes will be spread
randomly. Peak memory for ‘bzr ls -R’ on a large tree dropped from 396MB
down to 247MB, expect even more significant savings on 64-bit platforms.
(John Arbash Meinel)</li>
<li>Decrease peak memory during <code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">send</span></code>. The old code was caching all
text content and all inventory strings for all revisions before
computing the diffs. Now we only cache as long as there is a child that
will need them. Sending 2000 bzr revisions drops from 1.2GB peak to
256MB peak. (John Arbash Meinel, #614576)</li>
<li><code class="docutils literal notranslate"><span class="pre">DirState</span></code> internals use a little bit less memory. For bzr.dev it
drops the memory from 1MB down to about 800kB. And replaces a few
thousand tuples and sets with StaticTuple.  (John Arbash Meinel)</li>
<li>Inventory entries now consume less memory (on 32-bit Ubuntu file entries
have dropped from 68 bytes to 40, and directory entries from 120 bytes
to 48).  (Andrew Bennetts)</li>
<li>Reduce peak memory by one copy of compressed text when writing to pack
repositories.
(John Arbash Meinel, #566940)</li>
<li>When building new working trees, default to reading from the repository
rather than the source tree unless explicitly requested. (via
<code class="docutils literal notranslate"><span class="pre">--files-from</span></code> and <code class="docutils literal notranslate"><span class="pre">--hardlink</span></code> for <code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">branch</span></code> and
<code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">checkout</span></code>. Generally, 2a format repositories extract
content faster than seeking and reading content from another tree,
especially in cold-cache situations. (John Arbash Meinel, #607298)</li>
<li>Add <code class="docutils literal notranslate"><span class="pre">__pycache__</span></code> to the default <code class="docutils literal notranslate"><span class="pre">ignores</span></code> file. Future releases of
Python will use this directory to store bytecodes.
(Andrea Corbellini, #626687)</li>
</ul>
</div>
<div class="section" id="id47">
<h3>Bug Fixes<a class="headerlink" href="#id47" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li>Additional merges after an unrelated branch has been merged with its
history no longer crash when deleted files are involved.
(Vincent Ladeuil, John Arbash Meinel, #375898)</li>
<li><code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">add</span> <span class="pre">SYMLINK/FILE</span></code> now works properly when the symlink points to a
previously-unversioned directory within the tree: the directory is
marked versioned too.
(Martin Pool, #192859)</li>
<li><code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">clean-tree</span></code> issues a warning if it is unable to delete a file
due to <code class="docutils literal notranslate"><span class="pre">errno.EACCES</span></code> instead of exiting with an error on Windows.
(Parth Malwankar, #430785)</li>
<li><code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">commit</span> <span class="pre">SYMLINK</span></code> now works, rather than trying to commit the
target of the symlink.
(Martin Pool, John Arbash Meinel, #128562)</li>
<li><code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">ignore</span> <span class="pre">PATTERNS</span></code> exits with error if a bad pattern is supplied.
<code class="docutils literal notranslate"><span class="pre">InvalidPattern</span></code> exception error message now shows faulting
regular expression.
(Parth Malwankar #300062)</li>
<li><code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">upgrade</span></code> now creates the <code class="docutils literal notranslate"><span class="pre">backup.bzr</span></code> directory with the same
permissions as <code class="docutils literal notranslate"><span class="pre">.bzr</span></code> directory on a POSIX OS.
(Parth Malwankar, #262450)</li>
<li>CommitBuilder now uses the committer instead of _config.username to generate
the revision-id.  (Aaron Bentley, #614404)</li>
<li>Configuration files in <code class="docutils literal notranslate"><span class="pre">${BZR_HOME}</span></code> are now written in an atomic
way which should help avoid problems with concurrent writers.
(Vincent Ladeuil, #525571)</li>
<li>CommitBuilder now uses the committer instead of _config.username to generate
the revision-id.  (Aaron Bentley, #614404)</li>
<li>Configuration files in <code class="docutils literal notranslate"><span class="pre">${BZR_HOME}</span></code> are now protected against
concurrent writers by using a lock. (Vincent Ladeuil, #525571)</li>
<li>Cope with Microsoft FTP Server and VSFTPd that return reply ‘250
Directory created’ when mkdir succeeds.  (Martin Pool, #224373)</li>
<li><cite>decode</cite> parameter to get() method in FtpTransport and GioTransport classes
is deprecated. (Alexander Belchenko)</li>
<li>Don’t print internal object name when print an invalid revision spec
error.  (Neil Martinsen-Burrell, #598701)</li>
<li>Don’t traceback when a lockdir’s <code class="docutils literal notranslate"><span class="pre">held/info</span></code> file is corrupt (e.g.
contains only NUL bytes).  Instead warn the user, and allow <code class="docutils literal notranslate"><span class="pre">bzr</span>
<span class="pre">break-lock</span></code> to remove it.  (Andrew Bennetts, #619872)</li>
<li><code class="docutils literal notranslate"><span class="pre">EPIPE</span></code> can be raised during test server shutdown. This happened on
gentoo only so far. (Vincent Ladeuil, #627277)</li>
<li>Errors occurring during HTTP(S) test server starts should now be
handled cleanly. (Vincent Ladeuil, #392402)</li>
<li>Fix <code class="docutils literal notranslate"><span class="pre">AttributeError</span> <span class="pre">on</span> <span class="pre">parent.children</span></code> when adding a file under a
directory that was a symlink in the previous commit.
(Martin Pool, #192859)</li>
<li>Fix <code class="docutils literal notranslate"><span class="pre">AttributeError:</span> <span class="pre">'NoneType'</span> <span class="pre">object</span> <span class="pre">has</span> <span class="pre">no</span> <span class="pre">attribute</span> <span class="pre">'close'</span></code> in
<code class="docutils literal notranslate"><span class="pre">_close_ssh_proc</span></code> when using <code class="docutils literal notranslate"><span class="pre">bzr+ssh://</span></code>.  This was causing
connections to pre-1.6 bzr+ssh servers to fail, and causing warnings on
stderr in some other circumstances.  (Andrew Bennetts, #633745)</li>
<li>Fix spurious paramiko warning on hardy by ensuring that <code class="docutils literal notranslate"><span class="pre">selftest</span></code>
properly remove its warning filter. (Vincent Ladeuil, #625686)</li>
<li>Fix <code class="docutils literal notranslate"><span class="pre">AttributeError</span> <span class="pre">on</span> <span class="pre">parent.children</span></code> when adding a file under a
directory that was a symlink in the previous commit.
(Martin Pool, #192859)</li>
<li>Fix <code class="docutils literal notranslate"><span class="pre">AttributeError:</span> <span class="pre">'NoneType'</span> <span class="pre">object</span> <span class="pre">has</span> <span class="pre">no</span> <span class="pre">attribute</span> <span class="pre">'close'</span></code> in
<code class="docutils literal notranslate"><span class="pre">_close_ssh_proc</span></code> when using <code class="docutils literal notranslate"><span class="pre">bzr+ssh://</span></code>.  This was causing
connections to pre-1.6 bzr+ssh servers to fail, and causing warnings on
stderr in some other circumstances.  (Andrew Bennetts, #633745)</li>
<li>Fix a problem in bzr’s <code class="docutils literal notranslate"><span class="pre">Makefile</span></code> that meant syntax errors in some
parts of bzr’s source code could cause <code class="docutils literal notranslate"><span class="pre">make</span> <span class="pre">check-nodocs</span></code> to
incorrectly return an exit code of 0.
(Vincent Ladeuil, #626667)</li>
<li><code class="docutils literal notranslate"><span class="pre">HTTP/1.1</span></code> test servers now set a <code class="docutils literal notranslate"><span class="pre">Content-Length</span></code> header to comply
with pedantic <code class="docutils literal notranslate"><span class="pre">HTTP/1.1</span></code> clients. (Vincent Ladeuil, #568421)</li>
<li>Most of the leaked threads during selftest are now fixed, allowing the
full test suite to pass on gentoo.
(Vincent Ladeuil, #392127)</li>
<li>Only call <code class="docutils literal notranslate"><span class="pre">setlocale</span></code> in the bzr startup script on posix systems. This
avoids an issue with the newer windows C runtimes used by Python 2.6 and
later which can mangle bytestrings printed to the console.
(Martin [gz], #631350)</li>
<li><cite>PathNotChild</cite> should not give a traceback.
(Martin Pool, #98735)</li>
<li>Prevent <code class="docutils literal notranslate"><span class="pre">CHKMap.apply_delta</span></code> from generating non-canonical CHK maps,
which can result in “missing referenced chk root keys” errors when
fetching from repositories with affected revisions.
(Andrew Bennetts, #522637)</li>
<li>Raise ValueError instead of a string exception.
(John Arbash Meinel, #586926)</li>
<li>Repositories accessed via a smart server now reject being stacked on a
repository in an incompatible format, as is the case when accessing them
via other methods.  This was causing fetches from those repositories via
a smart server (e.g. using <code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">branch</span></code>) to receive invalid data.
(Andrew Bennetts, #562380)</li>
<li>Selftest with versions of subunit that support <code class="docutils literal notranslate"><span class="pre">stopTestRun</span></code> will no longer
error. This error was caused by 2.0 not being updated when upstream
python merged the end of run patch, which chose <code class="docutils literal notranslate"><span class="pre">stopTestRun</span></code> rather than
<code class="docutils literal notranslate"><span class="pre">done</span></code>. (Robert Collins, #571437)</li>
<li>Stop <code class="docutils literal notranslate"><span class="pre">AttributeError:</span> <span class="pre">'module'</span> <span class="pre">object</span> <span class="pre">has</span> <span class="pre">no</span> <span class="pre">attribute</span> <span class="pre">'ElementTree'</span></code>
being thrown from <code class="docutils literal notranslate"><span class="pre">xml_serializer</span></code> on certain cElementTree setups.
(Martin [gz], #254278)</li>
<li>strace test-helper tests cope with the new Ubuntu policy of not allowing
users to attach to their own processes by default.
(Martin Pool, #626679)</li>
<li>Test classes like <code class="docutils literal notranslate"><span class="pre">TestCase</span></code>, <code class="docutils literal notranslate"><span class="pre">TestLoader</span></code>, and <code class="docutils literal notranslate"><span class="pre">TestSuite</span></code> should
be available from <code class="docutils literal notranslate"><span class="pre">bzrlib.tests.*</span></code>. They used to be, but were
accidentally removed. (John Arbash Meinel, #627438)</li>
<li><code class="docutils literal notranslate"><span class="pre">Transport.stat</span></code> on a symlink, including a transport pointing directly
to a symlink, now returns information about the symlink.
(Martin Pool)</li>
<li>Upgrading or fetching from a non-rich-root repository to a rich-root
repository (e.g. from pack-0.92 to 2a) no longer fails with
<code class="docutils literal notranslate"><span class="pre">'Inter1and2Helper'</span> <span class="pre">object</span> <span class="pre">has</span> <span class="pre">no</span> <span class="pre">attribute</span> <span class="pre">'source_repo'</span></code>.  This was
a regression from Bazaar 2.1.  (Andrew Bennetts, #636930)</li>
</ul>
</div>
<div class="section" id="id48">
<h3>Documentation<a class="headerlink" href="#id48" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li>Added a builder/writer sphinx extension that can generate texinfo files. The
generated files are syntactically correct but the info navigation nodes
needs more work. (Vincent Ladeuil, #219334)</li>
<li>First tests defined for sphinx, including a new bzrlib.tests.features.sphinx
to make the tests conditional.
(Vincent Ladeuil)</li>
<li>Fix a lot of references in the docs to the old <a class="reference external" href="http://bazaar-vcs.org">http://bazaar-vcs.org</a> to
the new <a class="reference external" href="http://bazaar.canonical.com">http://bazaar.canonical.com</a> or <a class="reference external" href="http://wiki.bazaar.canonical.com">http://wiki.bazaar.canonical.com</a>
(John Arbash Meinel, #617503)</li>
</ul>
</div>
<div class="section" id="id49">
<h3>API Changes<a class="headerlink" href="#id49" title="Permalink to this headline">¶</a></h3>
<ul>
<li><p class="first">When passing a file to <code class="docutils literal notranslate"><span class="pre">UTF8DirReader</span></code> make sure to close the current
directory file handle after the chdir fails. Otherwise when passing many
filenames into a command line <code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">status</span></code> we would leak descriptors.
(John Arbash Meinel, #583486)</p>
</li>
<li><p class="first"><cite>ControlDirFormat</cite> and  <cite>ControlDir</cite> have been split out of <cite>BzrDirFormat</cite>
and <cite>BzrDir</cite>, respectively. <cite>ControlDirFormat</cite>
and <cite>ControlDir</cite> should be used as the base classes for new non-.bzr
implementations.</p>
<p><cite>BzrDirFormat.register_control_format</cite> has been renamed to
<cite>ControlDirFormat.register_format</cite>.</p>
<p><cite>BzrDirFormat.register_server_control_format</cite> has been removed.</p>
<p>Probing for control directories is now done by separate objects derived
from <cite>bzrlib.controldir.Prober</cite> and registered using
<cite>bzrlib.controldir.ControlDirFormat.register_prober</cite> or
<cite>bzrlib.controldir.ControlDirFormat.register_server_prober</cite>.
<cite>BzrDirFormat.probe_transport</cite> has been moved onto <cite>Prober</cite>.</p>
<p><cite>BzrDirFormat.register_format</cite> has been renamed to
<cite>BzrProber.register_bzrdir_format</cite>.</p>
<p><cite>bzrlib.bzrdir.network_format_registry</cite> has been moved to
<cite>bzrlib.controldir</cite>.</p>
<p>(Jelmer Vernooij)</p>
</li>
<li><p class="first"><code class="docutils literal notranslate"><span class="pre">bzrlib.transform.TreeTransformBase.final_kind</span></code>,
<code class="docutils literal notranslate"><span class="pre">bzrlib.transform.TreeTransform.tree_kind</span></code> and
<code class="docutils literal notranslate"><span class="pre">bzrlib.transform.TransformPreview.tree_kind</span></code> now return None instead
of raising NoSuchFile.  (Vincent Ladeuil)</p>
</li>
<li><p class="first">BzrError subclasses no longer support the name “message” to be used
as an argument for __init__ or in _fmt format specification as this
breaks in some Python versions. errors.LockError.__init__ argument
is now named “msg” instead of earlier “message”.
(Parth Malwankar, #603461)</p>
</li>
<li><p class="first">Configuration files should now use the <code class="docutils literal notranslate"><span class="pre">from_string</span></code> constructor rather
than the <code class="docutils literal notranslate"><span class="pre">file</span></code> parameter of the <code class="docutils literal notranslate"><span class="pre">_get_parser</span></code> method. The later has
been deprecated. <code class="docutils literal notranslate"><span class="pre">from_string</span></code> also accept a <code class="docutils literal notranslate"><span class="pre">save=True</span></code> parameter to
have the configuration file immediately written to disk.
(Vincent Ladeuil)</p>
</li>
<li><p class="first">Deprecate treating a <cite>PushResult</cite> and <cite>PullResult</cite> as an integer for the
relative change in revno.
(Martin Pool)</p>
</li>
<li><p class="first"><cite>FileInWrongBranch</cite> is deprecated in favour of <cite>PathNotChild</cite> and no
longer raised.
(Martin Pool)</p>
</li>
<li><p class="first"><code class="docutils literal notranslate"><span class="pre">IniBaseConfig</span></code> objects should now use the <code class="docutils literal notranslate"><span class="pre">from_string</span></code> constructor
the rather than the <code class="docutils literal notranslate"><span class="pre">file</span></code> parameter of the <code class="docutils literal notranslate"><span class="pre">_get_parser</span></code> method. The
later has been deprecated. (Vincent Ladeuil)</p>
</li>
<li><p class="first">InventoryEntry instances now raise AttributeError if you try to assign
to attributes that are irrelevant to that kind of entry.  e.g. setting
<code class="docutils literal notranslate"><span class="pre">symlink_target</span></code> on an InventoryFile will fail.  It is still okay to
read those attributes on any kind of InventoryEntry.  The complete list
of affected attributes is: <code class="docutils literal notranslate"><span class="pre">executable</span></code>, <code class="docutils literal notranslate"><span class="pre">text_id</span></code>, <code class="docutils literal notranslate"><span class="pre">text_sha1</span></code>,
<code class="docutils literal notranslate"><span class="pre">text_size</span></code> (only valid for kind == file); <code class="docutils literal notranslate"><span class="pre">symlink_target</span></code> (only
valid for kind == link); and <code class="docutils literal notranslate"><span class="pre">reference_revision</span></code> (only valid for kind
== tree-reference).  (Andrew Bennetts)</p>
</li>
<li><p class="first">InventoryEntry objects no longer have <code class="docutils literal notranslate"><span class="pre">_put_in_tar</span></code> or
<code class="docutils literal notranslate"><span class="pre">_put_on_disk</span></code> methods.  (Andrew Bennetts)</p>
</li>
<li><p class="first">The <code class="docutils literal notranslate"><span class="pre">get_filename</span></code> parameter in the <code class="docutils literal notranslate"><span class="pre">config.IniBaseConfig</span></code>
constructor has been deprecated, use the <code class="docutils literal notranslate"><span class="pre">file_name</span></code> parameter instead.
(Vincent Ladeuil)</p>
</li>
<li><p class="first"><cite>tree_files</cite> and <cite>internal_tree_files</cite> are now deprecated in favor of
<cite>WorkingTree.open_containing_paths</cite>.
(Martin Pool)</p>
</li>
</ul>
</div>
<div class="section" id="id50">
<h3>Internals<a class="headerlink" href="#id50" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li>Remove used and broken code path in <code class="docutils literal notranslate"><span class="pre">BranchInitHookParams.__repr__</span></code>.
(Andrew Bennetts)</li>
</ul>
</div>
<div class="section" id="id51">
<h3>Testing<a class="headerlink" href="#id51" title="Permalink to this headline">¶</a></h3>
<ul class="simple">
<li>Avoid spurious failures in ssh tests: wait for the SSH server to
actually finish, rather than just waiting for it to negotiate the key
exchange. (John Arbash Meinel, #626876)</li>
<li><code class="docutils literal notranslate"><span class="pre">build_tree_contents</span></code> can create symlinks.
(Martin Pool, John Arbash Meinel)</li>
<li>Catch socket errors to avoid
bt.test_sftp_transport.SSHVendorBadConnection.test_bad_connection_ssh
random failures. (Vincent Ladeuil, #601804)</li>
<li>HTTP test servers will leak less threads (and sockets) and will not hang on
AIX anymore. (Vincent Ladeuil, #405745)</li>
<li>On platforms that don’t support forking give a nice error message saying so
when <code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">selftest</span> <span class="pre">--parallel=fork</span></code> is used. (Martin [gz], #528730)</li>
<li>Rearrange thread leak detection code to eliminate global state and make it
possible to extend the reporting. (Martin [gz], #633462)</li>
<li>The old <code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">selftest</span> <span class="pre">--benchmark</span></code> option has been removed.
&lt;<a class="reference external" href="https://launchpad.net/bzr-usertest">https://launchpad.net/bzr-usertest</a>&gt; is an actively-maintained
macrobenchmark suite.
(Martin Pool)</li>
<li>The test suite now simply holds log files in memory, rather than writing them
out to disk and then reading them back in and deleting them.
(Andrew Bennetts)</li>
<li>The way <code class="docutils literal notranslate"><span class="pre">bzr</span> <span class="pre">selftest</span> <span class="pre">--parallel</span></code> generates N partitions of tests to
run in parallel has changed.  Instead of splitting the list of tests at
N-1 points, it distributes the tests one-by-one into the partitions in a
round robin fashion.  This reduces the total time to run the tests in
parallel because a series of slow tests in the test suite will be
distributed evenly among the parallel test suites, rather than slowing
down just one suite.  (Andrew Bennetts)</li>
<li>Tracebacks from a parameterized test are no longer reported against every
parameterization of that test.  This was done by adding a hack to
<code class="docutils literal notranslate"><span class="pre">bzrlib.tests.clone_test</span></code> so that it no longer causes
testtools.TestCase instances to share a details dict.
(Andrew Bennetts, #625574)</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-2-3-5">bzr 2.3.5</a><ul>
<li><a class="reference internal" href="#external-compatibility-breaks">External 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="#bug-fixes">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>
<li><a class="reference internal" href="#bzr-2-3-4">bzr 2.3.4</a><ul>
<li><a class="reference internal" href="#id1">External Compatibility Breaks</a></li>
<li><a class="reference internal" href="#id2">New Features</a></li>
<li><a class="reference internal" href="#id3">Improvements</a></li>
<li><a class="reference internal" href="#id4">Bug Fixes</a></li>
<li><a class="reference internal" href="#id5">Documentation</a></li>
<li><a class="reference internal" href="#id6">API Changes</a></li>
<li><a class="reference internal" href="#id7">Internals</a></li>
<li><a class="reference internal" href="#id8">Testing</a></li>
</ul>
</li>
<li><a class="reference internal" href="#bzr-2-3-3">bzr 2.3.3</a><ul>
<li><a class="reference internal" href="#id9">Testing</a></li>
</ul>
</li>
<li><a class="reference internal" href="#bzr-2-3-2">bzr 2.3.2</a><ul>
<li><a class="reference internal" href="#id10">External Compatibility Breaks</a></li>
<li><a class="reference internal" href="#id11">New Features</a></li>
<li><a class="reference internal" href="#id12">Improvements</a></li>
<li><a class="reference internal" href="#id13">Bug Fixes</a></li>
<li><a class="reference internal" href="#id14">API Changes</a></li>
<li><a class="reference internal" href="#id15">Testing</a></li>
</ul>
</li>
<li><a class="reference internal" href="#bzr-2-3-1">bzr 2.3.1</a><ul>
<li><a class="reference internal" href="#id16">Bug Fixes</a></li>
</ul>
</li>
<li><a class="reference internal" href="#bzr-2-3-0">bzr 2.3.0</a></li>
<li><a class="reference internal" href="#bzr-2-3b5">bzr 2.3b5</a><ul>
<li><a class="reference internal" href="#id17">External Compatibility Breaks</a></li>
<li><a class="reference internal" href="#id18">Improvements</a></li>
<li><a class="reference internal" href="#id19">Bug Fixes</a></li>
<li><a class="reference internal" href="#id20">Documentation</a></li>
<li><a class="reference internal" href="#id21">API Changes</a></li>
<li><a class="reference internal" href="#id22">Testing</a></li>
</ul>
</li>
<li><a class="reference internal" href="#bzr-2-3b4">bzr 2.3b4</a><ul>
<li><a class="reference internal" href="#id23">External Compatibility Breaks</a></li>
<li><a class="reference internal" href="#id24">Improvements</a></li>
<li><a class="reference internal" href="#id25">Bug Fixes</a></li>
<li><a class="reference internal" href="#id26">Internals</a></li>
<li><a class="reference internal" href="#id27">Testing</a></li>
</ul>
</li>
<li><a class="reference internal" href="#bzr-2-3b3">bzr 2.3b3</a><ul>
<li><a class="reference internal" href="#id28">External Compatibility Breaks</a></li>
<li><a class="reference internal" href="#id29">New Features</a></li>
<li><a class="reference internal" href="#id30">Bug Fixes</a></li>
<li><a class="reference internal" href="#id31">Documentation</a></li>
<li><a class="reference internal" href="#id32">API Changes</a></li>
<li><a class="reference internal" href="#id33">Internals</a></li>
<li><a class="reference internal" href="#id34">Testing</a></li>
</ul>
</li>
<li><a class="reference internal" href="#bzr-2-3b2">bzr 2.3b2</a><ul>
<li><a class="reference internal" href="#id35">External Compatibility Breaks</a></li>
<li><a class="reference internal" href="#id36">New Features</a></li>
<li><a class="reference internal" href="#id37">Improvements</a></li>
<li><a class="reference internal" href="#id38">Bug Fixes</a></li>
<li><a class="reference internal" href="#id39">Improvements</a></li>
<li><a class="reference internal" href="#id40">Documentation</a></li>
<li><a class="reference internal" href="#id41">API Changes</a></li>
<li><a class="reference internal" href="#id42">Internals</a></li>
<li><a class="reference internal" href="#id43">Testing</a></li>
</ul>
</li>
<li><a class="reference internal" href="#bzr-2-3b1">bzr 2.3b1</a><ul>
<li><a class="reference internal" href="#id44">External Compatibility Breaks</a></li>
<li><a class="reference internal" href="#id45">New Features</a></li>
<li><a class="reference internal" href="#id46">Improvements</a></li>
<li><a class="reference internal" href="#id47">Bug Fixes</a></li>
<li><a class="reference internal" href="#id48">Documentation</a></li>
<li><a class="reference internal" href="#id49">API Changes</a></li>
<li><a class="reference internal" href="#id50">Internals</a></li>
<li><a class="reference internal" href="#id51">Testing</a></li>
</ul>
</li>
</ul>
</li>
</ul>

  <h4>Previous topic</h4>
  <p class="topless"><a href="bzr-2.4.html"
                        title="previous chapter">Bazaar Release Notes</a></p>
  <h4>Next topic</h4>
  <p class="topless"><a href="bzr-2.2.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-2.3.txt"
            rel="nofollow">Show Source</a></li>
    </ul>
   </div>
<div id="searchbox" style="display: none" role="search">
  <h3>Quick search</h3>
    <div class="searchformwrapper">
    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" />
      <input type="submit" value="Go" />
      <input type="hidden" name="check_keywords" value="yes" />
      <input type="hidden" name="area" value="default" />
    </form>
    </div>
</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-2.2.html" title="Bazaar Release Notes"
             >next</a></li>
        <li class="right" >
          <a href="bzr-2.4.html" title="Bazaar Release Notes"
             >previous</a> |</li>
<li><a href="http://bazaar.canonical.com/">
    <img src="../_static/bzr icon 16.png" /> Home</a>&nbsp;|&nbsp;</li>
<a href="http://doc.bazaar.canonical.com/en/">Documentation</a>&nbsp;|&nbsp;</li>

        <li class="nav-item nav-item-0"><a href="../index.html">Table of Contents (2.7.0)</a> &#187;</li>

          <li class="nav-item nav-item-1"><a href="index.html" >Bazaar Release Notes</a> &#187;</li> 
      </ul>
    </div>
    <div class="footer" role="contentinfo">
        &#169; Copyright 2009-2011 Canonical Ltd.
      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
    </div>
  </body>
</html>