Contributions are welcome, and they are greatly appreciated! Every little bit helps, and credit will always be given.
This document provides guidelines for people who want to contribute to the project.
- Code repository: https://github.com/diecutter/piecutter
- Bugtracker: https://github.com/diecutter/piecutter/issues
- Continuous integration: https://travis-ci.org/diecutter/piecutter
The best way to send feedback is to file an issue in the bugtracker [1].
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.
- in your commit messages, reference the ticket with some
refs #TICKET-ID
syntax.
- 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.
Clone piecutter repository (adapt to use your own fork):
git clone [email protected]:<your-github-username-here>/piecutter.git
cd piecutter/
System requirements:
- Python [4] version 2.7 (in a virtualenv [5] if you like).
- make and wget to use the provided Makefile.
Execute:
make develop
The Makefile is the reference card for usual actions in development environment:
- Install development toolkit with pip [6]:
make develop
. - Run tests with tox [7]:
make test
. - Build documentation:
make documentation
. It builds Sphinx [8] documentation in var/docs/html/index.html. - Release piecutter project with zest.releaser [9]:
make release
. - Cleanup local repository:
make clean
,make distclean
andmake maintainer-clean
.
Notes & references
[1] | (1, 2) https://github.com/diecutter/piecutter/issues |
[2] | http://git-scm.com/book/en/Git-Branching-Rebasing |
[3] | http://tech.novapost.fr/psycho-rebasing-en.html |
[4] | http://python.org |
[5] | http://virtualenv.org |
[6] | https://pypi.python.org/pypi/pip/ |
[7] | https://pypi.python.org/pypi/tox/ |
[8] | https://pypi.python.org/pypi/Sphinx/ |
[9] | https://pypi.python.org/pypi/zest.releaser/ |