For Contributors



  • Make:
    • Windows:
    • Mac:
    • Linux: (likely already installed)
  • virtualenv:
  • Pandoc:
  • Graphviz:


Install project dependencies into a virtual environment:

$ make install

Development Tasks


Manually run the tests:

$ make test
$ make tests  # includes integration tests

or keep them running on change:

$ make watch

In order to have OS X notifications, brew install terminal-notifier.


Build the documentation:

$ make doc

Static Analysis

Run linters and static analyzers:

$ make pep8
$ make pep257
$ make pylint
$ make check  # includes all checks

Continuous Integration

The CI server will report overall build status:

$ make ci

Release Tasks

Release to PyPI:

$ make upload-test  # dry run upload to a test server
$ make upload