File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -147,6 +147,8 @@ jobs:
147147 script : ci/build_python.sh
148148 sha : ${{ inputs.sha }}
149149 sccache-dist-token-secret-name : GIST_REPO_READ_ORG_GITHUB_TOKEN
150+ # Build a conda package for each CUDA x ARCH x minimum supported Python version
151+ matrix_filter : group_by({CUDA_VER, ARCH}) | map(min_by(.PY_VER | split(".") | map(tonumber)))
150152 upload-conda :
151153 needs : [cpp-build, python-build]
152154 secrets : inherit
@@ -215,6 +217,8 @@ jobs:
215217 package-name : cuvs
216218 sccache-dist-token-secret-name : GIST_REPO_READ_ORG_GITHUB_TOKEN
217219 package-type : python
220+ # Build a wheel for each CUDA x ARCH x minimum supported Python version
221+ matrix_filter : group_by({CUDA_VER, ARCH}) | map(min_by(.PY_VER | split(".") | map(tonumber)))
218222 wheel-publish-cuvs :
219223 needs : wheel-build-cuvs
220224 secrets : inherit
@@ -226,3 +230,4 @@ jobs:
226230 date : ${{ inputs.date }}
227231 package-name : cuvs
228232 package-type : python
233+ publish-wheel-search-key : cuvs_wheel_python_abi3
Original file line number Diff line number Diff line change @@ -341,6 +341,8 @@ jobs:
341341 with :
342342 build_type : pull-request
343343 script : ci/build_python.sh
344+ # Build a conda package for each CUDA x ARCH x minimum supported Python version
345+ matrix_filter : group_by({CUDA_VER, ARCH}) | map(min_by(.PY_VER | split(".") | map(tonumber)))
344346 conda-python-tests :
345347 needs : [conda-python-build, changed-files]
346348 secrets : inherit
@@ -492,10 +494,8 @@ jobs:
492494 package-name : cuvs
493495 package-type : python
494496 sccache-dist-token-secret-name : GIST_REPO_READ_ORG_GITHUB_TOKEN
495- # Build a wheel for each CUDA x ARCH x PY_VER (3.10 and 3.11)
496- # When we drop Python 3.10, this can be simplified to:
497- # matrix_filter: map(select(.PY_VER == "3.11")) | unique_by({CUDA_VER, ARCH})
498- matrix_filter : map(select(.PY_VER == "3.11" or .PY_VER == "3.10")) | unique_by({CUDA_VER, ARCH, PY_VER})
497+ # Build a wheel for each CUDA x ARCH x minimum supported Python version
498+ matrix_filter : group_by({CUDA_VER, ARCH}) | map(min_by(.PY_VER | split(".") | map(tonumber)))
499499 wheel-tests-cuvs :
500500 needs : [wheel-build-cuvs, changed-files]
501501 secrets : inherit
Original file line number Diff line number Diff line change @@ -6,6 +6,22 @@ set -euo pipefail
66
77package_name=$1
88package_dir=$2
9+ shift 2
10+
11+ # Parse optional flags
12+ stable_abi=false
13+ while [[ $# -gt 0 ]]; do
14+ case " $1 " in
15+ --stable)
16+ stable_abi=true
17+ shift
18+ ;;
19+ * )
20+ echo " Unknown option: $1 " >&2
21+ exit 1
22+ ;;
23+ esac
24+ done
925
1026source rapids-configure-sccache
1127source rapids-date-string
@@ -53,6 +69,12 @@ RAPIDS_PIP_WHEEL_ARGS=(
5369 --no-deps
5470 --disable-pip-version-check
5571)
72+
73+ # Add py-api setting for stable ABI builds
74+ if [[ " ${stable_abi} " == " true" ]] && [[ -n " ${RAPIDS_PY_API:- } " ]]; then
75+ RAPIDS_PIP_WHEEL_ARGS+=(--config-settings=" skbuild.wheel.py-api=${RAPIDS_PY_API} " )
76+ fi
77+
5678# Only use --build-constraint when build isolation is enabled.
5779#
5880# Passing '--build-constraint' and '--no-build-isolation` together results in an error from 'pip',
Original file line number Diff line number Diff line change @@ -6,11 +6,6 @@ set -euo pipefail
66
77source rapids-init-pip
88
9- # Only use stable ABI package for Python >= 3.11
10- if [[ " ${RAPIDS_PY_VERSION} " != " 3.10" ]]; then
11- source ./ci/use_upstream_sabi_wheels.sh
12- fi
13-
149package_dir=" python/cuvs"
1510
1611RAPIDS_PY_CUDA_SUFFIX=" $( rapids-wheel-ctk-name-gen " ${RAPIDS_CUDA_VERSION} " ) "
@@ -23,11 +18,13 @@ RAPIDS_PY_CUDA_SUFFIX="$(rapids-wheel-ctk-name-gen "${RAPIDS_CUDA_VERSION}")"
2318LIBCUVS_WHEELHOUSE=$( RAPIDS_PY_WHEEL_NAME=" libcuvs_${RAPIDS_PY_CUDA_SUFFIX} " rapids-download-wheels-from-github cpp)
2419echo " libcuvs-${RAPIDS_PY_CUDA_SUFFIX} @ file://$( echo " ${LIBCUVS_WHEELHOUSE} " /libcuvs_* .whl) " >> " ${PIP_CONSTRAINT} "
2520
26- ci/build_wheel.sh cuvs ${package_dir}
21+ # TODO: move this variable into `ci-wheel`
22+ # Format Python limited API version string
23+ RAPIDS_PY_API=" cp${RAPIDS_PY_VERSION// ./ } "
24+ export RAPIDS_PY_API
25+
26+ ci/build_wheel.sh cuvs ${package_dir} --stable
2727ci/validate_wheel.sh ${package_dir} " ${RAPIDS_WHEEL_BLD_OUTPUT_DIR} "
2828
29- # Only use stable ABI package naming for Python >= 3.11
30- if [[ " ${RAPIDS_PY_VERSION} " != " 3.10" ]]; then
31- RAPIDS_PACKAGE_NAME=" $( rapids-package-name wheel_python cuvs --stable --cuda) "
32- export RAPIDS_PACKAGE_NAME
33- fi
29+ RAPIDS_PACKAGE_NAME=" $( rapids-package-name wheel_python cuvs --stable --cuda) "
30+ export RAPIDS_PACKAGE_NAME
Original file line number Diff line number Diff line change @@ -9,11 +9,6 @@ source rapids-init-pip
99package_name=" libcuvs"
1010package_dir=" python/libcuvs"
1111
12- # Only use stable ABI package for Python >= 3.11
13- if [[ " ${RAPIDS_PY_VERSION} " != " 3.10" ]]; then
14- source ./ci/use_upstream_sabi_wheels.sh
15- fi
16-
1712rapids-logger " Generating build requirements"
1813matrix_selectors=" cuda=${RAPIDS_CUDA_VERSION% .* } ;arch=$( arch) ;py=${RAPIDS_PY_VERSION} ;cuda_suffixed=true"
1914
Original file line number Diff line number Diff line change @@ -11,13 +11,7 @@ rm -rf /usr/lib64/libnccl*
1111
1212RAPIDS_PY_CUDA_SUFFIX=" $( rapids-wheel-ctk-name-gen " ${RAPIDS_CUDA_VERSION} " ) "
1313LIBCUVS_WHEELHOUSE=$( RAPIDS_PY_WHEEL_NAME=" libcuvs_${RAPIDS_PY_CUDA_SUFFIX} " rapids-download-wheels-from-github cpp)
14-
15- if [[ " ${RAPIDS_PY_VERSION} " != " 3.10" ]]; then
16- CUVS_WHEELHOUSE=$( rapids-download-from-github " $( rapids-package-name " wheel_python" cuvs --stable --cuda " $RAPIDS_CUDA_VERSION " ) " )
17- source ./ci/use_upstream_sabi_wheels.sh
18- else
19- CUVS_WHEELHOUSE=$( RAPIDS_PY_WHEEL_NAME=" cuvs_${RAPIDS_PY_CUDA_SUFFIX} " rapids-download-wheels-from-github python)
20- fi
14+ CUVS_WHEELHOUSE=$( rapids-download-from-github " $( rapids-package-name " wheel_python" cuvs --stable --cuda " $RAPIDS_CUDA_VERSION " ) " )
2115
2216# echo to expand wildcard before adding `[extra]` requires for pip
2317rapids-pip-retry install \
Load Diff This file was deleted.
Original file line number Diff line number Diff line change @@ -102,10 +102,6 @@ provider = "scikit_build_core.metadata.regex"
102102input = " cuvs/VERSION"
103103regex = " (?P<value>.*)"
104104
105- [[tool .scikit-build .overrides ]]
106- if.python-version = " >=3.11"
107- wheel.py-api = " cp311"
108-
109105[tool .rapids-build-backend ]
110106requires = [
111107 " cmake>=3.30.4" ,
You can’t perform that action at this time.
0 commit comments