Skip to content

Latest commit

 

History

History
111 lines (70 loc) · 2.66 KB

CONTRIBUTING.rst

File metadata and controls

111 lines (70 loc) · 2.66 KB

Contributing to decorum

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

Resources

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 decorum repository (adapt to use your own fork):

git clone [email protected]:decorum/decorum.git
cd decorum/

Setup a development environment

System requirements:

  • Python [4] version 2.7, 3.3 or 3.4 (in a virtualenv [5] if you like).
  • make and wget to use the provided Makefile.

Execute:

git clone [email protected]:decorum/decorum.git
cd decorum/

Then use the Makefile as explained below.

Usual actions

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.
  • Release decorum project with zest.releaser [8]: make release.
  • Cleanup local repository: make clean, make distclean and make maintainer-clean.

Notes & references

[1]https://github.com/zeekay/decorum/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/zest.releaser/