Thank you for your interest in contributing to hypothesize! This document provides guidelines for contributing to this project.
Open an issue at https://github.com/queelius/hypothesize/issues with:
- A minimal reproducible example
- Your R version (
sessionInfo()) - The expected vs. actual behavior
Open an issue describing the feature, its motivation, and how it fits with the package's SICP-inspired design (data abstraction, closure property, higher-order functions).
- Fork the repository and create a feature branch
- Follow the existing code style (S3 classes, roxygen2 documentation)
- Add tests for new functionality in
tests/testthat/ - Run
devtools::check()and ensure no errors or warnings - Update documentation with
devtools::document()if needed - Submit a PR with a clear description of the changes
# Install development dependencies
install.packages(c("devtools", "testthat", "knitr", "rmarkdown"))
# Load for development
devtools::load_all()
# Run tests
devtools::test()
# Check package
devtools::check()This project follows the Contributor Covenant Code of Conduct.