This document provides guidelines for people who want to contribute to the django-aggtrigg project.
Please use django-aggtrigg 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.
- Work in branches.
- Please never push in
master
directly. - Prefix your branch with one the following keyword
feature/
when adding a new feature andfix/
when working on a fix. You can also add the ticket ID corresponding to the issue to be explicit. - If you work in a development branch and want to refresh it with changes from master, please rebase [2] or merge-based rebase [2], i.e. do not merge master.
Clone django-aggtrigg repository (adapt to use your own fork):
git clone [email protected]:novafloss/django-aggtrigg.git
cd django-aggtrigg/
The Makefile is the reference card for usual actions in development environment:
- Install development toolkit with pip [3]:
make develop
. - Run tests with tox [4]:
make test
. - Build documentation:
make documentation
. It builds Sphinx [5] documentation in var/docs/html/index.html. - Release django-aggtrigg project with zest.releaser [6]:
make release
. - Cleanup local repository:
make clean
,make distclean
andmake maintainer-clean
.
See also make help
.
To get your test environment ready, you'll need at least an access to a 9.x postgresql server. You may want to provide credentials, by editing the settings_local.sample.py file and save it as settings_local.py in the demo directory.
Notes & references
[1] | https://github.com/novafloss/django-aggtrigg/issues |
[2] | (1, 2) http://git-scm.com/book/en/v2/Git-Branching-Rebasing |
[3] | https://pypi.python.org/pypi/pip/ |
[4] | https://pypi.python.org/pypi/tox/ |
[5] | https://pypi.python.org/pypi/Sphinx/ |
[6] | https://pypi.python.org/pypi/zest.releaser/ |