| name: CI | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| branches: [main] | |
| jobs: | |
| lint: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-python@v5 | |
| with: | |
| python-version: "3.12" | |
| - run: pip install ruff | |
| - run: ruff check --config python/pyproject.toml python/ tests/ | |
| - run: ruff format --check --config python/pyproject.toml python/ tests/ | |
| typecheck: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-python@v5 | |
| with: | |
| python-version: "3.12" | |
| - run: pip install mypy pyyaml pydantic types-PyYAML | |
| - run: mypy python/omniff --config-file python/pyproject.toml | |
| test-python: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-python@v5 | |
| with: | |
| python-version: "3.12" | |
| - run: pip install pyyaml pydantic pytest | |
| - run: pip install -e python/ --no-deps | |
| - run: python -m pytest tests/python/unit/ -v -k "not encoder_route_text and not encoder_route_code and not pdf_generator_creates" | |
| test-rust: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@stable | |
| - run: cargo check --workspace | |