Metadata-Version: 2.0
Name: dictdiffer
Version: 0.6.1
Summary: Dictdiffer is a library that helps you to diff and patch dictionaries.
Home-page: https://github.com/inveniosoftware/dictdiffer
Author: Invenio Collaboration
Author-email: info@inveniosoftware.org
License: UNKNOWN
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.6
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Topic :: Utilities
Requires-Dist: unittest2 (>=1.1.0); python_version=="2.6"
Provides-Extra: all
Requires-Dist: numpy (>=1.11.0); extra == 'all'
Requires-Dist: check-manifest (>=0.25); extra == 'all'
Requires-Dist: coverage (>=4.0); extra == 'all'
Requires-Dist: isort (>=4.2.2); extra == 'all'
Requires-Dist: mock (>=1.3.0); extra == 'all'
Requires-Dist: pydocstyle (>=1.0.0); extra == 'all'
Requires-Dist: pytest-cache (>=1.0); extra == 'all'
Requires-Dist: pytest-cov (>=1.8.0); extra == 'all'
Requires-Dist: pytest-pep8 (>=1.0.6); extra == 'all'
Requires-Dist: pytest (>=2.8.0); extra == 'all'
Requires-Dist: Sphinx (>=1.4.4); extra == 'all'
Requires-Dist: sphinx-rtd-theme (>=0.1.9); extra == 'all'
Provides-Extra: docs
Requires-Dist: Sphinx (>=1.4.4); extra == 'docs'
Requires-Dist: sphinx-rtd-theme (>=0.1.9); extra == 'docs'
Provides-Extra: numpy
Requires-Dist: numpy (>=1.11.0); extra == 'numpy'
Provides-Extra: tests
Requires-Dist: check-manifest (>=0.25); extra == 'tests'
Requires-Dist: coverage (>=4.0); extra == 'tests'
Requires-Dist: isort (>=4.2.2); extra == 'tests'
Requires-Dist: mock (>=1.3.0); extra == 'tests'
Requires-Dist: pydocstyle (>=1.0.0); extra == 'tests'
Requires-Dist: pytest-cache (>=1.0); extra == 'tests'
Requires-Dist: pytest-cov (>=1.8.0); extra == 'tests'
Requires-Dist: pytest-pep8 (>=1.0.6); extra == 'tests'
Requires-Dist: pytest (>=2.8.0); extra == 'tests'

============
 Dictdiffer
============

.. image:: https://img.shields.io/travis/inveniosoftware/dictdiffer.svg
        :target: https://travis-ci.org/inveniosoftware/dictdiffer

.. image:: https://img.shields.io/coveralls/inveniosoftware/dictdiffer.svg
        :target: https://coveralls.io/r/inveniosoftware/dictdiffer

.. image:: https://img.shields.io/github/tag/inveniosoftware/dictdiffer.svg
        :target: https://github.com/inveniosoftware/dictdiffer/releases

.. image:: https://img.shields.io/pypi/dm/dictdiffer.svg
        :target: https://pypi.python.org/pypi/dictdiffer

.. image:: https://img.shields.io/github/license/inveniosoftware/dictdiffer.svg
        :target: https://github.com/inveniosoftware/dictdiffer/blob/master/LICENSE

About
=====

Dictdiffer is a helper module that helps you to diff and patch
dictionaries.


Installation
============

Dictdiffer is on PyPI so all you need is: ::

    pip install dictdiffer


Documentation
=============

Documentation is readable at http://dictdiffer.readthedocs.io or can be
built using Sphinx: ::

    pip install dictdiffer[docs]
    python setup.py build_sphinx


Testing
=======

Running the test suite is as simple as: ::

    ./run-tests.sh


Changes
=======

Version 0.6.1 (released 2016-11-22)

- Changes order of items for REMOVE section of generated patches when
  `swap` is called so the list items are removed from the end. (#85)
- Improves API documentation for `ignore` argument in `diff` function.
  (#79)
- Executes doctests during PyTest invocation.

Version 0.6.0 (released 2016-06-22)

- Adds support for comparing NumPy arrays.  (#68)
- Adds support for comparing mutable mappings, sequences and sets from
  `collections.abs` module.  (#67)
- Updates package structure, sorts imports and runs doctests.
- Fixes order in which handled conflicts are unified so that the
  Merger's unified_patches can be always applied.

Version 0.5.0 (released 2016-01-04)

- Adds tolerance parameter used when user wants to treat closed values
  as equals
- Adds support for comparing numerical values and NaN. (#54) (#55)

Version 0.4.0 (released 2015-03-11)

- Adds support for diffing and patching of sets. (#44)
- New tests for diff on the same lists. (#48)
- Fix for exception when dict has unicode keys and ignore parameter is
  provided. (#50)
- PEP8 improvements.

Version 0.3.0 (released 2014-11-05)

- Adds ignore argument to `diff` function that allows skipping check
  on specified keys. (#34 #35)
- Fix for diffing of dict or list subclasses. (#37)
- Better instance checking of diffing objects. (#39)

Version 0.2.0 (released 2014-09-29)

- Fix for empty list instructions. (#30)
- Regression test for empty list instructions.

Version 0.1.0 (released 2014-09-01)

- Fix for list removal issues during patching caused by wrong
  iteration. (#10)
- Fix for issues with multiple value types for the same key. (#10)
- Fix for issues with strings handled as iterables. (#6)
- Fix for integer keys. (#12)
- Regression test for complex dictionaries. (#4)
- Better testing with Travis CI, tox, pytest, code coverage. (#10)
- Initial release of documentation on ReadTheDocs. (#21 #24)
- Support for Python 3. (#15)

Version 0.0.4 (released 2014-01-04)

- List diff behavior treats lists as lists instead of sets. (#3)
- Differed typed objects are flagged as `changed` now.
- Swap function refactored.

Version 0.0.3 (released 2013-05-26)

- Initial public release on PyPI.


