summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason R. Coombs <jaraco@jaraco.com>2022-10-05 17:29:10 -0400
committerJason R. Coombs <jaraco@jaraco.com>2022-10-05 17:29:10 -0400
commit2aaa95ef623c44c04eb5de484c78fc586b43abc6 (patch)
tree3dd9fa7259a9b3e29ca21dc463c7918a63114337
parent92fc975eb14eea2259875a3814cafadb005c23ef (diff)
downloadpython-setuptools-git-2aaa95ef623c44c04eb5de484c78fc586b43abc6.tar.gz
Extract context manager for suppressing logs. Ref pypa/distutils#183.
-rw-r--r--setuptools/wheel.py25
1 files changed, 17 insertions, 8 deletions
diff --git a/setuptools/wheel.py b/setuptools/wheel.py
index 0ced0ff2..527ed3b2 100644
--- a/setuptools/wheel.py
+++ b/setuptools/wheel.py
@@ -1,13 +1,14 @@
"""Wheels support."""
-from distutils.util import get_platform
-from distutils import log
import email
import itertools
import os
import posixpath
import re
import zipfile
+import contextlib
+
+from distutils.util import get_platform
import pkg_resources
import setuptools
@@ -50,6 +51,19 @@ def unpack(src_dir, dst_dir):
os.rmdir(dirpath)
+@contextlib.contextmanager
+def disable_info_traces():
+ """
+ Temporarily disable info traces.
+ """
+ from distutils import log
+ saved = log.set_threshold(log.WARN)
+ try:
+ yield
+ finally:
+ log.set_threshold(saved)
+
+
class Wheel:
def __init__(self, filename):
@@ -156,17 +170,12 @@ class Wheel:
extras_require=extras_require,
),
)
- # Temporarily disable info traces.
- log_threshold = log._global_log.threshold
- log.set_threshold(log.WARN)
- try:
+ with disable_info_traces():
write_requirements(
setup_dist.get_command_obj('egg_info'),
None,
os.path.join(egg_info, 'requires.txt'),
)
- finally:
- log.set_threshold(log_threshold)
@staticmethod
def _move_data_entries(destination_eggdir, dist_data):