Repository navigation
Align CUDA bindings minimums with RMM #2874
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -20,7 +20,7 @@ authors = [ | |
| license = "Apache-2.0" | ||
| requires-python = ">=3.12" | ||
| dependencies = [ | ||
| "cuda-bindings>=13.0.1,<14.0", | ||
| "cuda-bindings>=13.0.2,<14.0", | ||
| "libcuvs==26.12.*,>=0.0.0a0", | ||
| "numpy>=2.0,<3.0", | ||
| "pylibraft==26.12.*,>=0.0.0a0", | ||
|
|
@@ -106,7 +106,7 @@ regex = "(?P<value>.*)" | |
| [tool.rapids-build-backend] | ||
| requires = [ | ||
| "cmake>=4.0", | ||
| "cuda-bindings>=13.0.1,<14.0", | ||
| "cuda-bindings>=13.0.2,<14.0", | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win 🔎 Supported by static analysis🏁 Script executed: set -o pipefail
printf '%s\n' '--- python/cuvs/pyproject.toml build-system and project dependency contexts ---'
nl -ba python/cuvs/pyproject.toml | sed -n '1,35p;92,118p'
printf '%s\n' '--- wheel scripts ---'
nl -ba ci/build_wheel_cuvs.sh | sed -n '1,80p'
nl -ba ci/build_wheel.sh | sed -n '1,125p'
printf '%s\n' '--- wheel workflow contexts ---'
rg -n -F --glob '.github/workflows/*' -e 'wheel-build-cuvs' -e 'build_wheel_cuvs.sh' -e 'RAPIDS_CUDA_VERSION' -e '--no-isolation' -e 'python -m build' -e 'build-system' .github/workflows ci python/cuvs || test "$?" -eq 1
printf '%s\n' '--- build dependency handling ---'
rg -n -F --glob '!build/**' --glob '!dist/**' -e 'rapids-python-build-retry' -e 'build-system.requires' -e 'PIP_NO_BUILD_ISOLATION' -e 'no-isolation' -e 'cuda-bindings' ci .github python/cuvs dependencies.yaml || test "$?" -eq 1Repository: NVIDIA/cuvs Length of output: 8944 🏁 Script executed: set -o pipefail
nl -ba python/cuvs/pyproject.toml | sed -n '1,35p;92,118p'
nl -ba ci/build_wheel_cuvs.sh | sed -n '1,80p'
nl -ba ci/build_wheel.sh | sed -n '1,125p'
rg -n -F --glob '.github/workflows/*' -e 'wheel-build-cuvs' -e 'build_wheel_cuvs.sh' -e 'RAPIDS_CUDA_VERSION' -e '--no-isolation' -e 'python -m build' .github/workflows ci python/cuvs || test "$?" -eq 1
rg -n -F --glob '!build/**' --glob '!dist/**' -e 'rapids-python-build-retry' -e 'PIP_NO_BUILD_ISOLATION' -e 'no-isolation' -e 'cuda-bindings' ci .github python/cuvs dependencies.yaml || test "$?" -eq 1Repository: NVIDIA/cuvs Length of output: 8704 🏁 Script executed: set -o pipefail
printf '%s\n' '--- generated CUDA binding constraints and dependency definitions ---'
nl -ba dependencies.yaml | sed -n '600,745p'
printf '%s\n' '--- backend/constraint contract references ---'
rg -n -F --glob '!build/**' --glob '!dist/**' -e 'tool.rapids-build-backend' -e 'rapids-build-backend' -e 'dependency-constraints-txt' -e 'PIP_CONSTRAINT' -e 'cuda-bindings==12.9.3' -e 'cuda-bindings==13.0.2' .
printf '%s\n' '--- possible backend source files ---'
rg --files | rg '(^|/)(rapids[-_]build[-_]backend|build_backend|pyproject.toml|setup.py)$' | head -80Repository: NVIDIA/cuvs Length of output: 8660 🏁 Script executed: set -o pipefail
printf '%s\n' '--- dependency generator mappings ---'
nl -ba dependencies.yaml | sed -n '110,190p;250,310p'
printf '%s\n' '--- comparable generated backend requirements ---'
nl -ba python/libcuvs/pyproject.toml | sed -n '1,25p;78,102p'
nl -ba python/cuvs_bench/pyproject.toml | sed -n '1,20p;90,112p'
printf '%s\n' '--- current diff against stated base ---'
git diff --no-ext-diff --unified=20 e7ef1c523635ec85707ac3d1d08603fa06ac279f 9a9fd1ef2236b1277fe822e45993d918661d7a6c -- dependencies.yaml python/cuvs/pyproject.tomlRepository: NVIDIA/cuvs Length of output: 13987 🏁 Script executed: set -o pipefail
printf '%s\n' '--- wheel jobs and environment configuration ---'
nl -ba .github/workflows/build.yaml | sed -n '250,300p'
nl -ba .github/workflows/pr.yaml | sed -n '715,755p'
rg -n -F --glob '*.yaml' --glob '*.yml' --glob '*.sh' -e 'ci-wheel' -e 'build_py_cuvs' -e 'generate-pip-constraints' -e 'PIP_CONSTRAINT' -e 'dependencies-file' .
printf '%s\n' '--- dependency groups around Python package builds ---'
nl -ba dependencies.yaml | sed -n '100,190p;190,290p;290,390p'Repository: NVIDIA/cuvs Length of output: 14817 Make the backend requirement CUDA-version specific. The CUDA 12 wheel build passes its generated constraints into the isolated build environment. The CUDA 12 dependency matrix requires The runtime metadata correction does not update this separate backend requirement. Regenerate the backend requirements from the existing CUDA-specific 🤖 Prompt for AI Agents |
||
| "cython>=3.2.2", | ||
| "libcuvs==26.12.*,>=0.0.0a0", | ||
| "libraft==26.12.*,>=0.0.0a0", | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🗄️ Data Integrity & Integration | 🟠 Major | ⚡ Quick win
🔎 Supported by static analysis
🏁 Script executed:
Repository: NVIDIA/cuvs
Length of output: 11548
🏁 Script executed:
Repository: NVIDIA/cuvs
Length of output: 19918
🏁 Script executed:
Repository: NVIDIA/cuvs
Length of output: 17307
🏁 Script executed:
Repository: NVIDIA/cuvs
Length of output: 16952
Generate CUDA-specific dependencies for cuvs wheels.
The wheel workflow builds a cuvs wheel for every
CUDA_VER, including CUDA 12. Each build usespython/cuvs/pyproject.toml, which declarescuda-bindings>=13.0.2,<14.0without a CUDA condition. Therefore, a CUDA 12 wheel can require CUDA 13 bindings and cannot be installed with the repository’s required CUDA 12 range,cuda-bindings>=12.9.3,<13.0.Use the existing
depends_on_cuda_pythonmatrix when generating wheel project metadata. The CUDA 12 wheel must declare the CUDA 12 range, while the CUDA 13 wheel must retain the CUDA 13 range.🤖 Prompt for AI Agents