Skip to content

Widen the CI matrix to Windows and Python 3.14 - #22

Merged
dhruvl merged 3 commits into
mainfrom
ci-matrix
Aug 1, 2026
Merged

Widen the CI matrix to Windows and Python 3.14#22
dhruvl merged 3 commits into
mainfrom
ci-matrix

Conversation

@dhruvl

@dhruvl dhruvl commented Aug 1, 2026

Copy link
Copy Markdown
Owner

Adds windows-latest and CPython 3.14 to the test matrix, keeping fail-fast off so a platform-specific failure shows the full picture. The core is pure stdlib and the parallel explorer already uses the spawn start method, so Windows is expected to pass; this run is the proof rather than the claim.

dhruvl added 3 commits August 1, 2026 22:13
The cancellation drain in run_until_complete steps the loop after
run_forever has already cleared the running-loop slot, and from Python
3.14 a task refuses to step unless its loop is the running one — so the
drain now declares itself for its duration. The plugin tests also pin
child pytest stdio to UTF-8: a failure traceback can render source lines
carrying an em-dash, which a Windows child writes in the console code
page while pytester reads UTF-8 back.
Python 3.14's loop contract grows an eager_start parameter on
create_task. An eager first step runs at creation time, before the ready
queue ever sees the task, so the seeded draw would never get to order it
against anything: accepting the argument and fencing a true value is the
honest answer, and declining it stays the stdlib default.
@dhruvl
dhruvl marked this pull request as ready for review August 1, 2026 17:10
@dhruvl
dhruvl merged commit 5525bc1 into main Aug 1, 2026
9 checks passed
@dhruvl
dhruvl deleted the ci-matrix branch August 1, 2026 17:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant