ci: promote Python 3.14 from experimental to a required test leg#77
Merged
Conversation
The 3.14 matrix entry had continue-on-error: true, so its result was discarded regardless of pass/fail -- CI reported green even when it was red. This is almost certainly why the three Python 3.14 regressions fixed this cycle (get_event_loop()'s implicit-creation removal, local_annotations()'s MRO leak, eval_type's ForwardRef/ClassVar crashes) shipped in 0.5.0 and 0.5.1 -- both since yanked -- without mode's own CI ever blocking on them. 0.5.2 is verified working end-to-end on 3.14 (mode's own suite and a full faust-streaming/faust cross-check, both green). Move 3.14 out of the `include`/experimental block and into the regular matrix so it's a full, required leg like every other supported version, matching the required 3.14 legs already added on the faust side (faust-streaming/faust#691) -- the "~3.14.0-0" prerelease version-range syntax is also no longer needed now that 3.14 has stable releases. Also declare Python 3.14 in pyproject.toml's trove classifiers, so it's reflected on PyPI (the README's version badge reads this automatically) and in the built package metadata. Assisted-by: Claude Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HgnKFtXZbCjXNoVNWa5JLd
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
The 3.14 matrix entry had
continue-on-error: true, so its result was discarded regardless of pass/fail — CI reported green even when it was red. This is almost certainly why the three Python 3.14 regressions fixed this cycle (get_event_loop()'s implicit-creation removal in #72,local_annotations()'s MRO leak in #74,eval_type'sForwardRef/ClassVarcrashes in #75) shipped in0.5.0and0.5.1— both since yanked — without mode's own CI ever blocking on them.0.5.2is verified working end-to-end on 3.14 (mode's own suite and a fullfaust-streaming/faustcross-check, both green — see #75/#76). This moves 3.14 out of theinclude/experimental block and into the regular matrix so it's a full, required leg like every other supported version, matching the required 3.14 legs already added on the faust side (faust-streaming/faust#691). The"~3.14.0-0"prerelease version-range syntax is also no longer needed now that 3.14 has stable releases (the CI runner was already resolving it to3.14.6).Also declares Python 3.14 in
pyproject.toml's trove classifiers, so it's reflected on PyPI (the README's version badge reads this automatically) and in the built package metadata — confirmed via a local build +twine check.Verification
.github/workflows/tests.ymlparses as valid YAML.pyproject.toml:Programming Language :: Python :: 3.14present in the wheel'sMETADATA,twine checkpasses on both sdist and wheel.🤖 Generated with Claude Code
https://claude.ai/code/session_01HgnKFtXZbCjXNoVNWa5JLd
Generated by Claude Code