diff options
author | Guido van Rossum <guido@python.org> | 2007-08-05 15:29:28 (GMT) |
---|---|---|
committer | Guido van Rossum <guido@python.org> | 2007-08-05 15:29:28 (GMT) |
commit | 33d2689fc900a814f0a7d2f846abe0c34024ae17 (patch) | |
tree | 1ecddf8b9e18933d1fd90d5eda510908ec71695b /Lib/code.py | |
parent | 77553ab531c6a98c3d06b7ba4158b06ed0af8c69 (diff) | |
download | cpython-33d2689fc900a814f0a7d2f846abe0c34024ae17.zip cpython-33d2689fc900a814f0a7d2f846abe0c34024ae17.tar.gz cpython-33d2689fc900a814f0a7d2f846abe0c34024ae17.tar.bz2 |
Merged revisions 56492-56752 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/p3yk
........
r56497 | kurt.kaiser | 2007-07-22 14:55:16 -0700 (Sun, 22 Jul 2007) | 4 lines
In the case of syntax errors, in py3k format_exception_only()
was including line number and position in the final line of the
exception notification, duplicating info in previous lines.
........
r56501 | kurt.kaiser | 2007-07-22 19:35:50 -0700 (Sun, 22 Jul 2007) | 2 lines
Hum, needed a newline in the last change.
........
r56536 | kurt.kaiser | 2007-07-24 19:06:48 -0700 (Tue, 24 Jul 2007) | 5 lines
Not all instantiations of SyntaxError set the args attribute.
e.g. symtable.c
Modify format_exception_only() to get SyntaxError attributes directly
instead of unpacking 'args'.
........
r56537 | kurt.kaiser | 2007-07-24 19:13:03 -0700 (Tue, 24 Jul 2007) | 3 lines
Update doctest strings: traceback.py no longer prints redundant location
information in the last line of the exception display.
........
r56627 | kurt.kaiser | 2007-07-29 21:06:57 -0700 (Sun, 29 Jul 2007) | 2 lines
Interactive interpreter emulator (code.py) failing to print exceptions.
........
r56628 | kurt.kaiser | 2007-07-29 21:41:02 -0700 (Sun, 29 Jul 2007) | 2 lines
Eliminate extra lines before and after tracebacks.
........
r56638 | kurt.kaiser | 2007-07-31 19:36:45 -0700 (Tue, 31 Jul 2007) | 3 lines
Refactor syntax error display in shell and edit windows; move
colorize_syntax_error() to EditorWindow; update to py3k.
........
r56685 | neal.norwitz | 2007-08-02 22:20:23 -0700 (Thu, 02 Aug 2007) | 10 lines
Remove several h/w and o/s specific modules that are undocumented, obsolete,
and/or not widely used:
linuxaudiodev.c, sunaudiodev.c Lib/plat-sunos5/SUNAUDIODEV.py
Lib/audiodev.py Tools/audiopy/audiopy
Move Lib/toaiff.py to Demo.
See PEP 3108 for most of the details.
........
r56686 | neal.norwitz | 2007-08-02 22:21:48 -0700 (Thu, 02 Aug 2007) | 4 lines
Missed one module that should have been removed since it relied
on audiodev which was removed.
........
r56748 | neal.norwitz | 2007-08-04 19:19:04 -0700 (Sat, 04 Aug 2007) | 1 line
Make from X import * outside module scope an error.
........
r56750 | neal.norwitz | 2007-08-04 19:35:01 -0700 (Sat, 04 Aug 2007) | 1 line
Use READONLY consistently instead of RO
........
Diffstat (limited to 'Lib/code.py')
-rw-r--r-- | Lib/code.py | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/Lib/code.py b/Lib/code.py index 7182777..58af883 100644 --- a/Lib/code.py +++ b/Lib/code.py @@ -111,16 +111,16 @@ class InteractiveInterpreter: if filename and type is SyntaxError: # Work hard to stuff the correct filename in the exception try: - msg, (dummy_filename, lineno, offset, line) = value - except: + msg, (dummy_filename, lineno, offset, line) = value.args + except ValueError: # Not the format we expect; leave it alone pass else: # Stuff in the right filename value = SyntaxError(msg, (filename, lineno, offset, line)) sys.last_value = value - list = traceback.format_exception_only(type, value) - map(self.write, list) + lines = traceback.format_exception_only(type, value) + self.write(''.join(lines)) def showtraceback(self): """Display the exception that just occurred. @@ -137,13 +137,13 @@ class InteractiveInterpreter: sys.last_traceback = tb tblist = traceback.extract_tb(tb) del tblist[:1] - list = traceback.format_list(tblist) - if list: - list.insert(0, "Traceback (most recent call last):\n") - list[len(list):] = traceback.format_exception_only(type, value) + lines = traceback.format_list(tblist) + if lines: + lines.insert(0, "Traceback (most recent call last):\n") + lines.extend(traceback.format_exception_only(type, value)) finally: tblist = tb = None - map(self.write, list) + self.write(''.join(lines)) def write(self, data): """Write a string. @@ -184,7 +184,7 @@ class InteractiveConsole(InteractiveInterpreter): def interact(self, banner=None): """Closely emulate the interactive Python console. - The optional banner argument specify the banner to print + The optional banner argument specifies the banner to print before the first interaction; by default it prints a banner similar to the one printed by the real Python interpreter, followed by the current class name in parentheses (so as not |