Skip to content

Local Workflows

This page provides practical local workflows for development and validation.

Setup

Install dependencies:

uv sync --group dev

Standard Quality Workflow

Run the same core checks used during development:

uv run python -m ruff check .
uv run python -m mypy online_fdr
uv run python -m pytest -q

Focused Test Runs

Run only the new API contract checks:

uv run python -m pytest tests/test_public_api_surface.py tests/test_import_smoke.py -q

Run a single module:

uv run python -m pytest tests/test_static.py -q

Working with R Parity Tests

Parity tests depend on a working R + rpy2 setup and pinned Bioconductor onlineFDR package.

Run parity tests directly:

uv run python -m pytest tests/test_onlinefdr_parity.py -q

If parity setup is not available yet, run a local non-parity subset:

uv run python -m pytest -q -k "not onlinefdr_parity"

Packaging Smoke

Build artifacts and verify package metadata locally:

uv run python -m build

Documentation Workflow

Serve docs locally:

uv run mkdocs serve

Build strict docs:

uv run mkdocs build --strict