]> git.ipfire.org Git - thirdparty/Python/cpython.git/commit
gh-112938: IDLE - Fix uninteruptable hang when Shell gets rapid continuous output...
authorTerry Jan Reedy <tjreedy@udel.edu>
Sun, 22 Sep 2024 19:51:09 +0000 (15:51 -0400)
committerGitHub <noreply@github.com>
Sun, 22 Sep 2024 19:51:09 +0000 (15:51 -0400)
commitd5f95ec07bb47a4d6554e04d13a979dbeac05f74
tree217b678fead637fb73e14729d54eb1f13b1f6079
parent342e654b8eda24c68da64cc21bc9583e480d9e8e
gh-112938: IDLE - Fix uninteruptable hang when Shell gets rapid continuous output. (#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.
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]