[PATCH 09 of 14 clfilter part 1 V2] clfilter: ensure changegroup generation are run unfiltered

pierre-yves.david at logilab.fr pierre-yves.david at logilab.fr
Mon Nov 26 12:34:42 CST 2012


# HG changeset patch
# User Pierre-Yves David <pierre-yves.david at logilab.fr>
# Date 1353954205 -3600
# Node ID 51e4c7205fa144cd25a426cf27557c141de83712
# Parent  0c43b5b204c09a707d76f7ae170d811e543ef561
clfilter: ensure changegroup generation are run unfiltered

Changegroup generation logic needs to be aware of the whole repository to works
properly.

diff --git a/mercurial/localrepo.py b/mercurial/localrepo.py
--- a/mercurial/localrepo.py
+++ b/mercurial/localrepo.py
@@ -2083,10 +2083,11 @@ class localrepository(object):
         if not heads:
             heads = cl.heads()
         return self.getlocalbundle(source,
                                    discovery.outgoing(cl, common, heads))
 
+    @unfilteredmeth
     def _changegroupsubset(self, commonrevs, csets, heads, source):
 
         cl = self.changelog
         mf = self.manifest
         mfs = {} # needed manifests
@@ -2194,10 +2195,11 @@ class localrepository(object):
 
     def changegroup(self, basenodes, source):
         # to avoid a race we use changegroupsubset() (issue1320)
         return self.changegroupsubset(basenodes, self.heads(), source)
 
+    @unfilteredmeth
     def _changegroup(self, nodes, source):
         """Compute the changegroup of all nodes that we have that a recipient
         doesn't.  Return a chunkbuffer object whose read() method will return
         successive changegroup chunks.
 


More information about the Mercurial-devel mailing list