--- a/mercurial/localrepo.py Sat Sep 09 18:25:06 2006 -0700
+++ b/mercurial/localrepo.py Sat Sep 09 18:25:07 2006 -0700
@@ -15,7 +15,7 @@
demandload(globals(), "os revlog time util")
class localrepository(repo.repository):
- capabilities = ()
+ capabilities = ('lookup', 'changegroupsubset')
def __del__(self):
self.transhandle = None
@@ -1241,6 +1241,8 @@
if heads is None:
cg = remote.changegroup(fetch, 'pull')
else:
+ if 'changegroupsubset' not in remote.capabilities:
+ raise util.Abort(_("Partial pull cannot be done because other repository doesn't support changegroupsubset."))
cg = remote.changegroupsubset(fetch, heads, 'pull')
return self.addchangegroup(cg, 'pull', remote.url())
finally: