Skip to content

Commit

Permalink
bpo-11105: document the new test.support.infinite_recursion context m…
Browse files Browse the repository at this point in the history
…anager (pythonGH-26604)
  • Loading branch information
isidentical committed Jun 8, 2021
1 parent e58d762 commit 8004c45
Showing 1 changed file with 7 additions and 1 deletion.
8 changes: 7 additions & 1 deletion Lib/test/support/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@
# processes
"reap_children",
# miscellaneous
"run_with_locale", "swap_item", "findfile",
"run_with_locale", "swap_item", "findfile", "infinite_recursion",
"swap_attr", "Matcher", "set_memlimit", "SuppressCrashReport", "sortdict",
"run_with_tz", "PGO", "missing_compiler_executable",
"ALWAYS_EQ", "NEVER_EQ", "LARGEST", "SMALLEST",
Expand Down Expand Up @@ -2002,6 +2002,12 @@ def check_disallow_instantiation(testcase, tp, *args, **kwds):

@contextlib.contextmanager
def infinite_recursion(max_depth=75):
"""Set a lower limit for tests that interact with infinite recursions
(e.g test_ast.ASTHelpers_Test.test_recursion_direct) since on some
debug windows builds, due to not enough functions being inlined the
stack size might not handle the default recursion limit (1000). See
bpo-11105 for details."""

original_depth = sys.getrecursionlimit()
try:
sys.setrecursionlimit(max_depth)
Expand Down

0 comments on commit 8004c45

Please sign in to comment.