Contributing to nonabsdid
Source:.github/CONTRIBUTING.md
Thanks for taking the time to contribute! This project welcomes issues and pull requests. The notes below describe how to get involved.
Code of Conduct
By participating in this project you agree to abide by its Code of Conduct. Please be respectful and constructive in all interactions.
How to contribute
Reporting bugs and asking questions
- Search the issue tracker first to see whether your problem has already been reported.
- If not, open a new issue. For bugs, please include a minimal reprex (reproducible example) and the output of
sessionInfo()(orsessioninfo::session_info()). - For estimator-specific behaviour, please note which backend you were using (
DIDmultiplegtDYN,PanelMatch, orfect) and its version.
Suggesting enhancements
Open an issue describing the use case and, where possible, a sketch of the interface you have in mind. Because nonabsdid deliberately keeps a small, unified surface over several estimators, please explain how the change fits that goal.
Pull requests
- Fork the repository and create a branch from
main. - Make your change. Keep the diff focused on a single concern.
- Add or update tests under
tests/testthat/so the new behaviour is covered. Tests that depend on a suggested estimator package should be guarded withskip_if_not_installed(). - Document any user-facing change with roxygen2 and run
devtools::document()to regenerate theman/files andNAMESPACE. - Run
R CMD check(e.g.devtools::check()) and confirm it passes with no errors, warnings, or new notes. - Update
NEWS.mdif the change is user-facing. - Open a pull request referencing the issue it addresses. The PR template will prompt you for a short description of the change.
Style
- This package uses roxygen2 for documentation and testthat (edition 3) for tests.
- Please follow the tidyverse style guide. You can check style locally with
lintrand reformat withstyler. - Keep lines to 80 characters where practical.
Development setup
# install development dependencies
install.packages(c("devtools", "roxygen2", "testthat", "covr"))
# load the package for interactive work
devtools::load_all()
# run the tests
devtools::test()
# check test coverage
covr::report()Getting help
If you are unsure about anything, open an issue and ask. We are happy to help you make your first contribution.
This project follows the rOpenSci contributing guidelines.