From eb885f9962b640aa5e7b9da4e6e4df3d1c361b1e Mon Sep 17 00:00:00 2001 From: Michael Droettboom Date: Tue, 13 Oct 2026 16:36:47 -0400 Subject: [PATCH 1/2] Prepare the 12.9.10 release --- ci/tools/download-wheels | 8 +------- cuda_bindings/docs/source/release/12.9.10-notes.rst | 12 ++++++++++++ cuda_python/docs/source/release/12.9.10-notes.rst | 10 ++++++++++ 3 files changed, 23 insertions(+), 7 deletions(-) create mode 100644 cuda_bindings/docs/source/release/12.9.10-notes.rst create mode 100644 cuda_python/docs/source/release/12.9.10-notes.rst diff --git a/ci/tools/download-wheels b/ci/tools/download-wheels index 1a98909a996..58e8a213226 100755 --- a/ci/tools/download-wheels +++ b/ci/tools/download-wheels @@ -1,6 +1,6 @@ #!/usr/bin/env bash -# SPDX-FileCopyrightText: Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. +# SPDX-FileCopyrightText: Copyright (c) 2025-2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved. # # SPDX-License-Identifier: Apache-2.0 @@ -56,12 +56,6 @@ do continue fi - # exclude pre-release Python (3.15) wheels from releasing - if [[ "${p}" == *python315* ]]; then - echo "Skipping pre-release Python artifact: $p" - continue - fi - # If we're not downloading "all", only process matching component if [[ "$COMPONENT" != "all" && "$p" != ${COMPONENT}* ]]; then continue diff --git a/cuda_bindings/docs/source/release/12.9.10-notes.rst b/cuda_bindings/docs/source/release/12.9.10-notes.rst new file mode 100644 index 00000000000..95dae214bbd --- /dev/null +++ b/cuda_bindings/docs/source/release/12.9.10-notes.rst @@ -0,0 +1,12 @@ +.. SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved. +.. SPDX-License-Identifier: Apache-2.0 + +.. module:: cuda.bindings + +``cuda-bindings`` 12.9.10 Release notes +========================================= + +Features +-------- + +cuda-bindings 12.9.10 now ships wheels for Python 3.15. It is otherwise identical to the 12.9.9 release. diff --git a/cuda_python/docs/source/release/12.9.10-notes.rst b/cuda_python/docs/source/release/12.9.10-notes.rst new file mode 100644 index 00000000000..c26798abc53 --- /dev/null +++ b/cuda_python/docs/source/release/12.9.10-notes.rst @@ -0,0 +1,10 @@ +.. SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved. +.. SPDX-License-Identifier: Apache-2.0 + +``cuda-python`` 12.9.10 Release notes +========================================= + +Features +-------- + +cuda-python 12.9.10 now ships wheels for Python 3.15. It is otherwise identical to the 12.9.9 release. From 28264cb0fd9c4ff72f9b6986396d02853246a2e0 Mon Sep 17 00:00:00 2001 From: Michael Droettboom Date: Wed, 14 Oct 2026 17:31:50 -0400 Subject: [PATCH 2/2] Fix pathfinder issue --- .github/workflows/test-wheel-linux.yml | 3 +++ .github/workflows/test-wheel-windows.yml | 3 +++ ci/tools/run-tests | 24 +++++++++++++++--------- 3 files changed, 21 insertions(+), 9 deletions(-) diff --git a/.github/workflows/test-wheel-linux.yml b/.github/workflows/test-wheel-linux.yml index 3f5b314346a..32c786a7d92 100644 --- a/.github/workflows/test-wheel-linux.yml +++ b/.github/workflows/test-wheel-linux.yml @@ -131,6 +131,9 @@ jobs: && apt install gh -y - name: Download cuda-pathfinder build artifacts from main branch + # main's cuda-pathfinder requires Python >=3.11; on 3.10 pip resolves a + # compatible release from PyPI as a dependency of cuda-bindings instead. + if: ${{ matrix.PY_VER != '3.10' }} env: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} run: | diff --git a/.github/workflows/test-wheel-windows.yml b/.github/workflows/test-wheel-windows.yml index c9de9cace17..b290ab40d3e 100644 --- a/.github/workflows/test-wheel-windows.yml +++ b/.github/workflows/test-wheel-windows.yml @@ -118,6 +118,9 @@ jobs: path: ${{ env.CUDA_BINDINGS_ARTIFACTS_DIR }} - name: Download cuda-pathfinder build artifacts from main branch + # main's cuda-pathfinder requires Python >=3.11; on 3.10 pip resolves a + # compatible release from PyPI as a dependency of cuda-bindings instead. + if: ${{ matrix.PY_VER != '3.10' }} env: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} run: | diff --git a/ci/tools/run-tests b/ci/tools/run-tests index e8317d40c90..4d58ac80d21 100755 --- a/ci/tools/run-tests +++ b/ci/tools/run-tests @@ -1,6 +1,6 @@ #!/usr/bin/env bash -# SPDX-FileCopyrightText: Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. +# SPDX-FileCopyrightText: Copyright (c) 2025-2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved. # # SPDX-License-Identifier: Apache-2.0 @@ -20,14 +20,20 @@ fi test_module=${1} -# Unconditionally install pathfinder wheel -# (it is a direct dependency of bindings, and a transitive dependency of core) -pushd ./cuda_pathfinder -echo "Installing pathfinder wheel" -pwd -ls -pip install $(ls *.whl)[test] -popd +# Install the pathfinder wheel if one was downloaded +# (it is a direct dependency of bindings, and a transitive dependency of core). +# It is not downloaded for Python versions that main's pathfinder no longer +# supports; pip then resolves a compatible release as a bindings dependency. +if compgen -G "./cuda_pathfinder/*.whl" > /dev/null; then + pushd ./cuda_pathfinder + echo "Installing pathfinder wheel" + pwd + ls + pip install $(ls *.whl)[test] + popd +else + echo "No pathfinder wheel found; relying on the PyPI release resolved as a dependency" +fi if [[ "${test_module}" == "pathfinder" ]]; then pushd ./cuda_pathfinder