classification
Title: Improve the IDLE - console differences doc
Type: enhancement Stage: resolved
Components: IDLE Versions: Python 3.8, Python 3.7, Python 3.6
process
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: terry.reedy Nosy List: miss-islington, ned.deily, terry.reedy
Priority: normal Keywords: patch

Created on 2018-10-29 03:25 by terry.reedy, last changed 2018-11-06 03:39 by miss-islington. This issue is now closed.

Pull Requests
URL Status Linked Edit
PR 10350 merged terry.reedy, 2018-11-06 02:23
PR 10351 merged miss-islington, 2018-11-06 02:30
PR 10352 merged miss-islington, 2018-11-06 02:30
PR 10353 merged terry.reedy, 2018-11-06 02:58
PR 10354 merged miss-islington, 2018-11-06 03:18
PR 10355 merged miss-islington, 2018-11-06 03:18
Messages (12)
msg328785 - (view) Author: Terry J. Reedy (terry.reedy) * (Python committer) Date: 2018-10-29 03:25
Differences added in initial PR:
* threading.activeCount()`` returns 2 instead of 1;
* run user code in separate process;
* user-created subprocesses do not inherit sys.stdxxx objects;
  must run IDLE from console for such to have i/o connection;
* Shell ignores anything after first statement in pasted code.

Dependencies
Issue #23220 added the "IDLE-console differences" subsection to IDLE doc.
Discussing 'Shell not a terminal' left for another patch.

Issue 33000 is about finite versus infinite buffer.

Or should any of these be in new Shell subsection?
msg328787 - (view) Author: Ned Deily (ned.deily) * (Python committer) Date: 2018-10-29 03:57
Just a comment on usage, for what it's worth: I don't know how common the term "console" is on modern Windows systems, but I think the term has a very different meaning on Unix and macOS.  In those environments, if used at all, a "console" *might* refer to a window that provides access to admin functions.  A normal (non-admin) user would not use or even be familiar with the term "console" in this context.  A more familiar term would be a "terminal window" or "shell window" or some such.  But I'm not sure I even understand totally what is meant by "console" here; it's just sounds foreign :)
msg328789 - (view) Author: Terry J. Reedy (terry.reedy) * (Python committer) Date: 2018-10-29 05:06
By 'console' I mean the text-interface window that Python normally runs in, whether in batch or interactive mode, whether started directly from an icon or menu or file listing or indirectly by entering 'python' in a shell program running in the console.  (On Windows, there is only the one text UI program.)

On Windows, 'console' is the proper term (as Eryk Sun has taken pains to point out).  "Command Prompt' (cmd.exe)*, 'PowerShell' (???.exe) and Python (python.exe, when run directly without using either command-line program) all use the same console as their UI.  In all cases, the app interacts with users through a console window just as IDLE interacts with users through tk windows.

*Naive Windows users sometimes call a console window a Command Prompt window or every a Dos Prompt window, even when Python is running in such a window without cmd.exe.

In all cases, clicking the icon in the upper left corner displays the console menu.  Selecting 'Properties' displays the console properties dialog.  Selecting the 'Options' tab displays an option to use the 'legacy console' rather than the 'new console'.

I appreciate being informed that the naked term does not work for other systems.  Would it be sufficient to define 'console' as the text interface window that Python normally runs in, which might instead be caller a terminal, terminal window, or shell window?  I would rather not have to use 'console or terminal' everywhere.

'IDLE - console differences' is about differences in execution result and output display* when running Python code through IDLE (using tk) instead of Python in its standard running-in-a-console mode.  Do you have a better idea of how to reduce this to a few words?  How about 'IDLE - console Python differences', with an explanation of 'console Python'?  ('terminal Python' reminds me of dead parrots ;-)

(Since I opened this issue, I realized that the pasting difference is a code preparation difference that belongs elsewhere.)
msg328790 - (view) Author: Ned Deily (ned.deily) * (Python committer) Date: 2018-10-29 05:21
Thanks for the explanation.  That's what I thought you meant but it's good to make sure.  I'm not sure what the best solution is and others might have a different opinion.  It might be good to solicit some feedback from a wider audience of users who do not have Windows experience.
msg328791 - (view) Author: Terry J. Reedy (terry.reedy) * (Python committer) Date: 2018-10-29 05:45
I thought of 'IDLE versus standard Python', or 'default Python', but the contrast is not correct, as IDLE uses the same Python.  The intended contrast is between the result of different methods of running Python code with a particular Python binary.  'How IDLE modifies execution results' is correct, but I don't especially like it.

I can ask for other opinions on idledev and python-list.  In the meanwhile, I have a patch nearly ready, and want to move on to the dependency issues that will edit the same section.  So while waiting for opinions, I want to merge a version of what I have, but leave this open pending a final decision on the title and terminology.
msg329328 - (view) Author: Terry J. Reedy (terry.reedy) * (Python committer) Date: 2018-11-06 02:30
New changeset 5e7909032491cef17754a3208872655fe350e9be by Terry Jan Reedy in branch 'master':
 bpo-35099: Improve the doc about IDLE running user code. (#10350)
https://github.com/python/cpython/commit/5e7909032491cef17754a3208872655fe350e9be
msg329329 - (view) Author: miss-islington (miss-islington) Date: 2018-11-06 02:35
New changeset a437c285fa4f21720802e7a91770b2281d576554 by Miss Islington (bot) in branch '3.7':
bpo-35099: Improve the doc about IDLE running user code. (GH-10350)
https://github.com/python/cpython/commit/a437c285fa4f21720802e7a91770b2281d576554
msg329330 - (view) Author: miss-islington (miss-islington) Date: 2018-11-06 02:35
New changeset 927a113ae2be33a9dd929569930f28948aa5c965 by Miss Islington (bot) in branch '3.6':
bpo-35099: Improve the doc about IDLE running user code. (GH-10350)
https://github.com/python/cpython/commit/927a113ae2be33a9dd929569930f28948aa5c965
msg329332 - (view) Author: Terry J. Reedy (terry.reedy) * (Python committer) Date: 2018-11-06 02:50
I either removed or augmented occurrences of 'console' in the renamed section.
msg329335 - (view) Author: Terry J. Reedy (terry.reedy) * (Python committer) Date: 2018-11-06 03:18
New changeset f1d3efc2fba704692d539acc3cb0376a1dd9d98f by Terry Jan Reedy in branch 'master':
bpo-35099: Update idlelib/help.html (#10353)
https://github.com/python/cpython/commit/f1d3efc2fba704692d539acc3cb0376a1dd9d98f
msg329336 - (view) Author: miss-islington (miss-islington) Date: 2018-11-06 03:36
New changeset 4a46295a95bc2e7a93bcf0ce4cdaeeeb48729069 by Miss Islington (bot) in branch '3.7':
bpo-35099: Update idlelib/help.html (GH-10353)
https://github.com/python/cpython/commit/4a46295a95bc2e7a93bcf0ce4cdaeeeb48729069
msg329337 - (view) Author: miss-islington (miss-islington) Date: 2018-11-06 03:39
New changeset 54bcb6c0f185be29b2a626d2f1430c110c823a7d by Miss Islington (bot) in branch '3.6':
bpo-35099: Update idlelib/help.html (GH-10353)
https://github.com/python/cpython/commit/54bcb6c0f185be29b2a626d2f1430c110c823a7d
History
Date User Action Args
2018-11-06 03:39:58miss-islingtonsetmessages: + msg329337
2018-11-06 03:36:17miss-islingtonsetmessages: + msg329336
2018-11-06 03:18:32miss-islingtonsetpull_requests: + pull_request9655
2018-11-06 03:18:21miss-islingtonsetpull_requests: + pull_request9654
2018-11-06 03:18:01terry.reedysetmessages: + msg329335
2018-11-06 02:58:56terry.reedysetpull_requests: + pull_request9653
2018-11-06 02:50:38terry.reedysetstatus: open -> closed
messages: + msg329332

dependencies: - IDLE: Document how Shell displays user code output, IDLE Doc: Text consumes unlimited RAM, consoles likely not
resolution: fixed
stage: patch review -> resolved
2018-11-06 02:35:54miss-islingtonsetmessages: + msg329330
2018-11-06 02:35:22miss-islingtonsetnosy: + miss-islington
messages: + msg329329
2018-11-06 02:30:57miss-islingtonsetpull_requests: + pull_request9652
2018-11-06 02:30:47miss-islingtonsetpull_requests: + pull_request9651
2018-11-06 02:30:36terry.reedysetmessages: + msg329328
2018-11-06 02:23:45terry.reedysetkeywords: + patch
stage: needs patch -> patch review
pull_requests: + pull_request9650
2018-10-29 05:57:15terry.reedysetnosy: + ned.deily
2018-10-29 05:45:44terry.reedysetnosy: - ned.deily
messages: + msg328791
2018-10-29 05:21:50ned.deilysetnosy: + ned.deily
messages: + msg328790
2018-10-29 05:06:26terry.reedysettitle: IDLE: say more about IDLE - console differences -> Improve the IDLE - console differences doc
nosy: - ned.deily

messages: + msg328789

dependencies: + IDLE: Document how Shell displays user code output, IDLE Doc: Text consumes unlimited RAM, consoles likely not
2018-10-29 03:57:48ned.deilysetnosy: + ned.deily
messages: + msg328787
2018-10-29 03:26:37terry.reedysettitle: IDLE: say more about Shell - console differences -> IDLE: say more about IDLE - console differences
2018-10-29 03:25:13terry.reedycreate