Skip to content

Build and test with CUDA 13.3.0 - #22825

Merged
rapids-bot[bot] merged 7 commits into
NVIDIA:mainfrom
bdice:cuda-13.3.0
Jun 23, 2026
Merged

Build and test with CUDA 13.3.0#22825
rapids-bot[bot] merged 7 commits into
NVIDIA:mainfrom
bdice:cuda-13.3.0

Conversation

@bdice

@bdice bdice commented Jun 9, 2026

Copy link
Copy Markdown
Contributor

Contributes to rapidsai/build-planning#286

  • uses CUDA 13.3.0 to build and test
  • updates to CUDA 13.3.0 devcontainers

Notes for Reviewers

This switches GitHub Actions workflows to the cuda-13.3.0 branch from here: rapidsai/shared-workflows#574

A future round of PRs will revert that back to main, once all of RAPIDS is migrated.

@bdice bdice added non-breaking Non-breaking change improvement Improvement / enhancement to an existing function labels Jun 9, 2026
@copy-pr-bot

copy-pr-bot Bot commented Jun 9, 2026

Copy link
Copy Markdown

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.

@github-actions github-actions Bot added Python Affects Python cuDF API. cudf.pandas Issues specific to cudf.pandas labels Jun 9, 2026
@GPUtester GPUtester moved this to In Progress in cuDF Python Jun 9, 2026
@bdice bdice changed the title WIP: Build and test with CUDA 13.3.0 Build and test with CUDA 13.3.0 Jun 9, 2026
@bdice
bdice marked this pull request as ready for review June 10, 2026 17:34
@bdice
bdice requested review from a team as code owners June 10, 2026 17:34
@bdice
bdice requested a review from jameslamb June 10, 2026 17:34
@coderabbitai

coderabbitai Bot commented Jun 10, 2026

Copy link
Copy Markdown

Review Change Stack

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

This PR upgrades CUDA support from 13.2 to 13.3 across the repository: dependency matrices, conda environment YAMLs, devcontainer configurations (conda & pip), CONTRIBUTING.md, and GitHub Actions reusable-workflow refs pinned to @cuda-13.3.0.

Changes

CUDA 13.3 version upgrade

Layer / File(s) Summary
Core dependency matrix configuration
dependencies.yaml
Root-level CUDA build matrix entry updated from 13.2 to 13.3; conda cuda_version.specific mapping changed to cuda-version=13.3; requirements/pyproject cuda_version.specific mapping updated to cuda-toolkit==13.3.*.
Conda environment definitions
conda/environments/all_cuda-133_arch-aarch64.yaml, conda/environments/all_cuda-133_arch-x86_64.yaml
Conda environment YAML files updated with cuda-version=13.3 pins and environment names changed to reflect cuda-133 variant for both architectures.
Test dependencies and documentation
python/cudf/cudf_pandas_tests/third_party_integration_tests/dependencies.yaml, CONTRIBUTING.md
Third-party integration test dependency matrices extended with CUDA 13.3 conda and requirements entries; copyright headers updated with "& AFFILIATES"; contributing guide updated to reference CUDA 13.3 environment file.
Devcontainer configurations
.devcontainer/cuda13.3-conda/devcontainer.json, .devcontainer/cuda13.3-pip/devcontainer.json
Devcontainer build args (CUDA, BASE), image cache tags, CUDA feature versions, initialization commands, container names in runArgs, and bind mount paths updated from cuda13.2 to cuda13.3 for both conda and pip variants.
CI workflow shared-workflow pinning
.github/workflows/build.yaml, .github/workflows/pr.yaml, .github/workflows/test.yaml, .github/workflows/pandas-tests.yaml, .github/workflows/pr_issue_status_automation.yml, .github/workflows/trigger-breaking-change-alert.yaml
All shared-workflow uses: references pinned from @main to @cuda-13.3.0 across conda C++ build, Python build, test, wheel build/publish, PR checks, and integration jobs; devcontainer CI matrix entries in build and PR workflows updated from ["12.9", "13.2"] to ["12.9", "13.3"].

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

  • rapidsai/cudf#22463: Similar CUDA-version pinning pattern across workflows, devcontainer configs, and dependency matrices.
  • rapidsai/cudf#22490: Overlapping changes to devcontainer build job structure in .github/workflows/pr.yaml.
  • rapidsai/cudf#22732: Concurrent modifications to .github/workflows/trigger-breaking-change-alert.yaml workflow pinning.

Suggested labels

doc

Suggested reviewers

  • msarahan
  • gforsyth
🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title 'Build and test with CUDA 13.3.0' accurately and concisely summarizes the main objective of the PR: updating the repository to build and test with CUDA 13.3.0.
Description check ✅ Passed The description is directly related to the changeset, clearly explaining the purpose (CUDA 13.3.0 migration), providing context (build planning issue #286), and noting the workflow changes required.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Comment @coderabbitai help to get the list of available commands and usage tips.

@jameslamb jameslamb left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed merge conflicts, this is ready whenever CI passes.

@bdice

bdice commented Jun 12, 2026

Copy link
Copy Markdown
Contributor Author

/merge

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.github/workflows/pr.yaml:
- Line 787: In the cuml-compat-tests job within the workflow file, update the
rapidsai/shared-workflows reference to use the same version tag as all other
shared-workflow references in the file. Change the uses statement from using
`@main` to `@cuda-13.3.0` to maintain consistency with the other
rapidsai/shared-workflows/.github/workflows/custom-job.yaml references
throughout the file.
- Around line 791-793: The workflow is triggered by push events but passes
undefined `inputs.branch`, `inputs.date`, and `inputs.sha` values to the
custom-job.yaml workflow, since the inputs context is only available in
workflow_dispatch and workflow_call contexts. Replace `inputs.branch` with
`github.ref_name` for the branch reference and `inputs.sha` with `github.sha`
for the commit SHA across all four job instances that contain this pattern
(appearing at lines 770-772, 791-793, 812-814, and 831-833). For the date
parameter, determine an appropriate value or consider removing it if not
required by the called workflow.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: d1e302e5-22b0-4267-bb21-8bac10f360fb

📥 Commits

Reviewing files that changed from the base of the PR and between fb4414c and 37048ae.

📒 Files selected for processing (7)
  • .github/workflows/build.yaml
  • .github/workflows/pr.yaml
  • .github/workflows/test.yaml
  • conda/environments/all_cuda-133_arch-aarch64.yaml
  • conda/environments/all_cuda-133_arch-x86_64.yaml
  • dependencies.yaml
  • python/cudf/cudf_pandas_tests/third_party_integration_tests/dependencies.yaml
✅ Files skipped from review due to trivial changes (1)
  • conda/environments/all_cuda-133_arch-x86_64.yaml
🚧 Files skipped from review as they are similar to previous changes (5)
  • conda/environments/all_cuda-133_arch-aarch64.yaml
  • python/cudf/cudf_pandas_tests/third_party_integration_tests/dependencies.yaml
  • dependencies.yaml
  • .github/workflows/test.yaml
  • .github/workflows/build.yaml

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Caution

Inline review comments failed to post. This is likely due to GitHub's internal server error or limits when posting large numbers of comments. If you are seeing this consistently it is likely a permissions issue. Please check "Moderation" -> "Code review limits" under your organization settings.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.github/workflows/pr.yaml:
- Line 787: In the cuml-compat-tests job within the workflow file, update the
rapidsai/shared-workflows reference to use the same version tag as all other
shared-workflow references in the file. Change the uses statement from using
`@main` to `@cuda-13.3.0` to maintain consistency with the other
rapidsai/shared-workflows/.github/workflows/custom-job.yaml references
throughout the file.
- Around line 791-793: The workflow is triggered by push events but passes
undefined `inputs.branch`, `inputs.date`, and `inputs.sha` values to the
custom-job.yaml workflow, since the inputs context is only available in
workflow_dispatch and workflow_call contexts. Replace `inputs.branch` with
`github.ref_name` for the branch reference and `inputs.sha` with `github.sha`
for the commit SHA across all four job instances that contain this pattern
(appearing at lines 770-772, 791-793, 812-814, and 831-833). For the date
parameter, determine an appropriate value or consider removing it if not
required by the called workflow.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: d1e302e5-22b0-4267-bb21-8bac10f360fb

📥 Commits

Reviewing files that changed from the base of the PR and between fb4414c and 37048ae.

📒 Files selected for processing (7)
  • .github/workflows/build.yaml
  • .github/workflows/pr.yaml
  • .github/workflows/test.yaml
  • conda/environments/all_cuda-133_arch-aarch64.yaml
  • conda/environments/all_cuda-133_arch-x86_64.yaml
  • dependencies.yaml
  • python/cudf/cudf_pandas_tests/third_party_integration_tests/dependencies.yaml
✅ Files skipped from review due to trivial changes (1)
  • conda/environments/all_cuda-133_arch-x86_64.yaml
🚧 Files skipped from review as they are similar to previous changes (5)
  • conda/environments/all_cuda-133_arch-aarch64.yaml
  • python/cudf/cudf_pandas_tests/third_party_integration_tests/dependencies.yaml
  • dependencies.yaml
  • .github/workflows/test.yaml
  • .github/workflows/build.yaml
🛑 Comments failed to post (2)
.github/workflows/pr.yaml (2)

787-787: ⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Verify all shared-workflows refs in this workflow file.
# Expected for this migration PR: no remaining `@main` refs in .github/workflows/pr.yaml.
rg -n 'uses:\s*rapidsai/shared-workflows/.+@' .github/workflows/pr.yaml
rg -n 'uses:\s*rapidsai/shared-workflows/.+@main' .github/workflows/pr.yaml

Repository: rapidsai/cudf

Length of output: 2968


Line 787 still uses @main, breaking this PR's workflow-ref consistency.

All other rapidsai/shared-workflows references in the file use @cuda-13.3.0, but this cuml-compat-tests job references @main.

Suggested fix
-    uses: rapidsai/shared-workflows/.github/workflows/custom-job.yaml@main
+    uses: rapidsai/shared-workflows/.github/workflows/custom-job.yaml@cuda-13.3.0
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

    uses: rapidsai/shared-workflows/.github/workflows/custom-job.yaml@cuda-13.3.0
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.github/workflows/pr.yaml at line 787, In the cuml-compat-tests job within
the workflow file, update the rapidsai/shared-workflows reference to use the
same version tag as all other shared-workflow references in the file. Change the
uses statement from using `@main` to `@cuda-13.3.0` to maintain consistency with the
other rapidsai/shared-workflows/.github/workflows/custom-job.yaml references
throughout the file.

Source: Learnings


791-793: ⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Verify whether branch/date/sha are declared as workflow inputs and where they are used.
# Expected: these keys exist under on.workflow_call.inputs or on.workflow_dispatch.inputs
# if referenced via ${{ inputs.* }}.
rg -n -C3 '^\s*on:|workflow_call:|workflow_dispatch:|^\s*inputs:' .github/workflows/pr.yaml
rg -n -C2 '\${{\s*inputs\.(branch|date|sha)\s*}}' .github/workflows/pr.yaml

Repository: rapidsai/cudf

Length of output: 273


🏁 Script executed:

#!/bin/bash
# Get the file size first
wc -l .github/workflows/pr.yaml

# Read lines around 791-793
sed -n '780,800p' .github/workflows/pr.yaml

# Search for inputs references using corrected syntax (no backslash escaping needed)
rg -n 'inputs\.(branch|date|sha)' .github/workflows/pr.yaml

# Check workflow trigger configuration
sed -n '1,50p' .github/workflows/pr.yaml

Repository: rapidsai/cudf

Length of output: 2649


🏁 Script executed:

#!/bin/bash
# Check for workflow_dispatch and input definitions
sed -n '1,100p' .github/workflows/pr.yaml | grep -n -A 30 '^on:'

# Get more context around lines 791-793 to identify the job
sed -n '770,810p' .github/workflows/pr.yaml | cat -n

# Search for input definitions in the entire file
rg -n 'workflow_dispatch|inputs:' .github/workflows/pr.yaml | head -20

Repository: rapidsai/cudf

Length of output: 2960


🏁 Script executed:

#!/bin/bash
# Search for where branch, date, sha might be defined as job outputs
rg -n -B3 'outputs:' .github/workflows/pr.yaml | head -40

# Search for env variables or other sources for these values
rg -n 'branch|date|sha' .github/workflows/pr.yaml | grep -E '(outputs|env|github\.)' | head -20

Repository: rapidsai/cudf

Length of output: 230


🏁 Script executed:

#!/bin/bash
# Look for where branch/date/sha should actually come from
# Check for github context usage
rg -n 'github\.(event|ref|sha)' .github/workflows/pr.yaml | head -20

# Check for step outputs that might define these
rg -n 'outputs\.' .github/workflows/pr.yaml | grep -E '(branch|date|sha)' 

# Get full context of one complete job that passes branch/date/sha
sed -n '755,820p' .github/workflows/pr.yaml | cat -n

Repository: rapidsai/cudf

Length of output: 3511


Lines 791-793 and similar lines pass undefined inputs.* values to the called workflow.

This workflow is push-triggered (on: push:), which does not provide the inputs.* context. The inputs.branch, inputs.date, and inputs.sha variables are only available in workflow_dispatch and workflow_call contexts. These values will be empty when passed to custom-job.yaml@cuda-13.3.0, causing the called workflow to receive null/undefined parameters. This pattern appears in at least four jobs (lines 770-772, 791-793, 812-814, 831-833).

Consider using github.ref_name for branch and github.sha for sha, or adding a workflow_dispatch trigger with proper input definitions if manual overrides are needed.

🧰 Tools
🪛 actionlint (1.7.12)

[error] 791-791: property "branch" is not defined in object type {}

(expression)


[error] 792-792: property "date" is not defined in object type {}

(expression)


[error] 793-793: property "sha" is not defined in object type {}

(expression)

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.github/workflows/pr.yaml around lines 791 - 793, The workflow is triggered
by push events but passes undefined `inputs.branch`, `inputs.date`, and
`inputs.sha` values to the custom-job.yaml workflow, since the inputs context is
only available in workflow_dispatch and workflow_call contexts. Replace
`inputs.branch` with `github.ref_name` for the branch reference and `inputs.sha`
with `github.sha` for the commit SHA across all four job instances that contain
this pattern (appearing at lines 770-772, 791-793, 812-814, and 831-833). For
the date parameter, determine an appropriate value or consider removing it if
not required by the called workflow.

Source: Linters/SAST tools

@davidwendt davidwendt removed their assignment Jun 22, 2026
@rapids-bot
rapids-bot Bot merged commit 9d8b246 into NVIDIA:main Jun 23, 2026
181 of 185 checks passed
@github-project-automation github-project-automation Bot moved this from In Progress to Done in cuDF Python Jun 23, 2026
mhaseeb123 pushed a commit to mhaseeb123/cudf that referenced this pull request Jun 24, 2026
Contributes to rapidsai/build-planning#286

* uses CUDA 13.3.0 to build and test
* updates to CUDA 13.3.0 devcontainers

## Notes for Reviewers

This switches GitHub Actions workflows to the `cuda-13.3.0` branch from here: rapidsai/shared-workflows#574

A future round of PRs will revert that back to `main`, once all of RAPIDS is migrated.

Authors:
  - Bradley Dice (https://github.com/bdice)
  - James Lamb (https://github.com/jameslamb)
  - Gil Forsyth (https://github.com/gforsyth)
  - Lawrence Mitchell (https://github.com/wence-)
  - David Wendt (https://github.com/davidwendt)

Approvers:
  - James Lamb (https://github.com/jameslamb)

URL: NVIDIA#22825
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cudf.pandas Issues specific to cudf.pandas improvement Improvement / enhancement to an existing function non-breaking Non-breaking change Python Affects Python cuDF API.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants