Rdiff {tools}R Documentation

Difference R Output Files

Description

Given two R output files, compute differences ignoring headers, footers and some other differences.

Usage

Rdiff(from, to, useDiff = FALSE, forEx = FALSE,
      nullPointers = TRUE, Log = FALSE)

Arguments

from, to

filepaths to be compared

useDiff

should diff be used to compare results? Overidden to false if the command is not available.

forEx

logical: extra pruning for ‘-Ex.Rout’ files to exclude the header.

nullPointers

logical: should the displayed addresses of pointers be set to 0x00000000 before comparison?

Log

logical: should the returned value include a log of differences found?

Details

The R startup banner and any timing information from R CMD BATCH are removed from both files, together with lines about loading packages. UTF-8 fancy quotes (see sQuote) and on Windows, Windows' so-called ‘smart quotes’, are mapped to a simple quote. Addresses of environments, compiled bytecode and other exotic types expressed as hex addresses (e.g., <environment: 0x12345678>) are mapped to 0x00000000. The files are then compared line-by-line. If there are the same number of lines and useDiff is false, a simple diff -b -like display of differences is printed (which ignores trailing spaces and differences in numbers of consecutive spaces), otherwise diff -bw is called on the edited files. (This tries to ignore all differences in whitespace: note that flag -w is not required by POSIX but is supported by GNU, Solaris and FreeBSD versions – macOS uses an old GNU version.)

This can compare uncompressed PDF files, ignoring differences in creation and modification dates. However, non-ASCII text may not be handled in UTF-8 locales, and it does not check if the PDF files really are uncompressed. This is unlikely to be supported in future versions of R.

Mainly for use in examples and tests, text from marker ‘⁠> ## IGNORE_RDIFF_BEGIN⁠’ up to (but not including) ‘⁠> ## IGNORE_RDIFF_END⁠’ is ignored.

Value

If Log is true, a list with components status (see below) and out, a character vector of descriptions of differences, possibly of zero length.

Otherwise, a status indicator (invisibly), 0L if and only if no differences were found.

See Also

The shell script run as R CMD Rdiff, which uses useDiff = TRUE.


[Package tools version 4.2.3 Index]