Loading list_files/loaders/git.py +1 −1 Original line number Diff line number Diff line Loading @@ -12,7 +12,7 @@ class GitLoader(loaders.Loader): def __init__(self, project_root, target_path): super(GitLoader, self).__init__(project_root, target_path) pattern = patterns.ExactPattern('.git') pattern = patterns.FileMatchPattern('.git') self.rules = rules.Rule(project_root, '', pattern, with_path=False) self.tails = [self.rules, None] Loading list_files/patterns.py +19 −13 Original line number Diff line number Diff line Loading @@ -4,7 +4,7 @@ from functools import partial from collections import Callable class Pattern(object): class BasePattern(object): def __init__(self, pattern, **extra): self.pattern = pattern Loading @@ -16,32 +16,38 @@ class Pattern(object): raise NotImplementedError() class ExactPattern(Pattern): class FileMatchPattern(BasePattern): def match(self, path): return path == self.pattern class RegexPattern(Pattern): class RegexPattern(BasePattern): def __init__(self, pattern, **extra): super(RegexPattern, self).__init__(pattern, **extra) self.match_begining = extra.get('match_begining', False) def match(self, path): return bool(re.match(self.pattern, path)) regex = re.compile(self.pattern) return self._match(regex, path) def _match(self, regex, path): if self.match_begining: return bool(regex.match(path)) else: return bool(regex.search(path)) class SimplePattern(Pattern): class CompiledPattern(RegexPattern): def __init__(self, pattern, **extra): super(SimplePattern, self).__init__(pattern, **extra) self.match_begining = extra.get('match_begining', False) super(CompiledPattern, self).__init__(pattern, **extra) self.active_replacements = {} self._cached_regex = None def match(self, path): regex = self.regex() if self.match_begining: return bool(regex.match(path)) else: return bool(regex.search(path)) return self._match(self.regex(), path) def regex(self): if not self._cached_regex: Loading Loading @@ -109,7 +115,7 @@ class SimplePattern(Pattern): ) class GlobPattern(SimplePattern): class GlobPattern(CompiledPattern): default_replacements = { '\.': '\.', Loading Loading
list_files/loaders/git.py +1 −1 Original line number Diff line number Diff line Loading @@ -12,7 +12,7 @@ class GitLoader(loaders.Loader): def __init__(self, project_root, target_path): super(GitLoader, self).__init__(project_root, target_path) pattern = patterns.ExactPattern('.git') pattern = patterns.FileMatchPattern('.git') self.rules = rules.Rule(project_root, '', pattern, with_path=False) self.tails = [self.rules, None] Loading
list_files/patterns.py +19 −13 Original line number Diff line number Diff line Loading @@ -4,7 +4,7 @@ from functools import partial from collections import Callable class Pattern(object): class BasePattern(object): def __init__(self, pattern, **extra): self.pattern = pattern Loading @@ -16,32 +16,38 @@ class Pattern(object): raise NotImplementedError() class ExactPattern(Pattern): class FileMatchPattern(BasePattern): def match(self, path): return path == self.pattern class RegexPattern(Pattern): class RegexPattern(BasePattern): def __init__(self, pattern, **extra): super(RegexPattern, self).__init__(pattern, **extra) self.match_begining = extra.get('match_begining', False) def match(self, path): return bool(re.match(self.pattern, path)) regex = re.compile(self.pattern) return self._match(regex, path) def _match(self, regex, path): if self.match_begining: return bool(regex.match(path)) else: return bool(regex.search(path)) class SimplePattern(Pattern): class CompiledPattern(RegexPattern): def __init__(self, pattern, **extra): super(SimplePattern, self).__init__(pattern, **extra) self.match_begining = extra.get('match_begining', False) super(CompiledPattern, self).__init__(pattern, **extra) self.active_replacements = {} self._cached_regex = None def match(self, path): regex = self.regex() if self.match_begining: return bool(regex.match(path)) else: return bool(regex.search(path)) return self._match(self.regex(), path) def regex(self): if not self._cached_regex: Loading Loading @@ -109,7 +115,7 @@ class SimplePattern(Pattern): ) class GlobPattern(SimplePattern): class GlobPattern(CompiledPattern): default_replacements = { '\.': '\.', Loading