Setup
Requirements
- Make:
- macOS:
$ xcode-select --install
- Linux: https://www.gnu.org/software/make
- Windows: https://mingw.org/download/installer
- macOS:
- Python:
$ pyenv install
- Poetry: https://python-poetry.org/docs/#installation
- Graphviz:
- macOS:
$ brew install graphviz
- Linux: https://graphviz.org/download
- Windows: https://graphviz.org/download
- macOS:
To confirm these system dependencies are configured correctly:
$ make doctor
Installation
Install project dependencies into a virtual environment:
$ make install
Development Tasks
Manual
Run the tests:
$ make test
Run static analysis:
$ make check
Build the documentation:
$ make docs
Local install for external testing:
$ make dev-install
Clean everything:
$ make clean
Compare coverage to current develop
branch to see if changes causes reduced coverage.
Please run before creating a PR.
$ make test-cover
Automatic
Keep all of the above tasks running on change:
$ make dev
In order to have OS X notifications,
brew install terminal-notifier
.
Continuous Integration
The CI server will report overall build status:
$ make ci
Release Tasks
Release to PyPI:
$ make upload