Skip to content

chore: reformat with ruff #2070

chore: reformat with ruff

chore: reformat with ruff #2070

Workflow file for this run

name: Lint & Test
on:
push:
branches:
- 3.x
- 2.x
- 1.x
- 0.x
pull_request:
jobs:
# Linting
#
lint:
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v5
- uses: actions/setup-python@v5
with:
python-version: "3.13"
- name: Install uv
uses: astral-sh/setup-uv@v6
- uses: astral-sh/ruff-action@v3
- uses: astral-sh/ruff-action@v3
with:
args: "format --check"
type-check:
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v5
- uses: actions/setup-python@v5
with:
python-version: "3.13"
- name: Install uv
uses: astral-sh/setup-uv@v6
- run: uv sync --group test --no-default-groups
- run: uv run mypy
spell-check:
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v5
- name: Check spelling
uses: crate-ci/[email protected]
unit-test:
needs:
- lint
- type-check
strategy:
matrix:
os: [ubuntu-22.04, ubuntu-24.04, macos-13, macos-14, macos-15,windows-2022, windows-2025]
python-version: ["3.10", "3.11", "3.12", "3.13"]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v5
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install uv
uses: astral-sh/setup-uv@v6
- run: uv sync --group test --no-default-groups --python=${{ matrix.python-version }}
- run: uv run pytest --cov --disable-warnings
- name: Upload coverage report to codecov
if: ${{ matrix.os == 'ubuntu-24.04' && matrix.python-version == '3.13' }}
uses: codecov/codecov-action@v5
# End-to-end tests
#
end-to-end-test:
needs:
- lint
- type-check
strategy:
matrix:
os: [ubuntu-22.04, ubuntu-24.04]
test-name: [local, ssh, docker, podman]
python-version: ["3.10", "3.11", "3.12", "3.13"]
include:
- os: macos-13
test-name: local
python-version: "3.13"
- os: macos-14
test-name: local
python-version: "3.13"
- os: macos-15
test-name: local
python-version: "3.13"
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v5
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install uv
uses: astral-sh/setup-uv@v6
- run: uv sync --group test --no-default-groups --python=${{ matrix.python-version }}
- run: uv run pytest -m end_to_end_${{ matrix.test-name }}
# Finally, single jon to check if all completed, for use in protected branch
tests-done:
if: ${{ always() }}
needs:
- lint
- type-check
- unit-test
- end-to-end-test
runs-on: ubuntu-latest
steps:
- uses: matrix-org/done-action@v3
with:
needs: ${{ toJSON(needs) }}