OpenBagTwo / gsb

A tool for managing incremental backups of your save states using Git!
https://openbagtwo.github.io/gsb/
GNU General Public License v3.0
0 stars 0 forks source link

Expand test grid to cover multiple git versions #15

Closed OpenBagTwo closed 1 year ago

OpenBagTwo commented 1 year ago

Is your feature request related to a problem? Please describe.

Even though the plan is to interact with Git :100: through GitPython, it's not entirely clear to me looking over the Git changelog that I won't ever have compatibility issues due to Git being either too old or too new.

For now, I'm declaring (83e45bf0b1f39c1008470ce41abbfa6499272f10) that gsb requires Git 2.30 or newer (with 2.30 being the oldest currently supported version as of this writing), and I'm including git 2.30 in the development environment, but the current unit-testing CI action doesn't use a conda environment, so it'll just be using whatever version of Git is included on all the runners.

Describe the solution you'd like

Either:

  1. Find a Marketplace Action to install a specific Git, or
  2. Change the test runner to use a (barebones) conda env with a configurable git version

And then expand the matrix https://github.com/OpenBagTwo/gsb/blob/83e45bf0b1f39c1008470ce41abbfa6499272f10/.github/workflows/pull_request.yml#L27-L30 to test both:

Describe alternatives you've considered

  1. :crossed_fingers: and hope that GitPython has all my compatibility woes covered
  2. switch from GitPython, which appears to be in maintenance mode :scream: to a pure (or at least purer?) Python Git implementation (see below):

Additional context