[Python-checkins] cpython (3.5): Issue #28688: Remove warnings.filters check from regrtest

victor.stinner python-checkins at python.org
Mon Nov 21 10:46:26 EST 2016


https://hg.python.org/cpython/rev/75b1091594f8
changeset:   105283:75b1091594f8
branch:      3.5
parent:      105277:4d2888039631
user:        Victor Stinner <victor.stinner at gmail.com>
date:        Mon Nov 21 16:44:01 2016 +0100
summary:
  Issue #28688: Remove warnings.filters check from regrtest

Reloading the warnings module duplicates filters in warnings.filters. Fixing
the issue is tricky. It was decided to simply remove the check from Python 3.5,
since the bug only impacts Python unit tests, not real applications.

The check is kept in Python 3.6 and newer.

files:
  Lib/test/regrtest.py |  8 +-------
  1 files changed, 1 insertions(+), 7 deletions(-)


diff --git a/Lib/test/regrtest.py b/Lib/test/regrtest.py
--- a/Lib/test/regrtest.py
+++ b/Lib/test/regrtest.py
@@ -1052,7 +1052,7 @@
 
     resources = ('sys.argv', 'cwd', 'sys.stdin', 'sys.stdout', 'sys.stderr',
                  'os.environ', 'sys.path', 'sys.path_hooks', '__import__',
-                 'warnings.filters', 'asyncore.socket_map',
+                 'asyncore.socket_map',
                  'logging._handlers', 'logging._handlerList', 'sys.gettrace',
                  'sys.warnoptions',
                  # multiprocessing.process._cleanup() may release ref
@@ -1118,12 +1118,6 @@
     def restore___import__(self, import_):
         builtins.__import__ = import_
 
-    def get_warnings_filters(self):
-        return id(warnings.filters), warnings.filters, warnings.filters[:]
-    def restore_warnings_filters(self, saved_filters):
-        warnings.filters = saved_filters[1]
-        warnings.filters[:] = saved_filters[2]
-
     def get_asyncore_socket_map(self):
         asyncore = sys.modules.get('asyncore')
         # XXX Making a copy keeps objects alive until __exit__ gets called.

-- 
Repository URL: https://hg.python.org/cpython


More information about the Python-checkins mailing list