/rSW2metrics

Calculate ecohydrological metrics from SOILWAT2 simulations

Primary LanguageRGNU General Public License v3.0GPL-3.0

rSW2metrics: Calculation of Ecohydrological Metrics from rSOILWAT2 simulations

R build status github release DOI license codecov status


Collection of functions to calculate ecohydrological metrics from simulation output created by rSOILWAT2 or rSFSW2.


Please cite the package if you publish results based on code carried out with our package, see citation("rSW2metrics"), and we would like to hear about your publication.


Table of contents

  1. How to get started
    1. Installation
    2. Documentation
  2. How to contribute
    1. Code guidelines
    2. Code documentation
    3. Code tests
    4. Code versioning
  3. Additional notes

How to get started

Installation

remotes::install_github("DrylandEcology/rSW2metrics")

Documentation

View package documentation in an interactive R session with help(package = "rSW2metrics")


How to contribute

You can help us in different ways:

  1. Reporting issues
  2. Contributing code and sending a pull request

Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.


Follow our guidelines as detailed here


Tests, documentation, and code

Code documentation

  • This is based on the section 'Object documentation' of the book 'R packages' by Wickham
  • Use roxygen2 to write inline code documentation of functions
  • Use regular R-style comments to additionally document code
  • Update help pages and the NAMESPACE file with the command devtools::document()
  • Add examples to function documentation and check that these examples work with the command devtools::run_examples()

Code tests and package checks

  • This is based on the section 'Testing' of the book 'R packages' by Wickham

  • Unit tests

    • Use testthat to add unit tests to the existing framework
    • Run unit tests with the command devtools::test()
  • Package checks

    • Package checks are run with devtools::check(cran = TRUE, env_vars = c(NOT_CRAN = "true")) or R CMD build . && NOT_CRAN = "true" R CMD check *.tar.gz
    • Package checks include unit tests, code style, and spelling
    • These checks will be run on the continuous integration frameworks via a workflow in Github Action for pull requests
    • Development/feature branches can only be merged into main if they pass all checks

Version numbers

We attempt to follow guidelines of semantic versioning with version numbers of MAJOR.MINOR.PATCH.

If the version numbers changes, then the following files must be updated

  • DESCRIPTION: adjust lines 'Version'

Notes

Funding

Work on this package has been supported by various funds managed by Dr. John Bradford (USGS) and Dr. Daniel Schlaepfer.


License

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 of the License.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.