Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[Python] Deprecate distutils for setuptools when possible
In CPython 3.10 distutils was formally marked as deprecated and it will be removed from CPython in 3.12. To avoid complications, deprecate use of distutils moving forward in favor of using setuptools as recommended. For Python 3.7+ (which should by default have pip v22.0.0+ and setuptools v57.5.0+) use: * `setuptools._distutils.core` over `distutils.core` * CPython's sysconfig library over `distutils.sysconfig` If `setuptools._distutils` (added in setuptools v48.0.0) is not available in the Python 3 environment, fall back to using `distutils.core` and `distutils.sysconfig`. For Python < 3.7 (so Python 3.6 only for all intents and purposes) there is an upper limit on setuptools versions that will work with sysconfig of setuptools v47.3.2 given how setup.py.in is currently written. To avoid problems, fall back to distutils.sysconfig in the event that setuptools is v48.0.0+. Additional supporting advice given in: * https://setuptools.pypa.io/en/latest/deprecated/distutils-legacy.html * https://peps.python.org/pep-0632/#migration-advice
- Loading branch information