Skip to content

Commit ea4455e

Browse files
authored
Merge branch-25.02 into main [skip ci] (#12128)
Change version to 25.02.0 Note: merge this PR with **Create a merge commit to merge**
2 parents dbd2599 + d1c38db commit ea4455e

File tree

557 files changed

+12788
-11791
lines changed

Some content is hidden

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

557 files changed

+12788
-11791
lines changed

.github/CODEOWNERS

+8-6
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Copyright (c) 2020-2024, NVIDIA CORPORATION.
1+
# Copyright (c) 2020-2025, NVIDIA CORPORATION.
22
# Licensed under the Apache License, Version 2.0 (the "License");
33
# you may not use this file except in compliance with the License.
44
# You may obtain a copy of the License at
@@ -9,8 +9,10 @@
99
# See the License for the specific language governing permissions and
1010
# limitations under the License.
1111

12-
13-
/jenkins/ @jlowe @revans2 @tgravescs @GaryShen2008 @NvTimLiu @gerashegalov
14-
pom.xml @jlowe @revans2 @tgravescs @GaryShen2008 @NvTimLiu @gerashegalov
15-
/dist/ @jlowe @revans2 @tgravescs @GaryShen2008 @NvTimLiu @gerashegalov
16-
/.github/ @jlowe @revans2 @tgravescs @GaryShen2008 @NvTimLiu @gerashegalov
12+
# Build-related
13+
/jenkins/ @NVIDIA/sparkrapids-cicd-codeowners
14+
pom.xml @NVIDIA/sparkrapids-cicd-codeowners
15+
/dist/ @NVIDIA/sparkrapids-cicd-codeowners
16+
/.github/ @NVIDIA/sparkrapids-cicd-codeowners
17+
/build/ @NVIDIA/sparkrapids-cicd-codeowners
18+
/scripts/ @NVIDIA/sparkrapids-cicd-codeowners

.github/workflows/add-to-project.yml

+6-8
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Copyright (c) 2022-2024, NVIDIA CORPORATION.
1+
# Copyright (c) 2022-2025, NVIDIA CORPORATION.
22
#
33
# Licensed under the Apache License, Version 2.0 (the "License");
44
# you may not use this file except in compliance with the License.
@@ -23,13 +23,11 @@ on:
2323
- opened
2424

2525
jobs:
26-
add-to-project:
27-
if: github.repository == 'NVIDIA/spark-rapids'
28-
name: Add new issues and pull requests to project
26+
Add-to-project:
27+
if: github.repository_owner == 'NVIDIA' # avoid adding issues from forks
2928
runs-on: ubuntu-latest
3029
steps:
31-
- uses: actions/[email protected]
30+
- name: add-to-project
31+
uses: NVIDIA/spark-rapids-common/add-to-project@main
3232
with:
33-
project-url: https://github.com/orgs/NVIDIA/projects/4
34-
github-token: ${{ secrets.PROJECT_TOKEN }}
35-
33+
token: ${{ secrets.PROJECT_TOKEN }}

.github/workflows/blossom-ci.yml

+2-4
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Copyright (c) 2020-2024, NVIDIA CORPORATION.
1+
# Copyright (c) 2020-2025, NVIDIA CORPORATION.
22
#
33
# Licensed under the Apache License, Version 2.0 (the "License");
44
# you may not use this file except in compliance with the License.
@@ -40,7 +40,6 @@ jobs:
4040
github.actor == 'anfeng' ||
4141
github.actor == 'firestarman' ||
4242
github.actor == 'GaryShen2008' ||
43-
github.actor == 'jlowe' ||
4443
github.actor == 'kuhushukla' ||
4544
github.actor == 'mythrocks' ||
4645
github.actor == 'nartal1' ||
@@ -74,7 +73,6 @@ jobs:
7473
github.actor == 'binmahone' ||
7574
github.actor == 'zpuller' ||
7675
github.actor == 'pxLi' ||
77-
github.actor == 'Feng-Jiang28' ||
7876
github.actor == 'SurajAralihalli' ||
7977
github.actor == 'jihoonson' ||
8078
github.actor == 'ustcfy' ||
@@ -91,7 +89,7 @@ jobs:
9189
Vulnerability-scan:
9290
name: Vulnerability scan
9391
needs: [Authorization]
94-
runs-on: ubuntu-latest
92+
runs-on: vulnerability-scan
9593
steps:
9694
- name: Checkout code
9795
uses: actions/checkout@v4
+58
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
# Copyright (c) 2024, NVIDIA CORPORATION.
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
# A workflow to check copyright/license header
16+
name: license header check
17+
18+
on:
19+
pull_request:
20+
types: [opened, synchronize, reopened]
21+
22+
jobs:
23+
license-header-check:
24+
runs-on: ubuntu-latest
25+
if: "!contains(github.event.pull_request.title, '[bot]')"
26+
steps:
27+
- name: Get checkout depth
28+
run: |
29+
echo "PR_FETCH_DEPTH=$(( ${{ github.event.pull_request.commits }} + 10 ))" >> $GITHUB_ENV
30+
31+
- name: Checkout code
32+
uses: actions/checkout@v4
33+
with:
34+
fetch-depth: ${{ env.PR_FETCH_DEPTH }}
35+
36+
- name: license-header-check
37+
uses: NVIDIA/spark-rapids-common/license-header-check@main
38+
with:
39+
included_file_patterns: |
40+
*.yml,
41+
*.yaml,
42+
*.sh,
43+
*.xml,
44+
*.properties,
45+
*.scala,
46+
*.py,
47+
build/*,
48+
*.cpp,
49+
*Dockerfile*,
50+
*Jenkinsfile*,
51+
*.ini,
52+
*.java,
53+
*.fbs
54+
excluded_file_patterns: |
55+
*target/*,
56+
thirdparty/*,
57+
sql-plugin/src/main/java/com/nvidia/spark/rapids/format/*
58+

.github/workflows/mvn-verify-check.yml

+15-2
Original file line numberDiff line numberDiff line change
@@ -53,16 +53,20 @@ jobs:
5353
id: generateCacheKey
5454
run: |
5555
set -x
56-
cacheKey="${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}-${{ github.event.pull_request.base.ref }}-$(date +'%Y-%m-%d')"
56+
depsSHA1=$(. .github/workflows/mvn-verify-check/get-deps-sha1.sh 2.12)
57+
cacheKey="${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}-${{ github.event.pull_request.base.ref }}-${depsSHA1}"
5758
echo "dailyCacheKey=$cacheKey" | tee $GITHUB_ENV $GITHUB_OUTPUT
5859
- name: Cache local Maven repository
5960
id: cache
61+
continue-on-error: true
6062
uses: actions/cache@v4
6163
with:
6264
path: ~/.m2
6365
key: ${{ env.dailyCacheKey }}
6466
restore-keys: ${{ runner.os }}-maven-
6567
- name: populate-daily-cache
68+
timeout-minutes: 30
69+
continue-on-error: true
6670
if: steps.cache.outputs.cache-hit != 'true'
6771
env:
6872
SCALA_VER: '2.12'
@@ -117,6 +121,7 @@ jobs:
117121
java-version: 8
118122

119123
- name: Cache local Maven repository
124+
continue-on-error: true
120125
uses: actions/cache@v4
121126
with:
122127
path: ~/.m2
@@ -165,16 +170,20 @@ jobs:
165170
id: generateCacheKey
166171
run: |
167172
set -x
168-
cacheKey="${{ runner.os }}-maven-scala213-${{ hashFiles('**/pom.xml') }}-${{ github.event.pull_request.base.ref }}-$(date +'%Y-%m-%d')"
173+
depsSHA1=$(. .github/workflows/mvn-verify-check/get-deps-sha1.sh 2.13)
174+
cacheKey="${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}-${{ github.event.pull_request.base.ref }}-${depsSHA1}"
169175
echo "scala213dailyCacheKey=$cacheKey" | tee $GITHUB_ENV $GITHUB_OUTPUT
170176
- name: Cache local Maven repository
171177
id: cache
178+
continue-on-error: true
172179
uses: actions/cache@v4
173180
with:
174181
path: ~/.m2
175182
key: ${{ env.scala213dailyCacheKey }}
176183
restore-keys: ${{ runner.os }}-maven-
177184
- name: populate-daily-cache
185+
timeout-minutes: 30
186+
continue-on-error: true
178187
if: steps.cache.outputs.cache-hit != 'true'
179188
env:
180189
SCALA_VER: '2.13'
@@ -221,6 +230,7 @@ jobs:
221230
java-version: 17
222231

223232
- name: Cache local Maven repository
233+
continue-on-error: true
224234
uses: actions/cache@v4
225235
with:
226236
path: ~/.m2
@@ -276,6 +286,7 @@ jobs:
276286
java-version: 17
277287

278288
- name: Cache local Maven repository
289+
continue-on-error: true
279290
uses: actions/cache@v4
280291
with:
281292
path: ~/.m2
@@ -330,6 +341,7 @@ jobs:
330341
java-version: ${{ matrix.java-version }}
331342

332343
- name: Cache local Maven repository
344+
continue-on-error: true
333345
uses: actions/cache@v4
334346
with:
335347
path: ~/.m2
@@ -377,6 +389,7 @@ jobs:
377389
java-version: 11
378390

379391
- name: Cache local Maven repository
392+
continue-on-error: true
380393
uses: actions/cache@v4
381394
with:
382395
path: ~/.m2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
#!/bin/bash
2+
3+
# Copyright (c) 2024-2025, NVIDIA CORPORATION.
4+
#
5+
# Licensed under the Apache License, Version 2.0 (the "License");
6+
# you may not use this file except in compliance with the License.
7+
# You may obtain a copy of the License at
8+
#
9+
# http://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing, software
12+
# distributed under the License is distributed on an "AS IS" BASIS,
13+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
# See the License for the specific language governing permissions and
15+
# limitations under the License.
16+
17+
set -e
18+
19+
scala_ver=${1:-"2.12"}
20+
base_URL="https://oss.sonatype.org/service/local/artifact/maven/resolve"
21+
project_jni="spark-rapids-jni"
22+
project_private="rapids-4-spark-private_${scala_ver}"
23+
24+
jni_ver=$(mvn help:evaluate -q -pl dist -Dexpression=spark-rapids-jni.version -DforceStdout)
25+
private_ver=$(mvn help:evaluate -q -pl dist -Dexpression=spark-rapids-private.version -DforceStdout)
26+
27+
if [[ $jni_ver == *SNAPSHOT* ]]; then
28+
jni_sha1=$(curl -s -H "Accept: application/json" \
29+
"${base_URL}?r=snapshots&g=com.nvidia&a=${project_jni}&v=${jni_ver}&c=&e=jar&wt=json" \
30+
| jq .data.sha1) || $(date +'%Y-%m-%d')
31+
else
32+
jni_sha1=$jni_ver
33+
fi
34+
35+
if [[ $private_ver == *SNAPSHOT* ]]; then
36+
private_sha1=$(curl -s -H "Accept: application/json" \
37+
"${base_URL}?r=snapshots&g=com.nvidia&a=${project_private}&v=${private_ver}&c=&e=jar&wt=json" \
38+
| jq .data.sha1) || $(date +'%Y-%m-%d')
39+
else
40+
private_sha1=$private_ver
41+
fi
42+
43+
sha1md5=$(echo -n "${jni_sha1}_${private_sha1}" | md5sum | awk '{print $1}')
44+
45+
echo $sha1md5

.github/workflows/mvn-verify-check/populate-daily-cache.sh

+12-9
Original file line numberDiff line numberDiff line change
@@ -14,27 +14,30 @@
1414
# See the License for the specific language governing permissions and
1515
# limitations under the License.
1616

17-
set -x
18-
max_retry=3; delay=30; i=1
17+
set -e
18+
set -o pipefail
19+
1920
if [[ $SCALA_VER == '2.12' ]]; then
2021
pom='pom.xml'
2122
elif [[ $SCALA_VER == '2.13' ]]; then
2223
pom='scala2.13/pom.xml'
2324
fi
25+
26+
max_retry=3; delay=30; i=1
2427
while true; do
28+
buildvers=($(python build/get_buildvers.py no_snapshots $pom | tr -d ',')) &&
2529
{
26-
python build/get_buildvers.py "no_snapshots.buildvers" $pom | tr -d ',' | \
27-
xargs -n 1 -I {} bash -c \
28-
"mvn $COMMON_MVN_FLAGS --file $pom -Dbuildver={} de.qaware.maven:go-offline-maven-plugin:resolve-dependencies"
29-
30+
for buildver in "${buildvers[@]}"; do
31+
mvn $COMMON_MVN_FLAGS --file $pom -Dbuildver=$buildver de.qaware.maven:go-offline-maven-plugin:resolve-dependencies
32+
done
33+
} && {
3034
# compile base versions to cache scala compiler and compiler bridge
31-
mvn $COMMON_MVN_FLAGS --file $pom \
32-
process-test-resources -pl sql-plugin-api -am
35+
mvn $COMMON_MVN_FLAGS --file $pom process-test-resources -pl sql-plugin-api -am
3336
} && break || {
3437
if [[ $i -le $max_retry ]]; then
3538
echo "mvn command failed. Retry $i/$max_retry."; ((i++)); sleep $delay; ((delay=delay*2))
3639
else
3740
echo "mvn command failed. Exit 1"; exit 1
3841
fi
3942
}
40-
done
43+
done

.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -35,4 +35,5 @@ scalastyle-output.xml
3535
scalastyle.txt
3636
target/
3737
cufile.log
38+
cudf_log.txt
3839
build/*.class

0 commit comments

Comments
 (0)