|
| 1 | +How to contribute |
| 2 | +================= |
| 3 | + |
| 4 | +Want to participate/contribute to ProcessTracking? Feel free to add any enhancements, feature requests, etc. |
| 5 | + |
| 6 | +Getting Started |
| 7 | +``````````````` |
| 8 | +
|
| 9 | +* Check out the project's development branch and create a new Python 3.7+ virtualenv. |
| 10 | +* Install pipenv:: |
| 11 | +
|
| 12 | + $ pip install pipenv |
| 13 | +
|
| 14 | +* Install all necessary requirements:: |
| 15 | +
|
| 16 | + $ pipenv install |
| 17 | +
|
| 18 | +* Make sure you have a `GitHub account <https://github.com/signup/free>`_ |
| 19 | +* Submit issues/suggestions to the `Github issue tracker <https://github.com/OpenDataAlex/process_tracker/issues>`_ |
| 20 | +
|
| 21 | + - For bugs, clearly describe the issue including steps to reproduce. Please include stack traces, logs, |
| 22 | + screen shots, etc. to help us identify and address the issue. |
| 23 | + - Please ensure that your contribution is added to the correct project (i.e. docs, workflow, etc. in process_tracker |
| 24 | + , python bug or implementation changes goes to process_tracker_python, etc.) |
| 25 | + - For text based artifacts, please use: `Gist <https://gist.github.com/>`_ or `Pastebin <http://pastebin.com/>`_ |
| 26 | + - For enhancement requests, be sure to indicate if you are willing to work on implementing the enhancement |
| 27 | + - Fork the repository on GitHub if you want to contribute code/docs |
| 28 | +
|
| 29 | +Making Changes |
| 30 | +`````````````` |
| 31 | +
|
| 32 | +* **ProcessTracking** uses `git-flow <http://nvie.com/posts/a-successful-git-branching-model/>`_ as the git branching model |
| 33 | +
|
| 34 | + * **All commits should be made to the dev branch** |
| 35 | + * `Install git-flow <https://github.com/nvie/gitflow>`_ and create a `feature` branch with the following command:: |
| 36 | +
|
| 37 | + $ git flow feature start <name of your feature> |
| 38 | +
|
| 39 | +* Make commits of logical units with complete documentation. |
| 40 | +
|
| 41 | + * Check for unnecessary whitespace with `git diff --check` before committing. |
| 42 | + * Make sure you have added the necessary tests for your changes. |
| 43 | +
|
| 44 | + * Test coverage is currently tracked via `coveralls.io <https://coveralls.io/github/OpenDataAlex/>`_ |
| 45 | + * Aim for 100% coverage on your code |
| 46 | +
|
| 47 | + * If this is not possible, explain why in your commit message. This may be an indication that your code should be refactored. |
| 48 | +* To make sure your tests pass, run:: |
| 49 | +
|
| 50 | + $ python setup.py test |
| 51 | +
|
| 52 | +* If you have the `coverage` package installed to generate coverage data, run:: |
| 53 | +
|
| 54 | + $ coverage run --source=process_tracker_python setup.py test |
| 55 | +
|
| 56 | +* Check your coverage by running:: |
| 57 | +
|
| 58 | + $ coverage report |
| 59 | +
|
| 60 | +Submitting Changes |
| 61 | +`````````````````` |
| 62 | +
|
| 63 | +* Push your changes to the feature branch in your fork of the repository. |
| 64 | +* Submit a pull request to the main repository |
| 65 | +* You will be notified if the pull was successful. If there are any concerns or issues, a member of the ProcessTracker |
| 66 | + maintainer group will reach out. |
| 67 | +
|
| 68 | +
|
| 69 | +Additional Resources |
| 70 | +```````````````````` |
| 71 | +
|
| 72 | +* `General GitHub documentation <http://help.github.com/>`_ |
| 73 | +* `GitHub pull request documentation <https://help.github.com/en/articles/about-pull-requests>`_ |
0 commit comments