- using R Under development (unstable) (2024-12-20 r87452)
- using platform: x86_64-pc-linux-gnu
- R was compiled by
gcc-14 (Debian 14.2.0-8) 14.2.0
GNU Fortran (Debian 14.2.0-8) 14.2.0
- running under: Debian GNU/Linux trixie/sid
- using session charset: UTF-8
- checking for file ‘timeplyr/DESCRIPTION’ ... OK
- this is package ‘timeplyr’ version ‘0.8.2’
- package encoding: UTF-8
- checking package namespace information ... OK
- checking package dependencies ... OK
- checking if this is a source package ... OK
- checking if there is a namespace ... OK
- checking for executable files ... OK
- checking for hidden files and directories ... OK
- checking for portable file names ... OK
- checking for sufficient/correct file permissions ... OK
- checking whether package ‘timeplyr’ can be installed ... OK
See the install log for details.
- used C++ compiler: ‘g++-14 (Debian 14.2.0-8) 14.2.0’
- checking package directory ... OK
- checking for future file timestamps ... OK
- checking DESCRIPTION meta-information ... OK
- checking top-level files ... OK
- checking for left-over files ... OK
- checking index information ... OK
- checking package subdirectories ... OK
- checking code files for non-ASCII characters ... OK
- checking R files for syntax errors ... OK
- checking whether the package can be loaded ... [1s/1s] OK
- checking whether the package can be loaded with stated dependencies ... [1s/1s] OK
- checking whether the package can be unloaded cleanly ... [0s/1s] OK
- checking whether the namespace can be loaded with stated dependencies ... [1s/1s] OK
- checking whether the namespace can be unloaded cleanly ... [1s/1s] OK
- checking loading without being on the library search path ... [1s/1s] OK
- checking whether startup messages can be suppressed ... [1s/1s] OK
- checking use of S3 registration ... OK
- checking dependencies in R code ... OK
- checking S3 generic/method consistency ... OK
- checking replacement functions ... OK
- checking foreign function calls ... OK
- checking R code for possible problems ... [22s/26s] OK
- checking Rd files ... [1s/1s] OK
- checking Rd metadata ... OK
- checking Rd line widths ... OK
- checking Rd cross-references ... OK
- checking for missing documentation entries ... OK
- checking for code/documentation mismatches ... OK
- checking Rd \usage sections ... OK
- checking Rd contents ... OK
- checking for unstated dependencies in examples ... OK
- checking line endings in C/C++/Fortran sources/headers ... OK
- checking pragmas in C/C++ headers and code ... OK
- checking compilation flags used ... OK
- checking compiled code ... OK
- checking examples ... [12s/14s] OK
- checking for unstated dependencies in ‘tests’ ... OK
- checking tests ... [12s/13s] ERROR
Running ‘testthat.R’ [11s/13s]
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
> library(testthat)
> library(timeplyr)
> Sys.unsetenv("R_TESTS")
> # Sys.setenv("OMP_THREAD_LIMIT" = 2)
> # data.table::setDTthreads(threads = 1L)
> # collapse::set_collapse(nthreads = 1L)
>
> reset_timeplyr_options()
> test_check("timeplyr", reporter = c("check", "location"))
Start test: Expect error
'test-age_years.R:7:3' [success]
'test-age_years.R:8:3' [success]
'test-age_years.R:9:3' [success]
'test-age_years.R:10:3' [success]
'test-age_years.R:11:3' [success]
End test: Expect error
Start test: Expect zero length vector
'test-age_years.R:19:3' [success]
End test: Expect zero length vector
Start test: Expect NA
'test-age_years.R:24:3' [success]
'test-age_years.R:26:3' [success]
End test: Expect NA
Start test: Leap year
'test-age_years.R:36:3' [success]
'test-age_years.R:37:3' [success]
End test: Leap year
Start test: bincode
'test-bin.R:14:3' [success]
'test-bin.R:18:3' [success]
'test-bin.R:22:3' [success]
'test-bin.R:26:3' [success]
'test-bin.R:30:3' [success]
'test-bin.R:37:3' [success]
'test-bin.R:41:3' [success]
'test-bin.R:45:3' [success]
'test-bin.R:49:3' [success]
'test-bin.R:53:3' [success]
'test-bin.R:63:3' [success]
'test-bin.R:67:3' [success]
'test-bin.R:71:3' [success]
'test-bin.R:75:3' [success]
'test-bin.R:79:3' [success]
'test-bin.R:87:3' [success]
'test-bin.R:91:3' [success]
'test-bin.R:95:3' [success]
'test-bin.R:103:3' [success]
'test-bin.R:107:3' [success]
'test-bin.R:111:3' [success]
'test-bin.R:115:3' [success]
'test-bin.R:119:3' [success]
'test-bin.R:124:3' [success]
'test-bin.R:128:3' [success]
'test-bin.R:132:3' [success]
'test-bin.R:136:3' [success]
'test-bin.R:140:3' [success]
'test-bin.R:148:3' [success]
'test-bin.R:152:3' [success]
'test-bin.R:156:3' [success]
'test-bin.R:160:3' [success]
'test-bin.R:164:3' [success]
End test: bincode
Start test: calendar
'test-calendar.R:15:3' [success]
'test-calendar.R:18:3' [success]
End test: calendar
Start test: Test cross-join
'test-crossed_join.R:11:3' [success]
'test-crossed_join.R:19:3' [success]
'test-crossed_join.R:28:3' [success]
'test-crossed_join.R:37:3' [success]
'test-crossed_join.R:44:3' [success]
'test-crossed_join.R:52:3' [success]
End test: Test cross-join
Start test: Test desc/asc
'test-desc.R:9:3' [success]
End test: Test desc/asc
Start test: Compare to dplyr
'test-df_reconstruct.R:14:3' [success]
'test-df_reconstruct.R:16:3' [success]
'test-df_reconstruct.R:18:3' [success]
'test-df_reconstruct.R:20:3' [success]
'test-df_reconstruct.R:22:3' [success]
'test-df_reconstruct.R:28:3' [success]
'test-df_reconstruct.R:30:3' [success]
'test-df_reconstruct.R:32:3' [success]
'test-df_reconstruct.R:34:3' [success]
'test-df_reconstruct.R:36:3' [success]
'test-df_reconstruct.R:38:3' [success]
'test-df_reconstruct.R:40:3' [success]
'test-df_reconstruct.R:42:3' [success]
'test-df_reconstruct.R:44:3' [success]
'test-df_reconstruct.R:50:3' [success]
'test-df_reconstruct.R:52:3' [success]
End test: Compare to dplyr
Start test: duplicate_rows
'test-duplicate_rows.R:19:3' [success]
'test-duplicate_rows.R:20:3' [success]
'test-duplicate_rows.R:22:3' [success]
'test-duplicate_rows.R:30:3' [success]
'test-duplicate_rows.R:31:3' [success]
'test-duplicate_rows.R:34:3' [success]
'test-duplicate_rows.R:37:3' [success]
'test-duplicate_rows.R:41:3' [success]
'test-duplicate_rows.R:45:3' [success]
'test-duplicate_rows.R:49:3' [success]
'test-duplicate_rows.R:56:3' [success]
End test: duplicate_rows
Start test: edf
'test-edf.R:9:1' [success]
'test-edf.R:10:1' [success]
'test-edf.R:18:1' [success]
'test-edf.R:26:1' [success]
'test-edf.R:35:1' [success]
'test-edf.R:40:1' [success]
'test-edf.R:41:1' [success]
'test-edf.R:48:1' [success]
'test-edf.R:56:1' [success]
'test-edf.R:64:1' [success]
'test-edf.R:67:1' [success]
'test-edf.R:69:1' [success]
'test-edf.R:72:1' [success]
End test: edf
Start test: farrange
'test-farrange.R:7:3' [success]
'test-farrange.R:29:3' [success]
'test-farrange.R:30:3' [success]
'test-farrange.R:31:3' [success]
End test: farrange
Start test: Compare to dplyr
'test-fcount.R:11:3' [success]
'test-fcount.R:19:3' [success]
'test-fcount.R:21:3' [success]
'test-fcount.R:27:3' [success]
'test-fcount.R:36:3' [success]
'test-fcount.R:44:3' [success]
'test-fcount.R:52:3' [success]
'test-fcount.R:59:3' [success]
'test-fcount.R:66:3' [success]
'test-fcount.R:72:3' [success]
'test-fcount.R:74:3' [success]
'test-fcount.R:76:3' [success]
'test-fcount.R:80:3' [success]
'test-fcount.R:84:3' [success]
'test-fcount.R:92:3' [success]
'test-fcount.R:94:3' [success]
'test-fcount.R:96:3' [success]
'test-fcount.R:101:3' [success]
'test-fcount.R:103:3' [success]
'test-fcount.R:105:3' [success]
'test-fcount.R:113:3' [success]
'test-fcount.R:117:3' [success]
'test-fcount.R:119:3' [success]
'test-fcount.R:121:3' [success]
'test-fcount.R:123:3' [success]
'test-fcount.R:127:3' [success]
'test-fcount.R:131:3' [success]
'test-fcount.R:135:3' [success]
'test-fcount.R:137:3' [success]
'test-fcount.R:149:3' [success]
'test-fcount.R:153:3' [success]
Storing counts in `nn`, as `n` already present in input
i Use `name = "new_name"` to pick a new name.
'test-fcount.R:158:3' [success]
'test-fcount.R:162:3' [success]
'test-fcount.R:168:3' [success]
End test: Compare to dplyr
Start test: Compare to dplyr, add_count
'test-fcount.R:181:3' [success]
'test-fcount.R:189:3' [success]
'test-fcount.R:193:3' [success]
'test-fcount.R:195:3' [success]
'test-fcount.R:202:3' [success]
'test-fcount.R:209:3' [success]
'test-fcount.R:215:3' [success]
'test-fcount.R:217:3' [success]
'test-fcount.R:219:3' [success]
*** caught segfault ***
address 0x1, cause 'memory not mapped'
Traceback:
1: cpp_sorted_group_starts(as.integer(group_sizes), init_loc)
2: calc_sorted_group_starts(GRP_sizes)
3: GRP_starts(out)
4: GRP3(safe_ungroup(data), sort = order, return.order = return.order, return.groups = return.groups, call = FALSE)
5: df_to_GRP(out, .cols = all_vars, return.order = FALSE, order = order)
6: fadd_count(., Species)
7: iris %>% dplyr::slice(0) %>% fadd_count(Species)
8: eval_bare(expr, quo_get_env(quo))
9: quasi_label(enquo(expected), expected.label, arg = "expected")
10: testthat::expect_equal(iris %>% dplyr::slice(0) %>% dplyr::add_count(Species), iris %>% dplyr::slice(0) %>% fadd_count(Species))
11: eval(code, test_env)
12: eval(code, test_env)
13: 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)
14: doTryCatch(return(expr), name, parentenv, handler)
15: tryCatchOne(expr, names, parentenv, handlers[[1L]])
16: tryCatchList(expr, names[-nh], parentenv, handlers[-nh])
17: doTryCatch(return(expr), name, parentenv, handler)
18: tryCatchOne(tryCatchList(expr, names[-nh], parentenv, handlers[-nh]), names[nh], parentenv, handlers[[nh]])
19: tryCatchList(expr, classes, parentenv, handlers)
20: 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) { })
21: test_code(desc, code, env = parent.frame(), reporter = reporter)
22: testthat::test_that("Compare to dplyr, add_count", { set.seed(42) weights <- sample(1:150) iris[["weight"]] <- weights flights <- nycflights13::flights testthat::expect_equal(iris %>% dplyr::mutate(interval = lubridate::interval(lubridate::today(), lubridate::today())) %>% fadd_count(), iris %>% dplyr::mutate(interval = lubridate::interval(lubridate::today(), lubridate::today())) %>% dplyr::add_count()) testthat::expect_equal(iris %>% fadd_count(), iris %>% dplyr::mutate(n = dplyr::n())) testthat::expect_equal(iris %>% dplyr::add_count(), iris %>% fadd_count()) testthat::expect_equal(iris %>% dplyr::group_by(Species) %>% dplyr::add_count(across(all_of("Species"))), iris %>% dplyr::group_by(Species) %>% fadd_count()) testthat::expect_equal(iris %>% dplyr::group_by(Species) %>% dplyr::add_count(across(all_of(c("Species", "Sepal.Length")))), iris %>% dplyr::group_by(Species) %>% fadd_count(across(all_of(c("Sepal.Length"))))) testthat::expect_equal(iris %>% dplyr::group_by(Species) %>% dplyr::add_count(Species), iris %>% dplyr::group_by(Species) %>% fadd_count(Species)) testthat::expect_equal(iris %>% dplyr::add_count(NULL), iris %>% fadd_count(NULL)) testthat::expect_equal(iris %>% dplyr::slice(0) %>% dplyr::add_count(), iris %>% dplyr::slice(0) %>% fadd_count()) testthat::expect_equal(iris %>% dplyr::group_by(Species) %>% dplyr::slice(0) %>% dplyr::add_count(), iris %>% dplyr::group_by(Species) %>% dplyr::slice(0) %>% fadd_count()) testthat::expect_equal(iris %>% dplyr::slice(0) %>% dplyr::add_count(Species), iris %>% dplyr::slice(0) %>% fadd_count(Species)) testthat::expect_equal(iris %>% dplyr::group_by(Species) %>% dplyr::slice(0) %>% dplyr::add_count(Species), iris %>% dplyr::group_by(Species) %>% dplyr::slice(0) %>% fadd_count(Species)) testthat::expect_equal(iris %>% dplyr::add_count(NA), iris %>% fadd_count(NA)) testthat::expect_equal(iris %>% dplyr::add_count(across(dplyr::everything())), iris %>% fadd_count(across(dplyr::everything()))) testthat::expect_equal(iris %>% dplyr::add_count(across(dplyr::everything()), wt = weight), iris %>% fadd_count(across(dplyr::everything()), wt = weight) %>% dplyr::mutate(n = as.integer(n))) testthat::expect_equal(iris %>% dplyr::add_count(), iris %>% fadd_count()) testthat::expect_equal(iris %>% dplyr::add_count(name = ".count"), iris %>% fadd_count(name = ".count")) testthat::expect_equal(iris %>% dplyr::group_by(Species) %>% dplyr::add_count(Sepal.Length) %>% dplyr::add_count(n, name = "n"), iris %>% dplyr::group_by(Species) %>% fadd_count(Sepal.Length) %>% fadd_count(n, name = "n")) testthat::expect_equal(iris %>% dplyr::group_by(Species) %>% dplyr::add_count(), iris %>% dplyr::group_by(Species) %>% fadd_count()) testthat::expect_equal(iris %>% dplyr::group_by(across(everything())) %>% dplyr::add_count(), iris %>% dplyr::group_by(across(everything())) %>% fadd_count()) testthat::expect_equal(iris %>% dplyr::group_by(across(everything())) %>% dplyr::add_count(Species), iris %>% dplyr::group_by(across(everything())) %>% fadd_count(Species)) testthat::expect_equal(iris %>% dplyr::group_by(Species) %>% dplyr::add_count(Species), iris %>% dplyr::group_by(Species) %>% fadd_count(Species)) testthat::expect_equal(iris %>% dplyr::group_by(Species) %>% dplyr::add_count(across(all_of(c("Sepal.Length")))), iris %>% dplyr::group_by(Species) %>% fadd_count(across(all_of(c("Sepal.Length"))))) testthat::expect_equal(iris %>% dplyr::group_by(Species) %>% dplyr::add_count(across(dplyr::any_of(c("Species", "Sepal.Length")))), iris %>% dplyr::group_by(Species) %>% fadd_count(across(dplyr::any_of(c("Species", "Sepal.Length"))))) testthat::expect_equal(iris %>% dplyr::add_count(as.character(Species)), iris %>% fadd_count(as.character(Species))) testthat::expect_equal(flights %>% dplyr::add_count(tailnum, origin, dest), flights %>% fadd_count(tailnum, origin, dest)) testthat::expect_equal(flights %>% dplyr::add_count(tailnum, origin, dest, sort = TRUE), flights %>% fadd_count(tailnum, origin, dest, sort = TRUE)) res1 <- flights %>% fcount(origin, dest) set.seed(812123123) wt1 <- rep_len(3L, nrow(res1)) wt2 <- sample2(1:10, size = nrow(res1), replace = TRUE) res1 <- res1 %>% dplyr::mutate(wt2) testthat::expect_equal(res1 %>% dplyr::add_count(origin, dest, wt = wt2), res1 %>% fadd_count(origin, dest, wt = wt2)) testthat::expect_equal(res1 %>% dplyr::mutate(wt1) %>% dplyr::add_count(origin, dest, wt = wt1), res1 %>% dplyr::mutate(wt1) %>% fadd_count(origin, dest, wt = wt1)) testthat::expect_equal(res1 %>% dplyr::add_count(origin, dest, n, wt = wt2), res1 %>% fadd_count(origin, dest, n, wt = wt2)) testthat::expect_equal(res1 %>% dplyr::add_count(origin, dest, wt = n), res1 %>% fadd_count(origin, dest, wt = n)) testthat::expect_equal(iris %>% dplyr::group_by(Species) %>% dplyr::add_count(Species = Sepal.Length), iris %>% dplyr::group_by(Species) %>% fadd_count(Species = Sepal.Length))})
23: eval(code, test_env)
24: eval(code, test_env)
25: 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)
26: doTryCatch(return(expr), name, parentenv, handler)
27: tryCatchOne(expr, names, parentenv, handlers[[1L]])
28: tryCatchList(expr, names[-nh], parentenv, handlers[-nh])
29: doTryCatch(return(expr), name, parentenv, handler)
30: tryCatchOne(tryCatchList(expr, names[-nh], parentenv, handlers[-nh]), names[nh], parentenv, handlers[[nh]])
31: tryCatchList(expr, classes, parentenv, handlers)
32: 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) { })
33: test_code(test = NULL, code = exprs, env = env, reporter = get_reporter() %||% StopReporter$new())
34: source_file(path, env = env(env), desc = desc, error_call = error_call)
35: FUN(X[[i]], ...)
36: lapply(test_paths, test_one_file, env = env, desc = desc, error_call = error_call)
37: doTryCatch(return(expr), name, parentenv, handler)
38: tryCatchOne(expr, names, parentenv, handlers[[1L]])
39: tryCatchList(expr, classes, parentenv, handlers)
40: tryCatch(code, testthat_abort_reporter = function(cnd) { cat(conditionMessage(cnd), "\n") NULL})
41: with_reporter(reporters$multi, lapply(test_paths, test_one_file, env = env, desc = desc, error_call = error_call))
42: 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)
43: 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)
44: test_dir("testthat", package = package, reporter = reporter, ..., load_package = "installed")
45: test_check("timeplyr", reporter = c("check", "location"))
An irrecoverable exception occurred. R is aborting now ...
Segmentation fault
- checking PDF version of manual ... [6s/7s] OK
- checking HTML version of manual ... [2s/3s] OK
- checking for non-standard things in the check directory ... OK
- DONE
Status: 1 ERROR