[stdlib] Allow loop.create_task eager_start on Python 3.13 - #16142
[stdlib] Allow loop.create_task eager_start on Python 3.13#16142nightcityblade wants to merge 2 commits into
Conversation
This comment has been minimized.
This comment has been minimized.
|
Refreshed the branch with current main in 6e276e8, which brings in the upstream fixes for both unrelated failures from the original run: the Python 3.15 _ctypes.dllist stub and the stub_uploader dependency pin. After the merge, pre-commit and structure checks passed; mypy on stdlib/asyncio passed for Python 3.13 and 3.14; the stdlib regression cases passed for 3.13 and 3.14; ty passed for stdlib/asyncio on 3.13; and the Pyright regression suite passed on 3.13. The host-dependent stdlib stubtest is not part of that proof because this local macOS Python lacks Tk and several curses runtime symbols; current main CI is green and the refreshed PR CI will provide the full matrix. |
|
According to mypy_primer, this change has no effect on the checked open source code. 🤖🎉 |
Fixes #15269.
Python 3.13.3 added arbitrary keyword forwarding to event-loop
create_task, which allowseager_startto be passed to a compatible task factory. Move the existing loop-specificeager_startsignature gate from Python 3.14 to Python 3.13 while leaving the high-levelasyncio.create_taskandTaskGroup.create_taskgates unchanged.Add regression coverage for both
AbstractEventLoopandBaseEventLoop.Tests:
pre-commit run --files stdlib/asyncio/base_events.pyi stdlib/asyncio/events.pyi stdlib/@tests/test_cases/asyncio/check_task.pypython tests/mypy_test.py stdlib/asyncio -p 3.13python tests/pyright_test.py stdlib/asyncio --pythonversion 3.13 -p pyrightconfig.stricter.jsonpython tests/pyright_test.py stdlib/@tests/test_cases/asyncio/check_task.py --pythonversion 3.13 -p pyrightconfig.testcases.jsonpython tests/regr_test.py stdlib -p 3.13