Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve the IDLE - console differences doc #79280

Closed
terryjreedy opened this issue Oct 29, 2018 · 12 comments
Closed

Improve the IDLE - console differences doc #79280

terryjreedy opened this issue Oct 29, 2018 · 12 comments
Assignees
Labels
3.7 (EOL) end of life 3.8 only security fixes topic-IDLE type-feature A feature request or enhancement

Comments

@terryjreedy
Copy link
Member

BPO 35099
Nosy @terryjreedy, @ned-deily, @miss-islington
PRs
  • bpo-35099: Improve the doc about IDLE running user code. #10350
  • [3.7] bpo-35099: Improve the doc about IDLE running user code. (GH-10350) #10351
  • [3.6] bpo-35099: Improve the doc about IDLE running user code. (GH-10350) #10352
  • bpo-35099: Update idlelib/help.html #10353
  • [3.7] bpo-35099: Update idlelib/help.html (GH-10353) #10354
  • [3.6] bpo-35099: Update idlelib/help.html (GH-10353) #10355
  • Note: these values reflect the state of the issue at the time it was migrated and might not reflect the current state.

    Show more details

    GitHub fields:

    assignee = 'https://github.com/terryjreedy'
    closed_at = <Date 2018-11-06.02:50:38.574>
    created_at = <Date 2018-10-29.03:25:12.945>
    labels = ['3.8', 'expert-IDLE', 'type-feature', '3.7']
    title = 'Improve the IDLE - console differences doc'
    updated_at = <Date 2018-11-06.03:39:58.149>
    user = 'https://github.com/terryjreedy'

    bugs.python.org fields:

    activity = <Date 2018-11-06.03:39:58.149>
    actor = 'miss-islington'
    assignee = 'terry.reedy'
    closed = True
    closed_date = <Date 2018-11-06.02:50:38.574>
    closer = 'terry.reedy'
    components = ['IDLE']
    creation = <Date 2018-10-29.03:25:12.945>
    creator = 'terry.reedy'
    dependencies = []
    files = []
    hgrepos = []
    issue_num = 35099
    keywords = ['patch']
    message_count = 12.0
    messages = ['328785', '328787', '328789', '328790', '328791', '329328', '329329', '329330', '329332', '329335', '329336', '329337']
    nosy_count = 3.0
    nosy_names = ['terry.reedy', 'ned.deily', 'miss-islington']
    pr_nums = ['10350', '10351', '10352', '10353', '10354', '10355']
    priority = 'normal'
    resolution = 'fixed'
    stage = 'resolved'
    status = 'closed'
    superseder = None
    type = 'enhancement'
    url = 'https://bugs.python.org/issue35099'
    versions = ['Python 3.6', 'Python 3.7', 'Python 3.8']

    @terryjreedy
    Copy link
    Member Author

    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 bpo-23220 added the "IDLE-console differences" subsection to IDLE doc.
    Discussing 'Shell not a terminal' left for another patch.

    bpo-33000 is about finite versus infinite buffer.

    Or should any of these be in new Shell subsection?

    @terryjreedy terryjreedy added 3.7 (EOL) end of life 3.8 only security fixes labels Oct 29, 2018
    @terryjreedy terryjreedy self-assigned this Oct 29, 2018
    @terryjreedy terryjreedy added topic-IDLE type-feature A feature request or enhancement labels Oct 29, 2018
    @terryjreedy terryjreedy changed the title IDLE: say more about Shell - console differences IDLE: say more about IDLE - console differences Oct 29, 2018
    @ned-deily
    Copy link
    Member

    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 :)

    @terryjreedy
    Copy link
    Member Author

    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.)

    @terryjreedy terryjreedy changed the title IDLE: say more about IDLE - console differences Improve the IDLE - console differences doc Oct 29, 2018
    @ned-deily
    Copy link
    Member

    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.

    @terryjreedy
    Copy link
    Member Author

    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.

    @terryjreedy
    Copy link
    Member Author

    New changeset 5e79090 by Terry Jan Reedy in branch 'master':
    bpo-35099: Improve the doc about IDLE running user code. (bpo-10350)
    5e79090

    @miss-islington
    Copy link
    Contributor

    New changeset a437c28 by Miss Islington (bot) in branch '3.7':
    bpo-35099: Improve the doc about IDLE running user code. (GH-10350)
    a437c28

    @miss-islington
    Copy link
    Contributor

    New changeset 927a113 by Miss Islington (bot) in branch '3.6':
    bpo-35099: Improve the doc about IDLE running user code. (GH-10350)
    927a113

    @terryjreedy
    Copy link
    Member Author

    I either removed or augmented occurrences of 'console' in the renamed section.

    @terryjreedy
    Copy link
    Member Author

    New changeset f1d3efc by Terry Jan Reedy in branch 'master':
    bpo-35099: Update idlelib/help.html (bpo-10353)
    f1d3efc

    @miss-islington
    Copy link
    Contributor

    New changeset 4a46295 by Miss Islington (bot) in branch '3.7':
    bpo-35099: Update idlelib/help.html (GH-10353)
    4a46295

    @miss-islington
    Copy link
    Contributor

    New changeset 54bcb6c by Miss Islington (bot) in branch '3.6':
    bpo-35099: Update idlelib/help.html (GH-10353)
    54bcb6c

    @ezio-melotti ezio-melotti transferred this issue from another repository Apr 10, 2022
    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
    Labels
    3.7 (EOL) end of life 3.8 only security fixes topic-IDLE type-feature A feature request or enhancement
    Projects
    None yet
    Development

    No branches or pull requests

    3 participants