From de4a1685fdab998637c1339babb06cc7dba34246 Mon Sep 17 00:00:00 2001 From: Joshua Lambert Date: Wed, 30 Aug 2023 10:20:16 +0100 Subject: [PATCH] Initial commit --- .Rbuildignore | 11 + .gitattributes | 1 + .github/.gitignore | 1 + .github/workflows/R-CMD-check.yaml | 94 ++ .github/workflows/pkgdown.yaml | 83 + .github/workflows/render_readme.yml | 88 ++ .github/workflows/test-coverage.yaml | 54 + .github/workflows/update-citation-cff.yaml | 55 + .gitignore | 52 + .lintr | 16 + DESCRIPTION | 31 + LICENSE | 2 + LICENSE.md | 21 + NAMESPACE | 2 + R/dev-utils.R | 9 + README.Rmd | 68 + README.md | 61 + _pkgdown.yml | 3 + codecov.yml | 14 + inst/WORDLIST | 19 + man/figures/logo.svg | 1600 ++++++++++++++++++++ tests/spelling.R | 7 + tests/testthat.R | 12 + tests/testthat/setup-options.R | 7 + 24 files changed, 2311 insertions(+) create mode 100644 .Rbuildignore create mode 100644 .gitattributes create mode 100644 .github/.gitignore create mode 100644 .github/workflows/R-CMD-check.yaml create mode 100644 .github/workflows/pkgdown.yaml create mode 100644 .github/workflows/render_readme.yml create mode 100644 .github/workflows/test-coverage.yaml create mode 100644 .github/workflows/update-citation-cff.yaml create mode 100644 .gitignore create mode 100644 .lintr create mode 100644 DESCRIPTION create mode 100644 LICENSE create mode 100644 LICENSE.md create mode 100644 NAMESPACE create mode 100644 R/dev-utils.R create mode 100644 README.Rmd create mode 100644 README.md create mode 100644 _pkgdown.yml create mode 100644 codecov.yml create mode 100644 inst/WORDLIST create mode 100644 man/figures/logo.svg create mode 100644 tests/spelling.R create mode 100644 tests/testthat.R create mode 100644 tests/testthat/setup-options.R diff --git a/.Rbuildignore b/.Rbuildignore new file mode 100644 index 00000000..963a753b --- /dev/null +++ b/.Rbuildignore @@ -0,0 +1,11 @@ +^LICENSE\.md$ +^\.github$ +^README\.Rmd$ +^codecov\.yml$ +^_pkgdown\.yml$ +^docs$ +^pkgdown$ +^\.lintr$ +^.*\.Rproj$ +^\.Rproj\.user$ +^CITATION\.cff$ diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 00000000..13d495ac --- /dev/null +++ b/.gitattributes @@ -0,0 +1 @@ +*.bib -linguist-detectable diff --git a/.github/.gitignore b/.github/.gitignore new file mode 100644 index 00000000..2d19fc76 --- /dev/null +++ b/.github/.gitignore @@ -0,0 +1 @@ +*.html diff --git a/.github/workflows/R-CMD-check.yaml b/.github/workflows/R-CMD-check.yaml new file mode 100644 index 00000000..30f2fd58 --- /dev/null +++ b/.github/workflows/R-CMD-check.yaml @@ -0,0 +1,94 @@ +# Workflow derived from https://github.com/r-lib/actions/tree/v2/examples +# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help +# +# Reproduce locally by running: +# ```r +# pak::pak(c("any::rcmdcheck", "."), dependencies = "Config/Needs/check") +# rcmdcheck::rcmdcheck() +# ``` +on: + push: + branches: [main, master] + paths: + - 'data/**' + - 'R/**' + - 'inst/**' + - 'man/**' + - 'src/**' + - 'tests/**' + - 'vignettes/**' + - 'DESCRIPTION' + - 'NAMESPACE' + - 'LICENSE' + - '.Rbuildignore' + - '.github/workflows/R-CMD-check.yaml' + pull_request: + paths: + - 'data/**' + - 'R/**' + - 'inst/**' + - 'man/**' + - 'src/**' + - 'tests/**' + - 'vignettes/**' + - 'DESCRIPTION' + - 'NAMESPACE' + - 'LICENSE' + - '.Rbuildignore' + - '.github/workflows/R-CMD-check.yaml' + +name: R-CMD-check + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +jobs: + R-CMD-check: + runs-on: ${{ matrix.config.os }} + + name: ${{ matrix.config.os }} (${{ matrix.config.r }}) + + strategy: + fail-fast: false + matrix: + config: + - {os: macOS-latest, r: 'release'} + - {os: windows-latest, r: 'release'} + - {os: ubuntu-latest, r: 'devel', http-user-agent: 'release'} + - {os: ubuntu-latest, r: 'release'} + - {os: ubuntu-latest, r: 'oldrel-1'} + + env: + GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} + R_KEEP_PKG_SOURCE: yes + # Exists since R 4.3.0 but `false` by default + _R_CHECK_LENGTH_COLON_: true + + steps: + - uses: actions/checkout@v3 + + - uses: r-lib/actions/setup-pandoc@v2 + + - uses: r-lib/actions/setup-r@v2 + with: + r-version: ${{ matrix.config.r }} + http-user-agent: ${{ matrix.config.http-user-agent }} + use-public-rspm: true + + - uses: r-lib/actions/setup-r-dependencies@v2 + with: + extra-packages: any::rcmdcheck + needs: check + + - uses: r-lib/actions/check-r-package@v2 + id: rcmdcheck + with: + upload-snapshots: true + + # fail-fast but only if rcmdcheck step fails + - name: Manual fail-fast + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + if: always() && steps.rcmdcheck.outcome == 'failure' + run: gh run cancel ${{ github.run_id }} diff --git a/.github/workflows/pkgdown.yaml b/.github/workflows/pkgdown.yaml new file mode 100644 index 00000000..9c32a3dd --- /dev/null +++ b/.github/workflows/pkgdown.yaml @@ -0,0 +1,83 @@ +# Workflow derived from https://github.com/r-lib/actions/tree/v2/examples +# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help +# +# Reproduce locally by running: +# ```r +# pak::pak(c("any::pkgdown", "."), dependencies = "Config/Needs/website") +# pkgdown::build_site() +# ``` +on: + push: + branches: [main, master] + paths: + - 'README.Rmd' + - 'README.md' + - 'index.Rmd' + - 'index.md' + - 'man/**' + - 'vignettes/**' + - '_pkgdown.yml' + - 'pkgdown/**' + - 'DESCRIPTION' + - '.Rbuildignore' + - '.github/**' + pull_request: + paths: + - 'README.Rmd' + - 'README.md' + - 'index.Rmd' + - 'index.md' + - 'man/**' + - 'vignettes/**' + - '_pkgdown.yml' + - 'pkgdown/**' + - 'DESCRIPTION' + - '.Rbuildignore' + - '.github/**' + release: + types: [published] + workflow_dispatch: + +name: pkgdown + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +jobs: + pkgdown: + runs-on: ubuntu-latest + env: + GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} + permissions: + contents: write + steps: + - uses: actions/checkout@v3 + + - uses: r-lib/actions/setup-pandoc@v2 + + - uses: r-lib/actions/setup-r@v2 + with: + use-public-rspm: true + + - uses: r-lib/actions/setup-r-dependencies@v2 + with: + extra-packages: any::pkgdown, local::. + needs: website + + - name: Build site + run: pkgdown::build_site_github_pages(new_process = FALSE, install = FALSE) + shell: Rscript {0} + + - name: Deploy to GitHub pages 🚀 + if: github.event_name != 'pull_request' + uses: JamesIves/github-pages-deploy-action@4.1.4 + with: + # We clean on releases because we want to remove old vignettes, + # figures, etc. that have been deleted from the `main` branch. + # But we clean ONLY on releases because we want to be able to keep + # both the 'stable' and 'dev' websites. + # Also discussed in https://github.com/r-lib/actions/issues/484 + clean: ${{ github.event_name == 'release' }} + branch: gh-pages + folder: docs diff --git a/.github/workflows/render_readme.yml b/.github/workflows/render_readme.yml new file mode 100644 index 00000000..ac99bd45 --- /dev/null +++ b/.github/workflows/render_readme.yml @@ -0,0 +1,88 @@ +# Reproduce locally by running: +# ```r +# pak::pak(c("any::rmarkdown", "any::usethis", ".")) +# writeLines( +# knitr::knit_expand( +# "README.Rmd", +# packagename = read.dcf("DESCRIPTION", "Package"), +# gh_repo = usethis:::github_remote_list()$repo_spec +# ), +# "README_expanded.Rmd" +# ) +# rmarkdown::render( +# "README_expanded.Rmd", +# output_file = "README.md", +# output_dir = "." +# ) +# unlink("README_expanded.Rmd") +# ``` +name: render-readme + +# Controls when the action will run. Triggers include: +# +# - button trigger from github action page +# - on changes to readme.Rmd + +on: + workflow_dispatch: + push: + paths: + - 'README.Rmd' + - '.github/workflows/render_readme.yml' + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +# A workflow run is made up of one or more jobs that can run sequentially or in parallel +jobs: + render-readme: + runs-on: ubuntu-latest + env: + GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} + steps: + - name: Checkout repos + uses: actions/checkout@v3 + + - name: Setup R + uses: r-lib/actions/setup-r@v2 + with: + use-public-rspm: true + + - name: Setup pandoc + uses: r-lib/actions/setup-pandoc@v2 + + - name: Install dependencies + uses: r-lib/actions/setup-r-dependencies@v2 + with: + extra-packages: any::rmarkdown, local::. + + - name: Compile the readme + run: | + writeLines( + knitr::knit_expand( + "README.Rmd", + packagename = read.dcf("DESCRIPTION", "Package"), + gh_repo = Sys.getenv("GITHUB_REPOSITORY") + ), + "README_expanded.Rmd" + ) + rmarkdown::render( + "README_expanded.Rmd", + output_file = "README.md", + output_dir = "." + ) + shell: Rscript {0} + + - name: Commit files + run: | + git config --local user.email "action@github.com" + git config --local user.name "GitHub Action" + git add README.md + # Also add README figures if they exist + if [ -d man/figures ] + then + git add man/figures/ + fi + git diff-index --quiet HEAD || git commit -m "Automatic readme update" + git push origin || echo "No changes to push" diff --git a/.github/workflows/test-coverage.yaml b/.github/workflows/test-coverage.yaml new file mode 100644 index 00000000..40c8bb4f --- /dev/null +++ b/.github/workflows/test-coverage.yaml @@ -0,0 +1,54 @@ +# Workflow derived from https://github.com/r-lib/actions/tree/v2/examples +# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help +# +# Reproduce locally by running: +# ```r +# pak::pak("any::covr", dependencies = "Config/Needs/coverage") +# covr::codecov(quiet = FALSE) +# ``` +on: + push: + branches: [main, master] + paths: + - 'R/**' + - 'src/**' + - 'tests/**' + - 'inst/**' + - 'DESCRIPTION' + - '.github/workflows/test-coverage.yaml' + pull_request: + paths: + - 'R/**' + - 'src/**' + - 'tests/**' + - 'inst/**' + - 'DESCRIPTION' + - '.github/workflows/test-coverage.yaml' + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +name: test-coverage + +jobs: + test-coverage: + runs-on: ubuntu-latest + env: + GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} + + steps: + - uses: actions/checkout@v3 + + - uses: r-lib/actions/setup-r@v2 + with: + use-public-rspm: true + + - uses: r-lib/actions/setup-r-dependencies@v2 + with: + extra-packages: any::covr + needs: coverage + + - name: Test coverage + run: covr::codecov(quiet = FALSE) + shell: Rscript {0} diff --git a/.github/workflows/update-citation-cff.yaml b/.github/workflows/update-citation-cff.yaml new file mode 100644 index 00000000..3b006e99 --- /dev/null +++ b/.github/workflows/update-citation-cff.yaml @@ -0,0 +1,55 @@ +# Workflow derived from https://github.com/r-lib/actions/tree/master/examples +# The action runs when: +# - A new release is published +# - The DESCRIPTION or inst/CITATION are modified +# - Can be run manually +# For customizing the triggers, visit https://docs.github.com/en/actions/learn-github-actions/events-that-trigger-workflows +on: + release: + types: [published] + push: + paths: + - DESCRIPTION + - inst/CITATION + - .github/workflows/update-citation-cff.yaml + workflow_dispatch: + +name: Update CITATION.cff + +jobs: + update-citation-cff: + runs-on: ubuntu-latest + env: + GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} + steps: + - uses: actions/checkout@v3 + - uses: r-lib/actions/setup-r@v2 + - uses: r-lib/actions/setup-r-dependencies@v2 + with: + extra-packages: | + any::cffr + any::V8 + + - name: Update CITATION.cff + run: | + + library(cffr) + + # Customize with your own code + # See https://docs.ropensci.org/cffr/articles/cffr.html + + # Write your own keys + mykeys <- list() + + # Create your CITATION.cff file + cff_write(keys = mykeys) + + shell: Rscript {0} + + - name: Commit results + run: | + git config --local user.email "action@github.com" + git config --local user.name "GitHub Action" + git add CITATION.cff + git commit -m 'Update CITATION.cff' || echo "No changes to commit" + git push origin || echo "No changes to commit" diff --git a/.gitignore b/.gitignore new file mode 100644 index 00000000..3c268c1b --- /dev/null +++ b/.gitignore @@ -0,0 +1,52 @@ +# History files +.Rhistory +.Rapp.history + +# Session Data files +.RData +.RDataTmp + +# User-specific files +.Ruserdata + +# Example code in package build process +*-Ex.R + +# Output files from R CMD build +/*.tar.gz + +# Output files from R CMD check +/*.Rcheck/ + +# RStudio files +.Rproj.user/ + +# produced vignettes +vignettes/*.html +vignettes/*.pdf + +# OAuth2 token, see https://github.com/hadley/httr/releases/tag/v0.3 +.httr-oauth + +# knitr and R markdown default cache directories +*_cache/ +/cache/ + +# Temporary files created by R markdown +*.utf8.md +*.knit.md + +# R Environment Variables +.Renviron + +# pkgdown site +docs/ + +# translation temp files +po/*~ + +# RStudio Connect folder +rsconnect/ + +# macOS hidden files +.DS_Store diff --git a/.lintr b/.lintr new file mode 100644 index 00000000..e2ca0f34 --- /dev/null +++ b/.lintr @@ -0,0 +1,16 @@ +linters: linters_with_tags( + tags = NULL, # include all linters + object_name_linter = NULL, + undesirable_function_linter = NULL, + implicit_integer_linter = NULL, + extraction_operator_linter = NULL, + todo_comment_linter = NULL, + function_argument_linter = NULL, + indentation_linter = NULL, # unstable as of lintr 3.1.0 + # Use minimum R declared in DESCRIPTION or fall back to current R version. + # Install etdev package from https://github.com/epiverse-trace/etdev + backport_linter(if (length(x <- etdev::extract_min_r_version())) x else getRversion()) + ) +exclusions: list( + "tests/testthat.R" = list(unused_import_linter = Inf) + ) diff --git a/DESCRIPTION b/DESCRIPTION new file mode 100644 index 00000000..73221d2d --- /dev/null +++ b/DESCRIPTION @@ -0,0 +1,31 @@ +Package: packagetemplate +Title: Your Package Title in Titlecase +Version: 0.0.1 +Authors@R: c( + person(given = "Thibaut", family = "Jombart", , email = "thibaut@data.org", role = c("aut", "cre")), + person(given = "Avinash", family = "Laddha", , email = "avinash@data.org", role = c("aut")), + person(given = "James M.", family = "Azam", , email = "james.azam@lshtm.ac.uk", role = c("aut"), + comment = c(ORCID = "https://orcid.org/0000-0001-5782-7330")), + person(given = "Jaime A.", family = "Pavlich-Mariscal", , email = "jpavlich@javeriana.edu.co", role = c("ctb"), + comment = c(ORCID = "https://orcid.org/0000-0002-3892-6680")), + person(given = "Pratik", family = "Gupte", email = "pratik.gupte@lshtm.ac.uk", role = c("aut"), + comment = c(ORCID = "https://orcid.org/0000-0001-5294-7819")), + person(given = "Joshua W.", family = "Lambert", email = "joshua.lambert@lshtm.ac.uk", role = c("aut"), + comment = c(ORCID = "0000-0001-5218-3046")), + person(given = "Hugo", family = "Gruson", email = "hugo.gruson+R@normalesup.org", role = c("aut"), + comment = c(ORCID = "https://orcid.org/0000-0002-4094-1476")) + ) +Description: Your package description. It must end with a period (".") and + include relevant bibliographical references if applicable, using the + following format: Author et al. (2023) . +License: MIT + file LICENSE +Encoding: UTF-8 +Roxygen: list(markdown = TRUE) +RoxygenNote: 7.2.3 +Suggests: + spelling, + testthat (>= 3.0.0) +Config/testthat/edition: 3 +Config/Needs/website: + epiverse-trace/epiversetheme +Language: en-US diff --git a/LICENSE b/LICENSE new file mode 100644 index 00000000..23b0b054 --- /dev/null +++ b/LICENSE @@ -0,0 +1,2 @@ +YEAR: 2022 +COPYRIGHT HOLDER: readepi authors diff --git a/LICENSE.md b/LICENSE.md new file mode 100644 index 00000000..c291f35b --- /dev/null +++ b/LICENSE.md @@ -0,0 +1,21 @@ +# MIT License + +Copyright (c) 2022 readepi authors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/NAMESPACE b/NAMESPACE new file mode 100644 index 00000000..6ae92683 --- /dev/null +++ b/NAMESPACE @@ -0,0 +1,2 @@ +# Generated by roxygen2: do not edit by hand + diff --git a/R/dev-utils.R b/R/dev-utils.R new file mode 100644 index 00000000..55979aa2 --- /dev/null +++ b/R/dev-utils.R @@ -0,0 +1,9 @@ +# This unexported function adds a custom item to `usethis::use_release_issue()` +release_bullets <- function() { + + c( + "Run `goodpractice::gp()`", + "Review [WORDLIST](https://docs.cran.dev/spelling#wordlist)" + ) + +} diff --git a/README.Rmd b/README.Rmd new file mode 100644 index 00000000..2573197b --- /dev/null +++ b/README.Rmd @@ -0,0 +1,68 @@ +--- +output: github_document +--- + + + + + + + + +```{r, include = FALSE} +knitr::opts_chunk$set( + collapse = TRUE, + comment = "#>", + fig.path = "man/figures/README-", + out.width = "100%" +) +``` + +# {{ packagename }} + + +[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/license/mit/) +[![R-CMD-check](https://github.com/{{ gh_repo }}/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/{{ gh_repo }}/actions/workflows/R-CMD-check.yaml) +[![Codecov test coverage](https://codecov.io/gh/{{ gh_repo }}/branch/main/graph/badge.svg)](https://app.codecov.io/gh/{{ gh_repo }}?branch=main) +[![lifecycle-concept](https://raw.githubusercontent.com/reconverse/reconverse.github.io/master/images/badge-concept.svg)](https://www.reconverse.org/lifecycle.html#concept) + + +{{ packagename }} provides functions to .... + + +{{ packagename }} is developed at the [CENTER|similar](url) at the [UNIVERSITY|similar](url) as part of the [Epiverse-TRACE program](https://data.org/initiatives/epiverse/). + +## Installation + +You can install the development version of {{ packagename }} from +[GitHub](https://github.com/) with: + +``` r +# install.packages("pak") +pak::pak("{{ gh_repo }}") +``` + +## Example + +These examples illustrate some of the current functionalities + + +## Development + +### Lifecycle + +This package is currently a *concept*, as defined by the [RECON software +lifecycle](https://www.reconverse.org/lifecycle.html). This means that essential +features and mechanisms are still being developed, and the package is not ready +for use outside of the development team. + + +### Contributions + +Contributions are welcome via [pull requests](https://github.com/{{ gh_repo }}/pulls). + +### Code of Conduct + +Please note that the {{ packagename }} project is released with a +[Contributor Code of Conduct](https://github.com/epiverse-trace/.github/blob/main/CODE_OF_CONDUCT.md). +By contributing to this project, you agree to abide by its terms. diff --git a/README.md b/README.md new file mode 100644 index 00000000..f16be874 --- /dev/null +++ b/README.md @@ -0,0 +1,61 @@ + + + + + + + +# {{ packagename }} + + + +[![License: +MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/license/mit/) +[![R-CMD-check](https://github.com/%7B%7B%20gh_repo%20%7D%7D/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/%7B%7B%20gh_repo%20%7D%7D/actions/workflows/R-CMD-check.yaml) +[![Codecov test +coverage](https://codecov.io/gh/%7B%7B%20gh_repo%20%7D%7D/branch/main/graph/badge.svg)](https://app.codecov.io/gh/%7B%7B%20gh_repo%20%7D%7D?branch=main) +[![lifecycle-concept](https://raw.githubusercontent.com/reconverse/reconverse.github.io/master/images/badge-concept.svg)](https://www.reconverse.org/lifecycle.html#concept) + + +{{ packagename }} provides functions to …. + + + +{{ packagename }} is developed at the [CENTER\|similar](url) at the +[UNIVERSITY\|similar](url) as part of the [Epiverse-TRACE +program](https://data.org/initiatives/epiverse/). + +## Installation + +You can install the development version of {{ packagename }} from +[GitHub](https://github.com/) with: + +``` r +# install.packages("pak") +pak::pak("{{ gh_repo }}") +``` + +## Example + +These examples illustrate some of the current functionalities + +## Development + +### Lifecycle + +This package is currently a *concept*, as defined by the [RECON software +lifecycle](https://www.reconverse.org/lifecycle.html). This means that +essential features and mechanisms are still being developed, and the +package is not ready for use outside of the development team. + +### Contributions + +Contributions are welcome via [pull +requests](https://github.com/%7B%7B%20gh_repo%20%7D%7D/pulls). + +### Code of Conduct + +Please note that the {{ packagename }} project is released with a +[Contributor Code of +Conduct](https://github.com/epiverse-trace/.github/blob/main/CODE_OF_CONDUCT.md). +By contributing to this project, you agree to abide by its terms. diff --git a/_pkgdown.yml b/_pkgdown.yml new file mode 100644 index 00000000..c707a0a8 --- /dev/null +++ b/_pkgdown.yml @@ -0,0 +1,3 @@ +url: ~ +template: + package: epiversetheme diff --git a/codecov.yml b/codecov.yml new file mode 100644 index 00000000..04c55859 --- /dev/null +++ b/codecov.yml @@ -0,0 +1,14 @@ +comment: false + +coverage: + status: + project: + default: + target: auto + threshold: 1% + informational: true + patch: + default: + target: auto + threshold: 1% + informational: true diff --git a/inst/WORDLIST b/inst/WORDLIST new file mode 100644 index 00000000..11bc4fe3 --- /dev/null +++ b/inst/WORDLIST @@ -0,0 +1,19 @@ +CMD +Codecov +Epiverse +Lifecycle +Titlecase +al +codecov +doi +et +gh +github +https +io +lifecycle +packagename +repo +svg +yaml +zenodo diff --git a/man/figures/logo.svg b/man/figures/logo.svg new file mode 100644 index 00000000..b1a2f553 --- /dev/null +++ b/man/figures/logo.svg @@ -0,0 +1,1600 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +name + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spelling.R b/tests/spelling.R new file mode 100644 index 00000000..647406c2 --- /dev/null +++ b/tests/spelling.R @@ -0,0 +1,7 @@ +if (requireNamespace("spelling", quietly = TRUE)) { + spelling::spell_check_test( + vignettes = TRUE, + error = TRUE, + skip_on_cran = TRUE + ) +} diff --git a/tests/testthat.R b/tests/testthat.R new file mode 100644 index 00000000..ce76d3ed --- /dev/null +++ b/tests/testthat.R @@ -0,0 +1,12 @@ +# This file is part of the standard setup for testthat. +# It is recommended that you do not modify it. +# +# Where should you do additional test configuration? +# Learn more about the roles of various files in: +# * https://r-pkgs.org/testing-design.html#sec-tests-files-overview +# * https://testthat.r-lib.org/articles/special-files.html + +library(testthat) +library(packagetemplate) + +test_check("packagetemplate") diff --git a/tests/testthat/setup-options.R b/tests/testthat/setup-options.R new file mode 100644 index 00000000..4ca3f1c0 --- /dev/null +++ b/tests/testthat/setup-options.R @@ -0,0 +1,7 @@ +# We want to flag partial matching as part of our testing & continuous +# integration process because it makes code more brittle. +options( + warnPartialMatchAttr = TRUE, + warnPartialMatchDollar = TRUE, + warnPartialMatchArgs = TRUE +)