[MERGE][1.0][#147836] Implement a trivial RemoteRepository._make_parents_provider method.
Andrew Bennetts
andrew at canonical.com
Fri Dec 7 06:45:07 GMT 2007
This patch is trivial, but it fixes bug 147836, which prevents “bzr send”
against a branch that is hosted on a smart server.
Seeing as _make_parents_provider seems to be a required part of the Repository
interface, this patch also adds a simple test to make sure all Repository
implemenatations provide it.
-Andrew.
-------------- next part --------------
# Bazaar merge directive format 2 (Bazaar 0.90)
# revision_id: andrew.bennetts at canonical.com-20071207063656-\
# 8qbhv4r21as6su0v
# target_branch: http://bazaar-vcs.org/bzr/bzr.dev
# testament_sha1: 7141854ea302b71e03fec7156e132c50e877f3d2
# timestamp: 2007-12-07 17:37:11 +1100
# source_branch: http://people.ubuntu.com/~andrew/bzr/bug-147836-\
# remote-parents-provider
# base_revision_id: pqm at pqm.ubuntu.com-20071206235308-1ol3uk5sbttviy3e
#
# Begin patch
=== modified file 'NEWS'
--- NEWS 2007-12-06 23:53:08 +0000
+++ NEWS 2007-12-07 06:36:56 +0000
@@ -56,6 +56,9 @@
* Fall back to showing e-mail in ``log --short/--line`` if the committer/author has
only e-mail. (Lukáš Lalinský, #157026)
+ * Implement _make_parents_provider on RemoteRepository, allowing generating
+ bundles against branches on a smart server. (Andrew Bennetts, #147836)
+
API BREAKS:
* Deprecate not passing a ``location`` argument to commit reporters'
=== modified file 'bzrlib/remote.py'
--- bzrlib/remote.py 2007-11-30 23:27:18 +0000
+++ bzrlib/remote.py 2007-12-07 06:36:56 +0000
@@ -895,6 +895,10 @@
self._ensure_real()
return self._real_repository._check_for_inconsistent_revision_parents()
+ def _make_parents_provider(self):
+ self._ensure_real()
+ return self._real_repository._make_parents_provider()
+
class RemoteBranchLockableFiles(LockableFiles):
"""A 'LockableFiles' implementation that talks to a smart server.
=== modified file 'bzrlib/tests/repository_implementations/test_repository.py'
--- bzrlib/tests/repository_implementations/test_repository.py 2007-11-30 02:28:51 +0000
+++ bzrlib/tests/repository_implementations/test_repository.py 2007-12-07 06:36:56 +0000
@@ -629,6 +629,13 @@
self.get_vfs_only_url('remote')).open_repository()
self.assertEqual(remote_backing_repo._format, local_repo._format)
+ def test__make_parents_provider(self):
+ """Repositories must have a _make_parents_provider method that returns
+ an object with a get_parents method.
+ """
+ repo = self.make_repository('repo')
+ repo._make_parents_provider().get_parents
+
class TestRepositoryLocking(TestCaseWithRepository):
# Begin bundle
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
ccZQKaekcMDCxRI461YPCFf/i7kinChIdMeZ/4A=
More information about the bazaar
mailing list