Skip to content

Commit 729d44d

Browse files
committed
Added CONTRIBUTING.rst
1 parent 6a78427 commit 729d44d

File tree

1 file changed

+47
-5
lines changed

1 file changed

+47
-5
lines changed

CONTRIBUTING.rst

Lines changed: 47 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,51 @@ Contributing
33
===============================================================================
44

55

6-
In a nutshell:
6+
First time
7+
-------------------------------------------------------------------------------
78

8-
- follow `PEP8 style guide <https://www.python.org/dev/peps/pep-0008/>` with **double quotes** and
9-
line length of **100 characters (or 120 if absolutely nescessary)**
10-
- before push, run with :code:`python3 setup.py test`, then ensure **all tests are passing** and
11-
**the coverage is above 95%**
9+
1. clone a repository from GitHub:
10+
11+
.. code-block:: bash
12+
13+
git clone https://github.com/tomasbedrich/pycaching.git
14+
cd pycaching
15+
16+
2. setup the enviroment
17+
18+
.. code-block:: bash
19+
20+
python3 setup.py develop
21+
22+
23+
Workflow in a nutshell
24+
-------------------------------------------------------------------------------
25+
26+
1. Pick an issue with `contributors friendly
27+
<https://github.com/tomasbedrich/pycaching/issues?q=is:open+is:issue+label:"contributors+friendly">`_
28+
label and write a comment about your choice on GitHub.
29+
2. Write some code and tests. Follow `PEP8 <https://www.python.org/dev/peps/pep-0008/>`_ with
30+
**double quotes** and line length of **100 characters** (or 120 if absolutely nescessary).
31+
Don't forget to update the docs (follow `PEP257 <https://www.python.org/dev/peps/pep-0257/>`_).
32+
3. Run the linter and tests:
33+
34+
.. code-block:: bash
35+
36+
python3 setup.py lint test
37+
38+
Make sure that:
39+
40+
- there are no lint errors,
41+
- all tests are passing,
42+
- the coverage is above 95%.
43+
44+
4. Push your work and create a pull request.
45+
46+
47+
Other instructions
48+
-------------------------------------------------------------------------------
49+
50+
- **Importing modules** is okay for modules from standard library. If you want to include
51+
third-party module, please consult it on GitHub before.
52+
- Please use regular expressions only as a last resort. When possible, use string manipulations,
53+
such as :code:`split()` and then list operations. It is more readable.

0 commit comments

Comments
 (0)