Skip to content

Commit d821db1

Browse files
authored
Merge branch 'main' into nvvm_fix
2 parents 9ad12b1 + b991295 commit d821db1

File tree

245 files changed

+25471
-5118
lines changed

Some content is hidden

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

245 files changed

+25471
-5118
lines changed

.github/actions/doc_preview/action.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ runs:
2222
# Note: the PR previews will be removed once merged to main or release/* (see below)
2323
- name: Deploy doc preview
2424
if: ${{ github.ref_name != 'main' && !startsWith(github.ref_name, 'release/') }}
25-
uses: JamesIves/github-pages-deploy-action@6c2d9db40f9296374acc17b90404b6e8864128c8 # v4.7.3
25+
uses: JamesIves/github-pages-deploy-action@d92aa235d04922e8f08b40ce78cc5442fcfbfa2f # v4.8.0
2626
with:
2727
git-config-name: cuda-python-bot
2828
git-config-email: cuda-python-bot@users.noreply.github.com
@@ -32,7 +32,7 @@ runs:
3232

3333
- name: Leave a comment after deployment
3434
if: ${{ github.ref_name != 'main' && !startsWith(github.ref_name, 'release/') }}
35-
uses: marocchino/sticky-pull-request-comment@67d0dec7b07ed060a405f9b2a64b8ab319fdd7db # v2.9.2
35+
uses: marocchino/sticky-pull-request-comment@d4d6b0936434b21bc8345ad45a440c5f7d2c40ff # v3.0.3
3636
with:
3737
header: pr-preview
3838
number: ${{ inputs.pr-number }}
@@ -49,7 +49,7 @@ runs:
4949
# The steps below are executed only when building on main or release/*.
5050
- name: Remove doc preview
5151
if: ${{ github.ref_name == 'main' || startsWith(github.ref_name, 'release/') }}
52-
uses: JamesIves/github-pages-deploy-action@6c2d9db40f9296374acc17b90404b6e8864128c8 # v4.7.3
52+
uses: JamesIves/github-pages-deploy-action@d92aa235d04922e8f08b40ce78cc5442fcfbfa2f # v4.8.0
5353
with:
5454
git-config-name: cuda-python-bot
5555
git-config-email: cuda-python-bot@users.noreply.github.com
@@ -59,7 +59,7 @@ runs:
5959

6060
- name: Leave a comment after removal
6161
if: ${{ github.ref_name == 'main' || startsWith(github.ref_name, 'release/') }}
62-
uses: marocchino/sticky-pull-request-comment@67d0dec7b07ed060a405f9b2a64b8ab319fdd7db # v2.9.2
62+
uses: marocchino/sticky-pull-request-comment@d4d6b0936434b21bc8345ad45a440c5f7d2c40ff # v3.0.3
6363
with:
6464
header: pr-preview
6565
number: ${{ inputs.pr-number }}

.github/actions/fetch_ctk/action.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# SPDX-FileCopyrightText: Copyright (c) 2024-2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
1+
# SPDX-FileCopyrightText: Copyright (c) 2024-2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
22
#
33
# SPDX-License-Identifier: Apache-2.0
44

@@ -60,7 +60,7 @@ runs:
6060

6161
- name: Download CTK cache
6262
id: ctk-get-cache
63-
uses: actions/cache/restore@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
63+
uses: actions/cache/restore@668228422ae6a00e4ad889ee87cd7109ec5666a7 # v5.0.4
6464
continue-on-error: true
6565
with:
6666
key: ${{ env.CTK_CACHE_KEY }}
@@ -103,7 +103,7 @@ runs:
103103
function populate_cuda_path() {
104104
# take the component name as a argument
105105
function download() {
106-
curl -kLSs $1 -o $2
106+
curl -LSs $1 -o $2
107107
}
108108
CTK_COMPONENT=$1
109109
CTK_COMPONENT_REL_PATH="$(curl -s $CTK_JSON_URL |
@@ -142,7 +142,7 @@ runs:
142142
- name: Upload CTK cache
143143
if: ${{ !cancelled() &&
144144
steps.ctk-get-cache.outputs.cache-hit != 'true' }}
145-
uses: actions/cache/save@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
145+
uses: actions/cache/save@668228422ae6a00e4ad889ee87cd7109ec5666a7 # v5.0.4
146146
with:
147147
key: ${{ env.CTK_CACHE_KEY }}
148148
path: ./${{ env.CTK_CACHE_FILENAME }}
Lines changed: 81 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,81 @@
1+
# SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
2+
#
3+
# SPDX-License-Identifier: Apache-2.0
4+
5+
name: sccache summary
6+
description: Parse sccache stats JSON and write a summary table to GITHUB_STEP_SUMMARY
7+
8+
# Inspired by NVIDIA/cccl's prepare-execution-summary.py (PR #3621).
9+
# Only counts C/C++ and CUDA language hits (excludes PTX/CUBIN which are
10+
# not included in sccache's compile_requests counter).
11+
12+
inputs:
13+
json-file:
14+
description: "Path to the sccache stats JSON file (from sccache --show-stats --stats-format=json)"
15+
required: true
16+
label:
17+
description: "Label for the stats row (e.g. cuda.bindings, cuda.core)"
18+
required: false
19+
default: "sccache"
20+
build-step:
21+
description: "Name of the cibuildwheel build step (for deep-link in summary)"
22+
required: false
23+
default: ""
24+
25+
runs:
26+
using: composite
27+
steps:
28+
- name: Report sccache stats
29+
shell: bash --noprofile --norc -euo pipefail {0}
30+
env:
31+
SCCACHE_JSON: ${{ inputs.json-file }}
32+
SCCACHE_LABEL: ${{ inputs.label }}
33+
SCCACHE_BUILD_STEP: ${{ inputs.build-step }}
34+
run: |
35+
if [ ! -f "$SCCACHE_JSON" ]; then
36+
echo "::warning::sccache stats file not found: $SCCACHE_JSON"
37+
exit 0
38+
fi
39+
40+
python3 - <<'PYEOF'
41+
import json, os, urllib.parse
42+
43+
json_file = os.environ["SCCACHE_JSON"]
44+
label = os.environ["SCCACHE_LABEL"]
45+
build_step = os.environ.get("SCCACHE_BUILD_STEP", "")
46+
47+
with open(json_file) as f:
48+
stats = json.load(f)["stats"]
49+
50+
# compile_requests includes non-compilation calls (linker, etc).
51+
# Use cache_hits + cache_misses as the denominator to match sccache's
52+
# own "Cache hits rate" which only counts actual compilation requests.
53+
counted_languages = {"C/C++", "CUDA"}
54+
hits = sum(
55+
v for k, v in stats.get("cache_hits", {}).get("counts", {}).items()
56+
if k in counted_languages
57+
)
58+
misses = sum(
59+
v for k, v in stats.get("cache_misses", {}).get("counts", {}).items()
60+
if k in counted_languages
61+
)
62+
total = hits + misses
63+
pct = int(100 * hits / total) if total > 0 else 0
64+
65+
# Build a deep-link to the cibuildwheel step if step name is provided.
66+
# GHA step summary links use the format: #step:N:L but we can't know the
67+
# step number here. Instead, link to the job page with a search hint.
68+
link_note = ""
69+
if build_step:
70+
link_note = f"\n\n_Full stats in the **{build_step}** step log._\n"
71+
72+
summary_file = os.environ.get("GITHUB_STEP_SUMMARY", "")
73+
if summary_file:
74+
with open(summary_file, "a") as sf:
75+
sf.write(f"### 📊 {label} — sccache stats\n")
76+
sf.write("| Hit Rate | Hits | Misses | Requests |\n")
77+
sf.write("|----------|------|--------|----------|\n")
78+
sf.write(f"| {pct}% | {hits} | {misses} | {total} |{link_note}\n")
79+
80+
print(f"{label}: {pct}% hit rate ({hits}/{total})")
81+
PYEOF

.github/workflows/backport.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ jobs:
4343
echo "OLD_BRANCH=${OLD_BRANCH}" >> $GITHUB_ENV
4444
4545
- name: Create backport pull requests
46-
uses: korthout/backport-action@01619ebc9a6e3f6820274221b9956b3e7365000a # v4.1.0
46+
uses: korthout/backport-action@3c06f323a58619da1e8522229ebc8d5de2633e46 # v4.3.0
4747
with:
4848
copy_assignees: true
4949
copy_labels_pattern: true
@@ -67,7 +67,7 @@ jobs:
6767
run: echo "BACKPORT_BRANCH=${{ inputs.backport-branch }}" >> $GITHUB_ENV
6868

6969
- name: Create backport pull requests
70-
uses: korthout/backport-action@01619ebc9a6e3f6820274221b9956b3e7365000a # v4.1.0
70+
uses: korthout/backport-action@3c06f323a58619da1e8522229ebc8d5de2633e46 # v4.3.0
7171
with:
7272
copy_assignees: true
7373
copy_labels_pattern: true

.github/workflows/bandit.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ jobs:
2323
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
2424

2525
- name: Install uv
26-
uses: astral-sh/setup-uv@5a095e7a2014a4212f075830d4f7277575a9d098 # v7.3.1
26+
uses: astral-sh/setup-uv@cec208311dfd045dd5311c1add060b2062131d57 # v8.0.0
2727
with:
2828
enable-cache: false
2929

@@ -42,6 +42,6 @@ jobs:
4242
with:
4343
args: "check --select S --ignore ${{ steps.ignore-codes.outputs.codes }} --output-format sarif --output-file results.sarif"
4444
- name: Upload SARIF file
45-
uses: github/codeql-action/upload-sarif@v4.32.5
45+
uses: github/codeql-action/upload-sarif@v4.35.1
4646
with:
4747
sarif_file: results.sarif

.github/workflows/build-docs.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ jobs:
109109
echo "CUDA_BINDINGS_ARTIFACTS_DIR=$(realpath "$REPO_DIR/cuda_bindings/dist")" >> $GITHUB_ENV
110110
111111
- name: Download cuda-python build artifacts
112-
uses: actions/download-artifact@70fc10c6e5e1ce46ad2ea6f2b72d43f7d47b13c3 # v8.0.0
112+
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
113113
with:
114114
name: cuda-python-wheel
115115
path: .
@@ -122,7 +122,7 @@ jobs:
122122
ls -lahR .
123123
124124
- name: Download cuda-pathfinder build artifacts
125-
uses: actions/download-artifact@70fc10c6e5e1ce46ad2ea6f2b72d43f7d47b13c3 # v8.0.0
125+
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
126126
with:
127127
name: cuda-pathfinder-wheel
128128
path: ./cuda_pathfinder
@@ -136,14 +136,14 @@ jobs:
136136
137137
- name: Download cuda.bindings build artifacts
138138
if: ${{ !inputs.is-release }}
139-
uses: actions/download-artifact@70fc10c6e5e1ce46ad2ea6f2b72d43f7d47b13c3 # v8.0.0
139+
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
140140
with:
141141
name: ${{ env.CUDA_BINDINGS_ARTIFACT_NAME }}
142142
path: ${{ env.CUDA_BINDINGS_ARTIFACTS_DIR }}
143143

144144
- name: Download cuda.bindings build artifacts
145145
if: ${{ inputs.is-release }}
146-
uses: actions/download-artifact@70fc10c6e5e1ce46ad2ea6f2b72d43f7d47b13c3 # v8.0.0
146+
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
147147
with:
148148
pattern: ${{ env.CUDA_BINDINGS_ARTIFACT_NAME }}
149149
merge-multiple: true
@@ -158,14 +158,14 @@ jobs:
158158
159159
- name: Download cuda.core build artifacts
160160
if: ${{ !inputs.is-release }}
161-
uses: actions/download-artifact@70fc10c6e5e1ce46ad2ea6f2b72d43f7d47b13c3 # v8.0.0
161+
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
162162
with:
163163
name: ${{ env.CUDA_CORE_ARTIFACT_NAME }}
164164
path: ${{ env.CUDA_CORE_ARTIFACTS_DIR }}
165165

166166
- name: Download cuda.core build artifacts
167167
if: ${{ inputs.is-release }}
168-
uses: actions/download-artifact@70fc10c6e5e1ce46ad2ea6f2b72d43f7d47b13c3 # v8.0.0
168+
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
169169
with:
170170
pattern: ${{ env.CUDA_CORE_ARTIFACT_NAME }}
171171
merge-multiple: true

0 commit comments

Comments
 (0)