Python: Curses, Concurrency, and a Reflog Revert
Today's CPython activity clusters around terminal handling fixes in curses, concurrency correctness in asyncio and free-threaded builds, and a same-day revert of a data race fix that broke a buildbot. Serhiy Storchaka's curses capability probe and three curses safety fixes headline a broader push to close memory and threading bugs before the next release.
Duration: PT2M40S
Episode overview
This episode is a short developer briefing from Python.
It explains recent repository work in plain language.
- Show: Python
- Published: 2026-07-27T13:05:43Z
- Audio duration: PT2M40S
Transcript excerpt
This excerpt keeps the crawler page concise. Listen to the episode or use the RSS feed for the full update.
It's July 27th, 2026, and this is Python.
The clearest signal today: terminal handling in curses got serious attention, and concurrency bugs are getting caught and fixed fast, including one that had to be walked back.
Start with curses. Serhiy Storchaka's fix, in PR 154071, changes how the build system decides whether curses gets wide-character support. Previously it went by library name, so systems like macOS and NetBSD that ship a widec-built ncurses under the plain name were silently getting narrow builds, breaking non-ASCII…
Second theme: concurrency and memory safety. Kumaraditya303's PR 154761 fixes a real correctness bug in TaskGroup, where a KeyboardInterrupt or SystemExit in a child task could kill the whole event loop instead of propagating to the parent as documented. Separately, weixlu's PR 154770 fixes a data race in memoryview…
Smaller but worth knowing: bz2 module import behavior is being tightened in PR 154771, zipfile timestamp validation is getting stricter in PR 154740, and Py_UNICODE is finally being removed from the C API in PR 154759, three years after its deprecation. Routine maintenance also moved forward, with mypy bumped to 2.3…
What to watch: the audit-hook…
Nearby episodes from Python
- Weekly Recap - Memory Safety and Backport Discipline
- Locale Encoding Bugs Take Center Stage
- Memory Safety Sweep Across the Interpreter
- A Day of Memory Safety Hunting
- Concurrency Bugs and Logging Hangs Get Cleaned Up
- Data Races, Backports, and BSD Portability
- Chasing Down the Long Tail of Platforms
- Asyncio Subprocess Reliability, Cross-Platform Cleanup