Skip to content

Run windows tests in multiple shells #85

Run windows tests in multiple shells

Run windows tests in multiple shells #85

Workflow file for this run

name: ci
on:
push:
pull_request:
branches:
- main
env:
LANG: en_US.utf-8
LC_ALL: en_US.utf-8
PYTHONIOENCODING: UTF-8
PYTHON_VERSIONS: ""
jobs:
quality:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
fetch-tags: true
- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: "3.12"
- name: Setup uv
uses: astral-sh/setup-uv@v3
with:
enable-cache: true
cache-dependency-glob: pyproject.toml
- name: Install dependencies
run: make setup
- name: Check if the documentation builds correctly
run: make check-docs
- name: Check the code quality
run: make check-quality
- name: Check if the code is correctly typed
run: make check-types
- name: Check for breaking changes in the API
run: make check-api
tests:
strategy:
matrix:
os:
- name: ubuntu-latest
shell: bash
- name: macos-latest
shell: bash
- name: windows-latest
shell: bash
- name: windows-latest
shell: pwsh
python-version:
- "3.13"
resolution:
- highest
- lowest-direct
exclude:
- os:
name: macos-latest
resolution: lowest-direct
- os:
name: windows-latest
resolution: lowest-direct
runs-on: ${{ matrix.os.name }}
continue-on-error: ${{ matrix.python-version == '3.14' }}
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
fetch-tags: true
- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
allow-prereleases: true
- name: Setup uv
uses: astral-sh/setup-uv@v3
with:
enable-cache: true
cache-dependency-glob: pyproject.toml
cache-suffix: py${{ matrix.python-version }}
- name: Install dependencies
env:
UV_RESOLUTION: ${{ matrix.resolution }}
run: make setup
- name: Run the test suite on ${{ matrix.os.shell }}
run: make test