From 72486d02f1cc645ba305424bf12286afa1c55cbe Mon Sep 17 00:00:00 2001 From: simonpcouch Date: Thu, 24 Oct 2024 10:56:16 -0500 Subject: [PATCH 1/2] add check without packages in Suggests --- .../workflows/R-CMD-check-no-suggests.yaml | 60 +++++++++++++++++++ README.Rmd | 1 + README.md | 1 + 3 files changed, 62 insertions(+) create mode 100644 .github/workflows/R-CMD-check-no-suggests.yaml diff --git a/.github/workflows/R-CMD-check-no-suggests.yaml b/.github/workflows/R-CMD-check-no-suggests.yaml new file mode 100644 index 0000000..c06bf8f --- /dev/null +++ b/.github/workflows/R-CMD-check-no-suggests.yaml @@ -0,0 +1,60 @@ +# 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 +# +# NOTE: This workflow only directly installs "hard" dependencies, i.e. Depends, +# Imports, and LinkingTo dependencies. Notably, Suggests dependencies are never +# installed, with the exception of testthat, knitr, and rmarkdown. The cache is +# never used to avoid accidentally restoring a cache containing a suggested +# dependency. +on: + push: + branches: [main, master] + pull_request: + branches: [main, master] + +name: R-CMD-check-no-suggests.yaml + +permissions: read-all + +jobs: + check-no-suggests: + runs-on: ${{ matrix.config.os }} + + name: ${{ matrix.config.os }} (${{ matrix.config.r }}) + + strategy: + fail-fast: false + matrix: + config: + - {os: ubuntu-latest, r: 'release'} + + env: + GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} + R_KEEP_PKG_SOURCE: yes + + steps: + - uses: actions/checkout@v4 + + - 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: + dependencies: '"hard"' + cache: false + extra-packages: | + any::rcmdcheck + any::testthat + any::knitr + any::rmarkdown + needs: check + + - uses: r-lib/actions/check-r-package@v2 + with: + upload-snapshots: true + build_args: 'c("--no-manual","--compact-vignettes=gs+qpdf")' diff --git a/README.Rmd b/README.Rmd index 4e8b471..e38b127 100644 --- a/README.Rmd +++ b/README.Rmd @@ -18,6 +18,7 @@ knitr::opts_chunk$set( [![CRAN status](https://www.r-pkg.org/badges/version/shinymodels)](https://CRAN.R-project.org/package=shinymodels) [![Codecov test coverage](https://codecov.io/gh/tidymodels/shinymodels/branch/main/graph/badge.svg)](https://app.codecov.io/gh/tidymodels/shinymodels?branch=main) [![R-CMD-check](https://github.com/tidymodels/shinymodels/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/tidymodels/shinymodels/actions/workflows/R-CMD-check.yaml) +[![R-CMD-check-no-suggests](https://github.com/tidymodels/shinymodels/actions/workflows/R-CMD-check-no-suggests.yaml/badge.svg)](https://github.com/tidymodels/shinymodels/actions/workflows/R-CMD-check-no-suggests.yaml) The goal of shinymodels is to launch a Shiny app given tidymodels' tuning or resampling results, to make it easier to explore the modeling results. diff --git a/README.md b/README.md index 9a4ec05..91cb067 100644 --- a/README.md +++ b/README.md @@ -10,6 +10,7 @@ status](https://www.r-pkg.org/badges/version/shinymodels)](https://CRAN.R-projec [![Codecov test coverage](https://codecov.io/gh/tidymodels/shinymodels/branch/main/graph/badge.svg)](https://app.codecov.io/gh/tidymodels/shinymodels?branch=main) [![R-CMD-check](https://github.com/tidymodels/shinymodels/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/tidymodels/shinymodels/actions/workflows/R-CMD-check.yaml) +[![R-CMD-check-no-suggests](https://github.com/tidymodels/shinymodels/actions/workflows/R-CMD-check-no-suggests.yaml/badge.svg)](https://github.com/tidymodels/shinymodels/actions/workflows/R-CMD-check-no-suggests.yaml) The goal of shinymodels is to launch a Shiny app given tidymodels’ From 3c03db961129a3c6a13c11f549e24fce4dbb7ce4 Mon Sep 17 00:00:00 2001 From: simonpcouch Date: Thu, 24 Oct 2024 11:10:47 -0500 Subject: [PATCH 2/2] skip dependent tests when Suggests not available --- tests/testthat/test-first_level.R | 2 ++ tests/testthat/test-first_level_prob_name.R | 2 ++ 2 files changed, 4 insertions(+) diff --git a/tests/testthat/test-first_level.R b/tests/testthat/test-first_level.R index 81529e3..fc495bc 100644 --- a/tests/testthat/test-first_level.R +++ b/tests/testthat/test-first_level.R @@ -1,3 +1,5 @@ +skip_if_not_installed("modeldata") + library(testthat) library(shinymodels) diff --git a/tests/testthat/test-first_level_prob_name.R b/tests/testthat/test-first_level_prob_name.R index 0ece6fc..2b1688e 100644 --- a/tests/testthat/test-first_level_prob_name.R +++ b/tests/testthat/test-first_level_prob_name.R @@ -1,3 +1,5 @@ +skip_if_not_installed("modeldata") + library(testthat) library(shinymodels)