Skip to content

Commit 45524dc

Browse files
committed
add contributing to rst docs
1 parent d3d49bc commit 45524dc

File tree

1 file changed

+89
-0
lines changed

1 file changed

+89
-0
lines changed

docs/sphinx/source/contributing.rst

Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
.. _contributing:
2+
3+
Contributing
4+
============
5+
6+
Encouraging more people to help develop pvlib-python is essential to our
7+
success. Therefore, we want to make it easy and rewarding for you to
8+
contribute.
9+
10+
11+
Easy ways to contribute
12+
-----------------------
13+
14+
Here are a few ideas for you can contribute, even if you are new to
15+
pvlib-python, git, or Python:
16+
17+
* Make `GitHub issues <https://github.com/pvlib/pvlib-python/issues>`_
18+
and contribute to the conversation about how to resolve them.
19+
* Read issues and pull requests that other people created and
20+
contribute to the conversation about how to resolve them.
21+
* Improve the documentation and the unit tests.
22+
* Improve the IPython/Jupyter Notebook tutorials or write new ones that
23+
demonstrate how to use pvlib-python in your area of expertise.
24+
* If you have MATLAB experience, you can help us keep pvlib-python
25+
up to date with PVLIB_MATLAB or help us develop common unit tests.
26+
For more, see `Issue #2 <https://github.com/pvlib/pvlib-python/issues/2>`_
27+
and `Issue #3 <https://github.com/pvlib/pvlib-python/issues/3>`_.
28+
* Tell your friends and colleagues about pvlib-python.
29+
* Add your project to our
30+
`Projects and publications that use pvlib-python wiki
31+
<https://github.com/pvlib/pvlib-python/wiki/Projects-and-publications-
32+
that-use-pvlib-python>`_.
33+
34+
35+
How to contribute new code
36+
--------------------------
37+
38+
Contributors to pvlib-python use GitHub's pull requests to add/modify
39+
its source code. The GitHub pull request process can be intimidating for
40+
new users, but you'll find that it becomes straightforward once you use
41+
it a few times. Please let us know if you get stuck at any point in the
42+
process. Here's an outline of the process:
43+
44+
#. Create a GitHub issue and get initial feedback from users and
45+
maintainers. If the issue is a bug report, please include the
46+
code needed to reproduce the problem.
47+
#. Obtain the latest version of pvlib-python: Fork the pvlib-python
48+
project to your GitHub account, ``git clone`` your fork to your computer.
49+
#. Make some or all of your changes/additions and ``git commit`` them to
50+
your local repository.
51+
#. Share your changes with us via a pull request: ``git push`` your
52+
local changes to your GitHub fork, then go to GitHub make a pull
53+
request.
54+
55+
The Pandas project maintains an excellent `contributing page
56+
<https://github.com/pydata/pandas/wiki/Contributing>`_ that goes into
57+
detail on each of these steps. Also see GitHub's `Set Up Git
58+
<https://help.github.com/articles/set-up-git/>`_ and `Using Pull
59+
Requests <https://help.github.com/articles/using-pull-requests/>`_.
60+
61+
Note that you do not need to make all of your changes before creating a
62+
pull request. Your pull requests will automatically be updated when you
63+
commit new changes and push them to GitHub. This gives everybody an easy
64+
way to comment on the code and can make the process more efficient.
65+
66+
We strongly recommend using virtual environments for development.
67+
Virtual environments make it trivial to switch between different
68+
versions of software. This `astropy guide
69+
<http://astropy.readthedocs.org/en/latest/development/workflow/
70+
virtual_pythons.html>`_ is a good reference for virtual environments. If
71+
this is your first pull request, don't worry about using a virtual
72+
environment.
73+
74+
You must include documentation and unit tests for any new or improved
75+
code. We can provide help and advice on this after you start the pull
76+
request.
77+
78+
The maintainers will follow same procedures, rather than making direct
79+
commits to the main repo. Exceptions may be made for extremely minor
80+
changes, such as fixing documentation typos.
81+
82+
83+
This documentation
84+
------------------
85+
If this documentation is unclear, help us improve it! Consider looking
86+
at `IPython <https://github.com/ipython/ipython/wiki/Dev:-Index>`_,
87+
`pandas <https://github.com/pydata/pandas/wiki>`_, and
88+
`Sandia-Labs/PVLIB_Python#33 <https://github.com/Sandia-Labs/
89+
PVLIB_Python/issues/33>`_ for inspiration.

0 commit comments

Comments
 (0)