[issue45578] Missing tests for the dis module
Tal Einat added the comment: Thanks for your work on this Nikita! -- nosy: +taleinat resolution: -> fixed stage: patch review -> resolved status: open -> closed ___ Python tracker <https://bugs.python.org/issue45578> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45193] IDLE Show completions pop-up not working on Ubuntu Linux
Change by Tal Einat : -- pull_requests: +29025 pull_request: https://github.com/python/cpython/pull/28332 ___ Python tracker <https://bugs.python.org/issue45193> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue41857] Document timeout arguments to poll() in select module
Tal Einat added the comment: Thanks for this improvement, Zane! -- resolution: -> fixed stage: patch review -> resolved status: open -> closed ___ Python tracker <https://bugs.python.org/issue41857> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue41857] Document timeout arguments to poll() in select module
Tal Einat added the comment: New changeset 656971e4953a70a6048170377888db5530eea0a6 by Tal Einat in branch '3.9': [3.9] bpo-41857: mention timeout argument units in select.poll() and select.depoll() doc-strings (GH-22406) https://github.com/python/cpython/commit/656971e4953a70a6048170377888db5530eea0a6 -- ___ Python tracker <https://bugs.python.org/issue41857> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue41857] Document timeout arguments to poll() in select module
Tal Einat added the comment: New changeset f6e5972fa984c10d47694973db1c91c6486d654a by Tal Einat in branch '3.10': [3.10] bpo-41857: mention timeout argument units in select.poll() and select.depoll() doc-strings (GH-22406) https://github.com/python/cpython/commit/f6e5972fa984c10d47694973db1c91c6486d654a -- ___ Python tracker <https://bugs.python.org/issue41857> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue41857] Document timeout arguments to poll() in select module
Change by Tal Einat : -- pull_requests: +28929 pull_request: https://github.com/python/cpython/pull/30742 ___ Python tracker <https://bugs.python.org/issue41857> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue41857] Document timeout arguments to poll() in select module
Change by Tal Einat : -- pull_requests: +28928 pull_request: https://github.com/python/cpython/pull/30741 ___ Python tracker <https://bugs.python.org/issue41857> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue46080] argparse.BooleanOptionalAction with default=argparse.SUPPRESS and help specified raises exception
Tal Einat added the comment: Thanks for the report and the PR, Felix! -- resolution: -> fixed stage: patch review -> resolved status: open -> closed ___ Python tracker <https://bugs.python.org/issue46080> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue41857] Document timeout arguments to poll() in select module
Tal Einat added the comment: New changeset 27df7566bc19699b967e0e30d7808637b90141f6 by Zane Bitter in branch 'main': bpo-41857: mention timeout argument units in select.poll() and select.depoll() doc-strings (GH-22406) https://github.com/python/cpython/commit/27df7566bc19699b967e0e30d7808637b90141f6 -- nosy: +taleinat ___ Python tracker <https://bugs.python.org/issue41857> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue46080] argparse.BooleanOptionalAction with default=argparse.SUPPRESS and help specified raises exception
Tal Einat added the comment: New changeset 9e87c0e03fa501fb90008547983ce4c1dcaaf90c by Felix Fontein in branch 'main': bpo-46080: fix argparse help generation exception in edge case (GH-30111) https://github.com/python/cpython/commit/9e87c0e03fa501fb90008547983ce4c1dcaaf90c -- nosy: +taleinat ___ Python tracker <https://bugs.python.org/issue46080> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue40529] Auto Completions with case insensitive
Tal Einat added the comment: This should probably be brought up in the python-ideas mailing list, which is much more active than the group on discuss.python.org. -- ___ Python tracker <https://bugs.python.org/issue40529> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue40529] Auto Completions with case insensitive
Change by Tal Einat : -- Removed message: https://bugs.python.org/msg382481 ___ Python tracker <https://bugs.python.org/issue40529> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue40529] Auto Completions with case insensitive
Change by Tal Einat : -- Removed message: https://bugs.python.org/msg382482 ___ Python tracker <https://bugs.python.org/issue40529> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue41857] Document timeout arguments to poll() in select module
Change by Tal Einat : -- versions: +Python 3.11, Python 3.9 ___ Python tracker <https://bugs.python.org/issue41857> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue46086] Add ratio_min() function to the difflib library
Tal Einat added the comment: I'm closing this for now since nobody has followed up and to the best of my understanding this wouldn't be an appropriate addition to the stdlib. This can be re-opened in the future if needed, of course. -- resolution: -> rejected stage: patch review -> resolved status: open -> closed ___ Python tracker <https://bugs.python.org/issue46086> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue43654] IDLE: Fix tab completion after settings and some keys
Tal Einat added the comment: Terry, for all intents and purposes you're the one in charge of IDLE now. I suggest deciding whether to change all three bindings as in the current PR or only the one for completions. Just le me know and if needed I'll make a new PR. -- ___ Python tracker <https://bugs.python.org/issue43654> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue46005] [doc] replace 'distutils' examples with 'setuptools'
Tal Einat added the comment: First, I think that it's good and useful to have full, well-maintained examples of how to build extension modules in the docs. Second, until distutils is removed, I think we should keep the documentation for how to use it. Due to this, I don't think adding the "setuptools disclaimer" would be appropriate, since we shouldn't remove the section once the setuptools docs are updated. It seems to me that we should: 1. Add a prominent note about distutils being deprecated and what that means: can one still use it, should one still use it, when is it planned to be removed, etc. 2. Add mention that 3rd-party tools are now the recommended way to build extensions. Include links to the sections in these libraries' docs explaining how to build extensions. -- nosy: +taleinat ___ Python tracker <https://bugs.python.org/issue46005> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue46261] [doc] fix inaccuracies in sqlite3.Cursor.lastrowid docs
Change by Tal Einat : -- stage: patch review -> resolved ___ Python tracker <https://bugs.python.org/issue46261> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue46261] [doc] fix inaccuracies in sqlite3.Cursor.lastrowid docs
Tal Einat added the comment: Thanks for this, Erlend! -- stage: resolved -> patch review ___ Python tracker <https://bugs.python.org/issue46261> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue46261] [doc] fix inaccuracies in sqlite3.Cursor.lastrowid docs
Tal Einat added the comment: New changeset b29aa71090e4dd34900660ecca8bb62667440f41 by Miss Islington (bot) in branch '3.9': [3.9] bpo-46261: Update `sqlite3.Cursor.lastrowid` docs (GH-30407) https://github.com/python/cpython/commit/b29aa71090e4dd34900660ecca8bb62667440f41 -- ___ Python tracker <https://bugs.python.org/issue46261> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue46261] [doc] fix inaccuracies in sqlite3.Cursor.lastrowid docs
Tal Einat added the comment: New changeset 987fba102e909229dd2aa1a6115aa28d514c1818 by Miss Islington (bot) in branch '3.10': bpo-46261: Update `sqlite3.Cursor.lastrowid` docs (GH-30407) https://github.com/python/cpython/commit/987fba102e909229dd2aa1a6115aa28d514c1818 -- ___ Python tracker <https://bugs.python.org/issue46261> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue46141] Fix ipaddress.ip_network TypeErrors
Change by Tal Einat : -- nosy: +pmoody, taleinat stage: -> patch review status: pending -> open versions: -Python 3.8 ___ Python tracker <https://bugs.python.org/issue46141> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue46261] [doc] fix inaccuracies in sqlite3.Cursor.lastrowid docs
Tal Einat added the comment: New changeset b6aa38f1ca79600f2ab46ac114ff36461a19c4a3 by Erlend Egeberg Aasland in branch 'main': bpo-46261: Update `sqlite3.Cursor.lastrowid` docs (GH-30407) https://github.com/python/cpython/commit/b6aa38f1ca79600f2ab46ac114ff36461a19c4a3 -- nosy: +taleinat ___ Python tracker <https://bugs.python.org/issue46261> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue46086] Add ratio_min() function to the difflib library
Tal Einat added the comment: Thanks for the suggestion and the PR, Giacomo! However, in my opinion, this is better suited to be something like a cookbook recipe. The number of use cases for this will be low, and there would be little advantage to having this in the stdlib rather than elsewhere. -- nosy: +taleinat ___ Python tracker <https://bugs.python.org/issue46086> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue46290] Parameter names are inaccurate in dataclasses docs
Tal Einat added the comment: Good to know Eric, will do! -- ___ Python tracker <https://bugs.python.org/issue46290> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue46290] Parameter names are inaccurate in dataclasses docs
Tal Einat added the comment: Thanks for the report and the PR, Zsolt! -- nosy: -miss-islington resolution: -> fixed stage: patch review -> resolved status: open -> closed ___ Python tracker <https://bugs.python.org/issue46290> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue46290] Parameter names are inaccurate in dataclasses docs
Tal Einat added the comment: New changeset ef5376e69e72fa922d7f1b3df47b99d3576f9df1 by Zsolt Dollenstein in branch 'main': bpo-46290: Fix parameter names in dataclasses docs (GH-30450) https://github.com/python/cpython/commit/ef5376e69e72fa922d7f1b3df47b99d3576f9df1 -- ___ Python tracker <https://bugs.python.org/issue46290> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue46279] [docs] Minor information-ordering issue in __main__ doc
Tal Einat added the comment: I agree that it seems better to avoid menntioning venv in that sentence. Specifically I suggest: This won’t work for __main__.py files in the root directory of a .zip file though. Hence, for consistency, minimal __main__.py without a __name__ check are preferred. -- nosy: +taleinat ___ Python tracker <https://bugs.python.org/issue46279> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue46290] Parameter names are inaccurate in dataclasses docs
Tal Einat added the comment: Indeed, the argument name in the code is "obj", and in 3 of those 4 functions it is a normal (positional or keyword) argument, so the name is important. -- assignee: eric.smith -> taleinat nosy: +taleinat ___ Python tracker <https://bugs.python.org/issue46290> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue15251] new.code and new.function crashes Python iterpretter
Tal Einat added the comment: I couldn't reproduce this on the latest main branch with an updated version of the code sample (see attached repro.py). I also couldn't get such a crash with some variations of this. I'm marking this as fixed for now. We can re-open this if anyone runs into an up-to-date case of this crash. -- nosy: +taleinat resolution: -> fixed stage: -> resolved status: open -> closed Added file: https://bugs.python.org/file50368/repro.py ___ Python tracker <https://bugs.python.org/issue15251> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue19459] Python does not support the GEORGIAN-PS charset
Tal Einat added the comment: With recent versions of Python (e.g. 3.9) this no longer causes a crash. Python apparently falls back to UTF-8, at least on my system: $ LANG=ka_GE.georgianps python3.9 Python 3.9.7 (default, Sep 9 2021, 23:20:13) [GCC 9.3.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>> import locale; print(locale.getpreferredencoding()) UTF-8 I'm marking this as fixed. If someone still has issues with this encoding, please open a new issue with up-to-date information. -- nosy: +taleinat resolution: -> fixed stage: -> resolved status: open -> closed ___ Python tracker <https://bugs.python.org/issue19459> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45296] IDLE: Change Ctrl-Z note in exit/quit repr on Windows
Tal Einat added the comment: How about "Control-D (end-of-file, a.k.a. EOF)" or even just "Control-D"? -- ___ Python tracker <https://bugs.python.org/issue45296> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue40128] IDLE Show completions pop-up not working on macOS
Tal Einat added the comment: Pablo, I'm not sure what you cherry-picked, but this fix for macOS broke the completions pop-up on Linux, and that appears to still be the state of things now on the 3.10.0 branch. Let's please not leave things this way if at all possible. -- ___ Python tracker <https://bugs.python.org/issue40128> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45193] IDLE Show completions pop-up not working on Ubuntu Linux
Tal Einat added the comment: See PR GH-28328 with proposed fix. It should be tested on macOS with several relevant versions of Tcl/Tk to ensure that the Tk version range used is correct. -- ___ Python tracker <https://bugs.python.org/issue45193> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45193] IDLE Show completions pop-up not working on Ubuntu Linux
Change by Tal Einat : -- pull_requests: +26739 stage: needs patch -> patch review pull_request: https://github.com/python/cpython/pull/28328 ___ Python tracker <https://bugs.python.org/issue45193> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45193] IDLE Show completions pop-up not working on Ubuntu Linux
Change by Tal Einat : -- stage: patch review -> needs patch ___ Python tracker <https://bugs.python.org/issue45193> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45193] IDLE Show completions pop-up not working on Ubuntu Linux
Change by Tal Einat : -- pull_requests: -26735 ___ Python tracker <https://bugs.python.org/issue45193> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45193] IDLE Show completions pop-up not working on Ubuntu Linux
Change by Tal Einat : -- keywords: +patch pull_requests: +26735 stage: needs patch -> patch review pull_request: https://github.com/python/cpython/pull/26039 ___ Python tracker <https://bugs.python.org/issue45193> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45193] IDLE Show completions pop-up not working on Ubuntu Linux
Tal Einat added the comment: I've also tested this on Windows 10 with the latest main branch (to be 3.11). The completions window works as expected with or without the recently added .update_idletasks() call. I do recommend limiting this to macOS (platform.system() == "Darwin"). Ideally we'd test this on macOS with several versions of tcl/tk (8.6.8, 8.6.9, 8.6.10, 8.6.11) and limit it to only those versions where the fix is required: TK_VERSION = tuple(map(int, tk.call("info", "patchlevel").split("."))) if (8, 6, 8) <= TK_VERSION < (8, 6, 10): acw.update_idletasks() Also we might check if calling .update() is enough, since that does less than .update_idletasks(). -- ___ Python tracker <https://bugs.python.org/issue45193> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue40128] IDLE Show completions pop-up not working on macOS
Tal Einat added the comment: I've created a separate issue for the completion window not appearing on Linux, issue #45193. Let's move the discussion there. -- ___ Python tracker <https://bugs.python.org/issue40128> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45193] IDLE Show completions pop-up not working on Ubuntu Linux
New submission from Tal Einat : The completion window never appears with Python version 3.9.7 and with the current main branch. Ubuntu 20.04 (reproduced on two separate machines) Tested with Tcl/Tk versions 8.6.10 and 8.6.11. This is directly caused by the fix for issue #40128. Commenting out that line resolves this issue entirely. (See also the PR for that fix, PR GH-26672.) -- assignee: terry.reedy components: IDLE messages: 401758 nosy: taleinat, terry.reedy priority: normal severity: normal stage: needs patch status: open title: IDLE Show completions pop-up not working on Ubuntu Linux type: behavior versions: Python 3.10, Python 3.11, Python 3.9 ___ Python tracker <https://bugs.python.org/issue45193> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue40128] IDLE Show completions pop-up not working on macOS
Tal Einat added the comment: Note that _tkinter.TK_VERSION and _tkinter.TK_VERSION are simply "8.6", not enough to differentiate between patch versions. The best way to get this info appears to be tk.call("info", "patchlevel"). Specifically I suggest: TK_VERSION = tuple(map(int, tk.call("info", "patchlevel").split("."))) ... if (8, 6, 8) <= TK_VERSION < (8, 6, 10): ... -- ___ Python tracker <https://bugs.python.org/issue40128> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue40128] IDLE Show completions pop-up not working on macOS
Tal Einat added the comment: Confirmed with python 3.9.7 installed via the "deadsnakes" apt repo on another Ubuntu 20.04 machine. "Confirmed" meaning specifically that the completion window never appears, and commenting out that single line resolves the issue. -- ___ Python tracker <https://bugs.python.org/issue40128> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue39218] Assertion failure when calling statistics.variance() on a float32 Numpy array
Change by Tal Einat : -- nosy: -taleinat ___ Python tracker <https://bugs.python.org/issue39218> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44325] IDLE: Fix shell comment anomalies
Tal Einat added the comment: The sidebar doesn't seem to be causing this issue, it's just making it a bit more visible, since what was previously a blank line now also has a more visible "..." continuation prompt. -- ___ Python tracker <https://bugs.python.org/issue44325> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44325] IDLE: Fix shell comment anomalies
Tal Einat added the comment: > However, I sometimes saw ... appear very briefly, only to be overwritten with > >>>. This is a known limitation of the current sidebar implementation, which was very difficult to avoid and was considered minor enough to let be for now. -- ___ Python tracker <https://bugs.python.org/issue44325> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44325] IDLE: Fix shell comment anomalies
Tal Einat added the comment: > 1) trailing whitespace (' ' and '\t' at least) is removed before this > function is called. I presume in IDLE rather than code.II, but cannot find > where. It is not with .rstrip. You're probably looking for this code in EditorWindow.newline_and_indent_event(): # Strip whitespace after insert point. while text.get("insert") in " \t": text.delete("insert") See: https://github.com/python/cpython/blob/89e50ab36fac6a0e7f1998501f36fcd2872a6604/Lib/idlelib/editor.py#L1390 -- ___ Python tracker <https://bugs.python.org/issue44325> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue40468] IDLE: configdialog tab rearrange
Change by Tal Einat : -- keywords: +patch pull_requests: +25149 stage: -> patch review pull_request: https://github.com/python/cpython/pull/26561 ___ Python tracker <https://bugs.python.org/issue40468> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue37768] IDLE: Show help(object) output in a text viewer
Change by Tal Einat : -- pull_requests: +25150 pull_request: https://github.com/python/cpython/pull/26561 ___ Python tracker <https://bugs.python.org/issue37768> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue43654] IDLE: Fix tab completion after settings and some keys
Tal Einat added the comment: > The unknown is whether anyone has changed these pseudoevent bindings and if > so, how much do we care? Let's ask on idle-dev. > Guido, do you have any comment on this proposal from a change policy > perspective? I'm not an ex-BDFL, but I can't think of a reason this shouldn't be backported as per our usual policy regarding IDLE. -- ___ Python tracker <https://bugs.python.org/issue43654> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44282] IDLE: ColorDelegatorTest test_incremental_editing failures
Tal Einat added the comment: See PR GH-26491. -- ___ Python tracker <https://bugs.python.org/issue44282> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44282] IDLE: ColorDelegatorTest test_incremental_editing failures
Change by Tal Einat : -- pull_requests: +25087 pull_request: https://github.com/python/cpython/pull/26491 ___ Python tracker <https://bugs.python.org/issue44282> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44282] IDLE: ColorDelegatorTest test_incremental_editing failures
Tal Einat added the comment: On my machine it running the test many times with parallelization no longer causes any failures with this change. Also, running other tests which us the @run_in_tk_mainloop decorator, with the same 1ms delay as before, doesn't cause any such failures. PR forthcoming. -- ___ Python tracker <https://bugs.python.org/issue44282> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44282] IDLE: ColorDelegatorTest test_incremental_editing failures
Tal Einat added the comment: > Running 12 duplicate tests in parallel on Windows on a 6 core (12 CPU) > machine with [...] resulted in nearly all failing. Yes, running test_idle in parallel with itself usually causes some failures due to UI focus being stolen from one instance by another. That's why I just ran this test rather than the whole test suite. > I am reluctant to add a delay that is mostly not needed, so i tried the > uploaded 'adaptive' code to only add a long delay if needed. Uploaded. But > when a tested failed once, it failed again even with the delay, and contrary > to the results above. The delay needs to be placed carefully. Changing root.after(1, ...) to use 50 rather than 1 (these are milliseconds) seems to resolve the issue entirely on my machine, at the cost of this single test taking 0.4 seconds to run rather than about 0.045 seconds. > The other thing I thought is parameterizing the decorator to pass in a delay > only for this test, but that require another layer of wrapping, which I > cannot do right now. I can do that. Though I fear this may happen for other such tests as well... Worth a shot I guess. -- ___ Python tracker <https://bugs.python.org/issue44282> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44282] IDLE: ColorDelegatorTest test_incremental_editing failures
Tal Einat added the comment: On Ubuntu 20.04, I've managed to occasionally get this issue to reproduce locally by running the test many times in parallel, repeatedly: parallel -n8 -N0 './python -m test -ugui test_idle -m test_colorizer' ::: $(seq 20) This appears to be an issue with our new method of running tests with a Tk mainloop in the background, using the @run_in_tk_mainloop decorator. Investigating further. -- ___ Python tracker <https://bugs.python.org/issue44282> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44282] IDLE: ColorDelegatorTest test_incremental_editing failures
Tal Einat added the comment: I'm investigating this now. If nothing obvious comes up, I'll revert that PR. -- ___ Python tracker <https://bugs.python.org/issue44282> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44282] IDLE: ColorDelegatorTest test_incremental_editing failures
Tal Einat added the comment: The latest PR where changes were made to IDLE's colorizer and its tests, including specifically adding the problematic test, is GH-25851. -- ___ Python tracker <https://bugs.python.org/issue44282> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44282] IDLE: ColorDelegatorTest test_incremental_editing failures
Tal Einat added the comment: Please note that the referenced PR is not the correct one. I'll add a link to the right one shortly. -- ___ Python tracker <https://bugs.python.org/issue44282> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44282] IDLE: ColorDelegatorTest test_incremental_editing failures
Change by Tal Einat : -- keywords: +patch pull_requests: +25076 stage: needs patch -> patch review pull_request: https://github.com/python/cpython/pull/26404 ___ Python tracker <https://bugs.python.org/issue44282> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue30495] IDLE: modernize textview module
Tal Einat added the comment: Ping? ISTM this could be considered done. -- nosy: +taleinat ___ Python tracker <https://bugs.python.org/issue30495> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue42831] IDLE fix colours for MacOS dark mode
Change by Tal Einat : -- keywords: +easy, newcomer friendly stage: -> needs patch type: -> behavior ___ Python tracker <https://bugs.python.org/issue42831> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue23937] IDLE: revise window size, placement startup options
Tal Einat added the comment: > When I changed the title, I intended to broaden the issue beyond 'start > maximized'. Even for that, there are two possibilities. 1. Configure option > (default as now). 2. Save 'current' position, which helps non-maximizers > also. So I am inclined to the latter with some definition of current. Ah, now I understand better, thanks for the clarification. I currently consider this is a rather low priority. -- ___ Python tracker <https://bugs.python.org/issue23937> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue23937] IDLE: revise window size, placement startup options
Tal Einat added the comment: > There is a subtle issue easy to not notice. Scrolling is slightly different > when the window height an integral number of lines, as it now is on startup, > or pixels, as after resizing with zoom or mouse grab. I believe 'lines' is > enough better that I have considered snapping to 'lines' after changes. Not > now though. This is mostly a separate issue. I certainly think that scrolling should be consistent, independent of whether the window show a whole or fractional number of lines. Terry, is there an issue open about that or shall we open one? > The Settings dialog height is currently determined by the General tab. It is > already too high for some notebooks: on my macbook, I can barely click OK > (with 'OK' not visible) *after* putting the app bar on the side rather than > bottom. We need to squeeze existing items rather than add another. This is entirely separate. It has been mentioned before, but again I'm not aware of an existing issue specifically about this. If there isn't one, let's create one and discuss there. -- ___ Python tracker <https://bugs.python.org/issue23937> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue41611] IDLE: problems with completions on Mac
Tal Einat added the comment: Both the original bug reported here, and the bug whereby completion could cause IDLE to freeze on macOS, have been fixed and backported to 3.10 and 3.9. -- resolution: -> fixed stage: patch review -> resolved status: open -> closed ___ Python tracker <https://bugs.python.org/issue41611> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue41611] IDLE: problems with completions on Mac
Tal Einat added the comment: New changeset 21a56a4bce186cd19a50502d2de5117551616005 by Miss Islington (bot) in branch '3.9': bpo-41611: IDLE: Catch TclError exceptions in AutoCompleteWindow.winconfig_event() (GH-26404) https://github.com/python/cpython/commit/21a56a4bce186cd19a50502d2de5117551616005 -- ___ Python tracker <https://bugs.python.org/issue41611> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue41611] IDLE: problems with completions on Mac
Tal Einat added the comment: New changeset 448abe8d8bcfdf50a5ecae1196199da46bdfed04 by Miss Islington (bot) in branch '3.10': bpo-41611: IDLE: Catch TclError exceptions in AutoCompleteWindow.winconfig_event() (GH-26404) https://github.com/python/cpython/commit/448abe8d8bcfdf50a5ecae1196199da46bdfed04 -- ___ Python tracker <https://bugs.python.org/issue41611> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue43654] IDLE: Applying settings disables tab completion
Change by Tal Einat : -- pull_requests: +25016 pull_request: https://github.com/python/cpython/pull/26421 ___ Python tracker <https://bugs.python.org/issue43654> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue41611] IDLE: problems with completions on Mac
Tal Einat added the comment: New changeset 4e2e5c1c4f792b4011e4c78d011baea2aee39f1b by Tal Einat in branch 'main': bpo-41611: IDLE: Catch TclError exceptions in AutoCompleteWindow.winconfig_event() (GH-26404) https://github.com/python/cpython/commit/4e2e5c1c4f792b4011e4c78d011baea2aee39f1b -- ___ Python tracker <https://bugs.python.org/issue41611> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue23937] IDLE: revise window size, placement startup options
Tal Einat added the comment: In terms of its interface, IDLE is more like a REPL + text editor than what is commonly thought of as programming IDEs (Visual Studio, PyCharm/IDEA, Matlab, JupyterLab etc.) Terminals and text editors almost universally do not launch maximized by default. Therefore I think starting IDLE maximized would be an unnecessary departure from the common, expected UX of similar desktop apps. I suggest closing this as "won't fix". -- nosy: +taleinat ___ Python tracker <https://bugs.python.org/issue23937> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue41611] IDLE: problems with completions on Mac
Tal Einat added the comment: See a second PR for the originally reported bug, GH-26404. -- ___ Python tracker <https://bugs.python.org/issue41611> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44243] tkinter button colors on Mac
Tal Einat added the comment: It appears that this behavior is the intended behavior of Tk on macOS. Given that tkinter is meant to be a relatively straightforward wrapping of Tcl/Tk, it seems to me that we too should consider this not to be a bug, and resolve this issue as "won't fix". -- ___ Python tracker <https://bugs.python.org/issue44243> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44243] tkinter button colors on Mac
Tal Einat added the comment: The Tcl/Tk devs have closed the issue I opened on their issue tracker as "not a bug", with the following comment: "Because Tk on the Mac uses API's to draw buttons, some configuration options are set by the OS and not by Tk. This is documented in the button man page: "On Aqua/Mac OS X, some configuration options are ignored for the purpose of drawing of the widget because they would otherwise conflict with platform guidelines. The configure and cget subcommands can still manipulate the values, but do not cause any variation to the look of the widget. The options affected notably include -background and -relief." Closing this ticket as not a bug." -- ___ Python tracker <https://bugs.python.org/issue44243> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue41611] IDLE: problems with completions on Mac
Change by Tal Einat : -- pull_requests: +24997 pull_request: https://github.com/python/cpython/pull/26404 ___ Python tracker <https://bugs.python.org/issue41611> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue43654] IDLE: Applying settings disables tab completion
Change by Tal Einat : -- versions: +Python 3.11, Python 3.9 ___ Python tracker <https://bugs.python.org/issue43654> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue43654] IDLE: Applying settings disables tab completion
Tal Einat added the comment: Indeed, adding the events bound in EditorWindow.__init__ to RemoveKeybindings() and ApplyKeybindings(), so they are bound in the correct order, resolves this issue. See PR GH-26403. -- ___ Python tracker <https://bugs.python.org/issue43654> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue43654] IDLE: Applying settings disables tab completion
Change by Tal Einat : -- keywords: +patch pull_requests: +24996 stage: test needed -> patch review pull_request: https://github.com/python/cpython/pull/26403 ___ Python tracker <https://bugs.python.org/issue43654> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue41611] IDLE: problems with completions on Mac
Tal Einat added the comment: New changeset abc4bd5db91c86b6b74289241378a13bd3a0a5e2 by Tal Einat in branch 'main': bpo-41611: IDLE: fix freezing on completion on macOS (GH-26400) https://github.com/python/cpython/commit/abc4bd5db91c86b6b74289241378a13bd3a0a5e2 -- ___ Python tracker <https://bugs.python.org/issue41611> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue43654] IDLE: Applying settings disables tab completion
Tal Einat added the comment: The original issue appears to be caused by <> also being bound to Tab, but <> only being bound using event_add() once in EditorWindow.__init__(). Therefore, RemoveKeybindings() does remove the binding for tab due to <>, but <> is not bound again by ApplyKeybindings(). That should mean that tab is still bound to <> and <>, as expected, but the order has changed: now <> was the last event added. We need <> to fire first. Specifically, commenting out the line for <> from config.py causes this bug to no longer happen. -- nosy: +taleinat ___ Python tracker <https://bugs.python.org/issue43654> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44243] tkinter button colors on Mac
Tal Einat added the comment: Thanks for helping with this, E. Paine! Unfortunately, no, adding activebackground='red' doesn't help, even directly in a wish shell. -- ___ Python tracker <https://bugs.python.org/issue44243> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue41611] IDLE: problems with completions on Mac
Tal Einat added the comment: To clarify, the above is regarding IDLE freezing on macOS after hitting tab to complete, with no completions window open, and with multiple completions possible. That may not be identical to the issue originally reported here. Apologies if I've caused some confusion. -- ___ Python tracker <https://bugs.python.org/issue41611> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue41611] IDLE: problems with completions on Mac
Tal Einat added the comment: See PR GH-26400. -- stage: patch review -> needs patch ___ Python tracker <https://bugs.python.org/issue41611> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue41611] IDLE: problems with completions on Mac
Change by Tal Einat : -- keywords: +patch pull_requests: +24993 stage: needs patch -> patch review pull_request: https://github.com/python/cpython/pull/26400 ___ Python tracker <https://bugs.python.org/issue41611> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue41611] IDLE: problems with completions on Mac
Tal Einat added the comment: I've confirmed that the acw.update() call is still required on Windows to avoid the completion list positioning bug, and that IDLE doesn't freeze as described in this issue on Windows with that call in place. -- ___ Python tracker <https://bugs.python.org/issue41611> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue41611] IDLE: problems with completions on Mac
Change by Tal Einat : -- stage: -> needs patch type: -> behavior versions: +Python 3.10, Python 3.11 ___ Python tracker <https://bugs.python.org/issue41611> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue41611] IDLE: problems with completions on Mac
Tal Einat added the comment: I can reproduce this consistently on macOS by running IDLE, typing "sys.ba" in the shell and pressing the tab key. I've carefully narrowed this down to the call to acw.update() in AutoCompleteWindows.winconfig_event(). Removing that call makes everything work properly. That call to acw.update() was added to address the bug reported in bpo-37849 (see PR GH-15267). That bug was reported on Windows, but apparently doesn't occur on macOS. A quick test on Ubuntu 20.04 with that call removed also appears to not exhibit that bug. Therefore, I propose making that call only on Windows. Note that there is already another fragile call in the same method that is conditionally called only on Windows, so there is definitely precedent for such a solution. -- ___ Python tracker <https://bugs.python.org/issue41611> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue41611] IDLE: problems with completions on Mac
Tal Einat added the comment: > With 3.10.0b1 on Mac I am getting attribute completion freezes. I had to > turn them off. I am tempted to disable completions until there is a Mac IDLE > developer to dig into issues like this. Confirmed. This may be a separate issue. I have a macOS machine to develop with an will look into this. -- ___ Python tracker <https://bugs.python.org/issue41611> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44243] tkinter button colors on Mac
Tal Einat added the comment: I've created an issue about this on the Tcl/Tk issue tracker: https://core.tcl-lang.org/tk/tktview/46274a117823fd65c6d98d38465b43165d0c4680 -- ___ Python tracker <https://bugs.python.org/issue44243> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44243] tkinter button colors on Mac
Tal Einat added the comment: Confirmed on macOS. This bugs also affects the underlying Tcl/Tk, confirmed with 8.6.11. To reproduce: $ wish % button .b -text START -bg red -fg white .b % pack .b -- ___ Python tracker <https://bugs.python.org/issue44243> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44243] tkinter button colors on Mac
Tal Einat added the comment: FWIW this also behaves as expected on Ubuntu 20.04 with both Python 3.8 and 3.10. -- ___ Python tracker <https://bugs.python.org/issue44243> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue37903] IDLE Shell sidebar.
Tal Einat added the comment: > Other bug reports and feature requests that matter to us don't appear to be > getting any traction: I'll start going through those, and see if I can fix some of the bugs on that list. A few notes: > Need an option to run the install-certificates script Are you suggesting that we add a way to do this directly from IDLE? > Sometimes the Search Dialog window becomes unresponsive and there is no way > to clear it without turning IDLE off. Is there an open issue about this? Details would be helpful. > Several of these issues have only came-up in the past few years. IDLE used > to be more stable than it is now. This may be true, and at least partially due to a continuous need to fix things broken by various OS and Tcl/Tk changes. > For mac users who have enabled tabs system-wide, opening a new window in IDLE > triggers a system log-out (amazing that this is even possible). My > understanding is there isn't anything we can do about this, but it is a > really bad out-of-the-box user experience seconds after a fresh install of > Python. This is a prime example of the above: macOS changes + Tcl/Tk issues with those mean we are often very limited in our ability to properly address such issues. FWIW we added a warning in the IDLE shell about running with that OS option enabled, see bpo-34864 and PR GH-10464. I wasn't aware of such crashes; is there an issue about them? > Being able to run pip from within IDLE would be a major win, especially for > Windows users who are foreign to the command-line and who often do have > Python on the PATH. I agree! This needs to be properly designed and would be far from trivial to implement and test. If an issue about this exists or would be created, I'd be happy to help move it forward. -- ___ Python tracker <https://bugs.python.org/issue37903> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue37903] IDLE Shell sidebar.
Tal Einat added the comment: > Lastly, for live demos in presentations, it is desirable to have a clear > screen, free of distracting artifacts. The sidebar is such an artifact -- > you would never see such a thing in a book or slide presentation. Also, for > live demos, large fonts are necessary which means that screen space is at a > premium and the loss of horizontal space matters. I am not sure I agree with the strength with which you state "you would never see such a thing in a book or slide presentation". With Jupyter notebooks being very prevalent these days, samples very often include the non-code visual artifacts native to that format. Arguably, the *prompts* are a distracting visual artifact; the ability to cut them out of screenshots from Jupyter notebooks thanks to the clearer separation of cells and their inputs and outputs is indeed a boon, and we could consider whether we can do something similar for IDLE. As for lost vertical space, that is indeed at a premium for books and presentations. However, ipython significantly increases the vertical spacing to the left of code inputs and non-stdout outputs compared to the standard Python REPL and IDLE. And the sidebar adds 3.5 characters' width only for outputs, which can be avoided when it's truly crucial using the "Copy with prompts" feature. Overall, considering the benefits, this seems like a relatively minor drawback. -- ___ Python tracker <https://bugs.python.org/issue37903> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue37903] IDLE Shell sidebar.
Tal Einat added the comment: > Another desirable feature is the ability to cut and paste snippets into > docstrings. This is essential not just for doctest, but even for untested > examples in docstrings. > Those examples, need to be recognizable to humans as interactive sessions > with outputs clearly distinguished from inputs. When I tried out the new > sidebar in prep for a class, it was impossible to include the ps1 prompts in > a cut and paste selection. They had to be manually typed back in. This is no longer the case. In a quick followup PR, which has been merged for some time now, we added a context-menu option "Copy with prompts" which results in code samples directly usable for doctests and code samples. -- ___ Python tracker <https://bugs.python.org/issue37903> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue37903] IDLE Shell sidebar.
Tal Einat added the comment: For a wider context, besides the default REPL, I also consider two other leading REPLs: ipython and Jupyter notebooks. They both also have clear separation of outputs from inputs, though in different ways than the standard REPL. ipython retains similar behavior to the standard REPL in this regard, replacing the '>>>' prompts with "In [1]:", "In [2]:" etc. It also prefixes outputs of statements with e.g. "Out[2]:", but not outputs written to stdout. And it has additional vertical spacing between commands. Here is a short example session: Python 3.8.5 (default, Jan 27 2021, 15:41:15) Type 'copyright', 'credits' or 'license' for more information IPython 7.18.1 -- An enhanced Interactive Python. Type '?' for help. In [1]: if True: ...: print('Foo') ...: Foo In [2]: beatles = ['john', 'paul', 'ringo', 'george'] In [3]: [name.capitalize() for name in beatles] Out[3]: ['John', 'Paul', 'Ringo', 'George'] Jupyter notebooks are a different beast since their interface is browser-based rather than terminal-based, and they take more advantage of non-text graphical elements than IDLE's shell. Inputs are done in "cells", which may contain multiple statements, and each cell its own output. These cells are clearly visually separate from each other. I've attached a screenshot of a similar Python 3 session in a Jupyter notebook for comparison. Indeed, both the ipython REPL and Jupyter notebooks go further than the default REPL in differentiating outputs from inputs, using different methods. -- Added file: https://bugs.python.org/file50066/Jupyter Notebook Example Session.png ___ Python tracker <https://bugs.python.org/issue37903> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue37903] IDLE Shell sidebar.
Tal Einat added the comment: > For teaching purposes in live demos, it is essential to have a clear visual > distinction between the inputs and outputs: > > >>> beatles = ['john', 'paul', 'ringo', 'george'] > >>> [name.capitalize() for name in beatles] > ['John', 'Paul', 'Ringo', 'George'] > >>> [name for name in beatles if 'n' in name] > ['john', 'ringo'] Thanks for bringing this up. Lack of clear separation of inputs and outputs could be considered a drawback of putting prompts in a sidebar. Considering that the prompts *are not part of the code*, I do believe separating them more clearly is a benefit. To support this, consider that in Jupyter notebooks, the prompts are also placed in a graphically-separated area to the left of both input and output "cells". Also, do note that IDLE colors outputs differently from inputs, which helps differentiate them from inputs very clearly IMO. Therefore, the examples in messages posted here are lacking in this regard. For context, I'm attaching an image with screenshots before and after the change to use a sidebar. Also, consider that previously, separation of outputs from inputs was not great for multi-line statements, as indentation was inconsistent and more vertical space was used: >>> if True: print('Foo') else: print('Bar') Foo I think that moving prompts into a sidebar is an improvement in this regard: >>>| if True: ...|print('Foo') ...| else: ...|print('Bar') ...| | Foo Taking these three points together, I the sidebar clearly improves the separation of prompts from actual code, and the differentiation of outputs from inputs does not seem much worse, and is arguably overall better. -- Added file: https://bugs.python.org/file50065/IDLE shell befoe and after sidebar.png ___ Python tracker <https://bugs.python.org/issue37903> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44010] IDLE: highlight soft keywords
Tal Einat added the comment: IMO this can be closed, so I'm closing this. (Terry is welcome to reopen this if needed.) -- resolution: -> fixed stage: patch review -> resolved status: open -> closed ___ Python tracker <https://bugs.python.org/issue44010> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44217] Tkinter/IDLE: literal astral char discombobulates text editing
Tal Einat added the comment: > It is partially an IDLE issue. The code expects that indices in Python string > correspond indices in Tcl string, but this is not true in case of astral > characters which are encoded as 2 (or maybe even 4) characters in Tcl. It's not just that - Tk's Text widget is the indexing in the line itself wrong. In the string from Terry's example, which has 11 characters in a line including three smiley emojis, the can be fetch using t.get('1.1'), t.get('1.2') etc. through t.get('1.11'). t.get('1.12') returns '\n' since it is at or after the end of the line. So, as far as indexing is concerned, each of those emoji characters is treated as a single character. -- ___ Python tracker <https://bugs.python.org/issue44217> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44217] Tkinter/IDLE: literal astral char discombobulates text editing
Tal Einat added the comment: This is at least partly a tcl/tk issue. Using Terry's last example, the Text widget reports that the length of the line is 14 (t.index('1.end') -> '1.14'), despite it only including 11 characters. It appears that each emoji character adds an extra character. Minimal reproducer: >>> t.delete('1.0', 'end') >>> t.insert('1.0', 'a') >>> t.index('1.end') '1.1' >>> t.delete('1.0', 'end') >>> t.insert('1.0', '') >>> t.index('1.end') '1.2' The same happens when using tcl/tk directly, so it's not a tkinter issue: $ wish % tk::text .t -width 40 -height 5 -wrap none -yscrollcommand ".ys set" -xscrollcommand ".xs set" .t % ttk::scrollbar .ys -orient vertical -command ".t yview" .ys % ttk::scrollbar .xs -orient horizontal -command ".t xview".t extra characters after close-quote % ttk::scrollbar .xs -orient horizontal -command ".t xview" .xs % .t insert end "a" % grid .t -column 0 -row 0 -sticky nwes % grid .t -column 0 -row 0 -sticky nwes % grid .ys -column 1 -row 0 -sticky ns % grid columnconfigure . 0 -weight 1 % grid rowconfigure . 0 -weight 1 % .t delete 1.0 end % .t insert end "" % .t index 1.end 1.2 % .t get 1.0 -- ___ Python tracker <https://bugs.python.org/issue44217> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44163] IDLE ValueError in HyperParser
Tal Einat added the comment: I took a look but can't see any obvious bugs there. ISTM that's a rather harmless edge case. I can't think of anything to do with this except to close for now, and reopen if this pops up again. Thinking a few steps forward, to make sense of such issues, it would be greatly beneficial to get a full stack dump rather than just a traceback. Perhaps we should add something of the sort to IDLE, ideally something which works even when not running from the command line? -- ___ Python tracker <https://bugs.python.org/issue44163> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue40452] Tkinter/IDLE: preserve clipboard on closure
Tal Einat added the comment: After thinking about this a bit more, it seems to me that using an atexit handler is definitely worth pursuing, but not for 3.10.0. I'm in favor of merging the existing PR as an immediate fix for IDLE, and following up with a general solution for tkinter using atexit, which should also include some tests so that we can see that it works on our CI and buildbots. -- ___ Python tracker <https://bugs.python.org/issue40452> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue40452] Tkinter/IDLE: preserve clipboard on closure
Tal Einat added the comment: > Tcl_Finalize can be called more than once, says the tcl doc. I take that to mean that when calling Tcl_Finalize more than once, the second and following calls will do nothing rather than crash the process, corrupt memory etc. The Tcl docs are quite clear that Tcl is no longer usable after calling Tcl_Finalize. Therefore, E. Paine's latest comment appears to be correct in the sense that we can't call Tcl_Finalize when cleaning up a tkinter.Tk instance. The same goes for Tcl_FinalizeThread. -- ___ Python tracker <https://bugs.python.org/issue40452> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com