aboutsummaryrefslogtreecommitdiffstats
path: root/git_deps
diff options
context:
space:
mode:
authorAdam Spiers <git@adamspiers.org>2018-09-09 22:21:48 +0100
committerAdam Spiers <git@adamspiers.org>2018-09-09 22:22:25 +0100
commit404170854547f796b862416dbd4a666b338000a8 (patch)
tree2845c368f47efb2c243eb107fda99f6e490602fc /git_deps
parent4fd28c7326125260acaefdb9bbae2907bb028b71 (diff)
downloadgit-deps-404170854547f796b862416dbd4a666b338000a8.tar.gz
extract process_new_dependency() method
Diffstat (limited to 'git_deps')
-rw-r--r--git_deps/detector.py67
1 files changed, 37 insertions, 30 deletions
diff --git a/git_deps/detector.py b/git_deps/detector.py
index e82536f..ec607c4 100644
--- a/git_deps/detector.py
+++ b/git_deps/detector.py
@@ -188,36 +188,9 @@ class DependencyDetector(object):
continue
if dependency_sha1 not in self.dependencies[dependent_sha1]:
- if not self.seen_commit(dependency):
- self.notify_listeners("new_commit", dependency)
- self.dependencies[dependent_sha1][dependency_sha1] = {}
-
- self.notify_listeners("new_dependency",
- dependent, dependency, path, line_num)
-
- self.logger.debug(
- " New dependency %s -> %s via line %s (%s)" %
- (dependent_sha1[:8], dependency_sha1[:8], line_num,
- GitUtils.oneline(dependency)))
-
- if dependency_sha1 in self.todo_d:
- self.logger.debug(
- " Dependency on %s via line %s already in TODO"
- % (dependency_sha1[:8], line_num,))
- continue
-
- if dependency_sha1 in self.done_d:
- self.logger.debug(
- " Dependency on %s via line %s already done" %
- (dependency_sha1[:8], line_num,))
- continue
-
- if dependency_sha1 not in self.dependencies:
- if self.options.recurse:
- self.todo.append(dependency)
- self.todo_d[dependency.hex] = True
- self.logger.debug(" + Added %s to TODO" %
- dependency.hex[:8])
+ self.process_new_dependency(dependent, dependent_sha1,
+ dependency, dependency_sha1,
+ path, line_num)
dep_sources = self.dependencies[dependent_sha1][dependency_sha1]
@@ -278,6 +251,40 @@ class DependencyDetector(object):
return True
return False
+ def process_new_dependency(self,dependent, dependent_sha1,
+ dependency, dependency_sha1,
+ path, line_num):
+ if not self.seen_commit(dependency):
+ self.notify_listeners("new_commit", dependency)
+ self.dependencies[dependent_sha1][dependency_sha1] = {}
+
+ self.notify_listeners("new_dependency",
+ dependent, dependency, path, line_num)
+
+ self.logger.debug(
+ " New dependency %s -> %s via line %s (%s)" %
+ (dependent_sha1[:8], dependency_sha1[:8], line_num,
+ GitUtils.oneline(dependency)))
+
+ if dependency_sha1 in self.todo_d:
+ self.logger.debug(
+ " Dependency on %s via line %s already in TODO"
+ % (dependency_sha1[:8], line_num,))
+ return
+
+ if dependency_sha1 in self.done_d:
+ self.logger.debug(
+ " Dependency on %s via line %s already done" %
+ (dependency_sha1[:8], line_num,))
+ return
+
+ if dependency_sha1 not in self.dependencies:
+ if self.options.recurse:
+ self.todo.append(dependency)
+ self.todo_d[dependency.hex] = True
+ self.logger.debug(" + Added %s to TODO" %
+ dependency.hex[:8])
+
def branch_contains(self, commit, branch):
sha1 = commit.hex
branch_commit = self.get_commit(branch)