diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 2094d79c4ee..e8e05c9cafd 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -388,6 +388,56 @@ jobs: run: python3 `which scons` test show_long_tests=yes verbose_tests=yes --debug=time + windows-2022: + name: ${{ matrix.os }}, MSVC ${{ matrix.vs-toolset }}, Python ${{ matrix.python-version }} + runs-on: ${{ matrix.os }} + timeout-minutes: 60 + defaults: + run: + shell: bash -l {0} + strategy: + matrix: + os: ["windows-2022"] + vs-toolset: ["14.0", "14.1", "14.2", "14.3"] + python-version: [ "3.6", "3.10" ] + fail-fast: false + steps: + - uses: actions/checkout@v2 + name: Checkout the repository + with: + submodules: recursive + - name: Cache conda + uses: actions/cache@v2 + env: + # Increase this value to reset cache if etc/example-environment.yml has not changed + CACHE_NUMBER: 0 + with: + path: ~/conda_pkgs_dir + key: + ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }} + - uses: conda-incubator/setup-miniconda@v2 + with: + auto-update-conda: true + python-version: ${{ matrix.python-version }} + activate-environment: test + miniforge-version: latest + channels: conda-forge,defaults + channel-priority: strict + use-only-tar-bz2: true # IMPORTANT: This needs to be set for caching to work properly! + name: Set up conda + - name: Install conda dependencies + # See https://github.com/conda-forge/boost-cpp-feedstock/issues/41 for why we + # use boost-cpp rather than boost from conda-forge + run: | + conda install -q scons numpy cython ruamel_yaml boost-cpp fmt eigen yaml-cpp h5py pandas pytest + shell: pwsh + - name: Build Cantera + run: scons build system_fmt=y system_eigen=y system_yamlcpp=y VERBOSE=True debug=n + msvc_version=${{ matrix.vs-toolset }} f90_interface=n --debug=time -j2 + shell: pwsh + - name: Test Cantera + run: scons test show_long_tests=yes verbose_tests=yes --debug=time + windows: name: ${{ matrix.os }}, MSVC ${{ matrix.vs-toolset }}, Python ${{ matrix.python-version }} runs-on: ${{ matrix.os }} @@ -400,21 +450,6 @@ jobs: os: ['windows-2019'] vs-toolset: ['14.0', '14.2'] python-version: [ '3.6', '3.9', '3.10' ] - # Must use windows-2016 image because it installs VS2017 (MSVC 14.1) - # Scons cannot find MSVC 14.1 when VS2019 is installed - include: - - os: 'windows-2016' - vs-toolset: '14.1' - python-version: '3.6' - - os: 'windows-2016' - vs-toolset: '14.1' - python-version: '3.7' - - os: 'windows-2016' - vs-toolset: '14.1' - python-version: '3.8' - - os: 'windows-2016' - vs-toolset: '14.1' - python-version: '3.9' fail-fast: false steps: - uses: actions/checkout@v2