Skip to content

check_versions.py: deprecate only if riscv64 wheels exist for target versions - #835

Open
threexc wants to merge 1 commit into
mainfrom
tgamblin/deprecation-interpreter-check
Open

check_versions.py: deprecate only if riscv64 wheels exist for target versions#835
threexc wants to merge 1 commit into
mainfrom
tgamblin/deprecation-interpreter-check

Conversation

@threexc

@threexc threexc commented Sep 2, 2026

Copy link
Copy Markdown
Collaborator

Deprecate a package build only when each Python version we support has a corresponding wheel upstream. For example, the RISE registry currently builds for Python 3.12, 3.13, 3.14, and 3.14t. In this case, if an upstream wheel builds riscv64 for 3.12, 3.13, and 3.14, but not 3.14t, we should maintain the package workflow until 3.14t is also supported (or the package builds wheels for a future version of the RISE list).

Include a _self_test() function, providing a basic list of patterns to test against which can be expanded as wheel naming conventions evolve.

…versions

Deprecate a package build only when each Python version we support has a
corresponding wheel upstream. For example, the RISE registry currently
builds for Python 3.12, 3.13, 3.14, and 3.14t. In this case, if an
upstream wheel builds riscv64 for 3.12, 3.13, and 3.14, but not 3.14t,
we should maintain the package workflow until 3.14t is also supported
(or the package builds wheels for a future version of the RISE list).

Include a _self_test() function, providing a basic list of patterns to
test against which can be expanded as wheel naming conventions evolve.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com>
@threexc
threexc requested review from justeph and luhenry September 2, 2026 14:15
@justeph

justeph commented Sep 2, 2026

Copy link
Copy Markdown
Collaborator

Do we really want to continue maintaining a package that does not ship one version of our build matrix? I think it's their responsibility. Let's suppose upstream decide to remove 3.12, I think we should not keep maintaining a build workflow for it. Same for 3.14t. Maybe the upstream project does not support free threaded at all.

@luhenry

luhenry commented Sep 2, 2026

Copy link
Copy Markdown
Member

@justeph the issue here is hypothesis which doesn't ship a 314t upstream, so any other package that depends on hypothesis for testing (which some do) then it will not test on 314t specifically.

@threexc

threexc commented Sep 2, 2026

Copy link
Copy Markdown
Collaborator Author

@justeph @luhenry it looks like hypothesis in particular may support threaded soon (for 3.15): HypothesisWorks/hypothesis#4851

Regardless, we should still have a course of action for when wheels don't exist for all of the version we're targeting. This will get a bit more difficult once 3.15 formally ships, since we'll probably need to build for 3.12, 3.13, 3.14, 3.14t, 3.15, and 3.15t.

Maybe we should consider trying to upstream threaded wheels (if it's simple) as an extension of our mandate to get projects building for riscv64?

See also: HypothesisWorks/hypothesis#4028 and HypothesisWorks/hypothesis#4451

@luhenry

luhenry commented Sep 2, 2026

Copy link
Copy Markdown
Member

please do not merge just yet, I want to push #834 first. I shall be done in 15-20 min ideally done

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.

3 participants