@@ -10,24 +10,26 @@ permissions: read-all
1010
1111env :
1212 PACKAGE_NAME : mkl_fft
13- MODULE_NAME : mkl_fft
1413 TEST_ENV_NAME : test_mkl_fft
1514 VER_SCRIPT1 : " import json; f = open('ver.json', 'r'); j = json.load(f); f.close(); d = j['mkl_fft'][0];"
1615 VER_SCRIPT2 : " print('='.join((d[s] for s in ('version', 'build'))))"
1716
1817jobs :
1918 build_linux :
2019 runs-on : ubuntu-latest
20+
2121 strategy :
2222 matrix :
2323 python : ['3.9', '3.10', '3.11', '3.12']
24+
2425 steps :
2526 - name : Cancel Previous Runs
2627 uses : styfle/cancel-workflow-action@85880fa0301c86cca9da44039ee3bb12d3bedbfa # 0.12.1
2728 with :
2829 access_token : ${{ github.token }}
2930
30- - uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
31+ - name : Checkout repo
32+ uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
3133 with :
3234 fetch-depth : 0
3335
5860 CHANNELS="-c conda-forge --override-channels"
5961 VERSIONS="--python ${{ matrix.python }} --numpy 2.0"
6062 TEST="--no-test"
63+ echo "CONDA_BLD=${CONDA}/conda-bld/linux-64" >> $GITHUB_ENV
6164
6265 conda build \
6366 $TEST \
@@ -69,15 +72,15 @@ jobs:
6972 uses : actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
7073 with :
7174 name : ${{ env.PACKAGE_NAME }} ${{ runner.os }} Python ${{ matrix.python }}
72- path : /usr/share/miniconda/conda-bld/linux-64 /${{ env.PACKAGE_NAME }}-*.conda
75+ path : ${{ env.CONDA_BLD }} /${{ env.PACKAGE_NAME }}-*.conda
7376
7477 test_linux :
7578 needs : build_linux
7679 runs-on : ${{ matrix.runner }}
7780
7881 strategy :
7982 matrix :
80- python_ver : ['3.9', '3.10', '3.11', '3.12']
83+ python : ['3.9', '3.10', '3.11', '3.12']
8184 numpy : ['numpy"<2"', 'numpy">=2"']
8285 experimental : [false]
8386 runner : [ubuntu-latest]
8992 - name : Download artifact
9093 uses : actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
9194 with :
92- name : ${{ env.PACKAGE_NAME }} ${{ runner.os }} Python ${{ matrix.python_ver }}
95+ name : ${{ env.PACKAGE_NAME }} ${{ runner.os }} Python ${{ matrix.python }}
9396
9497 - name : Add conda to system path
9598 run : echo $CONDA/bin >> $GITHUB_PATH
@@ -108,7 +111,7 @@ jobs:
108111 - name : Collect dependencies
109112 run : |
110113 CHANNELS="-c $GITHUB_WORKSPACE/channel ${{ env.CHANNELS }}"
111- conda create -n ${{ env.TEST_ENV_NAME }} $PACKAGE_NAME python=${{ matrix.python_ver }} ${{ matrix.numpy }} $CHANNELS --only-deps --dry-run > lockfile
114+ conda create -n ${{ env.TEST_ENV_NAME }} $PACKAGE_NAME python=${{ matrix.python }} ${{ matrix.numpy }} $CHANNELS --only-deps --dry-run > lockfile
112115
113116 - name : Display lockfile
114117 run : cat lockfile
@@ -124,37 +127,39 @@ jobs:
124127 with :
125128 path : ~/.conda/pkgs
126129 key :
127- ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python_ver }}-${{hashFiles('lockfile') }}
130+ ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}-${{hashFiles('lockfile') }}
128131 restore-keys : |
129- ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python_ver }}-
132+ ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}-
130133 ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-
131134
132135 - name : Install mkl_fft
133136 run : |
134137 CHANNELS="-c $GITHUB_WORKSPACE/channel ${{ env.CHANNELS }}"
135- conda create -n ${{ env.TEST_ENV_NAME }} python=${{ matrix.python_ver }} ${{ matrix.numpy }} $PACKAGE_NAME pytest scipy $CHANNELS
138+ conda create -n ${{ env.TEST_ENV_NAME }} python=${{ matrix.python }} ${{ matrix.numpy }} $PACKAGE_NAME pytest scipy $CHANNELS
136139 # Test installed packages
137140 conda list -n ${{ env.TEST_ENV_NAME }}
138141
139142 - name : Run tests
140143 run : |
141144 source $CONDA/etc/profile.d/conda.sh
142145 conda activate ${{ env.TEST_ENV_NAME }}
143- pytest -v --pyargs $MODULE_NAME
146+ python -m pytest -v --pyargs ${{ env.PACKAGE_NAME }}
144147
145148 build_windows :
146149 runs-on : windows-2019
147150
148151 strategy :
149152 matrix :
150153 python : ['3.9', '3.10', '3.11', '3.12']
154+
151155 steps :
152156 - name : Cancel Previous Runs
153157 uses : styfle/cancel-workflow-action@85880fa0301c86cca9da44039ee3bb12d3bedbfa # 0.12.1
154158 with :
155159 access_token : ${{ github.token }}
156160
157- - uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
161+ - name : Checkout repo
162+ uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
158163 with :
159164 fetch-depth : 0
160165
@@ -166,9 +171,6 @@ jobs:
166171 channels : conda-forge
167172 conda-remove-defaults : ' true'
168173
169- - name : Install conda-build
170- run : conda install -n base conda-build
171-
172174 - name : Cache conda packages
173175 uses : actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
174176 env :
@@ -181,6 +183,11 @@ jobs:
181183 ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}-
182184 ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-
183185
186+ - name : Install conda-build
187+ run : |
188+ conda activate
189+ conda install -n base conda-build
190+
184191 - name : Build conda package with NumPy 2.0
185192 run : |
186193 conda activate
@@ -206,7 +213,7 @@ jobs:
206213
207214 strategy :
208215 matrix :
209- python_ver : ['3.9', '3.10', '3.11', '3.12']
216+ python : ['3.9', '3.10', '3.11', '3.12']
210217 numpy : ['numpy"<2"', 'numpy">=2"']
211218 experimental : [false]
212219 runner : [windows-2019]
@@ -219,7 +226,7 @@ jobs:
219226 - name : Download artifact
220227 uses : actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
221228 with :
222- name : ${{ env.PACKAGE_NAME }} ${{ runner.os }} Python ${{ matrix.python_ver }}
229+ name : ${{ env.PACKAGE_NAME }} ${{ runner.os }} Python ${{ matrix.python }}
223230
224231 - uses : conda-incubator/setup-miniconda@505e6394dae86d6a5c7fbb6e3fb8938e3e863830 # v3.1.1
225232 with :
@@ -230,24 +237,22 @@ jobs:
230237 conda-remove-defaults : ' true'
231238
232239 - name : Create conda channel with the artifact bit
233- shell : cmd /C CALL {0}
234240 run : |
235241 echo ${{ env.workdir }}
236- mkdir ${{ env.workdir }}\channel\
242+ mkdir ${{ env.workdir }}\channel
237243 mkdir ${{ env.workdir }}\channel\win-64
238244 move ${{ env.PACKAGE_NAME }}-*.conda ${{ env.workdir }}\channel\win-64
239245 dir ${{ env.workdir }}\channel\win-64
240246
241- - name : Install conda index
242- shell : cmd /C CALL {0}
243- run : conda install -n base conda-index
247+ - name : Install conda- index
248+ run : |
249+ conda install -n base conda-index
244250
245251 - name : Index the channel
246- shell : cmd /C CALL {0}
247- run : conda index ${{ env.workdir }}\channel
252+ run : |
253+ conda index ${{ env.workdir }}\channel
248254
249255 - name : Dump mkl_fft version info from created channel into ver.json
250- shell : cmd /C CALL {0}
251256 run : |
252257 conda search ${{ env.PACKAGE_NAME }} -c ${{ env.workdir }}/channel --override-channels --info --json > ${{ env.workdir }}\ver.json
253258
@@ -256,7 +261,6 @@ jobs:
256261 run : Get-Content -Path ${{ env.workdir }}\ver.json
257262
258263 - name : Collect dependencies
259- shell : cmd /C CALL {0}
260264 run : |
261265 @ECHO ON
262266 IF NOT EXIST ver.json (
@@ -266,7 +270,7 @@ jobs:
266270 FOR /F "tokens=* USEBACKQ" %%F IN (`python -c "%SCRIPT%"`) DO (
267271 SET PACKAGE_VERSION=%%F
268272 )
269- conda install -n ${{ env.TEST_ENV_NAME }} ${{ env.PACKAGE_NAME }}=%PACKAGE_VERSION% python=${{ matrix.python_ver }} ${{ matrix.numpy }} -c ${{ env.workdir }}/channel ${{ env.CHANNELS }} --only-deps --dry-run > lockfile
273+ conda install -n ${{ env.TEST_ENV_NAME }} ${{ env.PACKAGE_NAME }}=%PACKAGE_VERSION% python=${{ matrix.python }} ${{ matrix.numpy }} -c ${{ env.workdir }}/channel ${{ env.CHANNELS }} --only-deps --dry-run > lockfile
270274
271275 - name : Display lockfile content
272276 shell : pwsh
@@ -279,13 +283,12 @@ jobs:
279283 with :
280284 path : /home/runner/conda_pkgs_dir
281285 key :
282- ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python_ver }}-${{hashFiles('lockfile') }}
286+ ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}-${{hashFiles('lockfile') }}
283287 restore-keys : |
284- ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python_ver }}-
288+ ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}-
285289 ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-
286290
287291 - name : Install mkl_fft
288- shell : cmd /C CALL {0}
289292 run : |
290293 @ECHO ON
291294 IF NOT EXIST ver.json (
@@ -295,17 +298,16 @@ jobs:
295298 FOR /F "tokens=* USEBACKQ" %%F IN (`python -c "%SCRIPT%"`) DO (
296299 SET PACKAGE_VERSION=%%F
297300 )
298- SET "TEST_DEPENDENCIES=pytest pytest-cov "
299- conda install -n ${{ env.TEST_ENV_NAME }} ${{ env.PACKAGE_NAME }}=%PACKAGE_VERSION% %TEST_DEPENDENCIES% python=${{ matrix.python }} ${{ matrix.numpy }} scipy -c ${{ env.workdir }}/channel ${{ env.CHANNELS }}
301+ SET "TEST_DEPENDENCIES=pytest scipy "
302+ conda install -n ${{ env.TEST_ENV_NAME }} ${{ env.PACKAGE_NAME }}=%PACKAGE_VERSION% %TEST_DEPENDENCIES% python=${{ matrix.python }} ${{ matrix.numpy }} -c ${{ env.workdir }}/channel ${{ env.CHANNELS }}
300303
301304 - name : Report content of test environment
302- shell : cmd /C CALL {0}
303305 run : |
304306 echo "Value of CONDA environment variable was: " %CONDA%
305307 echo "Value of CONDA_PREFIX environment variable was: " %CONDA_PREFIX%
306308 conda info && conda list -n ${{ env.TEST_ENV_NAME }}
307309
308310 - name : Run tests
309- shell : cmd /C CALL {0}
310- run : >-
311- conda activate ${{ env.TEST_ENV_NAME }} && python -m pytest -v -s --pyargs ${{ env.MODULE_NAME }}
311+ run : |
312+ conda activate ${{ env.TEST_ENV_NAME }}
313+ python -m pytest -v -s --pyargs ${{ env.PACKAGE_NAME }}
0 commit comments