For Contributors

Setup

Requirements

Installation

Install project dependencies into a virtual environment:

$ make install

Development Tasks

Testing

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.

Documentation

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