Contributing to driftwatch
Source:.github/CONTRIBUTING.md
Thank you for your interest in driftwatch. Bug reports, questions, suggestions and code contributions are all welcome.
Getting help
- Start with the documentation: the package website (https://edidatasolutions.github.io/driftwatch/), the vignette (
vignette("driftwatch")) and the help pages (?dw_...). - For questions about using the package, open an issue at https://github.com/edidatasolutions/driftwatch/issues and describe what you are trying to do.
Reporting a bug
Please open an issue at https://github.com/edidatasolutions/driftwatch/issues with:
- A short description of the problem and what you expected instead.
- A minimal reproducible example. The package’s simulation function (
dw_simulate()) is usually the easiest way to create example data without sharing real examinee records. - The output of
sessionInfo().
Never post real candidate, examinee or item data in an issue. If a problem only appears with confidential data, describe it in general terms, or email the maintainer (address in the DESCRIPTION file) to discuss how to share it safely.
Suggesting a feature
Open an issue describing the use case (the measurement problem you need to solve), not only the proposed function. Methodological suggestions with references are especially welcome.
Contributing code
- Open an issue first to discuss the change, unless it is a small fix (typos, documentation).
- Fork the repository and create a branch for your change.
- Follow the existing style: base R in
Imports, thedw_function prefix, roxygen2 documentation with runnable@examples. - Add or update tests in
tests/test-core.R. New statistical methods should come with a known-truth check (simulate from the model, recover the truth); seeinst/validation/for the pattern used throughout the package. - Run
R CMD check(for exampledevtools::check()) and make sure it passes with no errors or warnings. - Open a pull request describing what changed and why. The automated checks run on Windows, macOS and Linux.