Contributing to spectre
Source:CONTRIBUTING.md
This outlines how to propose a change to spectre. There are several ways you can contribute to this project. If you want to know more about why and how to contribute to open source projects like this one, see this Open Source Guide.
Code of Conduct
Please note that the spectre project is released with a Contributor Code of Conduct. By contributing to this project you agree to abide by its terms.
How to contribute
Ask a question ⁉️
Browse the documentation to see if you can find a solution. Still stuck? Open an issue on GitHub on GitHub. We’ll try to do our best to address it, as questions often lead to better documentation or the discovery of bugs.
Want to ask a question in private? Contact the package maintainer by mhk.hesselbarth<at>gmail.com.
Please try to include a reproducible example using for example the reprex
package.
Propose an idea 💡
Take a look at the documentation and issue on GitHub list to see if it isn’t included or suggested yet. If not, please open a new issue!
While we can’t promise to implement your idea, it helps to:
- Explain in detail how it would work.
- Keep the scope as narrow as possible.
Report a bug 🐛
Report it as an issue on GitHub so we can fix it. A good bug report makes it easier for us to do so, so please include:
- The content of
utils::sessionInfo()
. - Any details about your local setup that might be helpful in troubleshooting.
- Detailed steps to reproduce the bug
Again, please try to include a reproducible example using for example the reprex
package.
Improve the documentation 📖
Good documentation makes all the difference, so your help to improve it is very welcome!
We use roxygen2, with Markdown syntax, for documentation.
Pull request process ↕️
We try to follow the GitHub flow for development.
Fork the repo and clone it to your computer. To learn more about this process, see this guide. Don’t forget to pull all new changes before starting to work!
Open the RStudio project file (
.Rproj
) and install all development dependencies with (e.g., usingdevtools::install_dev_deps()
). Make sure the package passes R CMD check by runningdevtools::check()
.Create a new Git branch and use a name that briefly describes the proposed changes.
-
Make your changes:
- Write your code.
- Test your code (bonus points for adding unit tests using the
testthat
package). - Document your code (see function documentation above).
- Check your code with
devtools::check()
and aim for 0 errors, warnings and notes.
Commit and push your changes.
Submit a pull request.
New code should follow the tidyverse style guide.