Metadata-Version: 2.0
Name: csvdiff
Version: 0.1.0
Summary: Generate a diff between two CSV files.
Home-page: https://github.com/larsyencken/csvdiff
Author: Lars Yencken
Author-email: lars@yencken.org
License: BSD
Keywords: csvdiff
Platform: UNKNOWN
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.3
Requires-Dist: PyYAML (>=3.10)

===============================
csvdiff
===============================

.. image:: https://badge.fury.io/py/csvdiff.png
    :target: http://badge.fury.io/py/csvdiff

.. image:: https://travis-ci.org/larsyencken/csvdiff.png?branch=master
        :target: https://travis-ci.org/larsyencken/csvdiff

.. image:: https://pypip.in/d/csvdiff/badge.png
        :target: https://crate.io/packages/csvdiff?version=latest

Overview
--------

Generate a diff between two CSV files on the command-line.

Installing
----------

``pip install csvdiff``


Examples
--------

For example, suppose we have ``a.csv``::

    id,name,amount
    1,bob,20
    2,eva,63
    3,sarah,7
    4,jeff,19
    6,fred,10

and a matching file after some changes, ``b.csv``::

    id,name,amount
    1,bob,23
    3,sarah,7
    4,jeff,19
    5,mira,81
    6,fred,13

Now we can ask for a summary of differences::

    $ csvdiff --summary -k id a.csv b.csv
    1 rows removed (20.0%)
    1 rows added (20.0%)
    2 rows changed (40.0%)

Or look at the full diff, using YAML rather than JSON (the default) to make it more readable::

    $ csvdiff --yaml -k id a.csv b.csv
    removed:
    - amount: '63'
      id: '2'
      name: eva
    added:
    - amount: '81'
      id: '5'
      name: mira
    changed:
    - fields:
        amount:
          from: '10'
          to: '13'
      key:
      - '6'
    - fields:
        amount:
          from: '20'
          to: '23'
      key:
      - '1'

It gives us the full listing of added and removed rows, as well as a listing of what fields changed for that shared a key.

For more usage options, run ``csvdiff --help``.

License
-------

BSD license




History
-------

0.1.0 (2014-03-15)
~~~~~~~~~~~~~~~~~~

* First release on PyPI.
* Generates a JSON or YAML difference between two CSV files
* Specify multiple key components with ``-k``
* Can provide a difference summary
* Assumes files use standard comma-separation, double-quoting and a header row with field names


