[Python-Dev] [Python-checkins] cpython: Issue #18081: Workaround "./python -m test_idle test_logging" failure

Brett Cannon brett at yvrsfo.ca
Tue Jun 25 17:45:00 CEST 2013


This fix is still not correct as warnings.formatwarning should not be
overridden, only showwarning can be.
On Jun 24, 2013 6:18 PM, "victor.stinner" <python-checkins at python.org>
wrote:

> http://hg.python.org/cpython/rev/2a9e1eb3719c
> changeset:   84330:2a9e1eb3719c
> user:        Victor Stinner <victor.stinner at gmail.com>
> date:        Tue Jun 25 00:17:37 2013 +0200
> summary:
>   Issue #18081: Workaround "./python -m test_idle test_logging" failure
>
> "import idlelib" should not install hooks on the warning modules, hooks
> should
> only be installed when IDLE is started.
>
> files:
>   Lib/idlelib/PyShell.py |  5 +++--
>   Lib/idlelib/run.py     |  4 +++-
>   2 files changed, 6 insertions(+), 3 deletions(-)
>
>
> diff --git a/Lib/idlelib/PyShell.py b/Lib/idlelib/PyShell.py
> --- a/Lib/idlelib/PyShell.py
> +++ b/Lib/idlelib/PyShell.py
> @@ -61,7 +61,6 @@
>                                                lineno, line=line))
>          except OSError:
>              pass  ## file (probably __stderr__) is invalid, warning
> dropped.
> -    warnings.showwarning = idle_showwarning
>      def idle_formatwarning(message, category, filename, lineno,
> line=None):
>          """Format warnings the IDLE way"""
>          s = "\nWarning (from warnings module):\n"
> @@ -73,7 +72,6 @@
>              s += "    %s\n" % line
>          s += "%s: %s\n>>> " % (category.__name__, message)
>          return s
> -    warnings.formatwarning = idle_formatwarning
>
>  def extended_linecache_checkcache(filename=None,
>                                    orig_checkcache=linecache.checkcache):
> @@ -1425,6 +1423,9 @@
>  def main():
>      global flist, root, use_subprocess
>
> +    warnings.showwarning = idle_showwarning
> +    warnings.formatwarning = idle_formatwarning
> +
>      use_subprocess = True
>      enable_shell = False
>      enable_edit = False
> diff --git a/Lib/idlelib/run.py b/Lib/idlelib/run.py
> --- a/Lib/idlelib/run.py
> +++ b/Lib/idlelib/run.py
> @@ -40,7 +40,6 @@
>              s += "    %s\n" % line
>          s += "%s: %s\n" % (category.__name__, message)
>          return s
> -    warnings.formatwarning = idle_formatwarning_subproc
>
>
>  tcl = tkinter.Tcl()
> @@ -82,6 +81,9 @@
>      global exit_now
>      global quitting
>      global no_exitfunc
> +
> +    warnings.formatwarning = idle_formatwarning_subproc
> +
>      no_exitfunc = del_exitfunc
>      #time.sleep(15) # test subprocess not responding
>      try:
>
> --
> Repository URL: http://hg.python.org/cpython
>
> _______________________________________________
> Python-checkins mailing list
> Python-checkins at python.org
> http://mail.python.org/mailman/listinfo/python-checkins
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-dev/attachments/20130625/28f21240/attachment.html>


More information about the Python-Dev mailing list