Repository navigation
fix(ci): accept final Python 3.15 in blocking canary - #140
Merged
Merged
Conversation
stefan-jansen
marked this pull request as ready for review
October 13, 2026 17:31
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.
Owning issue
Outcome
The blocking Python 3.15 canary accepts beta, release-candidate, and final CPython 3.15 builds. The stable Python 3.12-3.14 matrix, minimum-dependency checks, package import, numerical-runtime check, test suite, and compatibility gate remain in place.
Base/fix regression evidence
On the base workflow, PR 135 CI at
e5b5f07failed the Python 3.15 canary on Linux, macOS, and Windows after installing final CPython 3.15.0. The assertion admitted only beta and candidate: https://github.com/ml4t/backtest/actions/runs/38328440771At fix head
d50e4c1, the dispatched Compatibility workflow passed all 16 jobs, including Python 3.15 import and test steps on all three operating systems and the blocking gate: https://github.com/ml4t/backtest/actions/runs/38336251932Local checks
uv run pytest -q --no-cov tests/contracts/test_python_support_policy.py: 5 passed.uv run pytest tests/ -q: 2,261 passed, 14 skipped, 87.43% coverage.Ruff lint and format, ty,
uv build, andpre-commit run --all-files: passed.Compatibility and release
The supported stable range remains Python 3.12-3.14. This changes only the canary's rejection of final CPython 3.15.0. No package release or documentation deployment is part of this PR.
AI assistance
Codex drafted the workflow and contract-test changes and this PR text. It reproduced the base failure from the real CI job, ran the local checks, and dispatched the cross-platform fix workflow. Human maintainer review remains pending.
Closes #136