Repository navigation
Conversation
Backport of NVIDIA#3080 (merged) to 13.4.x. SSoT: - Add python.supported to ci/versions.yml as the canonical list the wheel matrix is built across. - Thread it through ci.yml -> build-wheel.yml via a new python-versions input; replace the yq read of build-wheel.yml's matrix with ci/versions.yml in the baseline-reuse check. 3.10 drops: - Remove 3.10 from python.supported. - Delete the 9 PY_VER='3.10' rows from ci/test-matrix.yml. - Drop the 3.10 classifier + bump requires-python to >=3.11 across all five pyproject.toml files. - Drop "3.10.*" from cuda_bindings/pixi.toml and cuda_core/pixi.toml python feature matrices; bump cuda_pathfinder/pixi.toml python >=3.10 to >=3.11. - Bump ruff.toml target-version and the mypy python_version pins to 3.11. - Drop the backports.strenum dependency (runtime + pixi) and collapse the StrEnum shim in cuda.core.typing and cuda.core._utils.pycompat. - Collapse dead sys.version_info >= (3, 11) blocks in cuda_core/tests/test_enum_coverage.py and cuda_bindings/tests/test_basics.py. - Drive-by ruff auto-fixes (UP017 datetime.UTC, I001 import sort) in ci/tools/check_pixi_cuda_version.py and toolshed/check_spdx.py. - Bump the docs that explicitly spelled "Python 3.10 - 3.14" to "3.11 - 3.15" in install.rst / support.rst for all three projects. - Add a Highlights "Python 3.10 dropped" bullet to the existing cuda_core 1.3.0 placeholder; create new 13.4.4 / 1.8.2 / 13.4.2 placeholders for cuda_bindings / cuda_pathfinder / cuda_python. pixi.lock refresh: - Regenerated pixi.lock in /, cuda_bindings/, cuda_core/, cuda_pathfinder/, benchmarks/cuda_bindings/, benchmarks/cuda_core/.
Contributor
Member
Author
|
/ok to test 195b796 |
Contributor
|
Member
Author
|
Windows failures need this backport PR: #3086. |
Member
Author
|
Discussed on Slack, this is not needed. We still want to ship PY310 for 13.4.x. |
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.
Backport of #3080 (merged on
main) to the13.4.xmaintenance branch. Not a straightgit cherry-pick— the branch pre-dates several things PR 3080 touched (check_cuda_core_bindings_floor,sample_runner, pyproject/pixi restructures), so the change is re-applied by hand with the same pattern.SSoT (backport of the cupy pattern used in #3080)
ci/versions.yml— add apythonblock withsupported:list. Same shape as the main-branch version..github/workflows/ci.yml— exposePYTHON_SUPPORTEDfrom the existingci-varsjob viayq -o json -I 0 '.python.supported' ci/versions.yml; thread it to everybuild-wheel.ymlcall. The baseline-reuse yq read ofbuild-wheel.yml's matrix is retargeted toci/versions.yml..github/workflows/build-wheel.yml— addpython-versionsinput; matrix sources it viafromJSON(inputs.python-versions). The deadwin-arm64 && 3.10exclude is removed with the matrix.3.10 drops
python.supportedlands with 3.11 .. 3.15t only.ci/test-matrix.yml— delete the 9PY_VER: '3.10'rows.pyproject.tomls — drop the3.10classifier and bumprequires-pythonto>=3.11.cuda_bindings/pixi.toml,cuda_core/pixi.toml— drop"3.10.*"from the python feature matrix.cuda_pathfinder/pixi.toml—python = ">=3.10"→">=3.11".ruff.toml—target-version = "py310"→"py311". mypypython_versionpins incuda_core/pyproject.tomlandcuda_pathfinder/pyproject.tomlbump to"3.11".Cleanups unlocked by the 3.11 floor
cuda_core/cuda/core/typing.py— collapse the StrEnum backport shim (enum.StrEnumis stdlib on 3.11+).cuda_core/cuda/core/_utils/pycompat.py— drop the 3.11 StrEnum shim; keep the 3.12 BufferProtocol block.cuda_core/pyproject.toml— drop thebackports.strenum; python_version < '3.11'runtime dep.cuda_core/pixi.toml— drop the unconditionalbackports.strenumdep.cuda_bindings/tests/test_basics.py+cuda_core/tests/test_enum_coverage.py— drop deadsys.version_info >= (3, 11)blocks.Drive-by ruff fixes (same as #3080)
toolshed/check_spdx.py—datetime.timezone.utc→datetime.UTC(UP017).ci/tools/check_pixi_cuda_version.py— I001 import sort.Docs
cuda_bindings/docs/source/install.rst,support.rst—Python 3.10 - 3.14→3.11 - 3.15. Also droppython310and addpython315/python315tto the nightly-wheel example.cuda_core/docs/source/install.rst,support.rst— same bump; add "3.14 and 3.15" to the free-threaded mention.cuda_pathfinder/docs/source/install.rst— same bump.Release notes
cuda_core/docs/source/release/1.3.0-notes.rst— add a Highlights bullet (file already exists on this branch).cuda_bindings/docs/source/release/13.4.4-notes.rst,cuda_pathfinder/docs/source/release/1.8.2-notes.rst,cuda_python/docs/source/release/13.4.2-notes.rst.pixi.lock refresh
Regenerated
pixi.lock(root) +cuda_bindings/pixi.lock+cuda_core/pixi.lock+cuda_pathfinder/pixi.lock+benchmarks/cuda_bindings/pixi.lock+benchmarks/cuda_core/pixi.lockwith pixi 0.81.0 to track the pixi.toml / pyproject.toml changes.-- Leo's bot