Development
Set up a development environment
mamba env create -f environment.yml
conda activate wisp
python -m pip install -e ".[dev,docs]"
Run checks
ruff check .
mypy
pytest
python -m build
Build documentation
make -C docs html
Treat Sphinx warnings as issues during local development:
sphinx-build -W -b html docs docs/_build/html
Project layout
src/wisp_mask/ package source
tests/ unit and workflow tests
tests/test_data/ small 1000 Genomes fixtures and download scripts
docs/ Sphinx documentation
Implementation overview
The public CLI is defined in wisp_mask.cli. Parsed arguments are converted
to RunConfig and passed to run_workflow. The workflow validates the input
mode, runs either the BAM/CRAM or VCF builder, writes wisp.bed.gz,
and creates the tabix index.