Last updated on 2026-10-09 13:54:20 CEST.
| Flavor | Version | Tinstall | Tcheck | Ttotal | Status | Flags |
|---|---|---|---|---|---|---|
| r-devel-linux-x86_64-debian-clang | 1.4 | 27.67 | 105.88 | 133.55 | OK | |
| r-devel-linux-x86_64-debian-gcc | 1.4 | 19.23 | 86.86 | 106.09 | OK | |
| r-devel-linux-x86_64-fedora-clang | 1.4.3 | 6.00 | 51.02 | 57.02 | OK | |
| r-devel-linux-x86_64-fedora-gcc | 1.4.3 | 6.00 | 51.43 | 57.43 | OK | |
| r-devel-windows-x86_64 | 1.4 | 39.00 | 204.00 | 243.00 | ERROR | |
| r-patched-linux-x86_64 | 1.4 | 24.94 | 98.66 | 123.60 | OK | |
| r-release-linux-x86_64 | 1.4 | OK | ||||
| r-release-macos-arm64 | 1.4.3 | 2.00 | 21.00 | 23.00 | OK | |
| r-release-macos-x86_64 | 1.4.3 | 6.00 | 65.00 | 71.00 | OK | |
| r-release-windows-x86_64 | 1.4 | 36.00 | 129.00 | 165.00 | OK | |
| r-oldrel-macos-arm64 | 1.4.3 | ERROR | ||||
| r-oldrel-macos-x86_64 | 1.4.3 | 5.00 | 77.00 | 82.00 | OK | |
| r-oldrel-windows-x86_64 | 1.4.3 | 13.00 | 93.00 | 106.00 | OK |
Version: 1.4
Check: tests
Result: ERROR
Running 'testthat.R' [13s]
Running the tests in 'tests/testthat.R' failed.
Complete output:
> library(testthat)
> library(scTenifoldNet)
>
> test_check("scTenifoldNet")
Computing regression coefficients...
Saving _problems/test-scQC-24.R
[ FAIL 1 | WARN 1 | SKIP 0 | PASS 44 ]
══ Failed tests ════════════════════════════════════════════════════════════════
── Error ('test-scQC.R:24:3'): scQC works ──────────────────────────────────────
Error in `h(simpleError(msg, call))`: error in evaluating the argument 'i' in selecting a method for function '[<-': lazy-load database 'D:/temp/2026_09_24_01_50_00_23554/RtmpG4bMOM/RLIBS_25d0445e43a99/Matrix/R/Matrix.rdb' is corrupt
Backtrace:
▆
1. ├─scTenifoldNet::scQC(...) at test-scQC.R:24:3
2. │ ├─methods (local) `[<-`(`*tmp*`, X < 0, value = `<dbl>`)
3. │ ├─X < 0
4. │ └─X < 0
5. └─base::.handleSimpleError(...)
6. └─base (local) h(simpleError(msg, call))
[ FAIL 1 | WARN 1 | SKIP 0 | PASS 44 ]
Error:
! Test failures.
Execution halted
Flavor: r-devel-windows-x86_64
Version: 1.4.3
Check: tests
Result: ERROR
Running ‘testthat.R’ [2s/2s]
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
> library(testthat)
> library(scTenifoldNet)
>
> test_check("scTenifoldNet")
*** caught segfault ***
address 0x110, cause 'invalid permissions'
*** caught segfault ***
address 0x110, cause 'invalid permissions'
Traceback:
1: FUN(X[[i]], ...)
2: lapply(X = S, FUN = FUN, ...)
3: doTryCatch(return(expr), name, parentenv, handler)
4: tryCatchOne(expr, names, parentenv, handlers[[1L]])
5: tryCatchList(expr, classes, parentenv, handlers)
6: tryCatch(expr, error = function(e) { call <- conditionCall(e) if (!is.null(call)) { if (identical(call[[1L]], quote(doTryCatch))) call <- sys.call(-4L) dcall <- deparse(call, nlines = 1L) prefix <- paste("Error in", dcall, ": ") LONG <- 75L sm <- strsplit(conditionMessage(e), "\n")[[1L]] w <- 14L + nchar(dcall, type = "w") + nchar(sm[1L], type = "w") if (is.na(w)) w <- 14L + nchar(dcall, type = "b") + nchar(sm[1L], type = "b") if (w > LONG) prefix <- paste0(prefix, "\n ") } else prefix <- "Error : " msg <- paste0(prefix, conditionMessage(e), "\n") .Internal(seterrmessage(msg[1L])) if (!silent && isTRUE(getOption("show.error.messages"))) { cat(msg, file = outFile) .Internal(printDeferredWarnings()) } invisible(structure(msg, class = "try-error", condition = e))})
7: try(lapply(X = S, FUN = FUN, ...), silent = TRUE)
8: sendMaster(try(lapply(X = S, FUN = FUN, ...), silent = TRUE))
9: FUN(X[[i]], ...)
10: lapply(seq_len(cores), inner.do)
11: parallel::mclapply(gene_blocks, coefficient_rows, Z = Z, d = d, nComp = nComp, secular_weights = secular_weights, mc.cores = nCores, mc.preschedule = TRUE)
12: .pcNetCoefficients(basis$Z, basis$d, nComp, nCores)
13: pcNet(X, nComp = nComp, verbose = FALSE, nCores = 2)
14: eval_bare(expr, quo_get_env(quo))
15: quasi_label(enquo(object), label)
16: expect_equal(pcNet(X, nComp = nComp, verbose = FALSE, nCores = 2), pcNet(X, nComp = nComp, verbose = FALSE))
17: eval(code, test_env)
18: eval(code, test_env)
19: 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)
20: doTryCatch(return(expr), name, parentenv, handler)
21: tryCatchOne(expr, names, parentenv, handlers[[1L]])
22: tryCatchList(expr, classes, parentenv, handlers)
23: 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)
24: doWithOneRestart(return(expr), restart)
25: withOneRestart(expr, restarts[[1L]])
26: 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() { })
27: test_code(code, parent.frame())
28: test_that("pcNet matches per-gene SVD principal component regression", { nCells <- 200 nGenes <- 100 nComp <- 3 set.seed(42) X <- matrix(rnbinom(n = nGenes * nCells, size = 20, prob = 0.98), nrow = nGenes, ncol = nCells) rownames(X) <- paste0("Gene", seq_len(nGenes)) X_std <- scale(Matrix::t(X)) reference <- matrix(0, nGenes, nGenes) for (K in seq_len(nGenes)) { design_matrix <- X_std[, -K] principal_components <- svd(design_matrix, nu = 0, nv = nComp)$v pc_scores <- design_matrix %*% principal_components pc_coefficients <- colSums(X_std[, K] * pc_scores)/colSums(pc_scores^2) reference[K, -K] <- principal_components %*% pc_coefficients } xNet <- pcNet(X, nComp = nComp, scaleScores = FALSE, verbose = FALSE) expect_equal(unname(as.matrix(xNet)), reference, tolerance = 1e-08) expect_equal(pcNet(X, nComp = nComp, verbose = FALSE, nCores = 2), pcNet(X, nComp = nComp, verbose = FALSE)) })
29: eval(code, test_env)
30: eval(code, test_env)
31: 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)
32: doTryCatch(return(expr), name, parentenv, handler)
33: tryCatchOne(expr, names, parentenv, handlers[[1L]])
34: tryCatchList(expr, classes, parentenv, handlers)
Traceback:
1: FUN(X[[i]], ...)
35: 2: tryCatch(withCallingHandlers({lapply(X = S, FUN = FUN, ...) eval(code, test_env) new_expectations <- the$test_expectations > starting_expectations
if (snapshot_skipped) { 3: skip("On CRAN")doTryCatch(return(expr), name, parentenv, handler) }
else if (!new_expectations && skip_on_empty) { 4: skip_empty()tryCatchOne(expr, names, parentenv, handlers[[1L]]) }
}, expectation = handle_expectation, packageNotFoundError = function(e) { 5: if (on_cran()) {tryCatchList(expr, classes, parentenv, handlers) skip(paste0("{", e$package, "} is not installed."))
} 6: }, snapshot_on_cran = function(cnd) {tryCatch(expr, error = function(e) { snapshot_skipped <<- TRUE call <- conditionCall(e) if (!is.null(call)) { invokeRestart("muffle_cran_snapshot") if (identical(call[[1L]], quote(doTryCatch))) }, skip = handle_skip, warning = handle_warning, message = handle_message, call <- sys.call(-4L) error = handle_error, interrupt = handle_interrupt), error = handle_fatal) dcall <- deparse(call, nlines = 1L)
prefix <- paste("Error in", dcall, ": ") LONG <- 75L sm <- strsplit(conditionMessage(e), "\n")[[1L]]36: w <- 14L + nchar(dcall, type = "w") + nchar(sm[1L], type = "w")doWithOneRestart(return(expr), restart) if (is.na(w))
w <- 14L + nchar(dcall, type = "b") + nchar(sm[1L], 37: withOneRestart(expr, restarts[[1L]]) type = "b")
if (w > LONG) prefix <- paste0(prefix, "\n ")38: }withRestarts(tryCatch(withCallingHandlers({ else prefix <- "Error : " eval(code, test_env) msg <- paste0(prefix, conditionMessage(e), "\n") new_expectations <- the$test_expectations > starting_expectations .Internal(seterrmessage(msg[1L])) if (!silent && isTRUE(getOption("show.error.messages"))) { if (snapshot_skipped) { cat(msg, file = outFile) skip("On CRAN") .Internal(printDeferredWarnings()) } } else if (!new_expectations && skip_on_empty) { invisible(structure(msg, class = "try-error", condition = e)) skip_empty()})
} 7: }, expectation = handle_expectation, packageNotFoundError = function(e) {try(lapply(X = S, FUN = FUN, ...), silent = TRUE) if (on_cran()) {
skip(paste0("{", e$package, "} is not installed.")) 8: }sendMaster(try(lapply(X = S, FUN = FUN, ...), silent = TRUE))}, snapshot_on_cran = function(cnd) {
snapshot_skipped <<- TRUE invokeRestart("muffle_cran_snapshot") 9: FUN(X[[i]], ...)}, skip = handle_skip, warning = handle_warning, message = handle_message,
error = handle_error, interrupt = handle_interrupt), error = handle_fatal), 10: end_test = function() {lapply(seq_len(cores), inner.do) })
11: 39: test_code(code = exprs, env = env, reporter = get_reporter() %||% parallel::mclapply(gene_blocks, coefficient_rows, Z = Z, d = d, StopReporter$new()) nComp = nComp, secular_weights = secular_weights, mc.cores = nCores,
mc.preschedule = TRUE)40:
12: source_file(path, env = env(env), desc = desc, shuffle = shuffle, .pcNetCoefficients(basis$Z, basis$d, nComp, nCores) error_call = error_call)
13: 41: pcNet(X, nComp = nComp, verbose = FALSE, nCores = 2)FUN(X[[i]], ...)
14: 42: eval_bare(expr, quo_get_env(quo))lapply(test_paths, test_one_file, env = env, desc = desc, shuffle = shuffle,
error_call = error_call)15:
quasi_label(enquo(object), label)
43: 16: doTryCatch(return(expr), name, parentenv, handler)expect_equal(pcNet(X, nComp = nComp, verbose = FALSE, nCores = 2),
pcNet(X, nComp = nComp, verbose = FALSE))44:
tryCatchOne(expr, names, parentenv, handlers[[1L]])
17: 45: eval(code, test_env)tryCatchList(expr, classes, parentenv, handlers)
18: 46: eval(code, test_env)tryCatch(code, testthat_abort_reporter = function(cnd) {
cat(conditionMessage(cnd), "\n")19: NULL})withCallingHandlers({
eval(code, test_env)47: new_expectations <- the$test_expectations > starting_expectationswith_reporter(reporters$multi, lapply(test_paths, test_one_file, if (snapshot_skipped) { env = env, desc = desc, shuffle = shuffle, error_call = error_call)) skip("On CRAN")
}48: else if (!new_expectations && skip_on_empty) {test_files_serial(test_dir = test_dir, test_package = test_package, skip_empty() test_paths = test_paths, load_helpers = load_helpers, reporter = reporter, } env = env, stop_on_failure = stop_on_failure, stop_on_warning = stop_on_warning, }, expectation = handle_expectation, packageNotFoundError = function(e) { desc = desc, load_package = load_package, shuffle = shuffle, if (on_cran()) { error_call = error_call) skip(paste0("{", e$package, "} is not installed."))
49: }test_files(test_dir = path, test_paths = test_paths, test_package = package, }, snapshot_on_cran = function(cnd) { snapshot_skipped <<- TRUE reporter = reporter, load_helpers = load_helpers, env = env, invokeRestart("muffle_cran_snapshot") stop_on_failure = stop_on_failure, stop_on_warning = stop_on_warning, }, skip = handle_skip, warning = handle_warning, message = handle_message, load_package = load_package, parallel = parallel, shuffle = shuffle) error = handle_error, interrupt = handle_interrupt)
20: 50: doTryCatch(return(expr), name, parentenv, handler)test_dir("testthat", package = package, reporter = reporter,
..., load_package = "installed")21:
tryCatchOne(expr, names, parentenv, handlers[[1L]])
51: 22: test_check("scTenifoldNet")tryCatchList(expr, classes, parentenv, handlers)
An irrecoverable exception occurred. R is aborting now ...
23: 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)
24: doWithOneRestart(return(expr), restart)
25: withOneRestart(expr, restarts[[1L]])
26: 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() { })
27: test_code(code, parent.frame())
28: test_that("pcNet matches per-gene SVD principal component regression", { nCells <- 200 nGenes <- 100 nComp <- 3 set.seed(42) X <- matrix(rnbinom(n = nGenes * nCells, size = 20, prob = 0.98), nrow = nGenes, ncol = nCells) rownames(X) <- paste0("Gene", seq_len(nGenes)) X_std <- scale(Matrix::t(X)) reference <- matrix(0, nGenes, nGenes) for (K in seq_len(nGenes)) { design_matrix <- X_std[, -K] principal_components <- svd(design_matrix, nu = 0, nv = nComp)$v pc_scores <- design_matrix %*% principal_components pc_coefficients <- colSums(X_std[, K] * pc_scores)/colSums(pc_scores^2) reference[K, -K] <- principal_components %*% pc_coefficients } xNet <- pcNet(X, nComp = nComp, scaleScores = FALSE, verbose = FALSE) expect_equal(unname(as.matrix(xNet)), reference, tolerance = 1e-08) expect_equal(pcNet(X, nComp = nComp, verbose = FALSE, nCores = 2), pcNet(X, nComp = nComp, verbose = FALSE)) })
29: eval(code, test_env)
30: eval(code, test_env)
31: 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)
32: doTryCatch(return(expr), name, parentenv, handler)
33: tryCatchOne(expr, names, parentenv, handlers[[1L]])
34: tryCatchList(expr, classes, parentenv, handlers)
35: 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)
36: doWithOneRestart(return(expr), restart)
37: withOneRestart(expr, restarts[[1L]])
38: 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() { })
39: test_code(code = exprs, env = env, reporter = get_reporter() %||% StopReporter$new())
40: source_file(path, env = env(env), desc = desc, shuffle = shuffle, error_call = error_call)
41: FUN(X[[i]], ...)
42: lapply(test_paths, test_one_file, env = env, desc = desc, shuffle = shuffle, error_call = error_call)
43: doTryCatch(return(expr), name, parentenv, handler)
44: tryCatchOne(expr, names, parentenv, handlers[[1L]])
45: tryCatchList(expr, classes, parentenv, handlers)
46: tryCatch(code, testthat_abort_reporter = function(cnd) { cat(conditionMessage(cnd), "\n") NULL})
47: with_reporter(reporters$multi, lapply(test_paths, test_one_file, env = env, desc = desc, shuffle = shuffle, error_call = error_call))
48: 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)
49: 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)
50: test_dir("testthat", package = package, reporter = reporter, ..., load_package = "installed")
51: test_check("scTenifoldNet")
An irrecoverable exception occurred. R is aborting now ...
Saving _problems/test-pcNet-89.R
[ FAIL 1 | WARN 1 | SKIP 0 | PASS 66 ]
══ Failed tests ════════════════════════════════════════════════════════════════
── Error ('test-pcNet.R:88:3'): pcNet matches per-gene SVD principal component regression ──
Error in `.pcNetCoefficients(basis$Z, basis$d, nComp, nCores)`: Parallel computation failed:
Backtrace:
▆
1. ├─testthat::expect_equal(...) at test-pcNet.R:88:3
2. │ └─testthat::quasi_label(enquo(object), label)
3. │ └─rlang::eval_bare(expr, quo_get_env(quo))
4. └─scTenifoldNet::pcNet(X, nComp = nComp, verbose = FALSE, nCores = 2)
5. └─scTenifoldNet:::.pcNetCoefficients(basis$Z, basis$d, nComp, nCores)
[ FAIL 1 | WARN 1 | SKIP 0 | PASS 66 ]
Error:
! Test failures.
Execution halted
Flavor: r-oldrel-macos-arm64