name: CI
on:
push:
pull_request:
jobs:
rust:
name: Rust Checks
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Rust
uses: dtolnay/rust-toolchain@stable
- name: Cargo check
run: cargo check --all-targets
- name: Cargo test
run: cargo test --all-targets
- name: Cargo check (pyo3)
run: cargo check --features pyo3
python:
name: Python Tests
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: "3.12"
- name: Setup Rust
uses: dtolnay/rust-toolchain@stable
- name: Setup uv
uses: astral-sh/setup-uv@v5
- name: Install dependencies
run: uv sync --group dev
- name: Run Python tests
run: uv run pytest -q