# HG changeset patch # User Gregory Szorc # Date 2017-06-09 06:23:37 # Node ID b8ff7d0ff36153e1dbb2c571ceeb35998a25423b # Parent c8177792fef664ed8754502fbbb833056ab6f97c localrepo: move filtername to __init__ This is obviously an instance attribute, not a type attribute. The modern Python style is to use __init__ for defining these. This exposes statichttprepo as inheriting from localrepository without calling its __init__. As a result, its __init__ defines a lot of variables that methods on localrepository's methods need. But factoring the common bits into a separate class is for another day. diff --git a/mercurial/localrepo.py b/mercurial/localrepo.py --- a/mercurial/localrepo.py +++ b/mercurial/localrepo.py @@ -270,7 +270,6 @@ class localrepository(object): 'treemanifest', 'manifestv2', } - filtername = None # a list of (ui, featureset) functions. # only functions defined in module of enabled extensions are invoked @@ -278,6 +277,7 @@ class localrepository(object): def __init__(self, baseui, path, create=False): self.requirements = set() + self.filtername = None # wvfs: rooted at the repository root, used to access the working copy self.wvfs = vfsmod.vfs(path, expandpath=True, realpath=True) # vfs: rooted at .hg, used to access repo files outside of .hg/store diff --git a/mercurial/statichttprepo.py b/mercurial/statichttprepo.py --- a/mercurial/statichttprepo.py +++ b/mercurial/statichttprepo.py @@ -127,6 +127,7 @@ class statichttprepository(localrepo.loc self._phasedefaults = [] self.names = namespaces.namespaces() + self.filtername = None try: requirements = scmutil.readrequires(self.vfs, self.supported)