Hi all,
I'm a hobbyist who posts mostly to Tutor; I'm doing my level best to
handle this "right". Apologies for any mis-steps. I have googled the
web and searched the gmane archive of this list for the terms
asyncqueue and putmessage but did not come up with anything that I
recognized as relevant.
The problem:
I have a module which, when I run it with IDLE 1.1.1 produces the
following traceback:
IDLE 1.1.1
>>> ================================ RESTART
================================
>>>
Traceback (most recent call last):
File "C:\PYTHON24\lib\idlelib\rpc.py", line 233, in asyncqueue
self.putmessage((seq, request))
File "C:\PYTHON24\lib\idlelib\rpc.py", line 333, in putmessage
raise IOError
IOError
It leaves the program running (attempts to close the shell window
produce a "The program is still running!" dialog). My environment is
Python 2.4.1 running on a WindowsME box. Possibly of relevance: 1) I
run ZoneAlarm, and 2) I often, but unpredictably, get the IDLE
subprocess error message when attempting to relaunch IDLE after having
shut it down, and have to kill a running Pythonw process in
TaskManager to relaunch.
My module runs fine when run via each of the following: a DOS console
Python interpreter, PythonWin, DrPython, and SciTE. (When applicable,
the each tool's 'Check Syntax' command passes just fine, and this
includes the check in IDLE itself.)
I have encountered this before with other modules of mine. I generally
use Leo (a pure Python literate programming outline style code editor
<http://webpages.charter.net/edreamleo/front.html>) to edit my longer
pieces of code. In the present case, and I believe in previous cases
of the same problem, I did indeed use Leo to write my code. Thus, I
cannot rule out that Leo is somehow implicated or at fault, but the
fact that other means of running my module work make me suspect it is
an IDLE issue, rather than a Leo one. (Previous cases of this problem
when running via IDLE also worked when ran via other means.)
I realize that it would be helpful to have a minimal snippet
exhibiting the problem. But, I have been unable so far to produce a
small snippet. My original module is over 1200 loc, and I have spent
the better part of an hour trying to pare it down; I have reduced it
but it still stands at just under 750 loc. I am about to give up on
the attempt to pare it down further--at this point, removing any
docstrings, classes, methods, if blocks, or even print statements
cause the problem to disappear. (Indeed, I was only able to remove a
few classes, top-level statements, and all comments while preserving
the problem.)
I have checked, and there are no tabs in my module and all lines end
with the Unix standard \n rather than the Windows \r\n. (I tried
converting to \r\n line endings, and it makes no difference.)
I know nothing of IDLE's internals, and am not sufficiently skilled in
programming to acquire a meaningful understanding in a reasonable
time-frame. I would very much appreciate suggestions as to how to
narrow down the problem further.
Thanks and best,
Brian vdB
_______________________________________________
IDLE-dev mailing list
[email protected]
http://mail.python.org/mailman/listinfo/idle-dev