Python package for viral genomic analysis utilities.
import usefulgnom as ug
To build the package and maintain dependencies, we use Poetry. In particular, it's good to install it and become familiar with its basic functionalities by reading the documentation.
To set up the environment (together with development tools), run:
$ poetry install --with dev
$ poetry run pre-commit install
Then, you will be able to run tests:
$ poetry run pytest
... or check the types:
$ poetry run pyright
Alternatively, you may prefer to work with the right Python environment using:
$ poetry shell
$ pytest
The code quality checks run on GitHub can be seen in
.github/workflows/test.yml
for the python package CI/CD,.github/workflows/test-snake.yml
for the snakemake workflow CI.
We are using:
- Ruff to lint the code.
- Black to format the code.
- Pyright to check the types.
- Pytest to run the unit tests code and workflows.
- Interrogate to check the documentation.
- Snakefmt to format snakemake workflows.
We use Feature Branch Workflow, in which modifications of the code should happen via small pull requests.
We recommend submitting small pull requests and starting with drafts outlining proposed changes.
- Calulating Base Coverage Depth and Mutation Statistics, adapoted from @AugusteRi
- Calulating Amplicon Coverage, adapoted from @dr-david