odiff_version() now correctly parses the version from
odiff --version output instead of --help,
which did not contain version information.batch_report() with relative_paths = TRUE
now produces correct relative paths on Windows by normalizing path
separators before computing relative paths.batch_report() gains a relative_paths
parameter. When TRUE, image paths in HTML reports are
relative to the report location, making reports portable without
embedding images.compare_image_dirs() now emits a message when files in
current_dir have no corresponding baseline, helping catch
missing or extra images early.failed_pairs() and
passed_pairs() make it easy to filter batch comparison
results.embed = TRUE, show_all = TRUE, and
relative_paths = TRUE.compare_dirs_report() convenience function combines
compare_image_dirs() and batch_report() into a
single call for the common QA workflow of comparing two directories and
generating an HTML report.batch_report(): Generate standalone HTML reports from
batch comparison results. Reports include pass/fail statistics, failure
reason breakdown, diff statistics, and thumbnails of worst
offenders.embed = TRUE for
self-contained reports with base64-encoded images, or
embed = FALSE (default) to link to files.show_all = TRUE.compare_image_dirs(): Compare all images in two
directories by matching relative paths. Baseline directory is source of
truth; missing files in current directory trigger warnings and are
excluded from results.summary() method for batch results: Get aggregate
statistics including pass/fail counts, failure reason breakdown, diff
statistics (min, median, mean, max), and worst offenders ranked by diff
percentage.compare_images_batch() and
compare_image_dirs() now return objects with class
odiffr_batch for S3 method dispatch.parallel parameter for
compare_images_batch() and
compare_image_dirs(): Set parallel = TRUE to
compare images using multiple CPU cores.parallel::mclapply on Unix systems (macOS, Linux)
for faster batch comparisons.expect_images_match(): Assert two images are visually
identicalexpect_images_differ(): Assert two images are visually
differenttests/testthat/_odiffr/
on failureoptions(odiffr.save_diff) and
options(odiffr.diff_dir)Initial release.
compare_images(): High-level image comparison returning
tibble/data.framecompare_images_batch(): Batch comparison of multiple
image pairsodiff_run(): Low-level CLI wrapper with full option
controlignore_region(): Helper for creating ignore region
specificationsfind_odiff(): Locate Odiff binary with priority-based
searchodiff_available(): Check if Odiff is availableodiff_version(): Get Odiff version stringodiff_info(): Display full configuration
informationodiffr_update(): Download Odiff binary to user cache
(fallback option)odiffr_cache_path(): Get cache directory pathodiffr_clear_cache(): Remove cached binariesRequires Odiff (>= 3.0.0) to be installed. Install via:
npm install -g odiff-binAlternatively, use odiffr_update() to download to user
cache.
Works on any platform where Odiff is available: