The entire distutils package is deprecated, to be removed in Python 3.12. Its functionality for specifying package builds has already been completely replaced by third-party packages setuptools and packaging, and most other commonly used APIs are available elsewhere in the standard library (such as platform, shutil, subprocess or sysconfig). There are no plans to migrate any other functionality from distutils, and applications that are using other functions should plan to make private copies of the code. Refer to PEP 632 for discussion.
setup.py
still uses the deprecated distutils which will be removed in Python 3.12.From What’s New In Python 3.10:
Porting from Distutils suggests using
setuptools.setup
instead ofdistutils.core.setup
.Because
setup_requires
is deprecated, PEP 517 (pyproject.toml
) is used for the build time dependencies.