Skip to content

Test the next Python in CI only once it reaches beta - #83

Merged
tsvikas merged 1 commit into
mainfrom
claude/python-next-beta-gate
Oct 14, 2026
Merged

tsvikas merged 1 commit into
mainfrom
claude/python-next-beta-gate

Conversation

@tsvikas

@tsvikas tsvikas commented Oct 14, 2026

Copy link
Copy Markdown
Owner

The prerelease CI job currently always tests 3.{python_max + 1}. Right after a Python release that means testing a fresh alpha (3.16.0a1 is out now). Alphas still gain and lose features, and most dependencies have no wheels for them yet, so the job mostly produces noise.

This adds a hidden copier variable, python_next_in_beta, which defaults to false, and gates the 3.{python_max + 1} matrix entry on it.

Lifecycle:

  • When the next Python reaches beta (feature freeze; around May 2027 for 3.16), set the default to true.
  • When it goes final and python_max is bumped to it, set the default back to false.

Split out of #82. The two PRs are independent, but merging this one first stops CI from picking up 3.16 alphas once #82 bumps python_max to 15.

Checked by rendering the template with the flag on and off: the extra prerelease entry appears only when it's on.

🤖 Generated with Claude Code

https://claude.ai/code/session_01P1UQo4jmZREtzrWn1xjcDN


Generated by Claude Code

Gate the 3.{python_max + 1} prerelease CI entry behind a new hidden
python_next_in_beta copier variable (default false). Alphas are too
unstable to be a useful signal; flip it on once the next Python reaches
beta (feature freeze), and back off when python_max is bumped to it.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01P1UQo4jmZREtzrWn1xjcDN

@sourcery-ai sourcery-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey - I've found 1 issue

Prompt for AI Agents
Please address the comments from this code review:

## Individual Comments

### Comment 1
<location path="copier.yml" line_range="104" />
<code_context>
   default: 14
   when: false

+# Set to true once 3.{python_max + 1} reaches beta (feature freeze),
</code_context>
<issue_to_address>
**Existing projects miss beta testing**

When an existing generated project updates after maintainers change this default to true at beta, copier reuses `python_next_in_beta: false` from an existing project's saved answers instead of the new default, and the hidden question does not prompt users to change it; updating the template therefore leaves that project's prerelease matrix without the next Python.

Add a migration or other update path so existing projects adopt the lifecycle default for this hidden variable.
</issue_to_address>

Sourcery assessment

Approval pending. 1 finding to address first.

Blocking findings: copier.yml:104


Sourcery is free for open source - if you like our reviews please consider sharing them ✨

Comment thread copier.yml
@tsvikas

tsvikas commented Oct 14, 2026

Copy link
Copy Markdown
Owner Author

@claude see review?

@tsvikas
tsvikas merged commit c7a9a15 into main Oct 14, 2026
5 checks passed
@tsvikas
tsvikas deleted the claude/python-next-beta-gate branch October 14, 2026 09:19
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.

2 participants