8000 gh-121084: Fix test_typing random leaks (#121360) · estyxx/cpython@289b85b · GitHub
[go: up one dir, main page]

Skip to content

Commit 289b85b

Browse files
vstinnerestyxx
authored andcommitted
pythongh-121084: Fix test_typing random leaks (python#121360)
Clear typing ABC caches when running tests for refleaks (-R option): call _abc_caches_clear() on typing abstract classes and their subclasses.
1 parent dee6975 commit 289b85b

File tree

2 files changed

+9
-0
lines changed

2 files changed

+9
-0
lines changed

Lib/test/libregrtest/utils.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -264,6 +264,12 @@ def clear_caches():
264264
for f in typing._cleanups:
265265
f()
266266

267+
import inspect
268+
abs_classes = filter(inspect.isabstract, typing.__dict__.values())
269+
for abc in abs_classes:
270+
for obj in abc.__subclasses__() + [abc]:
271+
obj._abc_caches_clear()
272+
267273
try:
268274
fractions = sys.modules['fractions']
269275
except KeyError:
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
Fix test_typing random leaks. Clear typing ABC caches when running tests for
2+
refleaks (``-R`` option): call ``_abc_caches_clear()`` on typing abstract
3+
classes and their subclasses. Patch by Victor Stinner.

0 commit comments

Comments
 (0)
0