{"categories":[{"label":"XML","url":"https://skillfed.io/packages/category/text-processing-markup-xml"}],"enrichment":{"capability":"xmldiff compares two XML files or trees and produces a human-readable diff that accounts for the hierarchical structure of XML, rather than treating it as flat text.","skillfed_tags":["xml-tools","diff-utilities"],"use_cases":["Compare XML configuration files to see what settings have changed between versions or deployments.","Generate human-readable diffs of XML-based document formats (e.g., office documents, SVG) for review or audit trails.","Detect structural changes in XML data feeds or API responses for testing or monitoring purposes.","Patch XML files using diffs produced by xmldiff via the xmlpatch command.","Integrate XML change detection into CI/CD pipelines or version control workflows."],"what_it_does":"xmldiff is a Python library and command-line tool that detects and reports changes between two XML documents in a way that respects XML's hierarchical structure. Unlike a line-by-line text diff, xmldiff understands that XML is tree-structured data and produces diffs that are meaningful to humans\u2014useful when XML is used as a format for hierarchical data that will be rendered or displayed. The library offers multiple interfaces: a command-line tool for quick comparisons, a Python API with methods like diff_files(), diff_trees(), and diff_texts() for programmatic use, and support for different output formats including one that marks up differences directly in the XML.\n\nThe package is a complete rewrite from earlier versions, focusing on correctness and usability over raw speed. It handles large files without memory leaks and provides a cleaner, more Pythonic API. It depends only on lxml for XML parsing and is actively maintained, supporting Python 3.8 through 3.15.","worth_installing":"Yes. xmldiff solves a real problem\u2014traditional diffs are unreadable for hierarchical data\u2014and does so with low install friction, active maintenance, permissive licensing, and no known vulnerabilities. Use it if you need to compare XML files or trees in a way that makes sense to humans; skip it if you only need line-by-line text diffs."},"id":"xmldiff","links":{"html":"https://skillfed.io/packages/xmldiff","md":"https://skillfed.io/packages/xmldiff.md","pypi":"https://pypi.org/project/xmldiff/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2026-06-11","license_spdx":null,"license_treatment":"permissive","name":"xmldiff","python_support":"supports_current","summary":"Creates diffs of XML files"},"popularity":{"monthly_downloads":374264,"position":7147,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"3.0"}
