Skip to content

Commit 4155789

Browse files
committed
Merge main into pandas3
2 parents 47906c1 + 093d87e commit 4155789

File tree

76 files changed

+1132
-752
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

76 files changed

+1132
-752
lines changed

.github/workflows/pr.yaml

Lines changed: 101 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -73,13 +73,34 @@ jobs:
7373
uses: rapidsai/shared-workflows/.github/workflows/changed-files.yaml@main
7474
with:
7575
files_yaml: |
76+
build_docs:
77+
- '**'
78+
- '!.devcontainer/**'
79+
- '!.pre-commit-config.yaml'
80+
- '!ci/build_wheel*.sh'
81+
- '!ci/check_style.sh'
82+
- '!ci/discover_libcudf_tests.sh'
83+
- '!ci/release/update-version.sh'
84+
- '!ci/run_*.sh'
85+
- '!ci/test_*.sh'
86+
- '!ci/validate_wheel.sh'
87+
- '!codecov.yml'
7688
test_cpp:
7789
- '**'
7890
- '!.devcontainer/**'
91+
- '!.pre-commit-config.yaml'
7992
- '!CONTRIBUTING.md'
8093
- '!README.md'
8194
- '!ci/cudf_pandas_scripts/**'
95+
- '!ci/build_docs.sh'
96+
- '!ci/build_python*.sh'
97+
- '!ci/build_wheel*.sh'
98+
- '!ci/check_style.sh'
99+
- '!ci/cudf_pandas_scripts/**'
82100
- '!ci/release/update-version.sh'
101+
- '!ci/test_python*.sh'
102+
- '!ci/test_wheel*.sh'
103+
- '!ci/validate_wheel.sh'
83104
- '!docs/**'
84105
- '!img/**'
85106
- '!java/**'
@@ -89,9 +110,12 @@ jobs:
89110
- '**'
90111
- '!.clang-format'
91112
- '!.devcontainer/**'
113+
- '!.pre-commit-config.yaml'
92114
- '!CONTRIBUTING.md'
93115
- '!README.md'
94116
- '!ci/release/update-version.sh'
117+
- '!ci/test_java.sh'
118+
- '!ci/validate_wheel.sh'
95119
- '!docs/**'
96120
- '!img/**'
97121
- '!java/**'
@@ -100,10 +124,18 @@ jobs:
100124
- '**'
101125
- '!.clang-format'
102126
- '!.devcontainer/**'
127+
- '!.pre-commit-config.yaml'
103128
- '!CONTRIBUTING.md'
104129
- '!README.md'
130+
- '!ci/build_docs.sh'
131+
- '!ci/build_wheel*.sh'
132+
- '!ci/check_style.sh'
105133
- '!ci/cudf_pandas_scripts/**'
106134
- '!ci/release/update-version.sh'
135+
- '!ci/test_wheel*.sh'
136+
- '!ci/validate_wheel.sh'
137+
- '!ci/release/update-version.sh'
138+
- '!codecov.yml'
107139
- '!docs/**'
108140
- '!img/**'
109141
- '!notebooks/**'
@@ -112,19 +144,59 @@ jobs:
112144
- '**'
113145
- '!.clang-format'
114146
- '!.devcontainer/**'
147+
- '!.pre-commit-config.yaml'
148+
- '!CONTRIBUTING.md'
149+
- '!README.md'
150+
- '!ci/build_wheel*.sh'
151+
- '!ci/cudf_pandas_scripts/**'
152+
- '!ci/release/update-version.sh'
153+
- '!ci/test_wheel*.sh'
154+
- '!ci/validate_wheel.sh'
155+
- '!codecov.yml'
156+
- '!java/**'
157+
test_python_conda:
158+
- '**'
159+
- '!.clang-format'
160+
- '!.devcontainer/**'
161+
- '!.pre-commit-config.yaml'
115162
- '!CONTRIBUTING.md'
116163
- '!README.md'
164+
- '!ci/build_docs.sh'
165+
- '!ci/build_wheel*.sh'
166+
- '!ci/check_style.sh'
117167
- '!ci/cudf_pandas_scripts/**'
118168
- '!ci/release/update-version.sh'
169+
- '!ci/test_java.sh'
170+
- '!ci/test_wheel*.sh'
171+
- '!ci/validate_wheel.sh'
172+
- '!docs/**'
173+
- '!img/**'
119174
- '!java/**'
120-
test_python:
175+
- '!notebooks/**'
176+
test_python_wheels:
121177
- '**'
122178
- '!.clang-format'
123179
- '!.devcontainer/**'
180+
- '!.pre-commit-config.yaml'
124181
- '!CONTRIBUTING.md'
125182
- '!README.md'
183+
- '!ci/build_cpp.sh'
184+
- '!ci/build_docs.sh'
185+
- '!ci/build_python_noarch.sh'
186+
- '!ci/build_python.sh'
187+
- '!ci/check-style.sh'
126188
- '!ci/cudf_pandas_scripts/**'
127189
- '!ci/release/update-version.sh'
190+
- '!ci/test_cpp.sh'
191+
- '!ci/test_cpp_common.sh'
192+
- '!ci/test_cpp_memcheck.sh'
193+
- '!ci/test_java.sh'
194+
- '!ci/test_notebooks.sh'
195+
- '!ci/test_python_common.sh'
196+
- '!ci/test_python_cudf.sh'
197+
- '!ci/test_python_other.sh'
198+
- '!codecov.yml'
199+
- '!conda/**'
128200
- '!docs/**'
129201
- '!img/**'
130202
- '!java/**'
@@ -187,7 +259,7 @@ jobs:
187259
needs: [conda-python-build, conda-python-build-noarch, changed-files]
188260
secrets: inherit
189261
uses: rapidsai/shared-workflows/.github/workflows/conda-python-tests.yaml@main
190-
if: fromJSON(needs.changed-files.outputs.changed_file_groups).test_python
262+
if: fromJSON(needs.changed-files.outputs.changed_file_groups).test_python_conda
191263
with:
192264
build_type: pull-request
193265
script: "ci/test_python_cudf.sh"
@@ -197,7 +269,7 @@ jobs:
197269
needs: [conda-python-build-noarch, changed-files]
198270
secrets: inherit
199271
uses: rapidsai/shared-workflows/.github/workflows/conda-python-tests.yaml@main
200-
if: fromJSON(needs.changed-files.outputs.changed_file_groups).test_python
272+
if: fromJSON(needs.changed-files.outputs.changed_file_groups).test_python_conda
201273
with:
202274
build_type: pull-request
203275
script: "ci/test_python_other.sh"
@@ -225,9 +297,10 @@ jobs:
225297
container_image: "rapidsai/ci-conda:26.04-latest"
226298
script: "ci/test_notebooks.sh"
227299
docs-build:
228-
needs: [conda-python-build, conda-python-build-noarch]
300+
needs: [conda-python-build, conda-python-build-noarch, changed-files]
229301
secrets: inherit
230302
uses: rapidsai/shared-workflows/.github/workflows/custom-job.yaml@main
303+
if: fromJSON(needs.changed-files.outputs.changed_file_groups).build_docs
231304
with:
232305
build_type: pull-request
233306
node_type: "gpu-l4-latest-1"
@@ -273,7 +346,7 @@ jobs:
273346
needs: [wheel-build-cudf, changed-files]
274347
secrets: inherit
275348
uses: rapidsai/shared-workflows/.github/workflows/wheels-test.yaml@main
276-
if: fromJSON(needs.changed-files.outputs.changed_file_groups).test_python
349+
if: fromJSON(needs.changed-files.outputs.changed_file_groups).test_python_wheels
277350
with:
278351
build_type: pull-request
279352
script: ci/test_wheel_cudf.sh
@@ -296,7 +369,7 @@ jobs:
296369
# needs: [wheel-build-cudf-polars, changed-files]
297370
# secrets: inherit
298371
# uses: rapidsai/shared-workflows/.github/workflows/wheels-test.yaml@main
299-
# if: fromJSON(needs.changed-files.outputs.changed_file_groups).test_python
372+
# if: fromJSON(needs.changed-files.outputs.changed_file_groups).test_python_wheels
300373
# with:
301374
# # This selects "ARCH=amd64 + the latest supported Python + CUDA".
302375
# matrix_filter: map(select(.ARCH == "amd64")) | group_by(.CUDA_VER|split(".")|map(tonumber)|.[0]) | map(max_by([(.PY_VER|split(".")|map(tonumber)), (.CUDA_VER|split(".")|map(tonumber))]))
@@ -307,7 +380,7 @@ jobs:
307380
# needs: [wheel-build-cudf-polars, changed-files]
308381
# secrets: inherit
309382
# uses: rapidsai/shared-workflows/.github/workflows/wheels-test.yaml@main
310-
# if: fromJSON(needs.changed-files.outputs.changed_file_groups).test_python
383+
# if: fromJSON(needs.changed-files.outputs.changed_file_groups).test_python_wheels
311384
# with:
312385
# # This selects "ARCH=amd64 + the latest supported Python + CUDA" to minimize CI usage.
313386
# # (rapidsmpf compatibility already validated in rapidsmpf CI)
@@ -319,7 +392,7 @@ jobs:
319392
# needs: [wheel-build-cudf-polars, changed-files]
320393
# secrets: inherit
321394
# uses: rapidsai/shared-workflows/.github/workflows/wheels-test.yaml@main
322-
# if: fromJSON(needs.changed-files.outputs.changed_file_groups).test_python
395+
# if: fromJSON(needs.changed-files.outputs.changed_file_groups).test_python_wheels
323396
# with:
324397
# # This selects "ARCH=amd64 + the latest supported Python + CUDA".
325398
# matrix_filter: map(select(.ARCH == "amd64")) | group_by(.CUDA_VER|split(".")|map(tonumber)|.[0]) | map(max_by([(.PY_VER|split(".")|map(tonumber)), (.CUDA_VER|split(".")|map(tonumber))]))
@@ -344,7 +417,7 @@ jobs:
344417
needs: [wheel-build-dask-cudf, changed-files]
345418
secrets: inherit
346419
uses: rapidsai/shared-workflows/.github/workflows/wheels-test.yaml@main
347-
if: fromJSON(needs.changed-files.outputs.changed_file_groups).test_python
420+
if: fromJSON(needs.changed-files.outputs.changed_file_groups).test_python_wheels
348421
with:
349422
# This selects "ARCH=amd64 + the latest supported Python + CUDA".
350423
matrix_filter: map(select(.ARCH == "amd64")) | group_by(.CUDA_VER|split(".")|map(tonumber)|.[0]) | map(max_by([(.PY_VER|split(".")|map(tonumber)), (.CUDA_VER|split(".")|map(tonumber))]))
@@ -373,7 +446,7 @@ jobs:
373446
needs: [wheel-build-cudf, changed-files]
374447
secrets: inherit
375448
uses: rapidsai/shared-workflows/.github/workflows/wheels-test.yaml@main
376-
if: fromJSON(needs.changed-files.outputs.changed_file_groups).test_python || fromJSON(needs.changed-files.outputs.changed_file_groups).test_cudf_pandas
449+
if: fromJSON(needs.changed-files.outputs.changed_file_groups).test_python_wheels || fromJSON(needs.changed-files.outputs.changed_file_groups).test_cudf_pandas
377450
with:
378451
# This selects the latest supported Python + CUDA minor versions for each ARCH/CUDA major version combo
379452
matrix_filter: group_by([(.ARCH), (.CUDA_VER|split(".")|map(tonumber)|.[0])]) | map(max_by([(.PY_VER|split(".")|map(tonumber)), (.CUDA_VER|split(".")|map(tonumber))]))
@@ -384,7 +457,7 @@ jobs:
384457
needs: [conda-python-build, conda-python-build-noarch, changed-files]
385458
secrets: inherit
386459
uses: rapidsai/shared-workflows/.github/workflows/custom-job.yaml@main
387-
if: fromJSON(needs.changed-files.outputs.changed_file_groups).test_python || fromJSON(needs.changed-files.outputs.changed_file_groups).test_cudf_pandas
460+
if: fromJSON(needs.changed-files.outputs.changed_file_groups).test_python_conda || fromJSON(needs.changed-files.outputs.changed_file_groups).test_cudf_pandas
388461
with:
389462
build_type: pull-request
390463
branch: ${{ inputs.branch }}
@@ -400,7 +473,7 @@ jobs:
400473
needs: [wheel-build-cudf, changed-files]
401474
secrets: inherit
402475
uses: rapidsai/shared-workflows/.github/workflows/custom-job.yaml@main
403-
if: fromJSON(needs.changed-files.outputs.changed_file_groups).test_python || fromJSON(needs.changed-files.outputs.changed_file_groups).test_cudf_pandas
476+
if: fromJSON(needs.changed-files.outputs.changed_file_groups).test_python_wheels || fromJSON(needs.changed-files.outputs.changed_file_groups).test_cudf_pandas
404477
with:
405478
build_type: pull-request
406479
branch: ${{ inputs.branch }}
@@ -409,6 +482,7 @@ jobs:
409482
node_type: "gpu-l4-latest-1"
410483
container_image: "rapidsai/citestwheel:26.04-latest"
411484
script: ci/cudf_pandas_scripts/pandas-tests/run.sh pr
485+
<<<<<<< HEAD
412486
# narwhals-tests:
413487
# needs: [conda-python-build, conda-python-build-noarch, changed-files]
414488
# secrets: inherit
@@ -422,6 +496,21 @@ jobs:
422496
# node_type: "gpu-l4-latest-1"
423497
# container_image: "rapidsai/ci-conda:26.04-latest"
424498
# script: ci/test_narwhals.sh
499+
=======
500+
# narwhals-tests:
501+
# needs: [conda-python-build, conda-python-build-noarch, changed-files]
502+
# secrets: inherit
503+
# uses: rapidsai/shared-workflows/.github/workflows/custom-job.yaml@main
504+
# if: fromJSON(needs.changed-files.outputs.changed_file_groups).test_python_conda
505+
# with:
506+
# build_type: pull-request
507+
# branch: ${{ inputs.branch }}
508+
# date: ${{ inputs.date }}
509+
# sha: ${{ inputs.sha }}
510+
# node_type: "gpu-l4-latest-1"
511+
# container_image: "rapidsai/ci-conda:26.04-latest"
512+
# script: ci/test_narwhals.sh
513+
>>>>>>> main
425514
spark-rapids-jni:
426515
needs: changed-files
427516
uses: ./.github/workflows/spark-rapids-jni.yaml

.pre-commit-config.yaml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -162,7 +162,7 @@ repos:
162162
args: ["--fix"]
163163
- id: ruff-format
164164
- repo: https://github.com/rapidsai/pre-commit-hooks
165-
rev: v1.3.1
165+
rev: v1.3.2
166166
hooks:
167167
- id: verify-copyright
168168
name: verify-copyright-cudf
@@ -253,6 +253,12 @@ repos:
253253
^python/cudf/cudf/VERSION$|
254254
^cpp/include/nvtext/byte_pair_encoding.hpp$|
255255
^python/cudf/cudf/core/byte_pair_encoding.py$
256+
- id: verify-pyproject-license
257+
# ignore the top-level pyproject.toml, which doesn't
258+
# have or need a [project] table
259+
exclude: |
260+
(?x)
261+
^pyproject[.]toml$
256262
- repo: https://github.com/rapidsai/dependency-file-generator
257263
rev: v1.20.2
258264
hooks:

ci/build_wheel.sh

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@ package_dir=$2
99

1010
source rapids-configure-sccache
1111
source rapids-date-string
12+
RAPIDS_INIT_PIP_REMOVE_NVIDIA_INDEX="true"
13+
export RAPIDS_INIT_PIP_REMOVE_NVIDIA_INDEX
1214
source rapids-init-pip
1315

1416
export SCCACHE_S3_PREPROCESSOR_CACHE_KEY_PREFIX="${package_name}-${RAPIDS_CONDA_ARCH}-cuda${RAPIDS_CUDA_VERSION%%.*}-wheel-preprocessor-cache"
@@ -34,7 +36,7 @@ RAPIDS_PIP_WHEEL_ARGS=(
3436
#
3537
# Passing '--build-constraint' and '--no-build-isolation` together results in an error from 'pip',
3638
# but we want to keep environment variable PIP_CONSTRAINT set unconditionally.
37-
# PIP_NO_BUILD_ISOLATION=0 means "add --no-build-isolation" (ref: https://github.com/pypa/pip/issues/573
39+
# PIP_NO_BUILD_ISOLATION=0 means "add --no-build-isolation" (ref: https://github.com/pypa/pip/issues/5735)
3840
if [[ "${PIP_NO_BUILD_ISOLATION:-}" != "0" ]]; then
3941
RAPIDS_PIP_WHEEL_ARGS+=(--build-constraint="${PIP_CONSTRAINT}")
4042
fi

ci/build_wheel_cudf.sh

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@
44

55
set -euo pipefail
66

7+
RAPIDS_INIT_PIP_REMOVE_NVIDIA_INDEX="true"
8+
export RAPIDS_INIT_PIP_REMOVE_NVIDIA_INDEX
79
source rapids-init-pip
810

911
package_dir="python/cudf"

ci/build_wheel_cudf_polars.sh

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
#!/bin/bash
2-
# SPDX-FileCopyrightText: Copyright (c) 2023-2025, NVIDIA CORPORATION.
2+
# SPDX-FileCopyrightText: Copyright (c) 2023-2026, NVIDIA CORPORATION.
33
# SPDX-License-Identifier: Apache-2.0
44

55
set -euo pipefail
66

7+
RAPIDS_INIT_PIP_REMOVE_NVIDIA_INDEX="true"
8+
export RAPIDS_INIT_PIP_REMOVE_NVIDIA_INDEX
79
source rapids-init-pip
810

911
package_dir="python/cudf_polars"

ci/build_wheel_dask_cudf.sh

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
#!/bin/bash
2-
# SPDX-FileCopyrightText: Copyright (c) 2023-2025, NVIDIA CORPORATION.
2+
# SPDX-FileCopyrightText: Copyright (c) 2023-2026, NVIDIA CORPORATION.
33
# SPDX-License-Identifier: Apache-2.0
44

55
set -euo pipefail
66

7+
RAPIDS_INIT_PIP_REMOVE_NVIDIA_INDEX="true"
8+
export RAPIDS_INIT_PIP_REMOVE_NVIDIA_INDEX
79
source rapids-init-pip
810

911
package_dir="python/dask_cudf"

ci/build_wheel_libcudf.sh

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
#!/bin/bash
2-
# SPDX-FileCopyrightText: Copyright (c) 2023-2025, NVIDIA CORPORATION.
2+
# SPDX-FileCopyrightText: Copyright (c) 2023-2026, NVIDIA CORPORATION.
33
# SPDX-License-Identifier: Apache-2.0
44

55
set -euo pipefail
66

7+
RAPIDS_INIT_PIP_REMOVE_NVIDIA_INDEX="true"
8+
export RAPIDS_INIT_PIP_REMOVE_NVIDIA_INDEX
79
source rapids-init-pip
810

911
package_name="libcudf"

ci/build_wheel_pylibcudf.sh

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@
44

55
set -euo pipefail
66

7+
RAPIDS_INIT_PIP_REMOVE_NVIDIA_INDEX="true"
8+
export RAPIDS_INIT_PIP_REMOVE_NVIDIA_INDEX
79
source rapids-init-pip
810

911
package_dir="python/pylibcudf"

ci/cudf_pandas_scripts/pandas-tests/run.sh

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
#!/usr/bin/env bash
2-
# SPDX-FileCopyrightText: Copyright (c) 2023-2025, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
2+
# SPDX-FileCopyrightText: Copyright (c) 2023-2026, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
33
# SPDX-License-Identifier: Apache-2.0
44

55
set -euo pipefail
66

7+
RAPIDS_INIT_PIP_REMOVE_NVIDIA_INDEX="true"
8+
export RAPIDS_INIT_PIP_REMOVE_NVIDIA_INDEX
79
source rapids-init-pip
810

911
EXITCODE=0

ci/cudf_pandas_scripts/run_tests.sh

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
#!/bin/bash
2-
# SPDX-FileCopyrightText: Copyright (c) 2023-2025, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
2+
# SPDX-FileCopyrightText: Copyright (c) 2023-2026, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
33
# SPDX-License-Identifier: Apache-2.0
44

55
set -eoxu pipefail
66

7+
RAPIDS_INIT_PIP_REMOVE_NVIDIA_INDEX="true"
8+
export RAPIDS_INIT_PIP_REMOVE_NVIDIA_INDEX
79
source rapids-init-pip
810

911
RAPIDS_TESTS_DIR=${RAPIDS_TESTS_DIR:-"${PWD}/test-results"}

0 commit comments

Comments
 (0)