Skip to content

fix(deps): make typer an optional dependency #49

fix(deps): make typer an optional dependency

fix(deps): make typer an optional dependency #49

Workflow file for this run

name: CI
on:
push:
branches: [main]
paths:
- 'src/**/*.py'
- 'tests/**/*.py'
- 'pyproject.toml'
- 'uv.lock'
- '.pre-commit-config.yaml'
- '.github/workflows/ci.yml'
pull_request:
branches: [main]
paths:
- 'src/**/*.py'
- 'tests/**/*.py'
- 'pyproject.toml'
- 'uv.lock'
- '.pre-commit-config.yaml'
- '.github/workflows/ci.yml'
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.11"
- name: Install uv
run: pip install uv
- name: Install dependencies
run: uv sync
- name: Run pre-commit hooks
run: uv run pre-commit run --all-files
test:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.11", "3.12", "3.13"]
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install uv
run: pip install uv
- name: Install dependencies
run: uv sync
- name: Run tests with coverage
run: uv run pytest --cov-report=term --cov-report=json
- name: Upload coverage reports
if: matrix.python-version == '3.11' && github.event_name == 'push' && github.ref == 'refs/heads/main'
uses: actions/upload-artifact@v4
with:
name: coverage-report
path: coverage.json