R Under development (unstable) (2026-02-18 r89435 ucrt) -- "Unsuffered Consequences" Copyright (C) 2026 The R Foundation for Statistical Computing Platform: x86_64-w64-mingw32/x64 R is free software and comes with ABSOLUTELY NO WARRANTY. You are welcome to redistribute it under certain conditions. Type 'license()' or 'licence()' for distribution details. R is a collaborative project with many contributors. Type 'contributors()' for more information and 'citation()' on how to cite R or R packages in publications. Type 'demo()' for some demos, 'help()' for on-line help, or 'help.start()' for an HTML browser interface to help. Type 'q()' to quit R. > library(testthat) > library(arl) > > test_check("arl") Saving _problems/test-doc-parser-254.R Saving _problems/test-doc-parser-339.R Saving _problems/test-import-edge-cases-67.R Saving _problems/test-import-edge-cases-93.R Saving _problems/test-import-edge-cases-136.R Saving _problems/test-import-edge-cases-151.R Saving _problems/test-import-edge-cases-175.R Saving _problems/test-import-edge-cases-200.R Saving _problems/test-import-edge-cases-282.R Saving _problems/test-import-edge-cases-302.R Saving _problems/test-import-edge-cases-320.R Saving _problems/test-module-cache-472.R Saving _problems/test-stdlib-io-19.R Saving _problems/test-stdlib-io-37.R Saving _problems/test-stdlib-io-55.R Saving _problems/test-stdlib-io-73.R Saving _problems/test-stdlib-io-104.R Saving _problems/test-stdlib-io-120.R Saving _problems/test-stdlib-io-149.R Saving _problems/test-stdlib-io-167.R Saving _problems/test-stdlib-io-208.R Saving _problems/test-stdlib-io-225.R Saving _problems/test-stdlib-io-245.R Saving _problems/test-stdlib-io-277.R [ FAIL 26 | WARN 4 | SKIP 18 | PASS 3634 ] ══ Skipped tests (18) ══════════════════════════════════════════════════════════ • Benchmark infrastructure not found (14): 'test-benchmarks.R:30:3', 'test-benchmarks.R:47:3', 'test-benchmarks.R:72:3', 'test-benchmarks.R:109:3', 'test-benchmarks.R:137:3', 'test-benchmarks.R:158:3', 'test-benchmarks.R:189:3', 'test-benchmarks.R:224:3', 'test-benchmarks.R:273:3', 'test-benchmarks.R:311:3', 'test-benchmarks.R:338:3', 'test-benchmarks.R:366:3', 'test-benchmarks.R:389:3', 'test-benchmarks.R:413:3' • No .Rmd vignettes found (1): 'test-vignette-arl-chunks.R:54:1' • On Windows (1): 'test-cli.R:139:3' • dir.exists(stdlib_dir) is not TRUE (2): 'test-file-deps.R:26:3', 'test-file-deps.R:50:3' ══ Failed tests ════════════════════════════════════════════════════════════════ ── Error ('test-doc-parser.R:254:3'): annotation-based docs are available via compiler ── Error: File not found: D: emp\2026_02_23_11_20_16_15377\Rtmp4WUrHm\filee1871e4215c.arl Backtrace: ▆ 1. └─engine$eval(...) at test-doc-parser.R:254:3 2. └─private$.source_tracker$with_error_context(...) 3. └─base::tryCatch(...) 4. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 5. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 6. └─value[[3L]](cond) ── Error ('test-doc-parser.R:339:3'): @param tags produce arl_doc$arguments via compiler ── Error: File not found: D: emp\2026_02_23_11_20_16_15377\Rtmp4WUrHm\filee1810e48f3.arl Backtrace: ▆ 1. └─engine$eval(...) at test-doc-parser.R:339:3 2. └─private$.source_tracker$with_error_context(...) 3. └─base::tryCatch(...) 4. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 5. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 6. └─value[[3L]](cond) ── Error ('test-import-edge-cases.R:67:3'): module is cached after first load ── Error: File not found: D: emp\2026_02_23_11_20_16_15377\Rtmp4WUrHm/test_cache_module.arl Backtrace: ▆ 1. └─engine$eval_text(sprintf("(load \"%s\")", module_path)) at test-import-edge-cases.R:67:3 2. ├─base::do.call(self$eval, c(exprs, list(env = env)), quote = TRUE) 3. └─arl (local) ``(base::quote(load(``)), env = base::quote(NULL)) 4. └─private$.source_tracker$with_error_context(...) 5. └─base::tryCatch(...) 6. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 7. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 8. └─value[[3L]](cond) ── Error ('test-import-edge-cases.R:93:3'): load returns last value from module ── Error: File not found: D: emp\2026_02_23_11_20_16_15377\Rtmp4WUrHm/test_return_module.arl Backtrace: ▆ 1. └─engine$eval_text(sprintf("(load \"%s\")", module_path)) at test-import-edge-cases.R:93:3 2. ├─base::do.call(self$eval, c(exprs, list(env = env)), quote = TRUE) 3. └─arl (local) ``(base::quote(load(``)), env = base::quote(NULL)) 4. └─private$.source_tracker$with_error_context(...) 5. └─base::tryCatch(...) 6. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 7. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 8. └─value[[3L]](cond) ── Error ('test-import-edge-cases.R:133:3'): load with runtime error in module ── Error: File not found: D: emp\2026_02_23_11_20_16_15377\Rtmp4WUrHm/test_runtime_error.arl Backtrace: ▆ 1. ├─testthat::expect_error(...) at test-import-edge-cases.R:133:3 2. │ └─testthat:::expect_condition_matching_(...) 3. │ └─testthat:::quasi_capture(...) 4. │ ├─testthat (local) .capture(...) 5. │ │ └─base::withCallingHandlers(...) 6. │ └─rlang::eval_bare(quo_get_expr(.quo), quo_get_env(.quo)) 7. └─engine$eval_text(sprintf("(load \"%s\")", module_path)) 8. ├─base::do.call(self$eval, c(exprs, list(env = env)), quote = TRUE) 9. └─arl (local) ``(base::quote(load(``)), env = base::quote(NULL)) 10. └─private$.source_tracker$with_error_context(...) 11. └─base::tryCatch(...) 12. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 13. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 14. └─value[[3L]](cond) ── Error ('test-import-edge-cases.R:151:3'): multiple loads of same module ───── Error: File not found: D: emp\2026_02_23_11_20_16_15377\Rtmp4WUrHm/test_multiple_load.arl Backtrace: ▆ 1. └─engine$eval_text(sprintf("(load \"%s\")", module_path)) at test-import-edge-cases.R:151:3 2. ├─base::do.call(self$eval, c(exprs, list(env = env)), quote = TRUE) 3. └─arl (local) ``(base::quote(load(``)), env = base::quote(NULL)) 4. └─private$.source_tracker$with_error_context(...) 5. └─base::tryCatch(...) 6. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 7. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 8. └─value[[3L]](cond) ── Error ('test-import-edge-cases.R:175:3'): load can access previously defined symbols ── Error: File not found: D: emp\2026_02_23_11_20_16_15377\Rtmp4WUrHm/test_access_symbols.arl Backtrace: ▆ 1. └─engine$eval_text(sprintf("(load \"%s\")", module_path)) at test-import-edge-cases.R:175:3 2. ├─base::do.call(self$eval, c(exprs, list(env = env)), quote = TRUE) 3. └─arl (local) ``(base::quote(load(``)), env = base::quote(NULL)) 4. └─private$.source_tracker$with_error_context(...) 5. └─base::tryCatch(...) 6. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 7. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 8. └─value[[3L]](cond) ── Error ('test-import-edge-cases.R:200:3'): nested module loads ─────────────── Error: File not found: D: emp\2026_02_23_11_20_16_15377\Rtmp4WUrHm/test_module_a.arl Backtrace: ▆ 1. └─engine$eval_text(sprintf("(load \"%s\")", module_a_path)) at test-import-edge-cases.R:200:3 2. ├─base::do.call(self$eval, c(exprs, list(env = env)), quote = TRUE) 3. └─arl (local) ``(base::quote(load(``)), env = base::quote(NULL)) 4. └─private$.source_tracker$with_error_context(...) 5. └─base::tryCatch(...) 6. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 7. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 8. └─value[[3L]](cond) ── Error ('test-import-edge-cases.R:282:3'): load empty module ───────────────── Error: File not found: D: emp\2026_02_23_11_20_16_15377\Rtmp4WUrHm/test_empty.arl Backtrace: ▆ 1. └─engine$eval_text(sprintf("(load \"%s\")", module_path)) at test-import-edge-cases.R:282:3 2. ├─base::do.call(self$eval, c(exprs, list(env = env)), quote = TRUE) 3. └─arl (local) ``(base::quote(load(``)), env = base::quote(NULL)) 4. └─private$.source_tracker$with_error_context(...) 5. └─base::tryCatch(...) 6. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 7. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 8. └─value[[3L]](cond) ── Error ('test-import-edge-cases.R:302:3'): load module with only comments ──── Error: File not found: D: emp\2026_02_23_11_20_16_15377\Rtmp4WUrHm/test_comments_only.arl Backtrace: ▆ 1. └─engine$eval_text(sprintf("(load \"%s\")", module_path)) at test-import-edge-cases.R:302:3 2. ├─base::do.call(self$eval, c(exprs, list(env = env)), quote = TRUE) 3. └─arl (local) ``(base::quote(load(``)), env = base::quote(NULL)) 4. └─private$.source_tracker$with_error_context(...) 5. └─base::tryCatch(...) 6. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 7. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 8. └─value[[3L]](cond) ── Error ('test-import-edge-cases.R:320:3'): module defines macro ────────────── Error: File not found: D: emp\2026_02_23_11_20_16_15377\Rtmp4WUrHm/test_macro_module.arl Backtrace: ▆ 1. └─engine$eval_text(sprintf("(load \"%s\")", module_path)) at test-import-edge-cases.R:320:3 2. ├─base::do.call(self$eval, c(exprs, list(env = env)), quote = TRUE) 3. └─arl (local) ``(base::quote(load(``)), env = base::quote(NULL)) 4. └─private$.source_tracker$with_error_context(...) 5. └─base::tryCatch(...) 6. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 7. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 8. └─value[[3L]](cond) ── Error ('test-import-selective.R:240:3'): import with path string supports modifiers ── Error: Module not found: D: emp\2026_02_23_11_20_16_15377\Rtmp4WUrHm\filee1823812341/testmod.arl Backtrace: ▆ 1. └─engine$eval_text(sprintf("(import \"%s\" :refer (square))", m$file)) at test-import-selective.R:240:3 2. ├─base::do.call(self$eval, c(exprs, list(env = env)), quote = TRUE) 3. └─arl (local) ``(...) 4. └─private$.source_tracker$with_error_context(...) 5. └─base::tryCatch(...) 6. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 7. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 8. └─value[[3L]](cond) ── Error ('test-load.R:204:3'): (import "path") loads module by path and attaches exports ── Error: Module not found: D: emp\2026_02_23_11_20_16_15377\Rtmp4WUrHm\filee18443476fd/pathmod.arl Backtrace: ▆ 1. └─engine$eval(exprs[[1]], env = env) at test-load.R:204:3 2. └─private$.source_tracker$with_error_context(...) 3. └─base::tryCatch(...) 4. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 5. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 6. └─value[[3L]](cond) ── Error ('test-module-cache.R:472:3'): code cache is safe with file changes ─── Error: File not found: D: emp\2026_02_23_11_20_16_15377\Rtmp4WUrHm\filee18602f496a/changing-file.arl Backtrace: ▆ 1. └─engine1$eval_text(sprintf("(load \"%s\")", test_file)) at test-module-cache.R:472:3 2. ├─base::do.call(self$eval, c(exprs, list(env = env)), quote = TRUE) 3. └─arl (local) ``(base::quote(load(``)), env = base::quote(NULL)) 4. └─private$.source_tracker$with_error_context(...) 5. └─base::tryCatch(...) 6. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 7. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 8. └─value[[3L]](cond) ── Error ('test-stdlib-io.R:18:3'): read-file and write-file work with strings ── Error: cannot open the connection Backtrace: ▆ 1. └─engine$eval(...) at test-stdlib-io.R:18:3 2. └─private$.source_tracker$with_error_context(...) 3. └─base::tryCatch(...) 4. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 5. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 6. └─value[[3L]](cond) ── Error ('test-stdlib-io.R:36:3'): read-lines and write-lines work with lists ── Error: cannot open the connection Backtrace: ▆ 1. └─engine$eval(...) at test-stdlib-io.R:36:3 2. └─private$.source_tracker$with_error_context(...) 3. └─base::tryCatch(...) 4. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 5. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 6. └─value[[3L]](cond) ── Error ('test-stdlib-io.R:54:3'): write-file works with lists converted to lines ── Error: cannot open the connection Backtrace: ▆ 1. └─engine$eval(...) at test-stdlib-io.R:54:3 2. └─private$.source_tracker$with_error_context(...) 3. └─base::tryCatch(...) 4. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 5. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 6. └─value[[3L]](cond) ── Error ('test-stdlib-io.R:72:3'): append-file adds content to existing file ── Error: cannot open the connection Backtrace: ▆ 1. └─engine$eval(...) at test-stdlib-io.R:72:3 2. └─private$.source_tracker$with_error_context(...) 3. └─base::tryCatch(...) 4. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 5. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 6. └─value[[3L]](cond) ── Failure ('test-stdlib-io.R:104:3'): file-exists? checks file existence ────── Expected `result` to be TRUE. Differences: `actual`: FALSE `expected`: TRUE ── Error ('test-stdlib-io.R:119:3'): file-size returns file size in bytes ────── Error: file-size: file does not exist: D: emp\2026_02_23_11_20_16_15377\Rtmp4WUrHm\filee181866b6b Backtrace: ▆ 1. └─engine$eval(...) at test-stdlib-io.R:119:3 2. └─private$.source_tracker$with_error_context(...) 3. └─base::tryCatch(...) 4. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 5. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 6. └─value[[3L]](cond) ── Error ('test-stdlib-io.R:148:3'): file-modified-time returns modification timestamp ── Error: file-modified-time: file does not exist: D: emp\2026_02_23_11_20_16_15377\Rtmp4WUrHm\filee1859613f49 Backtrace: ▆ 1. └─engine$eval(...) at test-stdlib-io.R:148:3 2. └─private$.source_tracker$with_error_context(...) 3. └─base::tryCatch(...) 4. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 5. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 6. └─value[[3L]](cond) ── Error ('test-stdlib-io.R:166:3'): file-delete removes file ────────────────── Error: file-delete: file does not exist: D: emp\2026_02_23_11_20_16_15377\Rtmp4WUrHm\filee1876ab5967 Backtrace: ▆ 1. └─engine$eval(...) at test-stdlib-io.R:166:3 2. └─private$.source_tracker$with_error_context(...) 3. └─base::tryCatch(...) 4. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 5. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 6. └─value[[3L]](cond) ── Failure ('test-stdlib-io.R:208:3'): directory-exists? checks directory existence ── Expected `result` to be TRUE. Differences: `actual`: FALSE `expected`: TRUE ── Error ('test-stdlib-io.R:224:3'): directory-list returns list of filenames ── Error: directory-list: directory does not exist: D: emp\2026_02_23_11_20_16_15377\Rtmp4WUrHm/test_dir Backtrace: ▆ 1. └─engine$eval(...) at test-stdlib-io.R:224:3 2. └─private$.source_tracker$with_error_context(...) 3. └─base::tryCatch(...) 4. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 5. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 6. └─value[[3L]](cond) ── Error ('test-stdlib-io.R:244:3'): directory-list with full.names returns full paths ── Error: directory-list: directory does not exist: D: emp\2026_02_23_11_20_16_15377\Rtmp4WUrHm/test_dir Backtrace: ▆ 1. └─engine$eval(...) at test-stdlib-io.R:244:3 2. └─private$.source_tracker$with_error_context(...) 3. └─base::tryCatch(...) 4. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 5. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 6. └─value[[3L]](cond) ── Error ('test-stdlib-io.R:276:3'): directory-delete removes directory ──────── Error: directory-delete: directory does not exist: D: emp\2026_02_23_11_20_16_15377\Rtmp4WUrHm/test_dir Backtrace: ▆ 1. └─engine$eval(...) at test-stdlib-io.R:276:3 2. └─private$.source_tracker$with_error_context(...) 3. └─base::tryCatch(...) 4. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 5. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 6. └─value[[3L]](cond) [ FAIL 26 | WARN 4 | SKIP 18 | PASS 3634 ] Error: ! Test failures. Execution halted