Skip to content

Commit dd1d678

Browse files
authored
BUG: fix suppress_warnings when context-aware warnings is on (numpy#31628)
1 parent 75fa3e1 commit dd1d678

1 file changed

Lines changed: 4 additions & 4 deletions

File tree

numpy/testing/_private/utils.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2478,8 +2478,8 @@ def __enter__(self):
24782478
raise RuntimeError("cannot enter suppress_warnings twice.")
24792479

24802480
self._orig_show = warnings.showwarning
2481-
self._filters = warnings.filters
2482-
warnings.filters = self._filters[:]
2481+
self._catch_warnings = warnings.catch_warnings()
2482+
self._catch_warnings.__enter__()
24832483

24842484
self._entered = True
24852485
self._tmp_suppressions = []
@@ -2507,11 +2507,11 @@ def __enter__(self):
25072507

25082508
def __exit__(self, *exc_info):
25092509
warnings.showwarning = self._orig_show
2510-
warnings.filters = self._filters
2510+
self._catch_warnings.__exit__(*exc_info)
25112511
self._clear_registries()
25122512
self._entered = False
25132513
del self._orig_show
2514-
del self._filters
2514+
del self._catch_warnings
25152515

25162516
def _showwarning(self, message, category, filename, lineno,
25172517
*args, use_warnmsg=None, **kwargs):

0 commit comments

Comments
 (0)