This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author terry.reedy
Recipients georg.brandl, larry, ncoghlan, terry.reedy
Date 2015-03-10.21:25:28
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1426022728.67.0.0261421184633.issue23631@psf.upfronthosting.co.za>
In-reply-to
Content
3.5.0a2, my Win 7 and Guido's new Win laptop: error tracebacks are mangled in a way that makes Idle severely less functional, hence 'release blocker'.  First, the normal behavior.

Python 3.5.0a2 (v3.5.0a2:0337bd7ebcb6+, Mar  9 2015, 10:29:45) [MSC v.1900 64 bi
t (AMD64)] on win32
>>> 1/0
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ZeroDivisionError: division by zero

Idle 3.4.3 and previous give same, with the helpful addition of the code line ('1/0'), as in batch mode tracebacks, since it uses the traceback module.  But Idle 3.5.0a2 started from the installed icon gives

>>> 1/0
Traceback (most recent call last):
Traceback (most recent call last):
Traceback (most recent call last):
  File "C:\Program Files\Python 3.5\lib\idlelib\run.py", line 353, in runcode
    exec(code, self.locals)
  File "<pyshell#1>", line 1, in <module>
ZeroDivisionError: division by zero

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Program Files\Python 3.5\lib\idlelib\run.py", line 126, in main
    ret = method(*args, **kwargs)
  File "C:\Program Files\Python 3.5\lib\idlelib\run.py", line 365, in runcode
    print_exception()
  File "C:\Program Files\Python 3.5\lib\idlelib\run.py", line 216, in print_exception
    print_exc(typ, val, tb)
  File "C:\Program Files\Python 3.5\lib\idlelib\run.py", line 211, in print_exc
    traceback.print_list(tbe, file=efile)
  File "C:\Program Files\Python 3.5\lib\traceback.py", line 22, in print_list
    for item in StackSummary.from_list(extracted_list).format():
  File "C:\Program Files\Python 3.5\lib\traceback.py", line 370, in format
    frame.filename, frame.lineno, frame.name))
AttributeError: 'tuple' object has no attribute 'filename'

>>> ================================ RESTART ================================
>>> 


run.py (as should be more or less everything in idlelib) is identical in 3.4 and 3.5.  Idle started from a command line (py -3 -m idlelib) gives an even worse result.  The Idle Shell just shows

>>> 1/0
Traceback (most recent call last):
Traceback (most recent call last):

>>> ================================ RESTART ================================
>>> 


while the following appears in the command window (Command Prompt or PowerShell).

Traceback (most recent call last):
  File "C:\Program Files\Python 3.5\lib\idlelib\run.py", line 353, in runcode
    exec(code, self.locals)
  File "<pyshell#0>", line 1, in <module>
ZeroDivisionError: division by zero

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Program Files\Python 3.5\lib\idlelib\run.py", line 126, in main
    ret = method(*args, **kwargs)
  File "C:\Program Files\Python 3.5\lib\idlelib\run.py", line 365, in runcode
    print_exception()
  File "C:\Program Files\Python 3.5\lib\idlelib\run.py", line 216, in print_exception
    print_exc(typ, val, tb)
  File "C:\Program Files\Python 3.5\lib\idlelib\run.py", line 211, in print_exc
    traceback.print_list(tbe, file=efile)
  File "C:\Program Files\Python 3.5\lib\traceback.py", line 22, in print_list
    for item in StackSummary.from_list(extracted_list).format():
  File "C:\Program Files\Python 3.5\lib\traceback.py", line 370, in format
    frame.filename, frame.lineno, frame.name))
AttributeError: 'tuple' object has no attribute 'filename'
Exception in Tkinter callback
Traceback (most recent call last):
  File "C:\Program Files\Python 3.5\lib\idlelib\rpc.py", line 359, in pollpacket
    s = self.sock.recv(BUFSIZE)
ConnectionResetError: [WinError 10054] An existing connection was forcibly closed by the r

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Program Files\Python 3.5\lib\idlelib\rpc.py", line 432, in pollresponse
    message = self.pollmessage(wait)
  File "C:\Program Files\Python 3.5\lib\idlelib\rpc.py", line 384, in pollmessage
    packet = self.pollpacket(wait)
  File "C:\Program Files\Python 3.5\lib\idlelib\rpc.py", line 361, in pollpacket
    raise EOFError
EOFError

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Program Files\Python 3.5\lib\idlelib\PyShell.py", line 565, in poll_subprocess
    response = clt.pollresponse(self.active_seq, wait=0.05)
  File "C:\Program Files\Python 3.5\lib\idlelib\rpc.py", line 436, in pollresponse
    self.handle_EOF()
  File "C:\Program Files\Python 3.5\lib\idlelib\PyShell.py", line 383, in handle_EOF
    raise EOFError
EOFError

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
ValueError: invalid literal for int() with base 10: '??'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Program Files\Python 3.5\lib\tkinter\__init__.py", line 1534, in __call__
    args = self.subst(*args)
  File "C:\Program Files\Python 3.5\lib\tkinter\__init__.py", line 1252, in _substitute
    e.num = getint_event(b)
  File "C:\Program Files\Python 3.5\lib\tkinter\__init__.py", line 1231, in getint_event
    return int(s)
SystemError: result with error in PyObject_Call


This needs to be checked on another OS, but the traceback problem does not strike me as Windows-specific.
History
Date User Action Args
2015-03-10 21:25:28terry.reedysetrecipients: + terry.reedy, georg.brandl, ncoghlan, larry
2015-03-10 21:25:28terry.reedysetmessageid: <1426022728.67.0.0261421184633.issue23631@psf.upfronthosting.co.za>
2015-03-10 21:25:28terry.reedylinkissue23631 messages
2015-03-10 21:25:28terry.reedycreate