3131 numpy : " 2.3"
3232 - python : " 3.14"
3333 numpy : " 2.3"
34+ python_spec : " 3.14.* *_cp314"
35+ python_tag : " 3.14"
36+ - python : " 3.14"
37+ numpy : " 2.3"
38+ python_spec : " 3.14.* *_cp314t"
39+ python_tag : " 3.14t"
3440
3541 steps :
3642 - name : Cancel Previous Runs
5460 with :
5561 path : ~/.conda/pkgs
5662 key :
57- ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}-${{hashFiles('**/meta.yaml') }}
63+ ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python_tag || matrix. python }}-${{hashFiles('**/meta.yaml') }}
5864 restore-keys : |
59- ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}-
65+ ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python_tag || matrix. python }}-
6066 ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-
6167
6268 - name : Add conda to system path
6874 - name : Build conda package
6975 run : |
7076 CHANNELS=(-c conda-forge --override-channels)
71- VERSIONS=(--python "${{ matrix.python }}" --numpy "${{ matrix.numpy }}")
77+ VERSIONS=(--python "${{ matrix.python_spec || matrix. python }}" --numpy "${{ matrix.numpy }}")
7278 TEST=(--no-test)
7379
7480 conda build \
8086 - name : Upload artifact
8187 uses : actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
8288 with :
83- name : ${{ env.PACKAGE_NAME }} ${{ runner.os }} Python ${{ matrix.python }}
89+ name : ${{ env.PACKAGE_NAME }} ${{ runner.os }} Python ${{ matrix.python_tag || matrix. python }}
8490 path : /usr/share/miniconda/conda-bld/linux-64/${{ env.PACKAGE_NAME }}-*.conda
8591
8692 build_windows :
@@ -101,6 +107,12 @@ jobs:
101107 numpy : " 2.3"
102108 - python : " 3.14"
103109 numpy : " 2.3"
110+ python_spec : " 3.14.* *_cp314"
111+ python_tag : " 3.14"
112+ - python : " 3.14"
113+ numpy : " 2.3"
114+ python_spec : " 3.14.* *_cp314t"
115+ python_tag : " 3.14t"
104116
105117 env :
106118 conda-bld : C:\Miniconda\conda-bld\win-64\
@@ -130,9 +142,9 @@ jobs:
130142 with :
131143 path : /home/runner/conda_pkgs_dir
132144 key :
133- ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}-${{hashFiles('**/meta.yaml') }}
145+ ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python_tag || matrix. python }}-${{hashFiles('**/meta.yaml') }}
134146 restore-keys : |
135- ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}-
147+ ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python_tag || matrix. python }}-
136148 ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-
137149
138150 - name : Store conda paths as envs
@@ -146,12 +158,12 @@ jobs:
146158 conda list -n base
147159
148160 - name : Build conda package
149- run : conda build --no-test --python ${{ matrix.python }} --numpy ${{ matrix.numpy }} -c conda-forge --override-channels conda-recipe-cf
161+ run : conda build --no-test --python " ${{ matrix.python_spec || matrix. python }}" --numpy ${{ matrix.numpy }} -c conda-forge --override-channels conda-recipe-cf
150162
151163 - name : Upload artifact
152164 uses : actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
153165 with :
154- name : ${{ env.PACKAGE_NAME }} ${{ runner.os }} Python ${{ matrix.python }}
166+ name : ${{ env.PACKAGE_NAME }} ${{ runner.os }} Python ${{ matrix.python_tag || matrix. python }}
155167 path : ${{ env.CONDA_BLD }}${{ env.PACKAGE_NAME }}-*.conda
156168
157169 test_linux :
@@ -171,6 +183,12 @@ jobs:
171183 numpy : " 2.3"
172184 - python : " 3.14"
173185 numpy : " 2.3"
186+ python_spec : " 3.14.* *_cp314"
187+ python_tag : " 3.14"
188+ - python : " 3.14"
189+ numpy : " 2.3"
190+ python_spec : " 3.14.* *_cp314t"
191+ python_tag : " 3.14t"
174192
175193 env :
176194 CHANNELS : -c conda-forge --override-channels
@@ -179,7 +197,7 @@ jobs:
179197 - name : Download artifact
180198 uses : actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
181199 with :
182- name : ${{ env.PACKAGE_NAME }} ${{ runner.os }} Python ${{ matrix.python }}
200+ name : ${{ env.PACKAGE_NAME }} ${{ runner.os }} Python ${{ matrix.python_tag || matrix. python }}
183201
184202 - name : Add conda to system path
185203 run : echo "$CONDA/bin" >> "$GITHUB_PATH"
@@ -202,7 +220,7 @@ jobs:
202220 . "$CONDA/etc/profile.d/conda.sh"
203221 PACKAGE_VERSION="$(python -c "${VER_SCRIPT1} ${VER_SCRIPT2}")"
204222 export PACKAGE_VERSION
205- conda create -n "${{ env.TEST_ENV_NAME }}" "${PACKAGE_NAME}=${PACKAGE_VERSION}" "python=${{ matrix.python }}" "numpy=${{ matrix.numpy }}" -c "$GITHUB_WORKSPACE/channel" -c conda-forge --override-channels --only-deps --dry-run > lockfile
223+ conda create -n "${{ env.TEST_ENV_NAME }}" "${PACKAGE_NAME}=${PACKAGE_VERSION}" "python=${{ matrix.python_spec || matrix. python }}" "numpy=${{ matrix.numpy }}" -c "$GITHUB_WORKSPACE/channel" -c conda-forge --override-channels --only-deps --dry-run > lockfile
206224 cat lockfile
207225
208226 - name : Set pkgs_dirs
@@ -216,17 +234,17 @@ jobs:
216234 with :
217235 path : ~/.conda/pkgs
218236 key :
219- ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}-${{hashFiles('lockfile') }}
237+ ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python_tag || matrix. python }}-${{hashFiles('lockfile') }}
220238 restore-keys : |
221- ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}-
239+ ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python_tag || matrix. python }}-
222240 ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-
223241
224242 - name : Install mkl_random
225243 run : |
226244 . "$CONDA/etc/profile.d/conda.sh"
227245 PACKAGE_VERSION="$(python -c "${VER_SCRIPT1} ${VER_SCRIPT2}")"
228246 export PACKAGE_VERSION
229- conda create -n "${{ env.TEST_ENV_NAME }}" "${PACKAGE_NAME}=${PACKAGE_VERSION}" pytest "python=${{ matrix.python }}" "numpy=${{ matrix.numpy }}" -c "$GITHUB_WORKSPACE/channel" -c conda-forge --override-channels
247+ conda create -n "${{ env.TEST_ENV_NAME }}" "${PACKAGE_NAME}=${PACKAGE_VERSION}" pytest "python=${{ matrix.python_spec || matrix. python }}" "numpy=${{ matrix.numpy }}" -c "$GITHUB_WORKSPACE/channel" -c conda-forge --override-channels
230248 # Test installed packages
231249 conda list
232250
@@ -255,6 +273,12 @@ jobs:
255273 numpy : " 2.3"
256274 - python : " 3.14"
257275 numpy : " 2.3"
276+ python_spec : " 3.14.* *_cp314"
277+ python_tag : " 3.14"
278+ - python : " 3.14"
279+ numpy : " 2.3"
280+ python_spec : " 3.14.* *_cp314t"
281+ python_tag : " 3.14t"
258282
259283 env :
260284 CHANNELS : -c conda-forge --override-channels
@@ -263,14 +287,13 @@ jobs:
263287 - name : Download artifact
264288 uses : actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
265289 with :
266- name : ${{ env.PACKAGE_NAME }} ${{ runner.os }} Python ${{ matrix.python }}
290+ name : ${{ env.PACKAGE_NAME }} ${{ runner.os }} Python ${{ matrix.python_tag || matrix. python }}
267291
268292 - uses : conda-incubator/setup-miniconda@8ee1f361103df19b6f8c8655fd3967a8ecb162d5 # v4.0.1
269293 with :
270294 miniforge-version : latest
271295 channels : conda-forge
272- activate-environment : ${{ env.TEST_ENV_NAME }}
273- python-version : ${{ matrix.python }}
296+ activate-environment : base
274297
275298 - name : Install conda-index
276299 run : |
@@ -295,7 +318,7 @@ jobs:
295318 FOR /F "tokens=* USEBACKQ" %%F IN (`python -c "%SCRIPT%"`) DO (
296319 SET PACKAGE_VERSION=%%F
297320 )
298- conda install -n ${{ env.TEST_ENV_NAME }} ${{ env.PACKAGE_NAME }}=%PACKAGE_VERSION% python=${{ matrix.python }} numpy=${{ matrix.numpy }} -c ${{ env.GITHUB_WORKSPACE }}/channel ${{ env.CHANNELS }} --only-deps --dry-run > lockfile
321+ conda create -n ${{ env.TEST_ENV_NAME }} ${{ env.PACKAGE_NAME }}=%PACKAGE_VERSION% " python=${{ matrix.python_spec || matrix. python }}" numpy=${{ matrix.numpy }} -c ${{ env.GITHUB_WORKSPACE }}/channel ${{ env.CHANNELS }} --only-deps --dry-run > lockfile
299322
300323 - name : Cache conda packages
301324 uses : actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
@@ -304,9 +327,9 @@ jobs:
304327 with :
305328 path : /home/runner/conda_pkgs_dir
306329 key :
307- ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}-${{hashFiles('lockfile') }}
330+ ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python_tag || matrix. python }}-${{hashFiles('lockfile') }}
308331 restore-keys : |
309- ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}-
332+ ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python_tag || matrix. python }}-
310333 ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-
311334
312335 - name : Install mkl_random
@@ -318,7 +341,7 @@ jobs:
318341 FOR /F "tokens=* USEBACKQ" %%F IN (`python -c "%SCRIPT%"`) DO (
319342 SET PACKAGE_VERSION=%%F
320343 )
321- conda create -n ${{ env.TEST_ENV_NAME }} ${{ env.PACKAGE_NAME }}=%PACKAGE_VERSION% pytest python=${{ matrix.python }} numpy=${{ matrix.numpy }} -c ${{ env.GITHUB_WORKSPACE }}/channel ${{ env.CHANNELS }}
344+ conda create -n ${{ env.TEST_ENV_NAME }} ${{ env.PACKAGE_NAME }}=%PACKAGE_VERSION% pytest " python=${{ matrix.python_spec || matrix. python }}" numpy=${{ matrix.numpy }} -c ${{ env.GITHUB_WORKSPACE }}/channel ${{ env.CHANNELS }}
322345 # Test installed packages
323346 conda list
324347
@@ -342,6 +365,12 @@ jobs:
342365 numpy : " 2.3"
343366 - python : " 3.14"
344367 numpy : " 2.3"
368+ python_spec : " 3.14.* *_cp314"
369+ python_tag : " 3.14"
370+ - python : " 3.14"
371+ numpy : " 2.3"
372+ python_spec : " 3.14.* *_cp314t"
373+ python_tag : " 3.14t"
345374
346375 steps :
347376 - name : Cancel Previous Runs
@@ -368,9 +397,9 @@ jobs:
368397 with :
369398 path : /Users/runner/conda_pkgs_dir
370399 key :
371- ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}-${{hashFiles('**/meta.yaml') }}
400+ ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python_tag || matrix. python }}-${{hashFiles('**/meta.yaml') }}
372401 restore-keys : |
373- ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}-
402+ ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python_tag || matrix. python }}-
374403 ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-
375404
376405 - name : Install conda-build
@@ -388,7 +417,7 @@ jobs:
388417 shell : bash -el {0}
389418 run : |
390419 CHANNELS=(-c conda-forge --override-channels)
391- VERSIONS=(--python "${{ matrix.python }}" --numpy "${{ matrix.numpy }}")
420+ VERSIONS=(--python "${{ matrix.python_spec || matrix. python }}" --numpy "${{ matrix.numpy }}")
392421 TEST=(--no-test)
393422
394423 conda build \
@@ -400,7 +429,7 @@ jobs:
400429 - name : Upload artifact
401430 uses : actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
402431 with :
403- name : ${{ env.PACKAGE_NAME }} ${{ runner.os }} Python ${{ matrix.python }}
432+ name : ${{ env.PACKAGE_NAME }} ${{ runner.os }} Python ${{ matrix.python_tag || matrix. python }}
404433 path : ${{ env.CONDA_BLD }}${{ env.PACKAGE_NAME }}-*.conda
405434
406435 test_osx :
@@ -419,12 +448,18 @@ jobs:
419448 numpy : " 2.3"
420449 - python : " 3.14"
421450 numpy : " 2.3"
451+ python_spec : " 3.14.* *_cp314"
452+ python_tag : " 3.14"
453+ - python : " 3.14"
454+ numpy : " 2.3"
455+ python_spec : " 3.14.* *_cp314t"
456+ python_tag : " 3.14t"
422457
423458 steps :
424459 - name : Download artifact
425460 uses : actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
426461 with :
427- name : ${{ env.PACKAGE_NAME }} ${{ runner.os }} Python ${{ matrix.python }}
462+ name : ${{ env.PACKAGE_NAME }} ${{ runner.os }} Python ${{ matrix.python_tag || matrix. python }}
428463
429464 - uses : conda-incubator/setup-miniconda@8ee1f361103df19b6f8c8655fd3967a8ecb162d5 # v4.0.1
430465 with :
@@ -452,7 +487,7 @@ jobs:
452487 run : |
453488 PACKAGE_VERSION="$(python -c "${VER_SCRIPT1} ${VER_SCRIPT2}")"
454489 export PACKAGE_VERSION
455- conda create -n "${{ env.TEST_ENV_NAME }}" "${PACKAGE_NAME}=${PACKAGE_VERSION}" "python=${{ matrix.python }}" "numpy=${{ matrix.numpy }}" -c "$GITHUB_WORKSPACE/channel" -c conda-forge --override-channels --only-deps --dry-run > lockfile
490+ conda create -n "${{ env.TEST_ENV_NAME }}" "${PACKAGE_NAME}=${PACKAGE_VERSION}" "python=${{ matrix.python_spec || matrix. python }}" "numpy=${{ matrix.numpy }}" -c "$GITHUB_WORKSPACE/channel" -c conda-forge --override-channels --only-deps --dry-run > lockfile
456491 cat lockfile
457492
458493 - name : Cache conda packages
@@ -462,17 +497,17 @@ jobs:
462497 with :
463498 path : /Users/runner/conda_pkgs_dir
464499 key :
465- ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}-${{hashFiles('lockfile') }}
500+ ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python_tag || matrix. python }}-${{hashFiles('lockfile') }}
466501 restore-keys : |
467- ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}-
502+ ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python_tag || matrix. python }}-
468503 ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-
469504
470505 - name : Install mkl_random
471506 shell : bash -el {0}
472507 run : |
473508 PACKAGE_VERSION="$(python -c "${VER_SCRIPT1} ${VER_SCRIPT2}")"
474509 export PACKAGE_VERSION
475- conda create -n "${{ env.TEST_ENV_NAME }}" "${PACKAGE_NAME}=${PACKAGE_VERSION}" pytest "python=${{ matrix.python }}" "numpy=${{ matrix.numpy }}" -c "$GITHUB_WORKSPACE/channel" -c conda-forge --override-channels
510+ conda create -n "${{ env.TEST_ENV_NAME }}" "${PACKAGE_NAME}=${PACKAGE_VERSION}" pytest "python=${{ matrix.python_spec || matrix. python }}" "numpy=${{ matrix.numpy }}" -c "$GITHUB_WORKSPACE/channel" -c conda-forge --override-channels
476511 # Test installed packages
477512 conda list -n "${{ env.TEST_ENV_NAME }}"
478513
0 commit comments