Metadata-Version: 2.1
Name: erp5diff
Version: 0.8.1.9
Summary: XUpdate Generator for ERP5
Home-page: https://lab.nexedi.com/nexedi/erp5diff/
Author: Yoshinori OKUJI
Author-email: yo@nexedi.com
License: GPL
Classifier: License :: OSI Approved :: GNU General Public License (GPL)
Classifier: Operating System :: OS Independent
Classifier: Topic :: Text Processing :: Markup :: XML
Classifier: Topic :: Utilities

Introduction
============
This is a XUpdate Generator to compare any XML document.

See <http://xmldb-org.sourceforge.net/xupdate/> for information on
XUpdate.


Testing
=======

To run tests::

    python -m unittest discover src

or, using ``zc.buildout`` with ``zope.testrunner``::

    buildout
    ./bin/test

Usage
=====
Once you have installed erp5diff, you can use "erp5diff" in a shell::

  erp5diff old.xml new.xml


Or in a python console::

  from ERP5Diff import ERP5Diff
  erp5diff = ERP5Diff()
  old_xml = """
  <ul>
    <li>1</li>
    <li>2</li>
    <li>3</li>
    <li>4</li>
    <li>5</li>
    <li>6</li>
    <li>7</li>
    <li>8</li>
    <li>9</li>
  </ul>
  """
  new_xml = """
  <ul>
    <li>5</li>
    <li>6</li>
    <li>1</li>
    <li>2</li>
    <li>3</li>
    <li>4</li>
    <li>7</li>
    <li>8</li>
    <li>9</li>
  </ul>
  """
  erp5diff.compare(old_xml, new_xml)
  erp5diff.output()
  <xupdate:modifications xmlns:xupdate="http://www.xmldb.org/xupdate" version="1.0">
    <xupdate:remove select="/ul/li[5]"/>
    <xupdate:remove select="/ul/li[6]"/>
    <xupdate:append child="first()">
      <xupdate:element name="li">5</xupdate:element>
      <xupdate:element name="li">6</xupdate:element>
    </xupdate:append>
  </xupdate:modifications>




- 2003-12-04, Yoshinori OKUJI <yo@nexedi.com>
- 2009-09-15, Tatuya Kamada <tatuya@nexedi.com>
- 2009-2011, Nicolas Delaby <nicolas@nexedi.com>

0.8.1.8 (2022/09/14)
--------------------
 * Support python3

0.8.1.7 (2015/04/23)
--------------------
 * Fix a regression that was introduced in 0.8.1.6.

0.8.1.6 (2015/04/23)
--------------------
 * Disable _removeStrictEqualsSubNodeList that can make a wrong result

0.8.1.5 (2011/08/08)
--------------------
 * Fix rst syntax
 * Improve Handling of mixed content

0.8.1.4 (2011/08/05)
--------------------
 * Tail text nodes was not detected (...<node/>blablabla...)
 * fix import issue of main() function

0.8.1.3 (2011/01/25)
--------------------
 * add long_description, improve README
 * add missing namespace declaration of egg

0.8.1.2 (2011/01/25)
--------------------
 * [fix] installation of egg

0.8.1.1 (2011/01/25)
--------------------
 * [Fix] position starts to 1 [Nicolas Delaby]

version 0.8.1 Nicolas Delaby
============================
Bug Fix
--------
* Some nodes stay orphans if they are replaced by another one and followed
  by a modification (test 30)
* Exclude comments or processing instruction as sibling node

version 0.8 Nicolas Delaby
==========================
Features
--------
* Include 'gid' in attributes allowed to build an xpath expression
  with a unique identifier.
* Use better algorithm to compare two xml nodes (faster).

Bug Fix
-------
* In node comparaison discard text nodes with only withe-spaces.
* Fix relative calculation of position for xupdate:insert-before nodes
* Add namespace declaration on xupdate nodes which are using
  prefix in builded xpath expression.


version 0.7 Nicolas Delaby
==========================
Bug fix
-------
* Nodes whose position change were discarded.
* Declare namespaces used in xpath expression on xupdate output.

version 0.6 Nicolas Delaby
==========================
Bug Fix
-------
* Fix generated xpath expression, the root element was missing.


version 0.5 Nicolas Delaby
==========================
Features
--------

* Add support of namespaces
* Support xupdate:insert-after

version 0.4 Nicolas Delaby
==========================
Features
--------
* Change output of xupdate:append by adding Implied attribute child


version 0.3 Nicolas Delaby
==========================
Bug Fix
-------
* Append position in xpath expression when value of id attribute is not unique regarding is sibling


version 0.2 Nicolas Delaby
==========================
Bug Fix
-------
* Position in xpath starts from 1


version 0.1 Tatuya Kamada
=========================
Features
--------
* ERP5diff implemented with ElemenTree (lxml)


version 0 Yoshinori Okuji
=========================

* initial ERP5diff with DOM API (minidom)
