This PR prepares perspective for Python 3.12, where distutils has been removed. For our build steps, we now use the vendored distutils inside setuptools, with setuptools pinned to the version currently locked in CI to prevent future breakages. For the one minimal runtime usage, we provide a strtobool function (our usage of this function from distutils was very leftpad-y 😄 ).
This PR prepares perspective for Python 3.12, where
distutils
has been removed. For our build steps, we now use the vendoreddistutils
insidesetuptools
, withsetuptools
pinned to the version currently locked in CI to prevent future breakages. For the one minimal runtime usage, we provide astrtobool
function (our usage of this function fromdistutils
was veryleftpad
-y 😄 ).fixes #2457