Skip to content

feat: add streaming server and GitHub toolset #18

feat: add streaming server and GitHub toolset

feat: add streaming server and GitHub toolset #18

Workflow file for this run

name: CI
on:
push:
branches:
- main
pull_request:
branches:
- main
jobs:
lint:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install uv
uses: astral-sh/setup-uv@v4
with:
version: "latest"
- name: Setup Python
run: uv python install 3.11
- name: Install dependencies
run: uv sync --group dev
- name: Run ruff format check
run: uv run ruff format --check src tests
- name: Run ruff lint
run: uv run ruff check src tests
typecheck:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install uv
uses: astral-sh/setup-uv@v4
with:
version: "latest"
- name: Setup Python
run: uv python install 3.11
- name: Install dependencies
run: uv sync --group dev
- name: Run mypy
run: uv run mypy src/bond
test:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ['3.11', '3.12']
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install uv
uses: astral-sh/setup-uv@v4
with:
version: "latest"
- name: Setup Python ${{ matrix.python-version }}
run: uv python install ${{ matrix.python-version }}
- name: Install dependencies
run: uv sync --group dev
- name: Run tests
run: uv run pytest --cov=src/bond --cov-report=xml
- name: Upload coverage
uses: codecov/codecov-action@v4
if: matrix.python-version == '3.11'
with:
files: coverage.xml
fail_ci_if_error: false
docs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install uv
uses: astral-sh/setup-uv@v4
with:
version: "latest"
- name: Setup Python
run: uv python install 3.11
- name: Install dependencies
run: uv sync --extra docs
- name: Build documentation
run: uv run mkdocs build --strict