Kaydet (Commit) 3bb1edb3 authored tarafından Guido van Rossum's avatar Guido van Rossum

Match the error messages to say "(most recent call last)" like the

built-in messages.
üst d6904ea5
...@@ -97,7 +97,7 @@ def print_exception(etype, value, tb, limit=None, file=None): ...@@ -97,7 +97,7 @@ def print_exception(etype, value, tb, limit=None, file=None):
"""Print exception information and up to 'limit' stack trace entries """Print exception information and up to 'limit' stack trace entries
from the traceback 'tb' to 'file'. This differs from print_tb() in from the traceback 'tb' to 'file'. This differs from print_tb() in
the following ways: (1) if traceback is not None, it prints a header the following ways: (1) if traceback is not None, it prints a header
"Traceback (innermost last):"; (2) it prints the exception type and "Traceback (most recent call last):"; (2) it prints the exception type and
value after the stack trace; (3) if type is SyntaxError and value has value after the stack trace; (3) if type is SyntaxError and value has
the appropriate format, it prints the line where the syntax error the appropriate format, it prints the line where the syntax error
occurred with a caret on the next line indicating the approximate occurred with a caret on the next line indicating the approximate
...@@ -105,7 +105,7 @@ def print_exception(etype, value, tb, limit=None, file=None): ...@@ -105,7 +105,7 @@ def print_exception(etype, value, tb, limit=None, file=None):
if not file: if not file:
file = sys.stderr file = sys.stderr
if tb: if tb:
_print(file, 'Traceback (innermost last):') _print(file, 'Traceback (most recent call last):')
print_tb(tb, limit, file) print_tb(tb, limit, file)
lines = format_exception_only(etype, value) lines = format_exception_only(etype, value)
for line in lines[:-1]: for line in lines[:-1]:
...@@ -120,7 +120,7 @@ def format_exception(etype, value, tb, limit = None): ...@@ -120,7 +120,7 @@ def format_exception(etype, value, tb, limit = None):
these lines are contatenated and printed, exactly the same text is these lines are contatenated and printed, exactly the same text is
printed as does print_exception().""" printed as does print_exception()."""
if tb: if tb:
list = ['Traceback (innermost last):\n'] list = ['Traceback (most recent call last):\n']
list = list + format_tb(tb, limit) list = list + format_tb(tb, limit)
else: else:
list = [] list = []
...@@ -218,8 +218,8 @@ def extract_stack(f=None, limit = None): ...@@ -218,8 +218,8 @@ def extract_stack(f=None, limit = None):
return value has the same format as for extract_tb(). The optional return value has the same format as for extract_tb(). The optional
'f' and 'limit' arguments have the same meaning as for print_stack(). 'f' and 'limit' arguments have the same meaning as for print_stack().
Each item in the list is a quadruple (filename, line number, Each item in the list is a quadruple (filename, line number,
function name, text), and the entries are in order from outermost function name, text), and the entries are in order from oldest
to innermost stack frame.""" to newest stack frame."""
if f is None: if f is None:
try: try:
raise ZeroDivisionError raise ZeroDivisionError
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment