Contributing

This document provides guidelines for people who want to contribute to django-ticketoffice.

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.

Use topic branches

  • Work in 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. do not merge master.

Fork, clone

Clone django-ticketoffice repository (adapt to use your own fork):

git clone git@github.com:novapost/django-ticketoffice.git
cd django-ticketoffice/

Usual actions

The Makefile is the reference card for usual actions in development environment:

  • Install development toolkit with pip [4]: make develop.
  • Run tests with tox [5]: make test.
  • Build documentation: make documentation.
  • Release project with zest.releaser [6]: make release.
  • Cleanup local repository: make clean, make distclean and make maintainer-clean.

See also make help.

Notes & references

[1]https://github.com/novapost/django-ticketoffice/issues
[2]http://git-scm.com/book/en/Git-Branching-Rebasing
[3]http://tech.novapost.fr/psycho-rebasing-en.html
[4]https://pypi.python.org/pypi/pip/
[5]http://tox.testrun.org
[6]https://pypi.python.org/pypi/zest.releaser/