Clean up circup requirements; update base Python version; switch to pyproject.toml?
Motivated by #143.
I do not understand the current state of Python package management well enough to decide what to do here, but:
- #143 suggests adding
setuptoolsto circup's requirements; this is because Python 3.12 no longer providessetuptoolsautomatically . If we switched fromsetup.pytopyproject.toml, would this issue go away? - circup has an
install_requiresinsetup.py, and also has arequirements.txt. My impression is that therequirements.txtdoes not actually serve any purpose and could be deleted. Is that right? - We are currently supporting Python 3.7 and up. Should we move forward from that? If so, to what version?
The requirements.txt file in this repo does seem weird to me. https://github.com/adafruit/circup/blob/main/requirements.txt
There are imports in there that don't seem to actually be required as far as I can tell. Jinja2 caught my eye due to having a dependabot PR open for it. To the best of my knowledge circup doesn't use that, I tried grepping in the repo and the only reference I can find to it is in requirements.txt file.
This file is very long I'm guessing there may be others that aren't actually necessary, this looks like it may be output from someone running pip freeze in a python environment that wasn't a small contained venv for this project only.
I think you are right that it could be removed @dhalbert.
I don't know about the other questions specifically but I do think it would also be nice to switch to pyproject.toml I think for consistency with the majority of libraries.