@@ -588,8 +588,14 @@ jobs:
588588 strategy :
589589 matrix :
590590 python : ['3.14']
591+ python_spec : ['']
591592 experimental : [false]
592593 runner : [ubuntu-latest]
594+ include :
595+ - python : ' 3.14'
596+ python_spec : ' 3.14.* *_cp314'
597+ experimental : false
598+ runner : ubuntu-latest
593599 continue-on-error : ${{ matrix.experimental }}
594600 timeout-minutes : 60
595601 env :
@@ -615,7 +621,7 @@ jobs:
615621 - name : Download artifact
616622 uses : actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
617623 with :
618- name : ${{ env.PACKAGE_NAME }} ${{ runner.os }} Python ${{ matrix.python }}
624+ name : ${{ env.PACKAGE_NAME }} ${{ runner.os }} Python ${{ matrix.python == '3.14' && (matrix.python_spec != '' && '3.14' || '3.14t') || matrix.python }}
619625 - name : Add conda to system path
620626 run : echo "$CONDA/bin" >> "$GITHUB_PATH"
621627 - name : Create conda channel
@@ -633,8 +639,13 @@ jobs:
633639 export CHANNELS
634640 PACKAGE_VERSION=$(python -c "${VER_SCRIPT1} ${VER_SCRIPT2}")
635641 export PACKAGE_VERSION
642+ PYTHON_VER="${{ matrix.python_spec }}"
643+ if [ -z "${PYTHON_VER}" ]; then
644+ PYTHON_VER="${{ matrix.python }}"
645+ fi
646+ export PYTHON_VER
636647 # shellcheck disable=SC2086
637- conda create -n ${{ env.EXAMPLES_ENV_NAME }} ${{ env.PACKAGE_NAME }}=${PACKAGE_VERSION} python=${{ matrix.python }} $CHANNELS --only-deps --dry-run > lockfile
648+ conda create -n ${{ env.EXAMPLES_ENV_NAME }} ${{ env.PACKAGE_NAME }}=${PACKAGE_VERSION} python="${PYTHON_VER}" $CHANNELS --only-deps --dry-run > lockfile
638649 cat lockfile
639650 - name : Set pkgs_dirs
640651 run : |
@@ -646,9 +657,9 @@ jobs:
646657 with :
647658 path : ~/.conda/pkgs
648659 key :
649- ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}-${{hashFiles('lockfile') }}
660+ ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}-spec-${{ matrix.python == '3.14' && matrix.python_spec == '' && 't' || '' }}- ${{hashFiles('lockfile') }}
650661 restore-keys : |
651- ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}-
662+ ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}-spec-${{ matrix.python == '3.14' && matrix.python_spec == '' && 't' || '' }}-
652663 ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-
653664 - name : Install example requirements
654665 shell : bash -ex -l {0}
@@ -660,8 +671,12 @@ jobs:
660671 DPCTL_DEPENDS="$(python -c "${VER_SCRIPT1} ${VER_SCRIPT3}")"
661672 export DPCTL_DEPENDS
662673 echo "Dpctl dependencies: ${DPCTL_DEPENDS}"
674+ PYTHON_VER="${{ matrix.python_spec }}"
675+ if [ -z "${PYTHON_VER}" ]; then
676+ PYTHON_VER="${{ matrix.python }}"
677+ fi
663678 # shellcheck disable=SC2086
664- conda create -n ${{ env.EXAMPLES_ENV_NAME }} -y pytest python=${{ matrix.python }} "setuptools<72.2.0" $CHANNELS
679+ conda create -n ${{ env.EXAMPLES_ENV_NAME }} -y pytest python="${PYTHON_VER}" "setuptools<72.2.0" $CHANNELS
665680 echo "Environment created"
666681 # shellcheck disable=SC2086
667682 conda install -n ${{ env.EXAMPLES_ENV_NAME }} -y cmake ninja $CHANNELS || exit 1
0 commit comments