GeezerVisonThe World Wide Web, restored to 800 pixels of glory. | ||
| Home|About|Gaming cabinet|Archives|How it works|Starter sites | ||
GeezerVison is showing github.com — [3.10] bpo-40296: Fix supporting generic aliases in pydoc (GH-30253). by serhiy-storchaka · Pull Request #31976 · python/cpython Conversation
|
|
Thanks @serhiy-storchaka for the PR 🌮🎉.. I'm working now to backport this PR to: 3.9. |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
GH-31981 is a backport of this pull request to the 3.9 branch. |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
…0253). (pythonGH-31976) (cherry picked from commit cd44afc) (cherry picked from commit a5b7678) Co-authored-by: Serhiy Storchaka <[email protected]>
). (pythonGH-31976) (pythonGH-31981) (cherry picked from commit cd44afc) (cherry picked from commit a5b7678)
Replaces BufferedWriter's bytearray + _write_lock with a _Nibbler buffer manager built around _Morsel work units. Adds FileIO._writev so the nibbler can issue a single writev(2) for multi-buffer flushes when available, falling back to coalesce+write otherwise. The Nibbler holds its lock end-to-end across raw I/O, matching the pre-existing cross-thread write ordering guarantee. A future two-lock split (short buffer lock + I/O lock) is sketched in the class docstring as the intended path for releasing the I/O lock once profiling justifies it. Also restores f.close() in BufferSizeTest.try_one's nested finally and skips test_slow_close_from_thread pending a way to validate pythongh-76157 / pythongh-31976 that does not assume the old lock-across-I/O behavior. See: https://discuss.python.org/t/reworking-buffered-i-o-in-cpython/90019 Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
There was an error while loading. Please reload this page.
Successfully merging this pull request may close these issues.
There was an error while loading. Please reload this page.