Contributing to Shennong
Source:CONTRIBUTING.md
Development workflow
Use small, reviewable changes. Prefer one focused behavior change per commit, with matching tests and documentation updates.
Before opening a pull request, run:
devtools::document()
testthat::test_local(stop_on_failure = TRUE)And from the shell:
Documentation
- Edit roxygen comments in
R/and regenerateman/withdevtools::document(). - Edit
README.Rmd, then rebuildREADME.md. - Keep vignette chunks safe for package checks. Heavy or networked workflows must be guarded.
Testing
- Add tests for the public behavior you touch.
- Prefer lightweight fixtures and synthetic matrices over network downloads.
- Skip optional-package tests with
skip_if_not_installed()when appropriate.
Commit messages
This repository uses Conventional Commits.
Preferred format:
<type>(<scope>): <summary>
Examples:
feat(clustering): consolidate single and harmony workflowsfix(io): preserve row names in metadata importdocs(readme): expand quick-start examplestest(preprocessing): cover qc filtering helpers
Recommended types:
featfixrefactordocstestbuildcichore
Breaking changes should use ! and be documented in NEWS.md.