Rev 5323: (lifeless) Do not return bzrdirs in find_bzrdirs where there is a branch in file:///home/pqm/archives/thelove/bzr/%2Btrunk/
Canonical.com Patch Queue Manager
pqm at pqm.ubuntu.com
Mon Jun 28 04:12:50 BST 2010
At file:///home/pqm/archives/thelove/bzr/%2Btrunk/
------------------------------------------------------------
revno: 5323 [merge]
revision-id: pqm at pqm.ubuntu.com-20100628031248-icctusovofhlk7z9
parent: pqm at pqm.ubuntu.com-20100628014512-l4w7dmgpmt1pj5c4
parent: robertc at robertcollins.net-20100625044954-prx0188xfpdgj11g
committer: Canonical.com Patch Queue Manager <pqm at pqm.ubuntu.com>
branch nick: +trunk
timestamp: Mon 2010-06-28 04:12:48 +0100
message:
(lifeless) Do not return bzrdirs in find_bzrdirs where there is a branch
with no repository available to it. (Marius Kruger) (Robert Collins)
modified:
NEWS NEWS-20050323055033-4e00b5db738777ff
bzrlib/bzrdir.py bzrdir.py-20060131065624-156dfea39c4387cb
bzrlib/tests/test_bzrdir.py test_bzrdir.py-20060131065654-deba40eef51cf220
=== modified file 'NEWS'
--- a/NEWS 2010-06-27 05:25:03 +0000
+++ b/NEWS 2010-06-28 03:12:48 +0000
@@ -58,6 +58,9 @@
or pull location in locations.conf or branch.conf.
(Gordon Tyler, #534787)
+* ``BzrDir.find_branches`` should ignore branches with missing repositories.
+ (Marius Kruger, Robert Collins)
+
* ``BzrDir.find_bzrdirs`` should ignore dirs that raises PermissionDenied.
(Marius Kruger, Robert Collins)
=== modified file 'bzrlib/bzrdir.py'
--- a/bzrlib/bzrdir.py 2010-06-25 04:24:10 +0000
+++ b/bzrlib/bzrdir.py 2010-06-28 03:12:48 +0000
@@ -394,7 +394,7 @@
"""
try:
return [self.open_branch()]
- except errors.NotBranchError:
+ except (errors.NotBranchError, errors.NoRepositoryPresent):
return []
@staticmethod
=== modified file 'bzrlib/tests/test_bzrdir.py'
--- a/bzrlib/tests/test_bzrdir.py 2010-06-25 01:49:49 +0000
+++ b/bzrlib/tests/test_bzrdir.py 2010-06-25 04:49:54 +0000
@@ -24,6 +24,7 @@
import sys
from bzrlib import (
+ branch,
bzrdir,
errors,
help_topics,
@@ -888,6 +889,21 @@
self.assertEqual(bar.root_transport.base, branches[1].base)
+class TestMissingRepoBranchesSkipped(TestCaseWithMemoryTransport):
+
+ def test_find_bzrdirs_missing_repo(self):
+ transport = get_transport(self.get_url())
+ arepo = self.make_repository('arepo', shared=True)
+ abranch_url = arepo.user_url + '/abranch'
+ abranch = bzrdir.BzrDir.create(abranch_url).create_branch()
+ transport.delete_tree('arepo/.bzr')
+ self.assertRaises(errors.NoRepositoryPresent,
+ branch.Branch.open, abranch_url)
+ self.make_branch('baz')
+ for actual_bzrdir in bzrdir.BzrDir.find_branches(transport):
+ self.assertEndsWith(actual_bzrdir.user_url, '/baz/')
+
+
class TestMeta1DirFormat(TestCaseWithTransport):
"""Tests specific to the meta1 dir format."""
More information about the bazaar-commits
mailing list