]> git.ipfire.org Git - thirdparty/Python/cpython.git/commit
[3.13] gh-112938: IDLE - Fix uninteruptable hang when Shell gets rapid continuous...
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>
Fri, 27 Sep 2024 22:19:28 +0000 (00:19 +0200)
committerGitHub <noreply@github.com>
Fri, 27 Sep 2024 22:19:28 +0000 (15:19 -0700)
commit845e039999344e4b59e096b36810845e978dfa68
tree38f1a8a35e22310a03e28a3e0638af2775e81449
parent2b74cce521f929e57aeb5e1edd874da8d3b777b5
[3.13] gh-112938: IDLE - Fix uninteruptable hang when Shell gets rapid continuous output. (GH-124310) (#124318)

gh-112938: IDLE - Fix uninteruptable hang when Shell gets rapid continuous output. (GH-124310)

https://github.com/python/cpython/issues/88496 replaced text.update with text.update_idletasks in colorizer.py and outwin.py to fix test failures on macOS.  While theoretically correct, the result was Shell freezing when receiving continuous short strings to print.  Test: `while 1: 1`.

The guess is that there is no idle time in which to do the screen update.  Reverting the change in one of the files,
outwin, fixes the issue.  Colorizer runs ever 1/20 second and seems to work fine.

When running test-outwin on macOS, alias 'update'
to 'update_idletasks on the text used for testing.
(cherry picked from commit d5f95ec07bb47a4d6554e04d13a979dbeac05f74)

Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
Lib/idlelib/idle_test/test_outwin.py
Lib/idlelib/outwin.py
Misc/NEWS.d/next/IDLE/2024-09-21-23-12-18.gh-issue-112938.OeiDru.rst [new file with mode: 0644]