Terry J. Reedy <tjre...@udel.edu> added the comment:

With 3.9, exc.py produces for me

Traceback (most recent call last):
  File "F:\Python\a\tem3.py", line 3, in f
    raise ValueError('hello')
ValueError: hello

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "F:\Python\a\tem3.py", line 3, in f
    raise ValueError('hello')
ValueError: hello
...
During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "F:\Python\a\tem3.py", line 11, in <module>
    f()
  File "F:\Python\a\tem3.py", line 5, in f
    f()
  File "F:\Python\a\tem3.py", line 5, in f
    f()
  File "F:\Python\a\tem3.py", line 5, in f
    f()
  [Previous line repeated 992 more times]
  File "F:\Python\a\tem3.py", line 3, in f
    raise ValueError('hello')
RecursionError: maximum recursion depth exceeded while calling a Python object

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Programs\Python310\lib\runpy.py", line 197, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "C:\Programs\Python310\lib\runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "F:\Python\a\tem3.py", line 14, in <module>
    print_exception(exc_info[0], exc_info[1], exc_info[2], None)
  File "C:\Programs\Python310\lib\traceback.py", line 113, in print_exception
    for line in TracebackException(
  File "C:\Programs\Python310\lib\traceback.py", line 503, in __init__
    context = TracebackException(
  File "C:\Programs\Python310\lib\traceback.py", line 503, in __init__
    context = TracebackException(
  File "C:\Programs\Python310\lib\traceback.py", line 503, in __init__
    context = TracebackException(
  [Previous line repeated 494 more times]
RecursionError: maximum recursion depth exceeded

This ends the same way as in #42848.


The patch in #42848 will appear in 3.10.0a5 in March.  Guido and Irit decided 
not to backport at the patch is as much a refactoring as a fix.

On a fresh repository build, exc.py ends with 

Traceback (most recent call last):
  File "f:\python\a\tem3.py", line 3, in f
    raise ValueError('hello')
ValueError: hello

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "f:\python\a\tem3.py", line 11, in <module>
    f()
  File "f:\python\a\tem3.py", line 5, in f
    f()
  File "f:\python\a\tem3.py", line 5, in f
    f()
  File "f:\python\a\tem3.py", line 5, in f
    f()
  [Previous line repeated 995 more times]
  File "f:\python\a\tem3.py", line 3, in f
    raise ValueError('hello')
RecursionError: maximum recursion depth exceeded while calling a Python object
got to the finish line!

I believe this is the expected improvement.

----------
nosy: +terry.reedy
stage:  -> resolved
status: pending -> closed
type:  -> behavior
versions: +Python 3.10 -Python 3.6, Python 3.7

_______________________________________
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue43048>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to