From 101f1bff0d55be03a18126d04e616e23e1fab6bd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ma=C3=ABlle=20Salmon?= Date: Mon, 28 Aug 2023 12:42:50 +0200 Subject: [PATCH 01/14] fix: remove test error due to DataMask --- tests/testthat/test-dplyr.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/testthat/test-dplyr.R b/tests/testthat/test-dplyr.R index 573b1fac..4590bb6c 100644 --- a/tests/testthat/test-dplyr.R +++ b/tests/testthat/test-dplyr.R @@ -6,7 +6,7 @@ test_that("no homonyms", { names_duckplyr <- ls(duckplyr) names_common <- intersect(names_dplyr, names_duckplyr) - names_common <- setdiff(names_common, "DataMask") + names_common <- setdiff(names_common, c("DataMask", "the")) objs_dplyr <- mget(names_common, dplyr) objs_duckplyr <- mget(names_common, duckplyr) From a5e564c412b0466ca42adb313d60d982c1e95725 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ma=C3=ABlle=20Salmon?= Date: Mon, 28 Aug 2023 13:39:38 +0200 Subject: [PATCH 02/14] try sthg --- tests/testthat/setup.R | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tests/testthat/setup.R b/tests/testthat/setup.R index f3f4636a..97ea913d 100644 --- a/tests/testthat/setup.R +++ b/tests/testthat/setup.R @@ -12,3 +12,5 @@ withr::defer(envir = testthat::teardown_env(), { writeLines("") writeLines(format(hms::as_hms(Sys.time() - start))) }) + +styler::cache_deactivate() From d1746c5afef6c8208dd979e0fb63c803ec9092fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ma=C3=ABlle=20Salmon?= Date: Mon, 28 Aug 2023 13:40:40 +0200 Subject: [PATCH 03/14] fix: missing pillar dependency --- DESCRIPTION | 1 + 1 file changed, 1 insertion(+) diff --git a/DESCRIPTION b/DESCRIPTION index 96baf83a..a8eff1c0 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -40,6 +40,7 @@ Suggests: lobstr, lubridate, palmerpenguins, + pillar, prettycode, qs, testthat (>= 3.1.5), From a325899d08b74f1d42da9f3d92a161165e2cd9fb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ma=C3=ABlle=20Salmon?= Date: Mon, 28 Aug 2023 13:53:33 +0200 Subject: [PATCH 04/14] fix: add missing styler dep --- DESCRIPTION | 1 + 1 file changed, 1 insertion(+) diff --git a/DESCRIPTION b/DESCRIPTION index a8eff1c0..e3d03537 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -43,6 +43,7 @@ Suggests: pillar, prettycode, qs, + styler, testthat (>= 3.1.5), withr Encoding: UTF-8 From d470e6e2400b1e99a88bb2cb3431744a7d272fb6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ma=C3=ABlle=20Salmon?= Date: Mon, 28 Aug 2023 13:59:13 +0200 Subject: [PATCH 05/14] fix: add missing param docs --- R/relational-rel.R | 1 + man/rel_join.Rd | 2 ++ 2 files changed, 3 insertions(+) diff --git a/R/relational-rel.R b/R/relational-rel.R index 8c34a201..9c1c9111 100644 --- a/R/relational-rel.R +++ b/R/relational-rel.R @@ -126,6 +126,7 @@ rel_order <- function(rel, orders, ...) { #' @param right the right-hand-side relation object #' @param conds a list of DuckDB expressions to use for the join #' @param join type of join +#' @param join_ref_type ref type of join #' @return a new relation object resulting from the join #' @export #' @examples diff --git a/man/rel_join.Rd b/man/rel_join.Rd index bbb7e9b0..576e9757 100644 --- a/man/rel_join.Rd +++ b/man/rel_join.Rd @@ -22,6 +22,8 @@ rel_join( \item{join}{type of join} +\item{join_ref_type}{ref type of join} + \item{...}{Reserved for future extensions, must be empty.} } \value{ From e0be29427cfa0b8c8343dfef0576f93f6a2481d5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ma=C3=ABlle=20Salmon?= Date: Mon, 28 Aug 2023 14:29:41 +0200 Subject: [PATCH 06/14] rm non ASCII character --- R/stats.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/R/stats.R b/R/stats.R index 5d4da47c..1c5c296e 100644 --- a/R/stats.R +++ b/R/stats.R @@ -4,7 +4,7 @@ stats <- new_environment(list(attempts = 0L, fallback = 0L, calls = character()) stats_show <- function() { writeLines(paste0( c("\U0001f6e0", "\U0001f528", "\U0001f986"), - "️: ", + paste0(c("\u003A", " ")), format(c(stats$attempts, stats$fallback, stats$attempts - stats$fallback)) )) calls <- sort(gsub("[.]duckplyr_df", "", stats$calls)) From 58847bb94dd8a6d6b85c888f100c05ba356b45cb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ma=C3=ABlle=20Salmon?= Date: Mon, 28 Aug 2023 14:50:34 +0200 Subject: [PATCH 07/14] fix: fix my ascii fix :zany_face: --- R/stats.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/R/stats.R b/R/stats.R index 1c5c296e..398e3901 100644 --- a/R/stats.R +++ b/R/stats.R @@ -4,7 +4,7 @@ stats <- new_environment(list(attempts = 0L, fallback = 0L, calls = character()) stats_show <- function() { writeLines(paste0( c("\U0001f6e0", "\U0001f528", "\U0001f986"), - paste0(c("\u003A", " ")), + paste0("\u003A", " "), format(c(stats$attempts, stats$fallback, stats$attempts - stats$fallback)) )) calls <- sort(gsub("[.]duckplyr_df", "", stats$calls)) From 43a367530af320d86bd52388791dbe6d7cc434b1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ma=C3=ABlle=20Salmon?= Date: Mon, 28 Aug 2023 15:06:58 +0200 Subject: [PATCH 08/14] fix: add docs but with TODO for @krlmlr (or me if there's a source of info) --- R/as_duckplyr_df.R | 4 ++++ R/csv.R | 14 ++++++++++++++ R/is_duckplyr_df.R | 4 ++++ R/overwrite.R | 2 ++ R/relational-altrep-wrap.R | 8 ++++++++ R/restore.R | 2 ++ R/stats.R | 2 ++ man/as_duckplyr_df.Rd | 14 ++++++++++++++ man/duckdb_from_file.Rd | 18 ++++++++++++++++++ man/duckplyr_df_from_file.Rd | 18 ++++++++++++++++++ man/is_duckplyr_df.Rd | 14 ++++++++++++++ man/methods_overwrite.Rd | 11 +++++++++++ man/methods_restore.Rd | 11 +++++++++++ man/stats_show.Rd | 11 +++++++++++ man/wrap_df.Rd | 14 ++++++++++++++ man/wrap_integer.Rd | 14 ++++++++++++++ 16 files changed, 161 insertions(+) create mode 100644 man/as_duckplyr_df.Rd create mode 100644 man/duckdb_from_file.Rd create mode 100644 man/duckplyr_df_from_file.Rd create mode 100644 man/is_duckplyr_df.Rd create mode 100644 man/methods_overwrite.Rd create mode 100644 man/methods_restore.Rd create mode 100644 man/stats_show.Rd create mode 100644 man/wrap_df.Rd create mode 100644 man/wrap_integer.Rd diff --git a/R/as_duckplyr_df.R b/R/as_duckplyr_df.R index 1f054124..eaec2779 100644 --- a/R/as_duckplyr_df.R +++ b/R/as_duckplyr_df.R @@ -1,3 +1,7 @@ +#' Convert to a duckplyr data frame +#' +#' @param .data data frame or tibble to transform +#' #' @export as_duckplyr_df <- function(.data) { if (inherits(.data, "duckplyr_df")) { diff --git a/R/csv.R b/R/csv.R index 36a7da89..08a59fe3 100644 --- a/R/csv.R +++ b/R/csv.R @@ -1,3 +1,10 @@ +#' TODO +#' +#' @param path Path to file TODO add what kind +#' +#' @param table_function TODO +#' @param options TODO +#' #' @export duckdb_from_file <- function(path, table_function, options=list()) { # FIXME: For some reason, it's important to create an alias here @@ -15,6 +22,13 @@ duckdb_from_file <- function(path, table_function, options=list()) { duckdb:::rel_to_altrep(out) } +#' TODO +#' +#' @param path Path to file TODO add what kind +#' +#' @param table_function TODO +#' @param options TODO +#' #' @export duckplyr_df_from_file <- function(path, table_function, options=list()) { out <- duckdb_from_file(path, table_function, options) diff --git a/R/is_duckplyr_df.R b/R/is_duckplyr_df.R index 0bac784b..d5d9c431 100644 --- a/R/is_duckplyr_df.R +++ b/R/is_duckplyr_df.R @@ -1,3 +1,7 @@ +#' Class predicate for duckplyr data frames +#' +#' @param .data Data +#' #' @export is_duckplyr_df <- function(.data) { inherits(.data, "duckplyr_df") diff --git a/R/overwrite.R b/R/overwrite.R index 71c54fbd..f8536d46 100644 --- a/R/overwrite.R +++ b/R/overwrite.R @@ -1,3 +1,5 @@ +#' Methods overwriting +#' #' @export methods_overwrite <- function() { vctrs::s3_register("dplyr::add_count", "data.frame", duckplyr:::add_count.duckplyr_df) diff --git a/R/relational-altrep-wrap.R b/R/relational-altrep-wrap.R index 0ba83a32..2979234b 100644 --- a/R/relational-altrep-wrap.R +++ b/R/relational-altrep-wrap.R @@ -1,8 +1,16 @@ +#' TODO +#' +#' @param x TODO row +#' #' @export wrap_integer <- function(x) { .Call(chunkrep_wrap, x) } +#' TODO +#' +#' @param df data frame +#' #' @export wrap_df <- function(df) { stopifnot(is.data.frame(df)) diff --git a/R/restore.R b/R/restore.R index 0da1ece1..ec990123 100644 --- a/R/restore.R +++ b/R/restore.R @@ -1,3 +1,5 @@ +#' Methods restoring +#' #' @export methods_restore <- function() { vctrs::s3_register("dplyr::add_count", "data.frame", dplyr:::add_count.data.frame) diff --git a/R/stats.R b/R/stats.R index 398e3901..6e4ef16a 100644 --- a/R/stats.R +++ b/R/stats.R @@ -1,5 +1,7 @@ stats <- new_environment(list(attempts = 0L, fallback = 0L, calls = character())) +#' Show stats +#' #' @export stats_show <- function() { writeLines(paste0( diff --git a/man/as_duckplyr_df.Rd b/man/as_duckplyr_df.Rd new file mode 100644 index 00000000..a2e10c8f --- /dev/null +++ b/man/as_duckplyr_df.Rd @@ -0,0 +1,14 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/as_duckplyr_df.R +\name{as_duckplyr_df} +\alias{as_duckplyr_df} +\title{Convert to a duckplyr data frame} +\usage{ +as_duckplyr_df(.data) +} +\arguments{ +\item{.data}{data frame or tibble to transform} +} +\description{ +Convert to a duckplyr data frame +} diff --git a/man/duckdb_from_file.Rd b/man/duckdb_from_file.Rd new file mode 100644 index 00000000..a3799084 --- /dev/null +++ b/man/duckdb_from_file.Rd @@ -0,0 +1,18 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/csv.R +\name{duckdb_from_file} +\alias{duckdb_from_file} +\title{TODO} +\usage{ +duckdb_from_file(path, table_function, options = list()) +} +\arguments{ +\item{path}{Path to file TODO add what kind} + +\item{table_function}{TODO} + +\item{options}{TODO} +} +\description{ +TODO +} diff --git a/man/duckplyr_df_from_file.Rd b/man/duckplyr_df_from_file.Rd new file mode 100644 index 00000000..b66d0ea2 --- /dev/null +++ b/man/duckplyr_df_from_file.Rd @@ -0,0 +1,18 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/csv.R +\name{duckplyr_df_from_file} +\alias{duckplyr_df_from_file} +\title{TODO} +\usage{ +duckplyr_df_from_file(path, table_function, options = list()) +} +\arguments{ +\item{path}{Path to file TODO add what kind} + +\item{table_function}{TODO} + +\item{options}{TODO} +} +\description{ +TODO +} diff --git a/man/is_duckplyr_df.Rd b/man/is_duckplyr_df.Rd new file mode 100644 index 00000000..655d39d1 --- /dev/null +++ b/man/is_duckplyr_df.Rd @@ -0,0 +1,14 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/is_duckplyr_df.R +\name{is_duckplyr_df} +\alias{is_duckplyr_df} +\title{Class predicate for duckplyr data frames} +\usage{ +is_duckplyr_df(.data) +} +\arguments{ +\item{.data}{Data} +} +\description{ +Class predicate for duckplyr data frames +} diff --git a/man/methods_overwrite.Rd b/man/methods_overwrite.Rd new file mode 100644 index 00000000..51875b46 --- /dev/null +++ b/man/methods_overwrite.Rd @@ -0,0 +1,11 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/overwrite.R +\name{methods_overwrite} +\alias{methods_overwrite} +\title{Methods overwriting} +\usage{ +methods_overwrite() +} +\description{ +Methods overwriting +} diff --git a/man/methods_restore.Rd b/man/methods_restore.Rd new file mode 100644 index 00000000..3f0d65c3 --- /dev/null +++ b/man/methods_restore.Rd @@ -0,0 +1,11 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/restore.R +\name{methods_restore} +\alias{methods_restore} +\title{Methods restoring} +\usage{ +methods_restore() +} +\description{ +Methods restoring +} diff --git a/man/stats_show.Rd b/man/stats_show.Rd new file mode 100644 index 00000000..c75bb971 --- /dev/null +++ b/man/stats_show.Rd @@ -0,0 +1,11 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/stats.R +\name{stats_show} +\alias{stats_show} +\title{Show stats} +\usage{ +stats_show() +} +\description{ +Show stats +} diff --git a/man/wrap_df.Rd b/man/wrap_df.Rd new file mode 100644 index 00000000..ea8f4b73 --- /dev/null +++ b/man/wrap_df.Rd @@ -0,0 +1,14 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/relational-altrep-wrap.R +\name{wrap_df} +\alias{wrap_df} +\title{TODO} +\usage{ +wrap_df(df) +} +\arguments{ +\item{df}{data frame} +} +\description{ +TODO +} diff --git a/man/wrap_integer.Rd b/man/wrap_integer.Rd new file mode 100644 index 00000000..af92424f --- /dev/null +++ b/man/wrap_integer.Rd @@ -0,0 +1,14 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/relational-altrep-wrap.R +\name{wrap_integer} +\alias{wrap_integer} +\title{TODO} +\usage{ +wrap_integer(x) +} +\arguments{ +\item{x}{TODO row} +} +\description{ +TODO +} From 696588bfc8163026d17bc7e3038b718115901149 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ma=C3=ABlle=20Salmon?= Date: Mon, 28 Aug 2023 15:07:50 +0200 Subject: [PATCH 09/14] fix: Rbuildignore .sync --- .Rbuildignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.Rbuildignore b/.Rbuildignore index afdce2a6..489613da 100644 --- a/.Rbuildignore +++ b/.Rbuildignore @@ -9,3 +9,4 @@ ^res-duckdb\.csv$ ^\.github$ ^R/qs\.R$ +^\.sync$ From 3a7fbd34a62820030ad7c955b08332d846773e07 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ma=C3=ABlle=20Salmon?= Date: Mon, 28 Aug 2023 15:09:06 +0200 Subject: [PATCH 10/14] fix: Rbuildignore csv files of results --- .Rbuildignore | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.Rbuildignore b/.Rbuildignore index 489613da..06fdc539 100644 --- a/.Rbuildignore +++ b/.Rbuildignore @@ -10,3 +10,6 @@ ^\.github$ ^R/qs\.R$ ^\.sync$ +^res-duckplyr-raw\.csv$ +^res-duckplyr\.csv$ +^res-relational-duckdb\.csv$ From 661663d4c9884bac86e651c2e1f8d4b7fe3989b4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kirill=20M=C3=BCller?= Date: Thu, 31 Aug 2023 15:56:57 +0200 Subject: [PATCH 11/14] Build-ignore meta.R --- .Rbuildignore | 1 + R/aaa-meta.R | 6 ++++++ 2 files changed, 7 insertions(+) create mode 100644 R/aaa-meta.R diff --git a/.Rbuildignore b/.Rbuildignore index 06fdc539..88c0867d 100644 --- a/.Rbuildignore +++ b/.Rbuildignore @@ -13,3 +13,4 @@ ^res-duckplyr-raw\.csv$ ^res-duckplyr\.csv$ ^res-relational-duckdb\.csv$ +^R/meta\.R$ diff --git a/R/aaa-meta.R b/R/aaa-meta.R new file mode 100644 index 00000000..b5415c1f --- /dev/null +++ b/R/aaa-meta.R @@ -0,0 +1,6 @@ +# Overwritten in meta.R +meta_rel_register <- function(...) {} +meta_rel_register_df <- function(...) {} +meta_rel_register_file <- function(...) {} +meta_rel_get <- function(...) {} +meta_macro_register <- function(...) {} From d87f5bb221a12bc0a52ade02fc6ee19bed14db64 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kirill=20M=C3=BCller?= Date: Wed, 6 Sep 2023 06:52:48 +0200 Subject: [PATCH 12/14] Work around oldrel by manually registering --- NAMESPACE | 1 - R/filter.R | 7 ++++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/NAMESPACE b/NAMESPACE index bfdaace5..6836bdc3 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -12,7 +12,6 @@ S3method(distinct,duckplyr_df) S3method(do,duckplyr_df) S3method(dplyr_reconstruct,duckplyr_df) S3method(explain,duckplyr_df) -S3method(filter,duckplyr_df) S3method(format,relational_relexpr) S3method(full_join,duckplyr_df) S3method(group_vars,duckplyr_df) diff --git a/R/filter.R b/R/filter.R index 36ed7f3b..1ccc3f9f 100644 --- a/R/filter.R +++ b/R/filter.R @@ -1,5 +1,10 @@ # Generated by 02-duckplyr_df-methods.R -#' @export + +# Needed for R <= 4.2, can't use @export here: +on_load({ + vctrs::s3_register("dplyr::filter", "duckplyr_df") +}) + filter.duckplyr_df <- function(.data, ..., .by = NULL, .preserve = FALSE) { force(.data) From 02ca7e7825836d5e34df62fefe8db90ed1b2e4eb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kirill=20M=C3=BCller?= Date: Wed, 6 Sep 2023 22:58:14 +0200 Subject: [PATCH 13/14] Refresh all patches --- patch/distinct.patch | 8 ++++++-- patch/filter.patch | 12 +++++++++--- patch/summarise.patch | 6 ++++-- tools/02-duckplyr_df-methods.R | 8 ++++++-- 4 files changed, 25 insertions(+), 9 deletions(-) diff --git a/patch/distinct.patch b/patch/distinct.patch index d5fd047d..0aa363a9 100644 --- a/patch/distinct.patch +++ b/patch/distinct.patch @@ -1,8 +1,12 @@ diff --git b/R/distinct.R a/R/distinct.R -index 1975ca6..3538b76 100644 +index 1975ca6..3f246ab 100644 --- b/R/distinct.R +++ a/R/distinct.R -@@ -3,8 +3,62 @@ +@@ -1,10 +1,66 @@ + # Generated by 02-duckplyr_df-methods.R ++globalVariables("___row_number_by") ++ + #' @export distinct.duckplyr_df <- function(.data, ..., .keep_all = FALSE) { # Our implementation rel_try( diff --git a/patch/filter.patch b/patch/filter.patch index e3a1c3a4..673f1298 100644 --- a/patch/filter.patch +++ b/patch/filter.patch @@ -1,10 +1,16 @@ diff --git b/R/filter.R a/R/filter.R -index 4b91919..36ed7f3 100644 +index 4b91919..1ccc3f9 100644 --- b/R/filter.R +++ a/R/filter.R -@@ -1,10 +1,23 @@ +@@ -1,10 +1,28 @@ # Generated by 02-duckplyr_df-methods.R - #' @export +-#' @export ++ ++# Needed for R <= 4.2, can't use @export here: ++on_load({ ++ vctrs::s3_register("dplyr::filter", "duckplyr_df") ++}) ++ filter.duckplyr_df <- function(.data, ..., .by = NULL, .preserve = FALSE) { - # Our implementation + force(.data) diff --git a/patch/summarise.patch b/patch/summarise.patch index 2323131f..ea2d5129 100644 --- a/patch/summarise.patch +++ b/patch/summarise.patch @@ -1,9 +1,11 @@ diff --git b/R/summarise.R a/R/summarise.R -index 482068f..aea4a71 100644 +index 482068f..583d121 100644 --- b/R/summarise.R +++ a/R/summarise.R -@@ -1,10 +1,50 @@ +@@ -1,10 +1,52 @@ # Generated by 02-duckplyr_df-methods.R ++globalVariables("___row_number") ++ #' @export summarise.duckplyr_df <- function(.data, ..., .by = NULL, .groups = NULL) { - # Our implementation diff --git a/tools/02-duckplyr_df-methods.R b/tools/02-duckplyr_df-methods.R index 9ba0abee..151f00d1 100644 --- a/tools/02-duckplyr_df-methods.R +++ b/tools/02-duckplyr_df-methods.R @@ -201,14 +201,18 @@ walk(patches, ~ system(paste0("patch -p1 < ", .x))) # Stop here to overwrite files if the code generation is updated + system(paste0("git clean -f -- R")) # Collect new patches ----------------------------------------------------------------- -r_status <- gert::git_status(pathspec = "R/*.R") +r_status <- gert::git_status(pathspec = "R/*.R")$file + +# Use this to refresh all patches +# r_status <- fs::dir_ls("R", glob = "*.R") -walk(r_status$file, function(file) { +walk(r_status, function(file) { patch_path <- gsub("R/(.*)[.]R", "patch/\\1.patch", file) if (fs::file_exists(patch_path)) { system(paste0("patch -p1 -R < ", patch_path)) From dbafbddd158c79b8a08130ecf4ad4429ece65e89 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ma=C3=ABlle=20Salmon?= Date: Mon, 28 Aug 2023 13:52:43 +0200 Subject: [PATCH 14/14] ci: increase our standards :grin: --- .github/workflows/R-CMD-check.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/R-CMD-check.yaml b/.github/workflows/R-CMD-check.yaml index f9c1ffc8..64881bfb 100644 --- a/.github/workflows/R-CMD-check.yaml +++ b/.github/workflows/R-CMD-check.yaml @@ -47,4 +47,4 @@ jobs: - uses: r-lib/actions/check-r-package@v2 with: upload-snapshots: true - error-on: '"error"' + error-on: '"warning"'