Contributing Guidelines¶
Thank you for looking into contributing to KPP! KPP is an open-source package that relies on contributions from community members like you. Whether you’re a new or longtime KPP user, you’re a valued member of the community, and we want you to feel empowered to contribute.
We use GitHub and ReadTheDocs¶
We use GitHub to host the KPP source code, to track issues, user questions, and feature requests, and to accept pull requests: https://github.com/KineticPreProcessor/KPP. Please help out as you can in response to issues and user questions.
We use ReadTheDocs to host the KPP user documentation: https://kpp.readthedocs.io.
How to submit changes¶
We use GitHub Flow, so all changes happen through pull requests. This workflow is described here: GitHub Flow. If your change affects multiple submodules, submit a pull request for each submodule with changes, and link to these submodule pull requests in your main pull request.
As the author you are responsible for: - Testing your changes - Updating the user documentation (if applicable) - Supporting issues and questions related to your changes in the near-term
Coding conventions¶
The KPP codebase dates back several decades and includes contributions from many people and multiple organizations. Therefore, some inconsistent conventions are inevitable, but we ask that you do your best to be consistent with nearby code.
How to request an enhancement¶
We accept feature requests through issues on GitHub. To request a new feature, open a new issue and select the feature request template. Please include all the information that might be relevant, including the motivation for the feature.
How to report a bug¶
Please see “Support Guidelines”.
Where can I ask for help?¶
Please see “Support Guidelines”.