From: Benjamin Peterson Date: Thu, 16 Oct 2008 19:40:14 +0000 (+0000) Subject: use new showwarnings signature for idle #3391 X-Git-Tag: v2.7a1~2732 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b76444b2fa39a99984ffa4bcfa9806fbb091594a;p=thirdparty%2FPython%2Fcpython.git use new showwarnings signature for idle #3391 --- diff --git a/Lib/idlelib/PyShell.py b/Lib/idlelib/PyShell.py index a17f81ff402e..c1b98a059f4a 100644 --- a/Lib/idlelib/PyShell.py +++ b/Lib/idlelib/PyShell.py @@ -55,18 +55,22 @@ try: except ImportError: pass else: - def idle_showwarning(message, category, filename, lineno): + def idle_showwarning(message, category, filename, lineno, + file=None, line=None): file = warning_stream try: - file.write(warnings.formatwarning(message, category, filename, lineno)) + file.write(warnings.formatwarning(message, category, filename,\ + lineno, file=file, line=line)) except IOError: pass ## file (probably __stderr__) is invalid, warning dropped. warnings.showwarning = idle_showwarning - def idle_formatwarning(message, category, filename, lineno): + def idle_formatwarning(message, category, filename, lineno, + file=None, line=None): """Format warnings the IDLE way""" s = "\nWarning (from warnings module):\n" s += ' File \"%s\", line %s\n' % (filename, lineno) - line = linecache.getline(filename, lineno).strip() + line = linecache.getline(filename, lineno).strip() \ + if line is None else line if line: s += " %s\n" % line s += "%s: %s\n>>> " % (category.__name__, message) diff --git a/Lib/idlelib/run.py b/Lib/idlelib/run.py index 35a50314ca8c..abe94abc8b9c 100644 --- a/Lib/idlelib/run.py +++ b/Lib/idlelib/run.py @@ -25,11 +25,12 @@ except ImportError: pass else: def idle_formatwarning_subproc(message, category, filename, lineno, - line=None): + file=None, line=None): """Format warnings the IDLE way""" s = "\nWarning (from warnings module):\n" s += ' File \"%s\", line %s\n' % (filename, lineno) - line = linecache.getline(filename, lineno).strip() + line = linecache.getline(filename, lineno).strip() \ + if line is None else line if line: s += " %s\n" % line s += "%s: %s\n" % (category.__name__, message)