This project is a pure python project using modern tooling. It uses a Makefile
as a command registry, with the following commands:
make
: list available commandsmake develop
: install and build this library and its dependencies usingpip
make build
: build the library usingsetuptools
make lint
: perform static analysis of this library withflake8
andblack
make format
: autoformat this library usingblack
make annotate
: run type checking usingmypy
make test
: run automated tests withpytest
make coverage
: run automated tests withpytest
and collect coverage informationmake dist
: package library for distribution
To make a contribution, create your own fork.
Then run make develop
to install all the dependencies
Once you write your changes (and corresponding tests), check for any regressions by running make test
Before making a PR, check for any linting errors with make lint
. Many of these can be fixed by running make format