Last updated on 2024-10-13 16:48:22 CEST.
Flavor | Version | Tinstall | Tcheck | Ttotal | Status | Flags |
---|---|---|---|---|---|---|
r-devel-linux-x86_64-debian-clang | 2.0.6 | 13.96 | 56.11 | 70.07 | OK | |
r-devel-linux-x86_64-debian-gcc | 2.0.6 | 10.64 | 45.84 | 56.48 | OK | |
r-devel-linux-x86_64-fedora-clang | 2.0.6 | 132.42 | OK | |||
r-devel-linux-x86_64-fedora-gcc | 2.0.6 | 122.91 | ERROR | |||
r-devel-windows-x86_64 | 2.0.6 | 22.00 | 107.00 | 129.00 | OK | |
r-patched-linux-x86_64 | 2.0.6 | 17.09 | 53.30 | 70.39 | OK | |
r-release-linux-x86_64 | 2.0.6 | 15.65 | 53.93 | 69.58 | OK | |
r-release-macos-arm64 | 2.0.6 | 52.00 | OK | |||
r-release-macos-x86_64 | 2.0.6 | 87.00 | OK | |||
r-release-windows-x86_64 | 2.0.6 | 23.00 | 103.00 | 126.00 | OK | |
r-oldrel-macos-arm64 | 2.0.6 | 54.00 | OK | |||
r-oldrel-macos-x86_64 | 2.0.6 | 98.00 | OK | |||
r-oldrel-windows-x86_64 | 2.0.6 | 23.00 | 116.00 | 139.00 | OK |
Version: 2.0.6
Check: tests
Result: ERROR
Running ‘testthat.R’
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
> library(testthat)
> library(fedmatch)
>
> test_check("fedmatch")
*** caught segfault ***
address 0x1, cause 'memory not mapped'
Traceback:
1: (function (x, table, nomatch = NA_integer_, matchNA = TRUE, method = c("osa", "lv", "dl", "hamming", "lcs", "qgram", "cosine", "jaccard", "jw", "soundex"), useBytes = FALSE, weight = c(d = 1, i = 1, s = 1, t = 1), maxDist = 0.1, q = 1, p = 0, bt = 0, nthread = getOption("sd_num_thread")) { x <- as.character(x) table <- as.character(table) if (!useBytes) { x <- enc2utf8(x) table <- enc2utf8(table) } method <- match.arg(method) stopifnot(all(is.finite(weight)), all(weight > 0), all(weight <= 1), q >= 0, p <= 0.25, p >= 0, matchNA %in% c(TRUE, FALSE), maxDist > 0, is.logical(useBytes), ifelse(method %in% c("osa", "dl"), length(weight) >= 4, TRUE), ifelse(method %in% c("lv", "jw"), length(weight) >= 3, TRUE), nthread > 0) if (method == "jw") weight <- weight[c(2, 1, 3)] method <- METHODS[method] if (is.na(method)) { stop(sprintf("method '%s' is not defined", method)) } .Call("R_amatch", x, table, method, as.integer(nomatch), as.integer(matchNA), as.double(weight), as.double(p), as.double(bt), as.integer(q), as.double(maxDist), as.integer(useBytes), as.integer(nthread), PACKAGE = "stringdist")})(c("Walmart", "Bershire Hataway", "Apple", "Exxon Mobile", "McKesson ", "UnitedHealth Group", "CVS Health", "General Motors", "AT&T", "Ford Motor Company"), c("Walmart", "Bershire Hathaway", "Apple Computer", "Exxon Mobile Inc. ", "McKesson Corp.", "UnitedHealth Group", "CVS", "GM", "AT & T", "Ford Motor"), method = "jw", p = 0.1, maxDist = 0.05, matchNA = FALSE, nthread = NULL)
2: do.call(stringdist::amatch, c(list(data1[[by.x]], data2[[by.y]]), fuzzy_settings))
3: fuzzy_match(data1, data2, by.x = by.x, by.y = by.y, suffixes = suffixes, unique_key_1 = unique_key_1, unique_key_2 = unique_key_2, fuzzy_settings = fuzzy_settings)
4: merge_plus(match_type = "fuzzy", data1 = corp_data1_test, data2 = corp_data2_test, by.x = "Company", by.y = "Name", unique_key_1 = "id_1", unique_key_2 = "id_2", suffixes = c("_1", "_2"), score_settings = build_score_settings(score_var_x = c("Company", "Country"), score_var_y = c("Name", "country"), wgts = c(0.5, 0.5), score_type = c("stringdist", "indicator")), filter = 0.995)
5: eval(code, test_env)
6: eval(code, test_env)
7: withCallingHandlers({ eval(code, test_env) if (!handled && !is.null(test)) { skip_empty() }}, expectation = handle_expectation, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error)
8: doTryCatch(return(expr), name, parentenv, handler)
9: tryCatchOne(expr, names, parentenv, handlers[[1L]])
10: tryCatchList(expr, names[-nh], parentenv, handlers[-nh])
11: doTryCatch(return(expr), name, parentenv, handler)
12: tryCatchOne(tryCatchList(expr, names[-nh], parentenv, handlers[-nh]), names[nh], parentenv, handlers[[nh]])
13: tryCatchList(expr, classes, parentenv, handlers)
14: tryCatch(withCallingHandlers({ eval(code, test_env) if (!handled && !is.null(test)) { skip_empty() }}, expectation = handle_expectation, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error), error = handle_fatal, skip = function(e) { })
15: test_code(desc, code, env = parent.frame(), default_reporter = local_interactive_reporter())
16: test_that("scoring works at all", { corp_data1_test <- copy(fedmatch::corp_data1) corp_data2_test <- copy(fedmatch::corp_data2) corp_data1_test[, `:=`(id_1, seq(1, .N))] corp_data2_test[, `:=`(id_2, seq(1, .N))] result <- merge_plus(match_type = "fuzzy", data1 = corp_data1_test, data2 = corp_data2_test, by.x = "Company", by.y = "Name", unique_key_1 = "id_1", unique_key_2 = "id_2", suffixes = c("_1", "_2"), score_settings = build_score_settings(score_var_x = c("Company", "Country"), score_var_y = c("Name", "country"), wgts = c(0.5, 0.5), score_type = c("stringdist", "indicator")), filter = 0.995) result expect_is(result$matches, "data.table")})
17: eval(code, test_env)
18: eval(code, test_env)
19: withCallingHandlers({ eval(code, test_env) if (!handled && !is.null(test)) { skip_empty() }}, expectation = handle_expectation, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error)
20: doTryCatch(return(expr), name, parentenv, handler)
21: tryCatchOne(expr, names, parentenv, handlers[[1L]])
22: tryCatchList(expr, names[-nh], parentenv, handlers[-nh])
23: doTryCatch(return(expr), name, parentenv, handler)
24: tryCatchOne(tryCatchList(expr, names[-nh], parentenv, handlers[-nh]), names[nh], parentenv, handlers[[nh]])
25: tryCatchList(expr, classes, parentenv, handlers)
26: tryCatch(withCallingHandlers({ eval(code, test_env) if (!handled && !is.null(test)) { skip_empty() }}, expectation = handle_expectation, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error), error = handle_fatal, skip = function(e) { })
27: test_code(test = NULL, code = exprs, env = env, default_reporter = StopReporter$new())
28: source_file(path, env = env(env), desc = desc, error_call = error_call)
29: FUN(X[[i]], ...)
30: lapply(test_paths, test_one_file, env = env, desc = desc, error_call = error_call)
31: doTryCatch(return(expr), name, parentenv, handler)
32: tryCatchOne(expr, names, parentenv, handlers[[1L]])
33: tryCatchList(expr, classes, parentenv, handlers)
34: tryCatch(code, testthat_abort_reporter = function(cnd) { cat(conditionMessage(cnd), "\n") NULL})
35: with_reporter(reporters$multi, lapply(test_paths, test_one_file, env = env, desc = desc, error_call = error_call))
36: test_files_serial(test_dir = test_dir, test_package = test_package, test_paths = test_paths, load_helpers = load_helpers, reporter = reporter, env = env, stop_on_failure = stop_on_failure, stop_on_warning = stop_on_warning, desc = desc, load_package = load_package, error_call = error_call)
37: test_files(test_dir = path, test_paths = test_paths, test_package = package, reporter = reporter, load_helpers = load_helpers, env = env, stop_on_failure = stop_on_failure, stop_on_warning = stop_on_warning, load_package = load_package, parallel = parallel)
38: test_dir("testthat", package = package, reporter = reporter, ..., load_package = "installed")
39: test_check("fedmatch")
An irrecoverable exception occurred. R is aborting now ...
Flavor: r-devel-linux-x86_64-fedora-gcc
Version: 2.0.6
Check: re-building of vignette outputs
Result: ERROR
Error(s) in re-building vignettes:
--- re-building ‘Fuzzy-matching.Rmd’ using rmarkdown
*** caught segfault ***
address 0x1, cause 'memory not mapped'
Traceback:
1: (function (x, table, nomatch = NA_integer_, matchNA = TRUE, method = c("osa", "lv", "dl", "hamming", "lcs", "qgram", "cosine", "jaccard", "jw", "soundex"), useBytes = FALSE, weight = c(d = 1, i = 1, s = 1, t = 1), maxDist = 0.1, q = 1, p = 0, bt = 0, nthread = getOption("sd_num_thread")) { x <- as.character(x) table <- as.character(table) if (!useBytes) { x <- enc2utf8(x) table <- enc2utf8(table) } method <- match.arg(method) stopifnot(all(is.finite(weight)), all(weight > 0), all(weight <= 1), q >= 0, p <= 0.25, p >= 0, matchNA %in% c(TRUE, FALSE), maxDist > 0, is.logical(useBytes), ifelse(method %in% c("osa", "dl"), length(weight) >= 4, TRUE), ifelse(method %in% c("lv", "jw"), length(weight) >= 3, TRUE), nthread > 0) if (method == "jw") weight <- weight[c(2, 1, 3)] method <- METHODS[method] if (is.na(method)) { stop(sprintf("method '%s' is not defined", method)) } .Call("R_amatch", x, table, method, as.integer(nomatch), as.integer(matchNA), as.double(weight), as.double(p), as.double(bt), as.integer(q), as.double(maxDist), as.integer(useBytes), as.integer(nthread), PACKAGE = "stringdist")})(c("Walmart", "Bershire Hataway", "Apple", "Exxon Mobile", "McKesson ", "UnitedHealth Group", "CVS Health", "General Motors", "AT&T", "Ford Motor Company"), c("Walmart", "Bershire Hathaway", "Apple Computer", "Exxon Mobile Inc. ", "McKesson Corp.", "UnitedHealth Group", "CVS", "GM", "AT & T", "Ford Motor"), method = "jw", p = 0.1, maxDist = 0.05, matchNA = FALSE, nthread = NULL)
2: do.call(stringdist::amatch, c(list(data1[[by.x]], data2[[by.y]]), fuzzy_settings))
3: fuzzy_match(data1, data2, by.x = by.x, by.y = by.y, suffixes = suffixes, unique_key_1 = unique_key_1, unique_key_2 = unique_key_2, fuzzy_settings = fuzzy_settings)
4: merge_plus(data1 = corp_data1, data2 = corp_data2, by.x = "Company", by.y = "Name", match_type = "fuzzy", unique_key_1 = "unique_key_1", unique_key_2 = "unique_key_2")
5: eval(expr, envir)
6: eval(expr, envir)
7: withVisible(eval(expr, envir))
8: withCallingHandlers(code, message = function (cnd) { watcher$capture_plot_and_output() if (on_message$capture) { watcher$push(cnd) } if (on_message$silence) { invokeRestart("muffleMessage") }}, warning = function (cnd) { if (getOption("warn") >= 2 || getOption("warn") < 0) { return() } watcher$capture_plot_and_output() if (on_warning$capture) { cnd <- sanitize_call(cnd) watcher$push(cnd) } if (on_warning$silence) { invokeRestart("muffleWarning") }}, error = function (cnd) { watcher$capture_plot_and_output() cnd <- sanitize_call(cnd) watcher$push(cnd) switch(on_error, continue = invokeRestart("eval_continue"), stop = invokeRestart("eval_stop"), error = invokeRestart("eval_error", cnd))})
9: eval(call)
10: eval(call)
11: with_handlers({ for (expr in tle$exprs) { ev <- withVisible(eval(expr, envir)) watcher$capture_plot_and_output() watcher$print_value(ev$value, ev$visible, envir) } TRUE}, handlers)
12: doWithOneRestart(return(expr), restart)
13: withOneRestart(expr, restarts[[1L]])
14: withRestartList(expr, restarts[-nr])
15: doWithOneRestart(return(expr), restart)
16: withOneRestart(withRestartList(expr, restarts[-nr]), restarts[[nr]])
17: withRestartList(expr, restarts[-nr])
18: doWithOneRestart(return(expr), restart)
19: withOneRestart(withRestartList(expr, restarts[-nr]), restarts[[nr]])
20: withRestartList(expr, restarts)
21: withRestarts(with_handlers({ for (expr in tle$exprs) { ev <- withVisible(eval(expr, envir)) watcher$capture_plot_and_output() watcher$print_value(ev$value, ev$visible, envir) } TRUE}, handlers), eval_continue = function() TRUE, eval_stop = function() FALSE, eval_error = function(cnd) { signalCondition(cnd) stop(cnd) })
22: evaluate::evaluate(...)
23: evaluate(code, envir = env, new_device = FALSE, keep_warning = if (is.numeric(options$warning)) TRUE else options$warning, keep_message = if (is.numeric(options$message)) TRUE else options$message, stop_on_error = if (is.numeric(options$error)) options$error else { if (options$error && options$include) 0L else 2L }, output_handler = knit_handlers(options$render, options))
24: in_dir(input_dir(), expr)
25: in_input_dir(evaluate(code, envir = env, new_device = FALSE, keep_warning = if (is.numeric(options$warning)) TRUE else options$warning, keep_message = if (is.numeric(options$message)) TRUE else options$message, stop_on_error = if (is.numeric(options$error)) options$error else { if (options$error && options$include) 0L else 2L }, output_handler = knit_handlers(options$render, options)))
26: eng_r(options)
27: block_exec(params)
28: call_block(x)
29: process_group(group)
30: withCallingHandlers(if (tangle) process_tangle(group) else process_group(group), error = function(e) if (xfun::pkg_available("rlang", "1.0.0")) rlang::entrace(e))
31: xfun:::handle_error(withCallingHandlers(if (tangle) process_tangle(group) else process_group(group), error = function(e) if (xfun::pkg_available("rlang", "1.0.0")) rlang::entrace(e)), function(loc) { setwd(wd) write_utf8(res, output %n% stdout()) paste0("\nQuitting from lines ", loc) }, if (labels[i] != "") sprintf(" [%s]", labels[i]), get_loc)
32: process_file(text, output)
33: knitr::knit(knit_input, knit_output, envir = envir, quiet = quiet)
34: rmarkdown::render(file, encoding = encoding, quiet = quiet, envir = globalenv(), output_dir = getwd(), ...)
35: vweave_rmarkdown(...)
36: engine$weave(file, quiet = quiet, encoding = enc)
37: doTryCatch(return(expr), name, parentenv, handler)
38: tryCatchOne(expr, names, parentenv, handlers[[1L]])
39: tryCatchList(expr, classes, parentenv, handlers)
40: tryCatch({ engine$weave(file, quiet = quiet, encoding = enc) setwd(startdir) output <- find_vignette_product(name, by = "weave", engine = engine) if (!have.makefile && vignette_is_tex(output)) { texi2pdf(file = output, clean = FALSE, quiet = quiet) output <- find_vignette_product(name, by = "texi2pdf", engine = engine) }}, error = function(e) { OK <<- FALSE message(gettextf("Error: processing vignette '%s' failed with diagnostics:\n%s", file, conditionMessage(e)))})
41: tools:::.buildOneVignette("Fuzzy-matching.Rmd", "/data/gannet/ripley/R/packages/tests-devel/fedmatch.Rcheck/vign_test/fedmatch", TRUE, FALSE, "Fuzzy-matching", "UTF-8", "/tmp/RtmpofQQTs/working_dir/RtmpZBH50s/file37861819cf8bb2.rds")
An irrecoverable exception occurred. R is aborting now ...
--- re-building ‘Intro-to-fedmatch.Rmd’ using rmarkdown
*** caught segfault ***
address 0x1, cause 'memory not mapped'
Traceback:
1: (function (x, table, nomatch = NA_integer_, matchNA = TRUE, method = c("osa", "lv", "dl", "hamming", "lcs", "qgram", "cosine", "jaccard", "jw", "soundex"), useBytes = FALSE, weight = c(d = 1, i = 1, s = 1, t = 1), maxDist = 0.1, q = 1, p = 0, bt = 0, nthread = getOption("sd_num_thread")) { x <- as.character(x) table <- as.character(table) if (!useBytes) { x <- enc2utf8(x) table <- enc2utf8(table) } method <- match.arg(method) stopifnot(all(is.finite(weight)), all(weight > 0), all(weight <= 1), q >= 0, p <= 0.25, p >= 0, matchNA %in% c(TRUE, FALSE), maxDist > 0, is.logical(useBytes), ifelse(method %in% c("osa", "dl"), length(weight) >= 4, TRUE), ifelse(method %in% c("lv", "jw"), length(weight) >= 3, TRUE), nthread > 0) if (method == "jw") weight <- weight[c(2, 1, 3)] method <- METHODS[method] if (is.na(method)) { stop(sprintf("method '%s' is not defined", method)) } .Call("R_amatch", x, table, method, as.integer(nomatch), as.integer(matchNA), as.double(weight), as.double(p), as.double(bt), as.integer(q), as.double(maxDist), as.integer(useBytes), as.integer(nthread), PACKAGE = "stringdist")})(c("Walmart", "Bershire Hataway", "Apple", "Exxon Mobile", "McKesson ", "UnitedHealth Group", "CVS Health", "General Motors", "AT&T", "Ford Motor Company"), c("Walmart", "Bershire Hathaway", "Apple Computer", "Exxon Mobile Inc. ", "McKesson Corp.", "UnitedHealth Group", "CVS", "GM", "AT & T", "Ford Motor"), method = "jw", p = 0.1, maxDist = 0.05, matchNA = FALSE, nthread = NULL)
2: do.call(stringdist::amatch, c(list(data1[[by.x]], data2[[by.y]]), fuzzy_settings))
3: fuzzy_match(data1, data2, by.x = by.x, by.y = by.y, suffixes = suffixes, unique_key_1 = unique_key_1, unique_key_2 = unique_key_2, fuzzy_settings = fuzzy_settings)
4: merge_plus(data1 = corp_data1, data2 = corp_data2, by.x = "Company", by.y = "Name", match_type = "fuzzy", unique_key_1 = "unique_key_1", unique_key_2 = "unique_key_2")
5: eval(expr, envir)
6: eval(expr, envir)
7: withVisible(eval(expr, envir))
8: withCallingHandlers(code, message = function (cnd) { watcher$capture_plot_and_output() if (on_message$capture) { watcher$push(cnd) } if (on_message$silence) { invokeRestart("muffleMessage") }}, warning = function (cnd) { if (getOption("warn") >= 2 || getOption("warn") < 0) { return() } watcher$capture_plot_and_output() if (on_warning$capture) { cnd <- sanitize_call(cnd) watcher$push(cnd) } if (on_warning$silence) { invokeRestart("muffleWarning") }}, error = function (cnd) { watcher$capture_plot_and_output() cnd <- sanitize_call(cnd) watcher$push(cnd) switch(on_error, continue = invokeRestart("eval_continue"), stop = invokeRestart("eval_stop"), error = invokeRestart("eval_error", cnd))})
9: eval(call)
10: eval(call)
11: with_handlers({ for (expr in tle$exprs) { ev <- withVisible(eval(expr, envir)) watcher$capture_plot_and_output() watcher$print_value(ev$value, ev$visible, envir) } TRUE}, handlers)
12: doWithOneRestart(return(expr), restart)
13: withOneRestart(expr, restarts[[1L]])
14: withRestartList(expr, restarts[-nr])
15: doWithOneRestart(return(expr), restart)
16: withOneRestart(withRestartList(expr, restarts[-nr]), restarts[[nr]])
17: withRestartList(expr, restarts[-nr])
18: doWithOneRestart(return(expr), restart)
19: withOneRestart(withRestartList(expr, restarts[-nr]), restarts[[nr]])
20: withRestartList(expr, restarts)
21: withRestarts(with_handlers({ for (expr in tle$exprs) { ev <- withVisible(eval(expr, envir)) watcher$capture_plot_and_output() watcher$print_value(ev$value, ev$visible, envir) } TRUE}, handlers), eval_continue = function() TRUE, eval_stop = function() FALSE, eval_error = function(cnd) { signalCondition(cnd) stop(cnd) })
22: evaluate::evaluate(...)
23: evaluate(code, envir = env, new_device = FALSE, keep_warning = if (is.numeric(options$warning)) TRUE else options$warning, keep_message = if (is.numeric(options$message)) TRUE else options$message, stop_on_error = if (is.numeric(options$error)) options$error else { if (options$error && options$include) 0L else 2L }, output_handler = knit_handlers(options$render, options))
24: in_dir(input_dir(), expr)
25: in_input_dir(evaluate(code, envir = env, new_device = FALSE, keep_warning = if (is.numeric(options$warning)) TRUE else options$warning, keep_message = if (is.numeric(options$message)) TRUE else options$message, stop_on_error = if (is.numeric(options$error)) options$error else { if (options$error && options$include) 0L else 2L }, output_handler = knit_handlers(options$render, options)))
26: eng_r(options)
27: block_exec(params)
28: call_block(x)
29: process_group(group)
30: withCallingHandlers(if (tangle) process_tangle(group) else process_group(group), error = function(e) if (xfun::pkg_available("rlang", "1.0.0")) rlang::entrace(e))
31: xfun:::handle_error(withCallingHandlers(if (tangle) process_tangle(group) else process_group(group), error = function(e) if (xfun::pkg_available("rlang", "1.0.0")) rlang::entrace(e)), function(loc) { setwd(wd) write_utf8(res, output %n% stdout()) paste0("\nQuitting from lines ", loc) }, if (labels[i] != "") sprintf(" [%s]", labels[i]), get_loc)
32: process_file(text, output)
33: knitr::knit(knit_input, knit_output, envir = envir, quiet = quiet)
34: rmarkdown::render(file, encoding = encoding, quiet = quiet, envir = globalenv(), output_dir = getwd(), ...)
35: vweave_rmarkdown(...)
36: engine$weave(file, quiet = quiet, encoding = enc)
37: doTryCatch(return(expr), name, parentenv, handler)
38: tryCatchOne(expr, names, parentenv, handlers[[1L]])
39: tryCatchList(expr, classes, parentenv, handlers)
40: tryCatch({ engine$weave(file, quiet = quiet, encoding = enc) setwd(startdir) output <- find_vignette_product(name, by = "weave", engine = engine) if (!have.makefile && vignette_is_tex(output)) { texi2pdf(file = output, clean = FALSE, quiet = quiet) output <- find_vignette_product(name, by = "texi2pdf", engine = engine) }}, error = function(e) { OK <<- FALSE message(gettextf("Error: processing vignette '%s' failed with diagnostics:\n%s", file, conditionMessage(e)))})
41: tools:::.buildOneVignette("Intro-to-fedmatch.Rmd", "/data/gannet/ripley/R/packages/tests-devel/fedmatch.Rcheck/vign_test/fedmatch", TRUE, FALSE, "Intro-to-fedmatch", "UTF-8", "/tmp/RtmpofQQTs/working_dir/RtmpZBH50s/file3786186a43f0b2.rds")
An irrecoverable exception occurred. R is aborting now ...
--- re-building ‘Multivar_matching.Rmd’ using rmarkdown
--- finished re-building ‘Multivar_matching.Rmd’
--- re-building ‘Using-clean-strings.Rmd’ using rmarkdown
--- finished re-building ‘Using-clean-strings.Rmd’
--- re-building ‘Using-tier-match.Rmd’ using rmarkdown
--- finished re-building ‘Using-tier-match.Rmd’
SUMMARY: processing the following files failed:
‘Fuzzy-matching.Rmd’ ‘Intro-to-fedmatch.Rmd’
Error: Vignette re-building failed.
Execution halted
Flavor: r-devel-linux-x86_64-fedora-gcc