Consider switching away from GitPython #66
Labels
design decision needed
Maintainers must agree on a direction before this is worked on
enhancement
New feature or request
help wanted
Extra attention is needed
Milestone
Feature Request
Is your feature request related to a problem? Please describe.
GitPython
is "in maintenance mode", and has no active development or even active bugfixing. It does not play well with Windows. And it's actually mostly a wrapper around thegit
command line application. Which seems... strange.Describe the solution you'd like
I would like to see us move away from using
GitPython
, with the hopes of adding first-class Windows support and improving some of the performance of this application.Describe alternatives you've considered
One option is for us to take over maintenance of
GitPython
. Honestly, that's just not realistic. So let's scratch that one immediately.A larger discussion around this can be found in the
dvc
project. A lot of good information on the topic can be found in that thread, along with two alternatives:I am leaning toward
dulwich
at the moment. It's pure Python, and looks a little higher level thanpygit2
. In general I'm okay with low level APIs, but it seems to me thatpygit2
is just a bit too low level/primitive. For example, this is how you clone a repo over SSH. I would rather not have to get that far into the weeds.Teachability, Documentation, Adoption, Migration Strategy
This change should be transparent to the user, with the only changes being actual Windows support and hopefully improved performance.
The text was updated successfully, but these errors were encountered: