From 57fdcbc60ff8bbb0261f5dba47580194d45c31a3 Mon Sep 17 00:00:00 2001 From: Anthony Baxter Date: Thu, 13 Apr 2006 01:34:33 +0000 Subject: reverting r45321: Patch #860326: traceback.format_exception_only() now prepends the exception's module name to non-builtin exceptions, like the interpreter itself does. broke a number of doctests. should be discussed before checking in (see discussion on python-dev). --- Lib/test/test_traceback.py | 21 --------------------- Lib/traceback.py | 6 +----- Misc/NEWS | 4 ---- 3 files changed, 1 insertion(+), 30 deletions(-) diff --git a/Lib/test/test_traceback.py b/Lib/test/test_traceback.py index 26ab7dc..22c0456 100644 --- a/Lib/test/test_traceback.py +++ b/Lib/test/test_traceback.py @@ -5,9 +5,6 @@ from test.test_support import run_unittest, is_jython import traceback -class TbError(Exception): - pass - class TracebackCases(unittest.TestCase): # For now, a very minimal set of tests. I want to be sure that # formatting of SyntaxErrors works based on changes for 2.1. @@ -106,24 +103,6 @@ def test(): import sys sys.exc_traceback.__members__ - def raise_tberror(self): - raise TbError - - def raise_typeerror(self): - raise TypeError - - def test_modulename(self): - # Bug 860326: format_exception_only should prepend module name - # to exceptions not in "exceptions", like PyErr_Print does. - err = self.get_exception_format(self.raise_tberror, TbError) - self.assertEquals(len(err), 1) - self.assert_(err[0] == '__main__.TbError\n' or - err[0] == 'test.test_traceback.TbError\n') - - err = self.get_exception_format(self.raise_typeerror, TypeError) - self.assertEquals(err[0], 'TypeError\n') - - def test_main(): run_unittest(TracebackCases) diff --git a/Lib/traceback.py b/Lib/traceback.py index 56a87dc..454eb1b 100644 --- a/Lib/traceback.py +++ b/Lib/traceback.py @@ -158,12 +158,8 @@ def format_exception_only(etype, value): """ list = [] if (type(etype) == types.ClassType - or (isinstance(etype, type) and issubclass(etype, BaseException))): + or (isinstance(etype, type) and issubclass(etype, Exception))): stype = etype.__name__ - if not hasattr(etype, '__module__'): - stype = '.' + stype - elif etype.__module__ != 'exceptions': - stype = etype.__module__ + '.' + stype else: stype = etype if value is None: diff --git a/Misc/NEWS b/Misc/NEWS index 5ee249f..1e242d0 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -49,10 +49,6 @@ Extension Modules Library ------- -- Patch #860326: traceback.format_exception_only() now prepends the - exception's module name to non-builtin exceptions, like the interpreter - itself does. - - SimpleXMLRPCServer relied on the fcntl module, which is unavailable on Windows. Bug #1469163. -- cgit v0.12