Skip to content

cuda.bindings: build 12.9 and 13.x selectively from main - #2675

Draft
kkraus14 wants to merge 9 commits into
NVIDIA:pull-request/2467from
kkraus14:agent/cuda-bindings-12-on-main
Draft

cuda.bindings: build 12.9 and 13.x selectively from main#2675
kkraus14 wants to merge 9 commits into
NVIDIA:pull-request/2467from
kkraus14:agent/cuda-bindings-12-on-main

Conversation

@kkraus14

Copy link
Copy Markdown
Collaborator

Summary

  • import the maintained CUDA 12.9 bindings tree from 238955935bd903ac72817c0dfdfe4f6a54ee6bb1 as cuda_bindings_12/
  • apply the repository's current Apache-2.0 license text and SPDX policy to the imported package
  • extend the selective-CI workplan from ci: activate dependency-aware package builds and tests #2467 with cu12 and cu13 variants while preserving its aggregate module gates
  • build, test, document, and release the CUDA 12.9 and CUDA 13 bindings/metapackage pairs from main
  • retain the 12.9.x branch for exceptional legacy-compatibility backports, while removing it from routine build and test artifact sourcing

Selective CI behavior

Change Bindings built/tested Matching cuda-python pair Other bindings line
cuda_bindings_12/** source CUDA 12 CUDA 12 reused from the #2467 baseline
cuda_bindings/** source CUDA 13 CUDA 13 reused from the #2467 baseline
shared bindings consumers or CI infrastructure CUDA 12 and 13 CUDA 12 and 13 as needed n/a

The existing modules.bindings.needs_* rollups remain available to #2467 consumers. Per-major decisions live under modules.{bindings,core,python}.variants.{cu12,cu13}, and wheel/sdist matrices are pruned with the corresponding job-level major gates. Core's two build halves are rebuilt together when either bindings line changes so the merged core wheel always comes from one source revision.

Stable v12.9.* tags select only the CUDA 12 bindings/metapackage pair, while v13.* tags select only the CUDA 13 pair. Exact configured CUDA 12.9 and CUDA 13 test rows consume current-run artifacts; older compatibility rows continue to exercise published wheels.

Validation

  • repository pre-commit suite (SPDX, generated seals, Ruff, YAML/TOML, RST, large-file policy, and actionlint)
  • pixi run python -m unittest ci/tools/tests/test_compute_ci_plan.py (6 tests)
  • release-note routing tests (33 tests)
  • CUDA 12 Pixi source build/import and Cython extension build on Linux with Python 3.14
  • CUDA 12 and CUDA 13 cuda-python wheel metadata checks for line-matched dependencies
  • current CUDA 12/current CUDA 13/older-minor environment-routing smoke checks

The full GPU wheel matrix is left to CI.

Depends on #2467.

Closes #1199.

@kkraus14 kkraus14 added enhancement Any code-related improvements CI/CD CI/CD infrastructure cuda.bindings Everything related to the cuda.bindings module labels Aug 20, 2026
@copy-pr-bot

copy-pr-bot Bot commented Aug 20, 2026

Copy link
Copy Markdown
Contributor

Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually.

Contributors can view more details about this message here.

@kkraus14

Copy link
Copy Markdown
Collaborator Author

/ok to test dc9aee4

@kkraus14

Copy link
Copy Markdown
Collaborator Author

/ok to test dc9aee4

@kkraus14

Copy link
Copy Markdown
Collaborator Author

/ok to test e175708

@github-actions

Copy link
Copy Markdown

@kkraus14

Copy link
Copy Markdown
Collaborator Author

/ok to test a65ccea

@kkraus14

Copy link
Copy Markdown
Collaborator Author

/ok to test c980cc9

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CI/CD CI/CD infrastructure cuda.bindings Everything related to the cuda.bindings module enhancement Any code-related improvements

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant