From 9e94acb74e44872f3c9d7f708dff373a1e0d0663 Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Wed, 14 Apr 2021 15:38:19 +0200 Subject: [PATCH 1/2] bpo-41282: setup.py ignores distutils DeprecationWarning --- setup.py | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/setup.py b/setup.py index 253053da7fb47a..0723f588a58a69 100644 --- a/setup.py +++ b/setup.py @@ -8,6 +8,7 @@ import re import sys import sysconfig +import warnings from glob import glob, escape import _osx_support @@ -30,14 +31,18 @@ SUBPROCESS_BOOTSTRAP = True -from distutils import log -from distutils.command.build_ext import build_ext -from distutils.command.build_scripts import build_scripts -from distutils.command.install import install -from distutils.command.install_lib import install_lib -from distutils.core import Extension, setup -from distutils.errors import CCompilerError, DistutilsError -from distutils.spawn import find_executable +with warnings.catch_warnings(): + # bpo-41282 (PEP 632) deprecated distutils but setup.py still uses it + warnings.simplefilter("ignore", DeprecationWarning) + + from distutils import log + from distutils.command.build_ext import build_ext + from distutils.command.build_scripts import build_scripts + from distutils.command.install import install + from distutils.command.install_lib import install_lib + from distutils.core import Extension, setup + from distutils.errors import CCompilerError, DistutilsError + from distutils.spawn import find_executable # Compile extensions used to test Python? From 7fd94bf9cbbc78cb476c1f050f819465a0745733 Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Wed, 14 Apr 2021 16:10:52 +0200 Subject: [PATCH 2/2] Specify the warning message --- setup.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/setup.py b/setup.py index 0723f588a58a69..f8b7a17e772b11 100644 --- a/setup.py +++ b/setup.py @@ -33,7 +33,8 @@ with warnings.catch_warnings(): # bpo-41282 (PEP 632) deprecated distutils but setup.py still uses it - warnings.simplefilter("ignore", DeprecationWarning) + warnings.filterwarnings("ignore", "The distutils package is deprecated", + DeprecationWarning) from distutils import log from distutils.command.build_ext import build_ext