Use pygit2 instead of GitPython and OS git binary #129
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Purpose and background context
OGM harvests require a fair amount of git functionality to interact with the OGM repositories. Previously was using GitPython for some operations, and then using the OS level git binary + subprocess for some detailed file diff information as GitPython did not provide this.
It was discovered that
pygit2
(link) would support all operations needed, and is ultimately more low level and flexible if needed.How can a reviewer manually see the effects of these changes?
Functionality is the same, but the test suite has been updated to create the simulated OGM repositories with
pygit2
, and the OGM harvester now performs git cloning, reading commits, and reading of file diffs usingpygit2
as well.Includes new or updated dependencies?
YES
Changes expectations for external applications?
NO
What are the relevant tickets?
Developer
Code Reviewer(s)