Commit 659f4ca3 authored by Dom Sekotill's avatar Dom Sekotill
Browse files

Simplify git pattern matching

Removes the GitGlobPattern class, uses standard GlobPattern class
instead.
parent 9df19859
Loading
Loading
Loading
Loading
+4 −17
Original line number Diff line number Diff line
@@ -99,12 +99,13 @@ class GitLoader(loaders.Loader):
				if line.endswith('/'):
					line = line[:-1]
					rule_opts['directory_only'] = True
				if line.startswith('/'):
					pattern_opts['match_begining'] = True
				if '/' not in line:
					rule_opts['with_path'] = False
				if line.startswith('/'):
					line = line[1:]
					pattern_opts['match_begining'] = True

				pattern = GitGlobPattern(line, **pattern_opts)
				pattern = patterns.GlobPattern(line, **pattern_opts)
				rule = rules.Rule(self.project_root, directory, pattern,
						**rule_opts)

@@ -132,17 +133,3 @@ class GitLoader(loaders.Loader):
			last_include_rule.next_if_fail = rules.ExcludeRule()

		self.tails[:] = last_exclude_rule, last_include_rule


class GitGlobPattern(patterns.GlobPattern):

	def __init__(self, pattern, **extra):
#		if not pattern.startswith('/'):
#			# patterns with no /-prefix are equivalent to **/...; be specific
#			pattern = '**/' + pattern
		extra.setdefault('double_asterix', True)
		super(GitGlobPattern, self).__init__(pattern, **extra)
		self.active_replacements.update({
			'^/': '^',
#			'^\*\*/': '(^|.*/)',
		})