Skip to content

Fix setup-python for Python 3.14#95

Open
lbliii wants to merge 1 commit intomainfrom
lbliii/fix-setup-python
Open

Fix setup-python for Python 3.14#95
lbliii wants to merge 1 commit intomainfrom
lbliii/fix-setup-python

Conversation

@lbliii
Copy link
Copy Markdown
Owner

@lbliii lbliii commented Apr 13, 2026

Summary

  • Add allow-prereleases: true to all actions/setup-python@v6 and astral-sh/setup-uv@v7 steps
  • Fixes v0.6.0 publish workflow failure where runners couldn't find Python 3.14t binaries

Context

The v0.6.0 release workflow failed because setup-python@v6 couldn't locate Python 3.14 on the runner, causing pip install kida-templates to fail with "no matching distribution found."

🤖 Generated with Claude Code

Add allow-prereleases: true to all setup-python and setup-uv steps
so runners can find Python 3.14t binaries.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings April 13, 2026 22:35
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR updates GitHub Actions workflows (and the repo’s composite action) to allow pre-release Python installs so CI can resolve Python 3.14 free-threaded (3.14t) binaries on runners.

Changes:

  • Add allow-prereleases: true to the composite action’s actions/setup-python@v6 step.
  • Add allow-prereleases: true to the publish workflow’s astral-sh/setup-uv@v7 and actions/setup-python@v6 steps.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.

File Description
action.yml Allows setup-python to install pre-release Python versions when running the composite action.
.github/workflows/python-publish.yml Unblocks publish pipeline by allowing pre-release Python resolution for 3.14t.

Comment thread action.yml
Comment on lines 149 to +152
uses: actions/setup-python@v6
with:
python-version: ${{ inputs.python-version }}
allow-prereleases: true
Copy link

Copilot AI Apr 13, 2026

Choose a reason for hiding this comment

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

allow-prereleases: true is now hard-coded for all consumers of this composite action, which can make Python resolution less reproducible by allowing pre-release/RC builds even when a stable build exists. Consider exposing this as an action input (defaulting to false) or enabling it conditionally only for versions that need it (e.g., free-threaded *t builds or pre-release tags).

Copilot uses AI. Check for mistakes.
Comment on lines 24 to +27
- uses: astral-sh/setup-uv@v7
with:
python-version: "3.14t"
allow-prereleases: true
Copy link

Copilot AI Apr 13, 2026

Choose a reason for hiding this comment

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

The PR description says allow-prereleases: true was added to all actions/setup-python@v6 and astral-sh/setup-uv@v7 steps, but this change only updates the publish workflow (and the composite action). There are other workflows still using these actions without allow-prereleases (e.g., .github/workflows/tests.yml, pages.yml, benchmark-baseline.yml, amp-review.yml, ty.yml). Either update the remaining workflows or adjust the PR description to match the actual scope.

Copilot uses AI. Check for mistakes.
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