66 branches : [main]
77 paths :
88 - " .github/workflows/python-package.yml"
9+ - " .github/scripts/**"
910 - " bitsandbytes/**"
1011 - " csrc/**"
1112 - " include/**"
1213 - " tests/**"
1314 - " CMakeLists.txt"
14- - " requirements*.txt "
15+ - " MANIFEST.in "
1516 - " setup.py"
1617 - " pyproject.toml"
1718 release :
@@ -25,9 +26,9 @@ concurrency:
2526
2627jobs :
2728 # #
28- # This job matrix builds the non-CUDA versions of the libraries for all supported platforms.
29+ # This job matrix builds the CPU versions of the libraries for all supported platforms.
2930 # #
30- build-shared-libs :
31+ build-cpu :
3132 strategy :
3233 matrix :
3334 include :
@@ -56,10 +57,11 @@ jobs:
5657 name : shared_library_${{ matrix.os }}_${{ matrix.arch }}
5758 path : output/*
5859 retention-days : 7
60+
5961 # #
6062 # This job matrix builds the CUDA versions of the libraries for platforms that support CUDA (Linux x64/aarch64 + Windows x64)
6163 # #
62- build-shared-libs- cuda :
64+ build-cuda :
6365 strategy :
6466 fail-fast : false
6567 matrix :
@@ -77,14 +79,14 @@ jobs:
7779 steps :
7880 - uses : actions/checkout@v4
7981 # Windows: We install Cuda on the agent (slow)
80- # - uses: Jimver/cuda-toolkit@433d453c1fa37d10a3254452fa8e284441c9192d # v0.2.27
8182 - uses : N-Storm/cuda-toolkit@d68ba29a800229200a2c3f572f9e816d7f67cdb4 # v0.2.24m
8283 if : startsWith(matrix.os, 'windows')
8384 id : cuda-toolkit
8485 with :
8586 # Temporary: Use CUDA 13.0.0 for Windows until 13.0.1 is supported with this action.
8687 cuda : ${{ matrix.cuda_version == '13.0.1' && '13.0.0' || matrix.cuda_version }}
87- method : " local"
88+ method : " network"
89+ sub-packages : ' ["nvcc","cudart","cusparse","cublas","thrust","cublas_dev","cusparse_dev"]'
8890 use-github-cache : false
8991 use-local-cache : false
9092 log-file-suffix : ${{matrix.os}}-${{matrix.cuda_version}}.txt
@@ -104,7 +106,7 @@ jobs:
104106 path : output/*
105107 retention-days : 7
106108
107- build-shared-libs- xpu :
109+ build-xpu :
108110 strategy :
109111 matrix :
110112 os : [ubuntu-22.04]
@@ -122,7 +124,7 @@ jobs:
122124 path : output/*
123125 retention-days : 7
124126
125- build-shared-libs- rocm :
127+ build-rocm :
126128 strategy :
127129 matrix :
128130 os : [ubuntu-22.04]
@@ -168,10 +170,10 @@ jobs:
168170
169171 build-wheels :
170172 needs :
171- - build-shared-libs
172- - build-shared-libs- cuda
173- - build-shared-libs- rocm
174- - build-shared-libs- xpu
173+ - build-cpu
174+ - build-cuda
175+ - build-rocm
176+ - build-xpu
175177 strategy :
176178 matrix :
177179 os : [ubuntu-22.04, ubuntu-22.04-arm, windows-latest, macos-latest]
@@ -185,7 +187,7 @@ jobs:
185187 - os : macos-latest
186188 arch : arm64
187189 # The specific Python version is irrelevant in this context as we are only packaging non-C extension
188- # code. This ensures compatibility across Python versions, including Python 3.9, as compatibility is
190+ # code. This ensures compatibility across Python versions, as compatibility is
189191 # dictated by the packaged code itself, not the Python version used for packaging.
190192 python-version : ["3.10"]
191193 runs-on : ${{ matrix.os }}
0 commit comments