nddiff - diff tool for nested data structures
nddiff [OPTIONS] <file1> <file2> [<file3> ... ]
Diff for nested data structures with human friendly and machine-readable output formats.
Where X is an op tag: A (added), N (new value), O (old value), R (removed) or U (unchanged). All ops enabled by default, except U. See "DIFF FORMAT" in Struct::Diff for more info about nested diff format.
A
N
O
R
U
Ignored when --ofmt JSONMERGEPATCH used.
--ofmt JSONMERGEPATCH
Show where differences occured, but don't show what exactly changed.
On/Off colors for diff.
Amount of lines for multiline values context. Default is 3.
Grep substructures to diff. See path syntax description at https://metacpan.org/pod/Struct::Path::PerlStyle
Print a help message and exit.
Force specified input format usage. Will be selected automatically (using file name extension) if omitted. YAML::XS should be installed for YAML support.
Ignore substructure. May be used several times.
Use JSON as output diff format. It's just a shortcut for --ofmt JSON.
--ofmt JSON
Force specified output format usage.
JSON serialized Nested-Diff
JSON Merge Patch rfc7396
JSON Patch rfc6902
JSON serialized rules for ndproc.
Human friendly, colored terminal diff. Used by default.
YAML serialized Nested-Diff. YAML::XS should be installed for YAML support, see "LIMITATIONS" in App::NDTools for more info.
On/Off pretty-print for JSON serialized and TERM formats. Full headers will be printed in TERM mode if disabled. Enabled by default.
Don't show diff, only exit code shows exists diff or not.
Dump diff as rules for ndproc. Deprecated and will be removed soon. --ofmt rules should be used instead.
--ofmt rules
Visualize JSON/YAML formatted Nested Diff.
Increase verbosity, max level is 4.
Print version and exit.
Human-friendly diff:
nddiff a.json b.json
Machine-readable diff:
nddiff --json a.json b.json
Same as above, but without added items:
nddiff --noA --json a.json b.json
0 No errors, no diff. 1 Generic error code. 2 I/O Error. 4 Path related errors. 8 Difference found.
Report bugs to https://github.com/mr-mixas/NDTools/issues
ndpatch, ndproc, ndquery
App::NDTools::NDDiff, Struct::Diff
Copyright 2016-2019 Michael Samoglyadov <mixas at cpan.org>.
<mixas at cpan.org>
This program is free software; you can redistribute it and/or modify it under the terms of GNU General Public License 3 or later versions.
To install App::NDTools, copy and paste the appropriate command in to your terminal.
cpanm
cpanm App::NDTools
CPAN shell
perl -MCPAN -e shell install App::NDTools
For more information on module installation, please visit the detailed CPAN module installation guide.