From c0085e87c69629ec3cf24dfce887c0fb93fa80dd Mon Sep 17 00:00:00 2001 From: "Jason R. Coombs" Date: Wed, 2 Sep 2020 17:41:38 -0400 Subject: Make stdlib distutils the default again. Stop the burning. Ref #2350 and others. --- _distutils_hack/__init__.py | 2 +- changelog.d/2350.change.rst | 1 + setup.py | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) create mode 100644 changelog.d/2350.change.rst diff --git a/_distutils_hack/__init__.py b/_distutils_hack/__init__.py index 2bc6df7a..3325817b 100644 --- a/_distutils_hack/__init__.py +++ b/_distutils_hack/__init__.py @@ -37,7 +37,7 @@ def enabled(): """ Allow selection of distutils by environment variable. """ - which = os.environ.get('SETUPTOOLS_USE_DISTUTILS', 'local') + which = os.environ.get('SETUPTOOLS_USE_DISTUTILS', 'stdlib') return which == 'local' diff --git a/changelog.d/2350.change.rst b/changelog.d/2350.change.rst new file mode 100644 index 00000000..c06930e6 --- /dev/null +++ b/changelog.d/2350.change.rst @@ -0,0 +1 @@ +Setuptools reverts using the included distutils by default. Platform maintainers and system integrators and others are *strongly* encouraged to set ``SETUPTOOLS_USE_DISTUTILS=local`` to help identify and work through the reported issues with distutils adoption, mainly to file issues and pull requests with pypa/distutils such that distutils performs as needed across every supported environment. diff --git a/setup.py b/setup.py index 34654e19..2bd48daa 100755 --- a/setup.py +++ b/setup.py @@ -100,7 +100,7 @@ class install_with_pth(install): _pth_contents = textwrap.dedent(""" import os var = 'SETUPTOOLS_USE_DISTUTILS' - enabled = os.environ.get(var, 'local') == 'local' + enabled = os.environ.get(var, 'stdlib') == 'local' enabled and __import__('_distutils_hack').add_shim() """).lstrip().replace('\n', '; ') -- cgit v1.2.1 From 9e7261b46e42591218ef3e5b6630ab5e2ea13adc Mon Sep 17 00:00:00 2001 From: "Jason R. Coombs" Date: Wed, 2 Sep 2020 19:27:44 -0400 Subject: Update tests to specify local or stdlib for stability under default value. --- setuptools/tests/test_distutils_adoption.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/setuptools/tests/test_distutils_adoption.py b/setuptools/tests/test_distutils_adoption.py index 8edd3f9b..a53773df 100644 --- a/setuptools/tests/test_distutils_adoption.py +++ b/setuptools/tests/test_distutils_adoption.py @@ -56,7 +56,8 @@ def test_distutils_local_with_setuptools(venv): """ Ensure local distutils is used when appropriate. """ - loc = find_distutils(venv, imports='setuptools, distutils', env=dict()) + env = dict(SETUPTOOLS_USE_DISTUTILS='local') + loc = find_distutils(venv, imports='setuptools, distutils', env=env) assert venv.name in loc.split(os.sep) @@ -66,4 +67,5 @@ def test_distutils_local(venv): Even without importing, the setuptools-local copy of distutils is preferred. """ - assert venv.name in find_distutils(venv, env=dict()).split(os.sep) + env = dict(SETUPTOOLS_USE_DISTUTILS='local') + assert venv.name in find_distutils(venv, env=env).split(os.sep) -- cgit v1.2.1