Issue24265
Created on 2015-05-22 13:16 by ppperry, last changed 2022-04-11 14:58 by admin.
| Messages (2) | |||
|---|---|---|---|
| msg243824 - (view) | Author: (ppperry) | Date: 2015-05-22 13:16 | |
When I run "python -m idlelib.idle -sc [command] from the command line, IDLE runs the startup file, but then pops up an error message saying "the Python Shell window is already executing a command;please wait until it is finished." When the error window is closed, the command executes, unless the main Python Shell has already been closed, in which case a traceback occurs: Traceback (most recent call last): File "C:\Python27\lib\runpy.py", line 162, in _run_module_as_main "__main__", fname, loader, pkg_name) File "C:\Python27\lib\runpy.py", line 72, in _run_code exec code in run_globals File "C:\Python27\lib\idlelib\idle.py", line 11, in <module> idlelib.PyShell.main() File "C:\Python27\lib\idlelib\PyShell.py", line 1602, in main shell.interp.execsource(cmd) AttributeError: 'NoneType' object has no attribute 'execsource' |
|||
| msg273523 - (view) | Author: Terry J. Reedy (terry.reedy) * ![]() |
Date: 2016-08-24 00:40 | |
I confirmed the bug on Win10 with 3.5 and 3.6. "python -m idlelibl -s" prints a prompt*, runs the file and prints any output, and prints a prompt. It then accepts user input. When "-c command" is added, it should accept that as user input (and perhaps display it on the input line). But I get the same error box. When clicked away, 'command' executes and a third prompt is displayed. *Another bug. The startup file should run first, before a prompt, just as it does in python, and just as with files run with F5. It would not hurt if [Running <path>] were printed, but not a prompt. Prompts should mean 'ready to accept input'. Ditto for -c command, unless IDLE is changed to display the command after the prompt as if typed in. Warning comes from ModifiedInterpreter (MI).dispaly_executing_dialog, which is called in MI.runcommand if 'self.tkconsole.executing'. MI.runcommand is used for internal startup code and for '-', '-c', and '-r' on the command line, but not for user '>>> ' and editor code. I confirmed that '-s' + '-' or '-r' give the same warning. Hence the title change. MI.tkconsole is the PyShell (PS) window instance. PS.executing is set/reset in PS.beginexecuting, PS.endexecuting. The latter should apparently be called someplace it is not now. |
|||
| History | |||
|---|---|---|---|
| Date | User | Action | Args |
| 2022-04-11 14:58:17 | admin | set | github: 68453 |
| 2020-06-07 23:28:23 | terry.reedy | set | versions: + Python 3.10, - Python 3.6, Python 3.7 |
| 2017-06-30 00:03:00 | terry.reedy | set | assignee: terry.reedy versions: + Python 3.7, - Python 2.7, Python 3.5 |
| 2016-08-24 00:40:48 | terry.reedy | set | title: IDLE produces error message when run with both -s and -c. -> IDLE -s and (-, -c command, or -r file) produces error message stage: test needed messages: + msg273523 versions: + Python 3.5, Python 3.6 |
| 2015-05-22 13:41:33 | ppperry | set | type: behavior |
| 2015-05-22 13:16:16 | ppperry | create | |
