SunPy is an open project that enourages everyone to contribute in any way possible. This document descibes how to contribute code and documentation to the main SunPy repository, if you wish to make a different contribution please contact the mailing list.
- Get a GitHub Account
- Fork SunPy
- Make your changes and push to your fork.
- Create a Pull Request.
For more detailed information on contributing code see our Developers Guide.
When you submit a pull request it can be reviewed and commented on by anyone. For the code to be accepted into SunPy it must meet the following criteria:
- Conform to code quality standards, primarily PEP8.
- Have close to 100% unit test coverage.
- Have API documentation generated by astropy's automodapi extenstion where appropriate.
- Contain an entry in the CHANGELOG.md file.
- Be approved by at least two SunPy contributors.
From time to time, large feature development work may occur in branches other than master, and all
maintained releases currently have a branch i.e. 0.6
.
When making a PR to one of these branches, please put the name of the branch in square brackets at
the beginning of the PR, i.e. [0.6] My bug fix
. This makes it easier to filter and review these PRs.
For more information on contributing to SunPy check out the following:
- Our Developers Guide.
- The Developers Mailing List
- The Pull Request Review wiki page.
- Our IRC channel #SunPy on irc.freenode.net