flyingcircusio / batou

batou is a universal, fractal deployment utility using Python.
https://batou.readthedocs.org
Other
47 stars 12 forks source link

Python 3.12 support #402

Closed wosc closed 5 days ago

wosc commented 8 months ago

So far, I've come across two separate points in this regard, both relating to the removal of distutils/setuptools from the stdlib:

You now need to install setuptools explicitly into the venv, because it does not happen by default anymore. This has the added complication that pip freeze on previous Python versions does not include setuptools, so appenv-update-lockfile does not put it in the requirements.lock -- which probably made sense previously, since setuptools was "managed by venv", but now it isn't anymore. (My workaround is adding it to the lockfile manually.)

The "are we on a lobotomized debian python without pip" sanity check now always fails, because it uses import distutils as part of its detection. I don't know what the updated version of this should look like.