The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.

CRAN Package Check Results for Package readxl

Last updated on 2026-05-01 11:50:55 CEST.

Flavor Version Tinstall Tcheck Ttotal Status Flags
r-devel-linux-x86_64-debian-clang 1.4.5 26.42 36.60 63.02 ERROR
r-devel-linux-x86_64-debian-gcc 1.4.5 20.95 35.47 56.42 OK
r-devel-linux-x86_64-fedora-clang 1.4.5 37.00 54.37 91.37 ERROR
r-devel-linux-x86_64-fedora-gcc 1.4.5 55.00 78.19 133.19 OK
r-devel-windows-x86_64 1.4.5 58.00 85.00 143.00 OK
r-patched-linux-x86_64 1.4.5 27.11 43.02 70.13 OK
r-release-linux-x86_64 1.4.5 27.38 41.88 69.26 OK
r-release-macos-arm64 1.4.5 7.00 1796.00 1803.00 OK
r-release-macos-x86_64 1.4.5 19.00 93.00 112.00 NOTE
r-release-windows-x86_64 1.4.5 40.00 191.00 231.00 OK
r-oldrel-macos-arm64 1.4.5 OK
r-oldrel-macos-x86_64 1.4.5 16.00 62.00 78.00 OK
r-oldrel-windows-x86_64 1.4.5 50.00 98.00 148.00 OK

Additional issues

M1mac

Check Details

Version: 1.4.5
Check: tests
Result: ERROR Running ‘testthat.R’ [1s/1s] Running the tests in ‘tests/testthat.R’ failed. Complete output: > library(testthat) > library(readxl) > > test_check("readxl") *** caught segfault *** address (nil), cause 'memory not mapped' Traceback: 1: read_fun(path = path, sheet_i = sheet, limits = limits, shim = shim, col_names = col_names, col_types = col_types, na = na, trim_ws = trim_ws, guess_max = guess_max, progress = progress) 2: tibble::as_tibble(l, .name_repair = .name_repair) 3: set_readxl_names(read_fun(path = path, sheet_i = sheet, limits = limits, shim = shim, col_names = col_names, col_types = col_types, na = na, trim_ws = trim_ws, guess_max = guess_max, progress = progress), .name_repair = .name_repair) 4: read_excel_(path = path, sheet = sheet, range = range, col_names = col_names, col_types = col_types, na = na, trim_ws = trim_ws, skip = skip, n_max = n_max, guess_max = guess_max, progress = progress, .name_repair = .name_repair, format = format) 5: read_excel(test_sheet("types.xls"), sheet = "logical_coercion", col_types = c("logical", "text")) 6: eval(expr, envir) 7: eval(expr, envir) 8: withVisible(eval(expr, envir)) 9: withCallingHandlers(code, error = function (cnd) rlang::entrace(cnd), 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 = NULL)}) 10: eval(call) 11: eval(call) 12: 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) 13: doWithOneRestart(return(expr), restart) 14: withOneRestart(expr, restarts[[1L]]) 15: withRestartList(expr, restarts[-nr]) 16: doWithOneRestart(return(expr), restart) 17: withOneRestart(withRestartList(expr, restarts[-nr]), restarts[[nr]]) 18: withRestartList(expr, restarts) 19: 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) 20: evaluate::evaluate(source, envir = env, new_device = FALSE, output_handler = handler) 21: verify_exec(quo_get_expr(x), quo_get_env(x), replay) 22: with_is_snapshotting(out <- verify_exec(quo_get_expr(x), quo_get_env(x), replay)) 23: expect_snapshot_(x, cran = cran, error = error, transform = transform, variant = variant, cnd_class = cnd_class) 24: expect_snapshot(df <- read_excel(test_sheet("types.xls"), sheet = "logical_coercion", col_types = c("logical", "text"))) 25: eval(code, test_env) 26: eval(code, test_env) 27: withCallingHandlers({ eval(code, test_env) new_expectations <- the$test_expectations > starting_expectations if (snapshot_skipped) { skip("On CRAN") } else if (!new_expectations && skip_on_empty) { skip_empty() }}, expectation = handle_expectation, packageNotFoundError = function(e) { if (on_cran()) { skip(paste0("{", e$package, "} is not installed.")) }}, snapshot_on_cran = function(cnd) { snapshot_skipped <<- TRUE invokeRestart("muffle_cran_snapshot")}, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error, interrupt = handle_interrupt) 28: doTryCatch(return(expr), name, parentenv, handler) 29: tryCatchOne(expr, names, parentenv, handlers[[1L]]) 30: tryCatchList(expr, classes, parentenv, handlers) 31: tryCatch(withCallingHandlers({ eval(code, test_env) new_expectations <- the$test_expectations > starting_expectations if (snapshot_skipped) { skip("On CRAN") } else if (!new_expectations && skip_on_empty) { skip_empty() }}, expectation = handle_expectation, packageNotFoundError = function(e) { if (on_cran()) { skip(paste0("{", e$package, "} is not installed.")) }}, snapshot_on_cran = function(cnd) { snapshot_skipped <<- TRUE invokeRestart("muffle_cran_snapshot")}, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error, interrupt = handle_interrupt), error = handle_fatal) 32: doWithOneRestart(return(expr), restart) 33: withOneRestart(expr, restarts[[1L]]) 34: withRestarts(tryCatch(withCallingHandlers({ eval(code, test_env) new_expectations <- the$test_expectations > starting_expectations if (snapshot_skipped) { skip("On CRAN") } else if (!new_expectations && skip_on_empty) { skip_empty() }}, expectation = handle_expectation, packageNotFoundError = function(e) { if (on_cran()) { skip(paste0("{", e$package, "} is not installed.")) }}, snapshot_on_cran = function(cnd) { snapshot_skipped <<- TRUE invokeRestart("muffle_cran_snapshot")}, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error, interrupt = handle_interrupt), error = handle_fatal), end_test = function() { }) 35: test_code(code, parent.frame()) 36: test_that("contaminated, explicit logical is read as logical", { expect_snapshot(df <- read_excel(test_sheet("types.xls"), sheet = "logical_coercion", col_types = c("logical", "text"))) expect_true(is.logical(df$logical)) should_be_NA <- df$explanation %in% c("string not logical", "blank", "date") expect_false(anyNA(df$logical[!should_be_NA])) expect_snapshot(df <- read_excel(test_sheet("types.xlsx"), sheet = "logical_coercion", col_types = c("logical", "text"))) expect_true(is.logical(df$logical)) should_be_NA <- df$explanation %in% c("string not logical", "blank", "date") expect_false(anyNA(df$logical[!should_be_NA])) }) 37: eval(code, test_env) 38: eval(code, test_env) 39: withCallingHandlers({ eval(code, test_env) new_expectations <- the$test_expectations > starting_expectations if (snapshot_skipped) { skip("On CRAN") } else if (!new_expectations && skip_on_empty) { skip_empty() }}, expectation = handle_expectation, packageNotFoundError = function(e) { if (on_cran()) { skip(paste0("{", e$package, "} is not installed.")) }}, snapshot_on_cran = function(cnd) { snapshot_skipped <<- TRUE invokeRestart("muffle_cran_snapshot")}, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error, interrupt = handle_interrupt) 40: doTryCatch(return(expr), name, parentenv, handler) 41: tryCatchOne(expr, names, parentenv, handlers[[1L]]) 42: tryCatchList(expr, classes, parentenv, handlers) 43: tryCatch(withCallingHandlers({ eval(code, test_env) new_expectations <- the$test_expectations > starting_expectations if (snapshot_skipped) { skip("On CRAN") } else if (!new_expectations && skip_on_empty) { skip_empty() }}, expectation = handle_expectation, packageNotFoundError = function(e) { if (on_cran()) { skip(paste0("{", e$package, "} is not installed.")) }}, snapshot_on_cran = function(cnd) { snapshot_skipped <<- TRUE invokeRestart("muffle_cran_snapshot")}, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error, interrupt = handle_interrupt), error = handle_fatal) 44: doWithOneRestart(return(expr), restart) 45: withOneRestart(expr, restarts[[1L]]) 46: withRestarts(tryCatch(withCallingHandlers({ eval(code, test_env) new_expectations <- the$test_expectations > starting_expectations if (snapshot_skipped) { skip("On CRAN") } else if (!new_expectations && skip_on_empty) { skip_empty() }}, expectation = handle_expectation, packageNotFoundError = function(e) { if (on_cran()) { skip(paste0("{", e$package, "} is not installed.")) }}, snapshot_on_cran = function(cnd) { snapshot_skipped <<- TRUE invokeRestart("muffle_cran_snapshot")}, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error, interrupt = handle_interrupt), error = handle_fatal), end_test = function() { }) 47: test_code(code = exprs, env = env, reporter = get_reporter() %||% StopReporter$new()) 48: source_file(path, env = env(env), desc = desc, shuffle = shuffle, error_call = error_call) 49: FUN(X[[i]], ...) 50: lapply(test_paths, test_one_file, env = env, desc = desc, shuffle = shuffle, error_call = error_call) 51: doTryCatch(return(expr), name, parentenv, handler) 52: tryCatchOne(expr, names, parentenv, handlers[[1L]]) 53: tryCatchList(expr, classes, parentenv, handlers) 54: tryCatch(code, testthat_abort_reporter = function(cnd) { cat(conditionMessage(cnd), "\n") NULL}) 55: with_reporter(reporters$multi, lapply(test_paths, test_one_file, env = env, desc = desc, shuffle = shuffle, error_call = error_call)) 56: 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, shuffle = shuffle, error_call = error_call) 57: 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, shuffle = shuffle) 58: test_dir("testthat", package = package, reporter = reporter, ..., load_package = "installed") 59: test_check("readxl") An irrecoverable exception occurred. R is aborting now ... Segmentation fault Flavor: r-devel-linux-x86_64-debian-clang

Version: 1.4.5
Check: re-building of vignette outputs
Result: ERROR Error(s) in re-building vignettes: ... --- re-building ‘cell-and-column-types.Rmd’ using rmarkdown *** caught segfault *** address (nil), cause 'memory not mapped' Traceback: 1: read_fun(path = path, sheet_i = sheet, limits = limits, shim = shim, col_names = col_names, col_types = col_types, na = na, trim_ws = trim_ws, guess_max = guess_max, progress = progress) 2: tibble::as_tibble(l, .name_repair = .name_repair) 3: set_readxl_names(read_fun(path = path, sheet_i = sheet, limits = limits, shim = shim, col_names = col_names, col_types = col_types, na = na, trim_ws = trim_ws, guess_max = guess_max, progress = progress), .name_repair = .name_repair) 4: read_excel_(path = path, sheet = sheet, range = range, col_names = col_names, col_types = col_types, na = na, trim_ws = trim_ws, skip = skip, n_max = n_max, guess_max = guess_max, progress = progress, .name_repair = .name_repair, format = format) 5: read_excel(readxl_example("type-me.xlsx"), sheet = "logical_coercion", col_types = c("logical", "text")) 6: eval(expr, envir) 7: eval(expr, envir) 8: withVisible(eval(expr, envir)) 9: withCallingHandlers(code, error = function (e) rlang::entrace(e), 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 = NULL)}) 10: eval(call) 11: eval(call) 12: 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) 13: doWithOneRestart(return(expr), restart) 14: withOneRestart(expr, restarts[[1L]]) 15: withRestartList(expr, restarts[-nr]) 16: doWithOneRestart(return(expr), restart) 17: withOneRestart(withRestartList(expr, restarts[-nr]), restarts[[nr]]) 18: withRestartList(expr, restarts) 19: 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) 20: evaluate::evaluate(...) 21: 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)) 22: in_dir(input_dir(), expr) 23: 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))) 24: eng_r(options) 25: block_exec(params) 26: call_block(x) 27: process_group(group) 28: withCallingHandlers(if (tangle) process_tangle(group) else process_group(group), error = function(e) { if (progress && is.function(pb$interrupt)) pb$interrupt() if (is_R_CMD_build() || is_R_CMD_check()) error <<- format(e) }) 29: with_options(withCallingHandlers(if (tangle) process_tangle(group) else process_group(group), error = function(e) { if (progress && is.function(pb$interrupt)) pb$interrupt() if (is_R_CMD_build() || is_R_CMD_check()) error <<- format(e) }), list(rlang_trace_top_env = knit_global())) 30: xfun:::handle_error(with_options(withCallingHandlers(if (tangle) process_tangle(group) else process_group(group), error = function(e) { if (progress && is.function(pb$interrupt)) pb$interrupt() if (is_R_CMD_build() || is_R_CMD_check()) error <<- format(e) }), list(rlang_trace_top_env = knit_global())), function(loc) { setwd(wd) write_utf8(res, output %n% stdout()) paste0("\nQuitting from ", loc, if (!is.null(error)) paste0("\n", rule(), error, "\n", rule()))}, if (labels[i] != "") sprintf(" [%s]", labels[i]), get_loc) 31: process_file(text, output) 32: knitr::knit(knit_input, knit_output, envir = envir, quiet = quiet) 33: rmarkdown::render(file, encoding = encoding, quiet = quiet, envir = globalenv(), output_dir = getwd(), ...) 34: vweave_rmarkdown(...) 35: engine$weave(file, quiet = quiet, encoding = enc) 36: doTryCatch(return(expr), name, parentenv, handler) 37: tryCatchOne(expr, names, parentenv, handlers[[1L]]) 38: tryCatchList(expr, classes, parentenv, handlers) 39: 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)))}) 40: tools:::.buildOneVignette("cell-and-column-types.Rmd", "/home/hornik/tmp/R.check/r-devel-clang/Work/PKGS/readxl.Rcheck/vign_test/readxl", TRUE, FALSE, "cell-and-column-types", "UTF-8", "/home/hornik/tmp/scratch/RtmpRLm1e2/file3250ba73913bec.rds") An irrecoverable exception occurred. R is aborting now ... Segmentation fault --- re-building ‘sheet-geometry.Rmd’ using rmarkdown --- finished re-building ‘sheet-geometry.Rmd’ SUMMARY: processing the following file failed: ‘cell-and-column-types.Rmd’ Error: Vignette re-building failed. Execution halted Flavor: r-devel-linux-x86_64-debian-clang

Version: 1.4.5
Check: tests
Result: ERROR Running ‘testthat.R’ Running the tests in ‘tests/testthat.R’ failed. Complete output: > library(testthat) > library(readxl) > > test_check("readxl") *** caught segfault *** address (nil), cause 'memory not mapped' Traceback: 1: read_fun(path = path, sheet_i = sheet, limits = limits, shim = shim, col_names = col_names, col_types = col_types, na = na, trim_ws = trim_ws, guess_max = guess_max, progress = progress) 2: tibble::as_tibble(l, .name_repair = .name_repair) 3: set_readxl_names(read_fun(path = path, sheet_i = sheet, limits = limits, shim = shim, col_names = col_names, col_types = col_types, na = na, trim_ws = trim_ws, guess_max = guess_max, progress = progress), .name_repair = .name_repair) 4: read_excel_(path = path, sheet = sheet, range = range, col_names = col_names, col_types = col_types, na = na, trim_ws = trim_ws, skip = skip, n_max = n_max, guess_max = guess_max, progress = progress, .name_repair = .name_repair, format = format) 5: read_excel(test_sheet("types.xls"), sheet = "logical_coercion", col_types = c("logical", "text")) 6: eval(expr, envir) 7: eval(expr, envir) 8: withVisible(eval(expr, envir)) 9: withCallingHandlers(code, error = function (cnd) rlang::entrace(cnd), 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 = NULL)}) 10: eval(call) 11: eval(call) 12: 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) 13: doWithOneRestart(return(expr), restart) 14: withOneRestart(expr, restarts[[1L]]) 15: withRestartList(expr, restarts[-nr]) 16: doWithOneRestart(return(expr), restart) 17: withOneRestart(withRestartList(expr, restarts[-nr]), restarts[[nr]]) 18: withRestartList(expr, restarts) 19: 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) 20: evaluate::evaluate(source, envir = env, new_device = FALSE, output_handler = handler) 21: verify_exec(quo_get_expr(x), quo_get_env(x), replay) 22: with_is_snapshotting(out <- verify_exec(quo_get_expr(x), quo_get_env(x), replay)) 23: expect_snapshot_(x, cran = cran, error = error, transform = transform, variant = variant, cnd_class = cnd_class) 24: expect_snapshot(df <- read_excel(test_sheet("types.xls"), sheet = "logical_coercion", col_types = c("logical", "text"))) 25: eval(code, test_env) 26: eval(code, test_env) 27: withCallingHandlers({ eval(code, test_env) new_expectations <- the$test_expectations > starting_expectations if (snapshot_skipped) { skip("On CRAN") } else if (!new_expectations && skip_on_empty) { skip_empty() }}, expectation = handle_expectation, packageNotFoundError = function(e) { if (on_cran()) { skip(paste0("{", e$package, "} is not installed.")) }}, snapshot_on_cran = function(cnd) { snapshot_skipped <<- TRUE invokeRestart("muffle_cran_snapshot")}, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error, interrupt = handle_interrupt) 28: doTryCatch(return(expr), name, parentenv, handler) 29: tryCatchOne(expr, names, parentenv, handlers[[1L]]) 30: tryCatchList(expr, classes, parentenv, handlers) 31: tryCatch(withCallingHandlers({ eval(code, test_env) new_expectations <- the$test_expectations > starting_expectations if (snapshot_skipped) { skip("On CRAN") } else if (!new_expectations && skip_on_empty) { skip_empty() }}, expectation = handle_expectation, packageNotFoundError = function(e) { if (on_cran()) { skip(paste0("{", e$package, "} is not installed.")) }}, snapshot_on_cran = function(cnd) { snapshot_skipped <<- TRUE invokeRestart("muffle_cran_snapshot")}, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error, interrupt = handle_interrupt), error = handle_fatal) 32: doWithOneRestart(return(expr), restart) 33: withOneRestart(expr, restarts[[1L]]) 34: withRestarts(tryCatch(withCallingHandlers({ eval(code, test_env) new_expectations <- the$test_expectations > starting_expectations if (snapshot_skipped) { skip("On CRAN") } else if (!new_expectations && skip_on_empty) { skip_empty() }}, expectation = handle_expectation, packageNotFoundError = function(e) { if (on_cran()) { skip(paste0("{", e$package, "} is not installed.")) }}, snapshot_on_cran = function(cnd) { snapshot_skipped <<- TRUE invokeRestart("muffle_cran_snapshot")}, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error, interrupt = handle_interrupt), error = handle_fatal), end_test = function() { }) 35: test_code(code, parent.frame()) 36: test_that("contaminated, explicit logical is read as logical", { expect_snapshot(df <- read_excel(test_sheet("types.xls"), sheet = "logical_coercion", col_types = c("logical", "text"))) expect_true(is.logical(df$logical)) should_be_NA <- df$explanation %in% c("string not logical", "blank", "date") expect_false(anyNA(df$logical[!should_be_NA])) expect_snapshot(df <- read_excel(test_sheet("types.xlsx"), sheet = "logical_coercion", col_types = c("logical", "text"))) expect_true(is.logical(df$logical)) should_be_NA <- df$explanation %in% c("string not logical", "blank", "date") expect_false(anyNA(df$logical[!should_be_NA])) }) 37: eval(code, test_env) 38: eval(code, test_env) 39: withCallingHandlers({ eval(code, test_env) new_expectations <- the$test_expectations > starting_expectations if (snapshot_skipped) { skip("On CRAN") } else if (!new_expectations && skip_on_empty) { skip_empty() }}, expectation = handle_expectation, packageNotFoundError = function(e) { if (on_cran()) { skip(paste0("{", e$package, "} is not installed.")) }}, snapshot_on_cran = function(cnd) { snapshot_skipped <<- TRUE invokeRestart("muffle_cran_snapshot")}, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error, interrupt = handle_interrupt) 40: doTryCatch(return(expr), name, parentenv, handler) 41: tryCatchOne(expr, names, parentenv, handlers[[1L]]) 42: tryCatchList(expr, classes, parentenv, handlers) 43: tryCatch(withCallingHandlers({ eval(code, test_env) new_expectations <- the$test_expectations > starting_expectations if (snapshot_skipped) { skip("On CRAN") } else if (!new_expectations && skip_on_empty) { skip_empty() }}, expectation = handle_expectation, packageNotFoundError = function(e) { if (on_cran()) { skip(paste0("{", e$package, "} is not installed.")) }}, snapshot_on_cran = function(cnd) { snapshot_skipped <<- TRUE invokeRestart("muffle_cran_snapshot")}, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error, interrupt = handle_interrupt), error = handle_fatal) 44: doWithOneRestart(return(expr), restart) 45: withOneRestart(expr, restarts[[1L]]) 46: withRestarts(tryCatch(withCallingHandlers({ eval(code, test_env) new_expectations <- the$test_expectations > starting_expectations if (snapshot_skipped) { skip("On CRAN") } else if (!new_expectations && skip_on_empty) { skip_empty() }}, expectation = handle_expectation, packageNotFoundError = function(e) { if (on_cran()) { skip(paste0("{", e$package, "} is not installed.")) }}, snapshot_on_cran = function(cnd) { snapshot_skipped <<- TRUE invokeRestart("muffle_cran_snapshot")}, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error, interrupt = handle_interrupt), error = handle_fatal), end_test = function() { }) 47: test_code(code = exprs, env = env, reporter = get_reporter() %||% StopReporter$new()) 48: source_file(path, env = env(env), desc = desc, shuffle = shuffle, error_call = error_call) 49: FUN(X[[i]], ...) 50: lapply(test_paths, test_one_file, env = env, desc = desc, shuffle = shuffle, error_call = error_call) 51: doTryCatch(return(expr), name, parentenv, handler) 52: tryCatchOne(expr, names, parentenv, handlers[[1L]]) 53: tryCatchList(expr, classes, parentenv, handlers) 54: tryCatch(code, testthat_abort_reporter = function(cnd) { cat(conditionMessage(cnd), "\n") NULL}) 55: with_reporter(reporters$multi, lapply(test_paths, test_one_file, env = env, desc = desc, shuffle = shuffle, error_call = error_call)) 56: 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, shuffle = shuffle, error_call = error_call) 57: 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, shuffle = shuffle) 58: test_dir("testthat", package = package, reporter = reporter, ..., load_package = "installed") 59: test_check("readxl") An irrecoverable exception occurred. R is aborting now ... Flavor: r-devel-linux-x86_64-fedora-clang

Version: 1.4.5
Check: re-building of vignette outputs
Result: ERROR Error(s) in re-building vignettes: --- re-building ‘cell-and-column-types.Rmd’ using rmarkdown *** caught segfault *** address (nil), cause 'memory not mapped' Traceback: 1: read_fun(path = path, sheet_i = sheet, limits = limits, shim = shim, col_names = col_names, col_types = col_types, na = na, trim_ws = trim_ws, guess_max = guess_max, progress = progress) 2: tibble::as_tibble(l, .name_repair = .name_repair) 3: set_readxl_names(read_fun(path = path, sheet_i = sheet, limits = limits, shim = shim, col_names = col_names, col_types = col_types, na = na, trim_ws = trim_ws, guess_max = guess_max, progress = progress), .name_repair = .name_repair) 4: read_excel_(path = path, sheet = sheet, range = range, col_names = col_names, col_types = col_types, na = na, trim_ws = trim_ws, skip = skip, n_max = n_max, guess_max = guess_max, progress = progress, .name_repair = .name_repair, format = format) 5: read_excel(readxl_example("type-me.xlsx"), sheet = "logical_coercion", col_types = c("logical", "text")) 6: eval(expr, envir) 7: eval(expr, envir) 8: withVisible(eval(expr, envir)) 9: withCallingHandlers(code, error = function (e) rlang::entrace(e), 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 = NULL)}) 10: eval(call) 11: eval(call) 12: 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) 13: doWithOneRestart(return(expr), restart) 14: withOneRestart(expr, restarts[[1L]]) 15: withRestartList(expr, restarts[-nr]) 16: doWithOneRestart(return(expr), restart) 17: withOneRestart(withRestartList(expr, restarts[-nr]), restarts[[nr]]) 18: withRestartList(expr, restarts) 19: 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) 20: evaluate::evaluate(...) 21: 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)) 22: in_dir(input_dir(), expr) 23: 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))) 24: eng_r(options) 25: block_exec(params) 26: call_block(x) 27: process_group(group) 28: withCallingHandlers(if (tangle) process_tangle(group) else process_group(group), error = function(e) { if (progress && is.function(pb$interrupt)) pb$interrupt() if (is_R_CMD_build() || is_R_CMD_check()) error <<- format(e) }) 29: with_options(withCallingHandlers(if (tangle) process_tangle(group) else process_group(group), error = function(e) { if (progress && is.function(pb$interrupt)) pb$interrupt() if (is_R_CMD_build() || is_R_CMD_check()) error <<- format(e) }), list(rlang_trace_top_env = knit_global())) 30: xfun:::handle_error(with_options(withCallingHandlers(if (tangle) process_tangle(group) else process_group(group), error = function(e) { if (progress && is.function(pb$interrupt)) pb$interrupt() if (is_R_CMD_build() || is_R_CMD_check()) error <<- format(e) }), list(rlang_trace_top_env = knit_global())), function(loc) { setwd(wd) write_utf8(res, output %n% stdout()) paste0("\nQuitting from ", loc, if (!is.null(error)) paste0("\n", rule(), error, "\n", rule()))}, if (labels[i] != "") sprintf(" [%s]", labels[i]), get_loc) 31: process_file(text, output) 32: knitr::knit(knit_input, knit_output, envir = envir, quiet = quiet) 33: rmarkdown::render(file, encoding = encoding, quiet = quiet, envir = globalenv(), output_dir = getwd(), ...) 34: vweave_rmarkdown(...) 35: engine$weave(file, quiet = quiet, encoding = enc) 36: doTryCatch(return(expr), name, parentenv, handler) 37: tryCatchOne(expr, names, parentenv, handlers[[1L]]) 38: tryCatchList(expr, classes, parentenv, handlers) 39: 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)))}) 40: tools:::.buildOneVignette("cell-and-column-types.Rmd", "/data/gannet/ripley/R/packages/tests-clang/readxl.Rcheck/vign_test/readxl", TRUE, FALSE, "cell-and-column-types", "UTF-8", "/tmp/RtmppshWQU/working_dir/RtmpPbq9wJ/file348aea1cdf4be5.rds") An irrecoverable exception occurred. R is aborting now ... --- re-building ‘sheet-geometry.Rmd’ using rmarkdown --- finished re-building ‘sheet-geometry.Rmd’ SUMMARY: processing the following file failed: ‘cell-and-column-types.Rmd’ Error: Vignette re-building failed. Execution halted Flavor: r-devel-linux-x86_64-fedora-clang

Version: 1.4.5
Check: compiled code
Result: NOTE File ‘readxl/libs/readxl.so’: Found non-API call to R: ‘R_NamespaceRegistry’ Compiled code should not call non-API entry points in R. See ‘Writing portable packages’ in the ‘Writing R Extensions’ manual, and section ‘Moving into C API compliance’ for issues with the use of non-API entry points. Flavor: r-release-macos-x86_64

These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.