aboutsummaryrefslogtreecommitdiffstats
path: root/git_deps/detector.py
Commit message (Collapse)AuthorAgeFilesLines
* fix undefined parent variable bugAdam Spiers2018-09-111-4/+6
| | | | | This was introduced by recent refactoring which split blame_hunk() into several smaller methods.
* move more important debug to INFO levelAdam Spiers2018-09-111-14/+14
| | | | | In the future, this will let us control the verbosity of the debug output.
* clarify that the hunk gets listed later in the debugAdam Spiers2018-09-101-1/+1
|
* rename blame_hunk to blame_diff_hunkAdam Spiers2018-09-101-2/+2
| | | | This makes it a bit clearer where the hunk came from.
* tweak indentation to make debug easier to followAdam Spiers2018-09-091-3/+3
|
* fix indentation when debugging hunksAdam Spiers2018-09-091-1/+1
|
* extract process_hunk_line() methodAdam Spiers2018-09-091-24/+30
|
* extract debug_hunk() methodAdam Spiers2018-09-091-0/+5
|
* extract record_dependency_source() methodAdam Spiers2018-09-091-19/+26
|
* extract process_new_dependency() methodAdam Spiers2018-09-091-30/+37
|
* extract register_new_dependent() methodAdam Spiers2018-09-091-5/+8
|
* reflow some doc stringsAdam Spiers2018-09-091-11/+11
|
* extract run_blame() methodAdam Spiers2018-09-091-7/+10
|
* fix Python 3 uses of subprocess.check_outputAdam Spiers2018-05-161-2/+2
| | | | https://stackoverflow.com/questions/15817420/subprocess-and-type-str-doesnt-support-the-buffer-api/15817457#15817457
* notify of new dependency even if target already doneAdam Spiers2018-05-151-8/+12
| | | | | | | | | When a new dependency is discovered, its target may have already been placed on the TODO list via a different source (and maybe even analysed for dependencies), e.g. if find_dependencies() was previously called on it, or if it was previously found via recursion. In this case we still need to notify listeners of the dependency, even though we won't add it to the TODO list.
* allow DependencyDetector to be reusedAdam Spiers2018-05-151-0/+6
| | | | | | | | Avoid any errors if find_dependencies() is called repeatedly. Previously this could fail when recursion was enabled, because a commit could be processed via recursion, and then again via a subsequent call to the TODO list, at which point the sanity check that each blame line hadn't been seen before would fail.
* improve blame line trackingAdam Spiers2018-05-151-4/+9
|
* use dependent_sha1 temporary variableAdam Spiers2018-05-151-6/+7
| | | | Avoid calling hex() repeatedly
* improve debuggingAdam Spiers2018-05-151-24/+32
|
* move Repository instantiation to GitUtilsAdam Spiers2018-05-151-8/+5
|
* extract GitUtils.ref_commit() functionAdam Spiers2018-05-151-7/+1
|
* extract commit_summary() function into gitutils.pyAdam Spiers2018-05-151-2/+2
| | | | This helper can be reused elsewhere, e.g. in git-explode.
* move oneline() to gitutils.pyAdam Spiers2018-05-151-6/+5
| | | | | It has nothing to do with DependencyDetector, and this will let us reuse it from git-explode too.
* fix handling of annotated tagsAdam Spiers2018-05-151-1/+4
| | | | | | pygit2.revparse_single(annotated_tag) returns a pygit2.Tag object, and this extra layer of indirection has to be resolved to obtain the pygit2.Commit.
* move instantiation of standard logger to utils.pyAdam Spiers2018-05-151-8/+3
|
* move debug logger setup to utils.pyAdam Spiers2018-05-151-13/+2
| | | | This is cleaner and will allow it to be reused elsewhere.
* fix PEP8 issuesAdam Spiers2018-05-151-3/+3
|
* convert into a proper Python moduleAdam Spiers2018-05-151-0/+332
Sem-Ver: api-break