From 6f96ad2857a23574dd453087f7a6a732d2a73316 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Revilla?= Date: Thu, 11 Dec 2025 14:53:38 +0100 Subject: [PATCH 01/16] Test are "fixed" to pass --- tests/testthat/_snaps/card.md | 6 +++--- tests/testthat/_snaps/render_table.md | 2 +- tests/testthat/test-utils.R | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/tests/testthat/_snaps/card.md b/tests/testthat/_snaps/card.md index dc83597..ab4e274 100644 --- a/tests/testthat/_snaps/card.md +++ b/tests/testthat/_snaps/card.md @@ -1,4 +1,4 @@ -# Card is created with the expected components depending on arguments: only has title if no other argument is set +# Card is created with the expected components depending on arguments / only has title if no other argument is set Code create_info_card("test title") @@ -7,7 +7,7 @@

test title

-# Card is created with the expected components depending on arguments: has title and header +# Card is created with the expected components depending on arguments / has title and header Code create_info_card(title = "test title", header = "Information header") @@ -17,7 +17,7 @@

test title

-# Card is created with the expected components depending on arguments: has all arguments set +# Card is created with the expected components depending on arguments / has all arguments set Code create_info_card(title = "test title", header = "Information header", text = "Extra test") diff --git a/tests/testthat/_snaps/render_table.md b/tests/testthat/_snaps/render_table.md index 85ef369..5712ff7 100644 --- a/tests/testthat/_snaps/render_table.md +++ b/tests/testthat/_snaps/render_table.md @@ -1,4 +1,4 @@ -# Namespace table is created: It is created by without error from existing example package assessment +# Namespace table is created / It is created by without error from existing example package assessment Code prepare_namespace_table(example_assessment) diff --git a/tests/testthat/test-utils.R b/tests/testthat/test-utils.R index 1120812..90e5ba7 100644 --- a/tests/testthat/test-utils.R +++ b/tests/testthat/test-utils.R @@ -6,7 +6,7 @@ test_that("include_exclude_from works", { }) test_that("All riskmetric:::pkg_ref_class_hierarchy have value to display in our report", { - allowed_names <- unlist(riskmetric:::pkg_ref_class_hierarchy) + allowed_names <- unlist(riskmetric::pkg_ref_class_hierarchy) expect_true(all(!is.na(sapply(allowed_names, get_pkg_origin)))) }) From be6dd88d7a0acccb4c964a4c92e944cf747e6d52 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Revilla?= Date: Thu, 11 Dec 2025 14:53:57 +0100 Subject: [PATCH 02/16] Simplify code to avoid using latest R functions --- R/utils.R | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/R/utils.R b/R/utils.R index 2982a94..2918d7a 100644 --- a/R/utils.R +++ b/R/utils.R @@ -23,10 +23,11 @@ fill_in <- function(list, names) { } output_dir <- function() { - opt <- getOption("valreport_output_dir", default = NULL) - env <- Sys.getenv("VALREPORT_OUTPUT_DIR", unset = getwd()) - - opt %||% env + getOption("valreport_output_dir", + default = Sys.getenv("VALREPORT_OUTPUT_DIR", + unset = getwd() + ) + ) } rendering_dir <- function() { From 92cf0dad9d9262632cac648063bf5c144167b8b6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Revilla?= Date: Thu, 8 Jan 2026 15:23:48 +0100 Subject: [PATCH 03/16] Update tests to reduce errors --- tests/testthat/test-report.R | 6 +++--- tests/testthat/test-utils.R | 2 +- val.report.Rproj | 1 + 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/tests/testthat/test-report.R b/tests/testthat/test-report.R index 1bdabdd..0b0121d 100644 --- a/tests/testthat/test-report.R +++ b/tests/testthat/test-report.R @@ -9,8 +9,8 @@ describe("Run test for the report", { withr::local_options("valreport_output_dir" = tmp_folder) it("should be generated in all formats", { - expect_no_error({ - pr <- package_report( + expect_no_error( + package_report( package_name = "dplyr", package_version = "1.1.4", params = list( @@ -19,7 +19,7 @@ describe("Run test for the report", { quiet = TRUE, output_format = "all" ) - }) + ) }) }) diff --git a/tests/testthat/test-utils.R b/tests/testthat/test-utils.R index 90e5ba7..1120812 100644 --- a/tests/testthat/test-utils.R +++ b/tests/testthat/test-utils.R @@ -6,7 +6,7 @@ test_that("include_exclude_from works", { }) test_that("All riskmetric:::pkg_ref_class_hierarchy have value to display in our report", { - allowed_names <- unlist(riskmetric::pkg_ref_class_hierarchy) + allowed_names <- unlist(riskmetric:::pkg_ref_class_hierarchy) expect_true(all(!is.na(sapply(allowed_names, get_pkg_origin)))) }) diff --git a/val.report.Rproj b/val.report.Rproj index 9575346..679f4cb 100644 --- a/val.report.Rproj +++ b/val.report.Rproj @@ -19,4 +19,5 @@ StripTrailingWhitespace: Yes BuildType: Package PackageUseDevtools: Yes PackageInstallArgs: --no-multiarch --with-keep.source +PackageCheckArgs: --as-cran PackageRoxygenize: rd,collate,namespace From 3b6716355ed4d084f15b31d94cfd5809b3bffbf4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Revilla?= Date: Thu, 8 Jan 2026 15:53:28 +0100 Subject: [PATCH 04/16] Build in a tempdir to avoid issues --- R/reporter.R | 4 +++- man/package_report.Rd | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/R/reporter.R b/R/reporter.R index d33e41d..501ff65 100644 --- a/R/reporter.R +++ b/R/reporter.R @@ -13,12 +13,14 @@ #' calling function `riskmetric::pkg_ref` before the risk assessment is executed #' @export #' @examples +#' options("valreport_output_dir" = tempdir()) #' pr <- package_report( #' package_name = "dplyr", #' package_version = "1.1.4", #' params = list( #' assessment_path = system.file("assessments/dplyr.rds", package = "val.report"), -#' image = "rhub/ref-image") +#' image = "rhub/ref-image"), +#' quiet = FALSE #' ) #' pr #' file.remove(pr) diff --git a/man/package_report.Rd b/man/package_report.Rd index 2416e7f..473576a 100644 --- a/man/package_report.Rd +++ b/man/package_report.Rd @@ -40,12 +40,14 @@ Please include source as part of \code{params} content. Source is returned after calling function \code{riskmetric::pkg_ref} before the risk assessment is executed } \examples{ +options("valreport_output_dir" = tempdir()) pr <- package_report( package_name = "dplyr", package_version = "1.1.4", params = list( assessment_path = system.file("assessments/dplyr.rds", package = "val.report"), - image = "rhub/ref-image") + image = "rhub/ref-image"), + quiet = FALSE ) pr file.remove(pr) From 6537bb0ab74f533351fe8cfd84cacb0d589d0074 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Revilla?= Date: Thu, 15 Jan 2026 10:50:17 +0100 Subject: [PATCH 05/16] Use LaTeX instead of typst --- inst/report/package/pkg_template.qmd | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/inst/report/package/pkg_template.qmd b/inst/report/package/pkg_template.qmd index a4151e9..22b0f4d 100644 --- a/inst/report/package/pkg_template.qmd +++ b/inst/report/package/pkg_template.qmd @@ -22,13 +22,16 @@ format: light: [default, custom.scss, custom_light.scss] gfm: html-math-method: webtex - typst: + pdf: toc: true - section-numbering: 1.1.1 - df-print: default - margin: - x: 2cm - y: 2cm + number-depth: 3 + # typst: + # toc: true + # section-numbering: 1.1.1 + # df-print: default + # margin: + # x: 2cm + # y: 2cm filters: - foldable_code.lua --- From 5904972cf5b25d68b6abfdf85249e01d335faed8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Revilla?= Date: Thu, 15 Jan 2026 11:09:37 +0100 Subject: [PATCH 06/16] Fix CI? --- .github/workflows/R-CMD-check.yaml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/.github/workflows/R-CMD-check.yaml b/.github/workflows/R-CMD-check.yaml index cb8cb48..06b1eed 100644 --- a/.github/workflows/R-CMD-check.yaml +++ b/.github/workflows/R-CMD-check.yaml @@ -25,7 +25,7 @@ jobs: - uses: r-lib/actions/setup-r-dependencies@v2 with: - extra-packages: any::rcmdcheck + extra-packages: any::rcmdcheck, any::pak needs: check - uses: quarto-dev/quarto-actions/setup@v2 @@ -34,6 +34,12 @@ jobs: with: tinytex: true + # Install package locally so that checks can find the assessment + - name: Install package + shell: Rscript {0} + run: | + pak::pak() + - uses: r-lib/actions/check-r-package@v2 with: upload-snapshots: true From f22a2c7f99a2e8c3ca0702496f54140d10d0c468 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Revilla?= Date: Thu, 15 Jan 2026 11:15:02 +0100 Subject: [PATCH 07/16] Try a different method to install and verify installation job --- .github/workflows/R-CMD-check.yaml | 2 ++ DESCRIPTION | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/R-CMD-check.yaml b/.github/workflows/R-CMD-check.yaml index 06b1eed..a5600f4 100644 --- a/.github/workflows/R-CMD-check.yaml +++ b/.github/workflows/R-CMD-check.yaml @@ -39,6 +39,8 @@ jobs: shell: Rscript {0} run: | pak::pak() + devtools::install() + packageVersion("val.report") - uses: r-lib/actions/check-r-package@v2 with: diff --git a/DESCRIPTION b/DESCRIPTION index 7c2d471..f97fe60 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,6 +1,6 @@ Package: val.report Title: Validation Reports -Version: 0.0.0.9006 +Version: 0.0.0.9007 Authors@R: c( person("LluĂ­s", "Revilla Sancho", , "lluis.revilla_sancho@roche.com", role = c("aut", "cre"), comment = c(ORCID = "0000-0001-9747-2570")), From fb62470b8057947a1583bf482c35445758238420 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Revilla?= Date: Thu, 15 Jan 2026 11:20:03 +0100 Subject: [PATCH 08/16] Fix slash for linux too? --- R/reporter.R | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/R/reporter.R b/R/reporter.R index 501ff65..52f602d 100644 --- a/R/reporter.R +++ b/R/reporter.R @@ -60,9 +60,9 @@ package_report <- function( package = "val.report") } - params$package <- normalizePath(params$package, mustWork = FALSE) + params$package <- normalizePath(params$package, mustWork = FALSE, winslash = "/") if (!is.null(params$assessment_path)) { - params$assessment_path <- normalizePath(params$assessment_path, mustWork = TRUE) + params$assessment_path <- normalizePath(params$assessment_path, mustWork = TRUE, winslash = "/") } # Bug on https://github.com/quarto-dev/quarto-cli/issues/5765 From 08b35ad29fe1cfefab16482b96199c1220b22495 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Revilla?= Date: Thu, 15 Jan 2026 11:29:52 +0100 Subject: [PATCH 09/16] Check path is a path not an empty string --- R/reporter.R | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/R/reporter.R b/R/reporter.R index 52f602d..aa7b280 100644 --- a/R/reporter.R +++ b/R/reporter.R @@ -61,11 +61,11 @@ package_report <- function( } params$package <- normalizePath(params$package, mustWork = FALSE, winslash = "/") - if (!is.null(params$assessment_path)) { + if (!is.null(params$assessment_path) || !nzchar(params$assessment_path)) { params$assessment_path <- normalizePath(params$assessment_path, mustWork = TRUE, winslash = "/") } - # Bug on https://github.com/quarto-dev/quarto-cli/issues/5765 + # Bug on https://github.com/quarto-dev/quarto-cli/issues/5765 v <- quarto::quarto_version() if (v < package_version("1.7.13")) { warning("Please install the latest (devel) version of Quarto") From b9d50bb6e166d490df677fbb30379640bd7fde92 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Revilla?= Date: Thu, 15 Jan 2026 12:01:57 +0100 Subject: [PATCH 10/16] Improve checks on template directory --- .github/workflows/R-CMD-check.yaml | 2 ++ R/reporter.R | 8 +++++--- man/package_report.Rd | 2 +- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/.github/workflows/R-CMD-check.yaml b/.github/workflows/R-CMD-check.yaml index a5600f4..90f36cf 100644 --- a/.github/workflows/R-CMD-check.yaml +++ b/.github/workflows/R-CMD-check.yaml @@ -41,6 +41,8 @@ jobs: pak::pak() devtools::install() packageVersion("val.report") + base::system.file("report/package", package = "val.report") + base::system.file("assessments/dplyr.rds", package = "val.report") - uses: r-lib/actions/check-r-package@v2 with: diff --git a/R/reporter.R b/R/reporter.R index aa7b280..613860f 100644 --- a/R/reporter.R +++ b/R/reporter.R @@ -3,7 +3,7 @@ #' @param package_name Package name. #' @param package_version Package version number. #' @param package Path where to find a package source to retrieve name and version number. -#' @param template_path Path to a custom quarto template file +#' @param template_path Path to a directory with one quarto template file (and the files required for rendering it). #' @param output_format Output format for the report. Default is "all". #' @param params A list of execute parameters passed to the template #' @param ... Additional arguments passed to `quarto::quarto_render()` @@ -55,9 +55,11 @@ package_report <- function( params$package_version <- package_version params$image <- get_image_name(params) - if (is.null(template_path)) { - template_path <- system.file("report/pkg_template.qmd", + if (is.null(template_path) || !nzchar(template_path)) { + template_path <- system.file("report/package", package = "val.report") + } else if (!dir.exists(template_path)) { + stop("Template directory is not available") } params$package <- normalizePath(params$package, mustWork = FALSE, winslash = "/") diff --git a/man/package_report.Rd b/man/package_report.Rd index 473576a..9b69335 100644 --- a/man/package_report.Rd +++ b/man/package_report.Rd @@ -21,7 +21,7 @@ package_report( \item{package}{Path where to find a package source to retrieve name and version number.} -\item{template_path}{Path to a custom quarto template file} +\item{template_path}{Path to a directory with one quarto template file (and the files required for rendering it).} \item{output_format}{Output format for the report. Default is "all".} From f3b12ca768a86fa476b8b8d089781f0337eb8e70 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Revilla?= Date: Thu, 15 Jan 2026 12:14:43 +0100 Subject: [PATCH 11/16] Add riskmetric assessment file for examples --- inst/assessments/dplyr.rds | Bin 0 -> 72015 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 inst/assessments/dplyr.rds diff --git a/inst/assessments/dplyr.rds b/inst/assessments/dplyr.rds new file mode 100644 index 0000000000000000000000000000000000000000..275c8f31edeca3b8caad66b272f512975795a12b GIT binary patch literal 72015 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 literal 0 HcmV?d00001 From 849d1404ffd255d8e1e0e35e250e30c0290f99f7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Revilla?= Date: Thu, 15 Jan 2026 12:29:46 +0100 Subject: [PATCH 12/16] Clean up and Minor tweaks from feedback from val.pipeline Close #44 --- .github/workflows/R-CMD-check.yaml | 10 ---------- R/render_table.R | 2 +- inst/report/package/pkg_template.qmd | 1 - 3 files changed, 1 insertion(+), 12 deletions(-) diff --git a/.github/workflows/R-CMD-check.yaml b/.github/workflows/R-CMD-check.yaml index 90f36cf..e355476 100644 --- a/.github/workflows/R-CMD-check.yaml +++ b/.github/workflows/R-CMD-check.yaml @@ -34,16 +34,6 @@ jobs: with: tinytex: true - # Install package locally so that checks can find the assessment - - name: Install package - shell: Rscript {0} - run: | - pak::pak() - devtools::install() - packageVersion("val.report") - base::system.file("report/package", package = "val.report") - base::system.file("assessments/dplyr.rds", package = "val.report") - - uses: r-lib/actions/check-r-package@v2 with: upload-snapshots: true diff --git a/R/render_table.R b/R/render_table.R index d8b13e2..7acc83a 100644 --- a/R/render_table.R +++ b/R/render_table.R @@ -13,7 +13,7 @@ prepare_namespace_table <- function(riskmetric_assessment) { value = reactable::colDef( cell = function(value) { # Please to update icons search for unicodes here: https://icons.getbootstrap.com/ - if (value) { + if (isTRUE(value)) { # Green checkmark htmltools::tags$i(class = "bi bi-check-square", style = "background-color: var(--bs-success); font-weight: bold;") } else { diff --git a/inst/report/package/pkg_template.qmd b/inst/report/package/pkg_template.qmd index 22b0f4d..3db0a30 100644 --- a/inst/report/package/pkg_template.qmd +++ b/inst/report/package/pkg_template.qmd @@ -256,7 +256,6 @@ The package uses `r if ("license" %in% names(d_riskmetric) && !is.null(d_riskmet ## Code checks -Code checks for this package are: ```{r r_cmd_check, eval=!is_risk_error(d_riskmetric[["r_cmd_check"]])} d_riskmetric[["r_cmd_check"]] From 9d0edfe6fd8a1328be041dd8fe9cfffcff84ba6f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Revilla?= Date: Thu, 15 Jan 2026 16:00:37 +0100 Subject: [PATCH 13/16] Code chunks are not displayed --- inst/report/package/pkg_template.qmd | 4 ---- 1 file changed, 4 deletions(-) diff --git a/inst/report/package/pkg_template.qmd b/inst/report/package/pkg_template.qmd index 3db0a30..75bb6c7 100644 --- a/inst/report/package/pkg_template.qmd +++ b/inst/report/package/pkg_template.qmd @@ -129,8 +129,6 @@ namespace_table <- val.report:::prepare_namespace_table(d_riskmetric) ``` -::: {.content-visible when-format="html"} - ```{r prepare_tables_dependencies} deps <- d_riskmetric$dependencies deps$package <- gsub("\\n", " ", deps$package) @@ -146,8 +144,6 @@ dependencies_table <- htmltools::div( ) ``` -::: - ```{r prepare_tables_reverse_dependencies} reverse_dependencies <- paste(d_riskmetric$reverse_dependencies, collapse = ", ") ``` From 2999235b57345f87d9960ca345bd557ef8cbf438 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Revilla?= Date: Thu, 15 Jan 2026 17:27:48 +0100 Subject: [PATCH 14/16] Minor tweaks --- R/render_table.R | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/R/render_table.R b/R/render_table.R index 7acc83a..b682fd7 100644 --- a/R/render_table.R +++ b/R/render_table.R @@ -3,10 +3,9 @@ #' @param riskmetric_assessment object coming from rismetric::pkg_assess function #' @keywords internal prepare_namespace_table <- function(riskmetric_assessment) { - namespace_table <- riskmetric_assessment$export_help[sort(riskmetric_assessment$exported_namespace)] |> - as.data.frame() - colnames(namespace_table) <- "value" - + namespace_vector <- riskmetric_assessment$export_help[sort(riskmetric_assessment$exported_namespace)] + namespace_table <- data.frame(object = names(namespace_vector), value = namespace_vector) + rownames(namespace_table) <- NULL namespace_table |> reactable::reactable( columns = list( From 560c1f4b5328bedfeb9534570d16c1114dd70bdf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Revilla?= Date: Wed, 21 Jan 2026 09:53:32 +0100 Subject: [PATCH 15/16] Fix condition --- R/reporter.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/R/reporter.R b/R/reporter.R index 613860f..42eccab 100644 --- a/R/reporter.R +++ b/R/reporter.R @@ -63,7 +63,7 @@ package_report <- function( } params$package <- normalizePath(params$package, mustWork = FALSE, winslash = "/") - if (!is.null(params$assessment_path) || !nzchar(params$assessment_path)) { + if (length(params$assessment_path) == 1L && !nzchar(params$assessment_path)) { params$assessment_path <- normalizePath(params$assessment_path, mustWork = TRUE, winslash = "/") } From 60cf1fdd53ddd558bc167c6ab54a5a27f34001e1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Revilla?= Date: Wed, 21 Jan 2026 09:54:01 +0100 Subject: [PATCH 16/16] Explaining why typst is not used (for the moment) --- inst/report/package/pkg_template.qmd | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/inst/report/package/pkg_template.qmd b/inst/report/package/pkg_template.qmd index 75bb6c7..690b107 100644 --- a/inst/report/package/pkg_template.qmd +++ b/inst/report/package/pkg_template.qmd @@ -25,7 +25,8 @@ format: pdf: toc: true number-depth: 3 - # typst: + # FIXME: Typst didn't handle well the relative paths to images + # typst: # toc: true # section-numbering: 1.1.1 # df-print: default