Metadata-Version: 2.4
Name: structurediff
Version: 1.0
Summary: structurediff is a diff utility for structured data files
Home-page: https://gitlab.com/Rtzq0/structurediff
Author: Jason Ritzke (@Rtzq0)
Author-email: jasonritzke@4loopz.com
License: AGPLv3+
Keywords: DeepDiff YAML JSON diff
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: System Administrators
Classifier: Topic :: Utilities
Classifier: License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+)
Classifier: Programming Language :: Python :: 2.7
License-File: LICENSE.txt
Requires-Dist: pyyaml
Requires-Dist: pygments
Requires-Dist: deepdiff
Requires-Dist: termcolor
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: home-page
Dynamic: keywords
Dynamic: license
Dynamic: license-file
Dynamic: requires-dist
Dynamic: summary

structurediff
=======================
structurediff is a tool (a command line wrapper really) that uses `DeepDiff`_
to provide a simple command line utility for 'diffing' (at a structural rather
than line-based level) large YAML and/or JSON files (meaning it can diff YAML
against YAML, or YAML against JSON, or JSON against JSON).

.. _DeepDiff: https://github.com/seperman/deepdiff

structurediff uses the `pyyaml`_ parser for both JSON
and YAML to work around issues with unicode-ification of strings. As a
result structurediff cannot be depended on to differentiate between unicode
and non-unicode types between JSON and YAML.

.. _pyyaml: http://pyyaml.org/

contributing
------------
Just reach out (or submit a patch or merge request). I try to keep an eye
open.

todo
----
This code has no tests. It should have some.

howto
-----
On the command line::

	usage: structurediff [-h] [-d DIFF_VERBOSITY] [-i INDENT_LEVEL] [-v]
						 input1 input2

	positional arguments:
	  input1                initial input
	  input2                input to compare against input1

	optional arguments:
	  -h, --help            show this help message and exit
	  -d DIFF_VERBOSITY, --diff-verbosity DIFF_VERBOSITY
							set the DeepDiff verbose_level, 0-2 (default 1)
	  -i INDENT_LEVEL, --indent-level INDENT_LEVEL
							set the pprint indent spacing (default 2)
	  -v, --verbose         make output verbose_level

In Python (why would you do this? Use DeepDiff instead!)::

	from structurediff import DataComparison, DataFile
	comparison = DataComparison(DataFile(PATH), DataFile(PATH), VERBOSITY)
	print(comparison)
