singledelta(1)

singledelta1

Heuristic minimizer of interesting files

Usage

singledelta -test=test-script [options] [initial-file]

Overview

Delta assists you in minimizing "interesting" files subject to a test of their interestingness. A common such situation is when attempting to isolate a small failure-inducing substring of a large input that causes your program to exhibit a bug.

You supply singledelta with

•

a test shell script which decides if its input file is "interesting" (test-script) and

•

an initial interesting input file (initial-file or standard input).

Delta uses heuristics to find a sub-file of your input file that is still "interesting" according to your test.

Delta has a notion of the granularity of the file: the smallest atomic elements of which the file is seen as a sequence. The default is the line granularity: in this mode, delta will attempt to delete entire lines, but will never try deleting a smaller element than that. You can filter a program through topformflat(1) to produce a file where the line-granularity only goes to a specified nesting depth (if your file is in a nested language). multidelta(1) does this for you.

Options

-test=test-script

Use test-script as the test program. This option is mandatory.

The test program accepts a single argument, the name of the candidate file to test. It is run within a directory containing only that file, and it can make temporary files/directories in that directory. It should return zero for a candidate that exhibits the desired property, and nonzero for one that does not.

-suffix=suffix

Set filename suffix to suffix. The default is ".c".

-dump_input

Dump the contents of the initial file after reading it.

-cp_minimal=file

Copy the minimal successful test to file.

-granularity=line

Use lines as the granularity. This is the default.

-granularity=top_form

Use C top-level forms as the granularity. This currently only works with CIL output.

-log=file

Log main events to file.

-quiet

Do not produce any output.

-verbose

Produce more verbose output.

-in_place

Overwrite initial-file with inputs.

-help

Print out usage information.

Notes

The name singledelta is Debian-specific. The upstream name of this program is simply delta.

Releases

6 releases since Debian 8 (Jessie); the text changed 4 times.

  1. 8
  2. 9
  3. 10
  4. 11
  5. 12–13

From delta 2006.08.03-13 in Debian 13 (Trixie). Parsed by carta from the page's man source.