def clean_semver(cls, version_spec):
        return re.sub(r"([<>=~])\s+?v?", "\\1", version_spec, re.IGNORECASE)
def __init__(self, root, cwd, badfn=None, rules=[]):
        super(treematcher, self).__init__(root, cwd, badfn)
        rules = list(rules)
        self._matcher = pathmatcher.treematcher(rules)
        self._rules = rules