Skip to content

CBTF 0.6.0 (CRAN)

Choose a tag to compare

@mcol mcol released this 13 Feb 10:29
· 33 commits to main since this release
v0.6.0
d906cab

Changes in CBTF 0.6.0 (2026-02-13)

New features

  • Rewrite fuzz() to use a backend based on the mirai package. This allows to parallelize computations and support a timeout to stop non-failing functions (#4).
  • Add the timeout argument to fuzz() to control the number of seconds to wait before interrupting the execution of a function being fuzzed.
  • Add the args argument to allow fuzzing multiple function arguments instead of only the first, with support for named and fixed arguments (#6, #7, #8).
  • Add support for what = NULL, which allows running the set of arguments listed in args with no modifications. This can be used after a fuzz run to collect results on just one set of problematic inputs.
  • Replace the show_all logical argument of print() with a show argument that accepts the class of results to be printed, any of "fail", "warn", "skip", "ok" or "all" (#9).

Updates

  • Use unicode symbols only on terminals that support UTF8, and respect the cli.unicode option, so that options(cli.unicode = FALSE) can be used to disable all unicode output.
  • Fix bug that caused failures in the +() operator to be whitelisted just because the + was interpreted as a regular expression quantifier.
  • Ignore deprecated functions by default in get_exported_functions().
  • Add more inputs to test_inputs(), bringing the total number of inputs from 60 to 70.
  • Move the NA inputs in test_inputs() from the "scalar" to the new "na" class.
  • Add the [[ operator to extract the results for a specific test input.
  • Stop exporting the namify() helper.

Full Changelog: v0.5.0...v0.6.0