Contributor guide

This document provides guidelines for people who want to contribute to the project.

Create tickets

Please use the bugtracker [1] before starting some work:

  • check if the bug or feature request has already been filed. It may have been answered too!
  • else create a new ticket.
  • if you plan to contribute, tell us, so that we are given an opportunity to give feedback as soon as possible.
  • Then, in your commit messages, reference the ticket with some refs #TICKET-ID syntax.

Fork and branch

Work in forks and branches.

  • Prefix your branch with the ticket ID corresponding to the issue. As an example, if you are working on ticket #23 which is about contribute documentation, name your branch like 23-contribute-doc.
  • If you work in a development branch and want to refresh it with changes from master, please rebase [2] or merge-based rebase [3], i.e. don’t merge master.

Setup a development environment

System requirements:

  • Virtualenv [5] for Python [4] version 2.7, available as virtualenv command.
  • make and wget to use the provided Makefile.

Execute:

If you cannot execute the Makefile, read it and adapt the few commands it contains to your needs.

The Makefile

A Makefile is provided to ease development.

Use it to run common development tasks, such as:

  • setup the development environment: make develop ;
  • run tests: make test ;
  • build documentation: make documentation ;
  • run demo server on port 8106: make serve...

The Makefile is intended to be a live reference for the development environment.

Demo project included

The Demo is part of the project. Maintain it along with code and documentation.