Skip to content
Open
4 changes: 2 additions & 2 deletions ci/build_wheel_libcudf.sh
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#!/bin/bash
# SPDX-FileCopyrightText: Copyright (c) 2023-2026, NVIDIA CORPORATION.
# SPDX-FileCopyrightText: Copyright (c) 2023-2026, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
# SPDX-License-Identifier: Apache-2.0

set -euo pipefail
Expand All @@ -15,7 +15,7 @@ rapids-dependency-file-generator \
--output requirements \
--file-key "py_build_${package_name}" \
--file-key "py_rapids_build_${package_name}" \
--matrix "cuda=${RAPIDS_CUDA_VERSION%.*};arch=$(arch);py=${RAPIDS_PY_VERSION};cuda_suffixed=true" \
--matrix "cuda=${RAPIDS_CUDA_VERSION%.*};arch=$(arch);py=${RAPIDS_PY_VERSION};cuda_suffixed=true;use_cuda_wheels=true" \
| tee /tmp/requirements-build.txt

rapids-logger "Installing build requirements"
Expand Down
21 changes: 17 additions & 4 deletions ci/test_wheel_cudf.sh
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#!/bin/bash
# SPDX-FileCopyrightText: Copyright (c) 2023-2026, NVIDIA CORPORATION.
# SPDX-FileCopyrightText: Copyright (c) 2023-2026, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
# SPDX-License-Identifier: Apache-2.0

set -euo pipefail
Expand All @@ -13,7 +13,7 @@ LIBCUDF_WHEELHOUSE=$(rapids-download-from-github "$(rapids-artifact-name wheel_c
PYLIBCUDF_WHEELHOUSE=$(rapids-download-from-github "$(rapids-artifact-name wheel_python pylibcudf cudf --stable --cuda "$RAPIDS_CUDA_VERSION")")
CUDF_WHEELHOUSE=$(rapids-download-from-github "$(rapids-artifact-name wheel_python cudf cudf --stable --cuda "$RAPIDS_CUDA_VERSION")")

rapids-logger "Install pylibcudf and its basic dependencies in a virtual environment"
rapids-logger "Install libcudf and verify its runtime dependencies in a virtual environment"

# generate constraints (possibly pinning to oldest support versions of dependencies)
rapids-generate-pip-constraints py_test_cudf "${PIP_CONSTRAINT}"
Expand All @@ -22,9 +22,22 @@ RESULTS_DIR=${RAPIDS_TESTS_DIR:-"$(mktemp -d)"}
RAPIDS_TESTS_DIR=${RAPIDS_TESTS_DIR:-"${RESULTS_DIR}/test-results"}/
mkdir -p "${RAPIDS_TESTS_DIR}"

python -m venv libcudf-env
. libcudf-env/bin/activate

rapids-pip-retry install \
-v \
--prefer-binary \
--constraint "${PIP_CONSTRAINT}" \
"$(echo "${LIBCUDF_WHEELHOUSE}"/libcudf_"${RAPIDS_PY_CUDA_SUFFIX}"*.whl)"
python -c "import libcudf; assert libcudf.load_library() is not None"
deactivate

# To test pylibcudf without its optional dependencies, we create a virtual environment
python -m venv env
. env/bin/activate
python -m venv pylibcudf-env
. pylibcudf-env/bin/activate

rapids-logger "Install pylibcudf and its basic dependencies"

# notes:
#
Expand Down
16 changes: 15 additions & 1 deletion ci/test_wheel_cudf_streaming.sh
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#!/bin/bash
# SPDX-FileCopyrightText: Copyright (c) 2025-2026, NVIDIA CORPORATION.
# SPDX-FileCopyrightText: Copyright (c) 2025-2026, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
# SPDX-License-Identifier: Apache-2.0

set -euo pipefail
Expand All @@ -17,6 +17,20 @@ PYLIBCUDF_WHEELHOUSE=$(rapids-download-from-github "$(rapids-artifact-name wheel
# generate constraints (possibly pinning to oldest support versions of dependencies)
rapids-generate-pip-constraints py_test_cudf_streaming "${PIP_CONSTRAINT}"

rapids-logger "Install libcudf_streaming and verify its runtime dependencies in a virtual environment"

python -m venv libcudf-streaming-env
. libcudf-streaming-env/bin/activate

rapids-pip-retry install \
-v \
--prefer-binary \
--constraint "${PIP_CONSTRAINT}" \
"$(echo "${LIBCUDF_STREAMING_WHEELHOUSE}"/libcudf_streaming_"${RAPIDS_PY_CUDA_SUFFIX}"*.whl)" \
"$(echo "${LIBCUDF_WHEELHOUSE}"/libcudf_"${RAPIDS_PY_CUDA_SUFFIX}"*.whl)"
python -c "import libcudf_streaming; assert libcudf_streaming.load_library() is not None"
deactivate

rapids-logger "Install cudf_streaming and its dependencies"

rapids-pip-retry install \
Expand Down
36 changes: 10 additions & 26 deletions dependencies.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -829,24 +829,29 @@ dependencies:
- matrix:
use_cuda_wheels: "false"
packages:
# We always want nvJitLink >= whatever minor version was available in the build environment
# nvJitLink tends to follow the CTK's minor versions, but check at https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html
#
# ref: https://github.com/rapidsai/cudf/pull/20873
- matrix:
cuda: "12.9"
cuda: "12.*"
cuda_suffixed: "true"
use_cuda_wheels: "true"
packages:
- cuda-toolkit[nvrtc]==12.*
# We always want nvJitLink >= whatever minor version was available in the build environment
# nvJitLink tends to follow the CTK's minor versions, but check at https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html
#
# ref: https://github.com/rapidsai/cudf/pull/20873
- nvidia-nvjitlink-cu12>=12.9,<13
- matrix:
cuda: "13.*"
cuda_suffixed: "true"
use_cuda_wheels: "true"
packages:
- cuda-toolkit[nvrtc]==13.*
- &nvjitlink_cu13 nvidia-nvjitlink>=13.3,<14
# if no matching matrix selectors passed, list the CUDA 13 requirement
# (just as a source of documentation, as this populates pyproject.toml in source control)
- matrix:
packages:
- cuda-toolkit[nvrtc]==13.*
- *nvjitlink_cu13
cuda_static:
common:
Expand Down Expand Up @@ -963,27 +968,6 @@ dependencies:
- nvtx>=0.2.1
- packaging
- rich
specific:
- output_types: [requirements, pyproject]
matrices:
# if use_cuda_wheels=false is provided, do not add dependencies on any CUDA wheels
# (e.g. for DLFW and pip devcontainers)
- matrix:
use_cuda_wheels: "false"
packages:
- matrix:
cuda: "12.*"
cuda_suffixed: "true"
use_cuda_wheels: "true"
packages:
- cuda-toolkit[nvcc,nvrtc]==12.*
- matrix:
cuda: "13.*"
cuda_suffixed: "true"
use_cuda_wheels: "true"
packages:
- cuda-toolkit[nvcc,nvrtc]==13.*
- {matrix: null, packages: []}
run_cudf_polars:
common:
- output_types: [conda, requirements, pyproject]
Expand Down
2 changes: 2 additions & 0 deletions python/libcudf/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ classifiers = [
"Environment :: GPU :: NVIDIA CUDA",
]
dependencies = [
"cuda-toolkit[nvrtc]==13.*",
"libkvikio==26.10.*,>=0.0.0a0",
"librmm==26.10.*,>=0.0.0a0",
"nvidia-libnvcomp==5.2.0.13",
Expand Down Expand Up @@ -70,6 +71,7 @@ dependencies-file = "../../dependencies.yaml"
matrix-entry = "cuda_suffixed=true;use_cuda_wheels=true"
requires = [
"cmake>=4.0",
"cuda-toolkit[nvrtc]==13.*",
"libkvikio==26.10.*,>=0.0.0a0",
"librmm==26.10.*,>=0.0.0a0",
"ninja",
Expand Down
Loading