summaryrefslogtreecommitdiff
path: root/docs/contributing.rst
blob: e02606f8039a71c264d7cc730a44c5b78b0cd99e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
Contributing
============

Contributors should create a GitHub account if they do not have one.
If you are opposed to having a GitHub account, you may e-mail the
maintainers a patch, though it reduces the chance of being accepted).

How to make a pull request
--------------------------

All aspects of using git and GitHub is well-documented by GitHub:

- `Fork a Repo <https://help.github.com/articles/fork-a-repo/>`_
- `Creating a pull request
  <https://help.github.com/articles/creating-a-pull-request/>`_

Preparing a Developer Environment
---------------------------------

Install git, python2, python3, pip, then virtualenvwrapper::

    pip install virtualenvwrapper

Then, Load virtualenvwrapper and prepare a developer environment
for blessings.  From the blessings code folder::

    . `which virtualenvwrapper.sh`
    mkvirtualenv blessings
    pip install --editable .

Running tests
-------------

::
        tox

Test Coverage
-------------

Blessings has 99% code coverage.  New features will not be accepted
without coverage. Bugfixes will not be accepted without a complimentary
test that demonstrates the bug.

Style, static analysis
----------------------

The test runner (``tox``) ensures all code and documentation complies
with standard python style guides, pep8 and pep257, as well as various
static analysis tools.