Skip to main content

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>

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)

Metadata

Release files for erp5diff 0.8.1.9

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for erp5diff 0.8.1.9
File Size Uploaded
erp5diff-0.8.1.9.tar.gz 18.3 kB Details

Release files / erp5diff-0.8.1.9.tar.gz

Download URL erp5diff-0.8.1.9.tar.gz
Size 18.3 kB
Tags Source
SHA-256 checksum
How to use checksums
36785c97b6f879b7d6cc8c9cccc36494dd035013052b8c05bcc8f7284721ddf5
BLAKE2b-256 checksum
How to use checksums
0125db4d9ed9c7a3b30563776b13cbe4ded82b968a36c0f9ca2195819ba3910e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.9.15

Release history Release notifications | RSS feed

This release

0.8.1.9 This release

1 release file

0.8.1.8

1 release file

0.8.1.7

1 release file

0.8.1.3

1 release file

0.8.1.2

1 release file

0.8.1.1

1 release file

0.8.1

0.8

0.7.0

0.6.1

0.6

0.2

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page