Skip to content

Commit a00019b

Browse files
authored
update contributing documentation, pr template (#818)
* update contributing documentation * update pr template * add links to installation [skip ci] * move sentence, add link
1 parent 9c364d8 commit a00019b

File tree

3 files changed

+40
-41
lines changed

3 files changed

+40
-41
lines changed

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 10 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,12 @@
1-
pvlib python pull request guidelines
2-
====================================
3-
4-
Thank you for your contribution to pvlib python! You may delete all of these instructions except for the list below.
5-
6-
You may submit a pull request with your code at any stage of completion.
7-
8-
The following items must be addressed before the code can be merged. Please don't hesitate to ask for help if you're unsure of how to accomplish any of the items below:
9-
10-
- [ ] Closes issue #xxxx
11-
- [ ] I am familiar with the [contributing guidelines](http://pvlib-python.readthedocs.io/en/latest/contributing.html).
12-
- [ ] Fully tested. Added and/or modified tests to ensure correct behavior for all reasonable inputs. Tests (usually) must pass on the TravisCI and Appveyor testing services.
13-
- [ ] Updates entries to `docs/sphinx/source/api.rst` for API changes.
14-
- [ ] Adds description and name entries in the appropriate `docs/sphinx/source/whatsnew` file for all changes.
15-
- [ ] Code quality and style is sufficient. Passes LGTM and SticklerCI checks.
16-
- [ ] New code is fully documented. Includes sphinx/numpydoc compliant docstrings and comments in the code where necessary.
1+
<!-- Thank you for your contribution! The following items must be addressed before the code can be merged. Please don't hesitate to ask for help if you're unsure of how to accomplish any of the items. Feel free to remove checklist items that are not relevant to your change. -->
2+
3+
- [ ] Closes #xxxx
4+
- [ ] I am familiar with the [contributing guidelines](https://pvlib-python.readthedocs.io/en/latest/contributing.html)
5+
- [ ] Tests added
6+
- [ ] Updates entries to [`docs/sphinx/source/api.rst`](https://github.com/pvlib/pvlib-python/blob/master/docs/sphinx/source/api.rst) for API changes.
7+
- [ ] Adds description and name entries in the appropriate "what's new" file in [`docs/sphinx/source/whatsnew`](https://github.com/pvlib/pvlib-python/tree/master/docs/sphinx/source/whatsnew) for all changes. Includes link to the GitHub Issue with `` :issue:`num` `` or this Pull Request with `` :pull:`num` ``. Includes contributor name and/or GitHub username (link with `` :ghuser:`user` ``).
8+
- [ ] New code is fully documented. Includes [numpydoc](https://numpydoc.readthedocs.io/en/latest/format.html) compliant docstrings, examples, and comments where necessary.
179
- [ ] Pull request is nearly complete and ready for detailed review.
10+
- [ ] Maintainer: Appropriate GitHub Labels and Milestone are assigned to the Pull Request and linked Issue.
1811

19-
Brief description of the problem and proposed solution (if not already fully described in the issue linked to above):
12+
<!-- Brief description of the problem and proposed solution (if not already fully described in the issue linked to above): -->

docs/sphinx/source/conf.py

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -266,12 +266,13 @@ def setup(app):
266266
#latex_domain_indices = True
267267

268268
# extlinks alias
269-
extlinks = {'issue': ('https://github.com/pvlib/pvlib-python/issues/%s',
270-
'GH'),
271-
'wiki': ('https://github.com/pvlib/pvlib-python/wiki/%s',
272-
'wiki '),
273-
'doi': ('http://dx.doi.org/%s', 'DOI: '),
274-
'ghuser': ('https://github.com/%s', '@')}
269+
extlinks = {
270+
'issue': ('https://github.com/pvlib/pvlib-python/issues/%s', 'GH'),
271+
'pull': ('https://github.com/pvlib/pvlib-python/pull/%s', 'GH'),
272+
'wiki': ('https://github.com/pvlib/pvlib-python/wiki/%s', 'wiki '),
273+
'doi': ('http://dx.doi.org/%s', 'DOI: '),
274+
'ghuser': ('https://github.com/%s', '@')
275+
}
275276

276277
# -- Options for manual page output ---------------------------------------
277278

docs/sphinx/source/contributing.rst

Lines changed: 23 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -215,7 +215,7 @@ Remove any ``logging`` calls and ``print`` statements that you added
215215
during development. ``warning`` is ok.
216216

217217
We typically use GitHub's
218-
"`squash and merge` <https://help.github.com/articles/about-pull-request-merges/#squash-and-merge-your-pull-request-commits>_"
218+
"`squash and merge <https://help.github.com/articles/about-pull-request-merges/#squash-and-merge-your-pull-request-commits>`_"
219219
feature to merge your pull request into pvlib. GitHub will condense the
220220
commit history of your branch into a single commit when merging into
221221
pvlib-python/master (the commit history on your branch remains
@@ -245,24 +245,35 @@ specific types may be used:
245245

246246
Parameters that specify a specific type require that specific input type.
247247

248-
A relatively easy way to test your documentation is to build it on
249-
`readthedocs.org <https://readthedocs.org>` by following their
250-
`Import Your Docs <http://docs.readthedocs.io/en/stable/getting_started.html#import-your-docs>`_
251-
instructions and enabling your branch on the readthedocs
252-
`versions admin page <http://docs.readthedocs.io/en/stable/features.html#versions>`_.
248+
Read the Docs will automatically build the documentation for each pull
249+
request. Please confirm the documentation renders correctly by following
250+
the ``continuous-documentation/read-the-docs`` link within the checks
251+
status box at the bottom of the pull request.
253252

254-
Another option is to install the required dependencies in your virtual/conda
255-
environment. See
256-
`docs/environment.yml <https://github.com/pvlib/pvlib-python/blob/master/docs/environment.yml>`_
257-
for the latest dependences for building the complete documentation. Some
258-
doc files can be compiled with fewer dependencies, but this is beyond
259-
the scope of this guide.
253+
To build the docs locally, install the ``doc`` dependencies specified in the
254+
`setup.py <https://github.com/pvlib/pvlib-python/blob/master/setup.py>`_
255+
file. See :ref:`installation` instructions for more information.
260256

261257
.. _testing:
262258

263259
Testing
264260
~~~~~~~
265261

262+
Developers **must** include comprehensive tests for any additions or
263+
modifications to pvlib. New unit test code should be placed in the
264+
corresponding test module in the
265+
`pvlib/test <https://github.com/pvlib/pvlib-python/tree/master/pvlib/test>`_
266+
directory.
267+
268+
A pull request will automatically run the tests for you on a variety of
269+
platforms (Linux, Mac, Windows) and python versions. However, it is
270+
typically more efficient to run and debug the tests in your own local
271+
environment.
272+
273+
To run the tests locally, install the ``test`` dependencies specified in the
274+
`setup.py <https://github.com/pvlib/pvlib-python/blob/master/setup.py>`_
275+
file. See :ref:`installation` instructions for more information.
276+
266277
pvlib's unit tests can easily be run by executing ``pytest`` on the
267278
pvlib directory:
268279

@@ -287,12 +298,6 @@ location of a test failure. As described in :ref:`code-style`, pvlib
287298
code does not use ``print`` or ``logging`` calls, and this also applies
288299
to the test suite (with rare exceptions).
289300

290-
New unit test code should be placed in the corresponding test module in
291-
the pvlib/test directory.
292-
293-
Developers **must** include comprehensive tests for any additions or
294-
modifications to pvlib.
295-
296301
pvlib-python contains 3 "layers" of code: functions, PVSystem/Location,
297302
and ModelChain. Contributors will need to add tests that correspond to
298303
the layers that they modify.

0 commit comments

Comments
 (0)