{ "info": { "author": "metagriffin", "author_email": "mg.pypi@metagriffin.net", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Developers", "Intended Audience :: System Administrators", "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python", "Topic :: Software Development", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: Utilities" ], "description": "================\nPretty-Print XML\n================\n\nA python library and command-line tool to \"prettify\" and colorize XML.\nIt also provides a unittest.TestCase mixin that adds the\n`assertXmlEqual` method and, on difference, shows a \"pretty\" diff.\n\nInstallation\n============\n\n.. code-block:: bash\n\n $ pip install pxml\n\n\nOn the Command-Line\n===================\n\n.. code-block:: bash\n\n $ echo 'foo' | pxml\n \n \n foo\n \n\nAnd add some color:\n\n.. image:: https://raw.github.com/metagriffin/pxml/master/pxml-color.png\n :alt: pxml with color\n\n\nAs a Python Module\n==================\n\n.. code-block:: python\n\n import pxml, six\n\n src = six.StringIO('foo')\n out = six.StringIO()\n\n pxml.prettify(src, out)\n\n assert(out.getvalue() == '''\\\n \n \n foo\n \n ''')\n\n\nUnit Testing\n============\n\nThe `pxml.XmlTestMixin` class adds the `assertXmlEqual` method to the\nsubclass which allows easy semantic comparison that two XML structures\nare equivalent. It does so by ignoring ignorable whitespace, attribute\norder, quote types, and other differences that are byte-level\ndifferences when serialized, but don't actually represent semantic\ndifferences. When differences are detected, displays the XML\ndifferences in \"prettified\" XML for easier comparison.\n\n.. code-block:: python\n\n import unittest, pxml\n\n class MyTestCase(unittest.TestCase, pxml.XmlTestMixin):\n\n def test_equivalent_xml(self):\n src = ''\n chk = ''\n self.assertXmlEqual(src, chk)\n\n def test_different_xml(self):\n src = ''\n chk = ''\n self.assertXmlEqual(src, chk)\n\n # this fails the test and produces the following error message:\n # AssertionError: [truncated]... != [truncated]...\n # \n # \n # - \n # + \n # ", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/metagriffin/pxml", "keywords": "pretty xml command-line library", "license": "GPLv3+", "maintainer": null, "maintainer_email": null, "name": "pxml", "package_url": "https://pypi.org/project/pxml/", "platform": "any", "project_url": "https://pypi.org/project/pxml/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://github.com/metagriffin/pxml" }, "release_url": "https://pypi.org/project/pxml/0.2.13/", "requires_dist": null, "requires_python": null, "summary": "A python library and command-line tool to \"prettify\" and colorize XML.", "version": "0.2.13" }, "last_serial": 2443758, "releases": { "0.1.0": [], "0.2.1": [ { "comment_text": "", "digests": { "md5": "2468c6754ebf6cfafa642cf5060307fe", "sha256": "f6dbf9c7af8c6bbace44571b7619590c5a6ebfbef38a0d0ba7127343545b5b92" }, "downloads": -1, "filename": "pxml-0.2.1.tar.gz", "has_sig": false, "md5_digest": "2468c6754ebf6cfafa642cf5060307fe", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5707, "upload_time": "2013-06-22T07:16:18", "url": "https://files.pythonhosted.org/packages/17/36/a1111f8fb64502a3d90f33bcf34da03845d115527e9fad4f3d7c8a885ee8/pxml-0.2.1.tar.gz" } ], "0.2.10": [ { "comment_text": "", "digests": { "md5": "4370dcfa18c9e430e1de10ff3c8c287a", "sha256": "ef8a61d0e0827ce1f1a5c980b17f7d9e538517c1ac2403d3385aaf02d86c5f0b" }, "downloads": -1, "filename": "pxml-0.2.10.tar.gz", "has_sig": false, "md5_digest": "4370dcfa18c9e430e1de10ff3c8c287a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19802, "upload_time": "2013-11-16T23:22:12", "url": "https://files.pythonhosted.org/packages/04/65/0563f77bf2026061e2e54fe320c59ce6aea4214676b2ea854c907847ae13/pxml-0.2.10.tar.gz" } ], "0.2.11": [ { "comment_text": "", "digests": { "md5": "e498c626361a4272fd355fa0e440c789", "sha256": "19edfd55a081fb46066b66fd726691be3416d6f93e80f3d0bb2f2a8d7bacb6c8" }, "downloads": -1, "filename": "pxml-0.2.11.tar.gz", "has_sig": false, "md5_digest": "e498c626361a4272fd355fa0e440c789", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21088, "upload_time": "2015-04-04T20:10:53", "url": "https://files.pythonhosted.org/packages/2c/e4/ffa1fa758b9d538079565fe4b665697ae4099240f77ef35f4167b0d18436/pxml-0.2.11.tar.gz" } ], "0.2.12": [ { "comment_text": "", "digests": { "md5": "132ba23aadcd7c809ace2fe2813d65fc", "sha256": "99604ac9c1b6408f314a57e2e6eb5791220982a7e961168475c682c657ce3c26" }, "downloads": -1, "filename": "pxml-0.2.12.tar.gz", "has_sig": false, "md5_digest": "132ba23aadcd7c809ace2fe2813d65fc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21194, "upload_time": "2015-08-17T23:15:17", "url": "https://files.pythonhosted.org/packages/40/ac/6e05e492eb39d1bc523140ac102afbf7856c03bfcadd616036e05900bf30/pxml-0.2.12.tar.gz" } ], "0.2.13": [ { "comment_text": "", "digests": { "md5": "e480bfbe16bcb4886d57ec73ac3ba636", "sha256": "e4752816e3353e8456b83a22c9c29bfef55e088ddc94722a4ece4766b6fb3f31" }, "downloads": -1, "filename": "pxml-0.2.13.tar.gz", "has_sig": false, "md5_digest": "e480bfbe16bcb4886d57ec73ac3ba636", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21305, "upload_time": "2016-11-05T04:09:31", "url": "https://files.pythonhosted.org/packages/d0/b7/fbb739a8c43089289250b77125eaf858d8bdb085b234a26de987bee30931/pxml-0.2.13.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "02eaf554d7bd06a0b18ca54490fdb339", "sha256": "bead923b85eccc4c222241b60b3d90e1fa8f60d84bd88d58447b8f834a0c8dab" }, "downloads": -1, "filename": "pxml-0.2.2.tar.gz", "has_sig": false, "md5_digest": "02eaf554d7bd06a0b18ca54490fdb339", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5858, "upload_time": "2013-06-22T07:21:25", "url": "https://files.pythonhosted.org/packages/23/11/2b24dfcf1e4f0715a6c58039499fa9c9b1be1032945d24e0878a2ff0e345/pxml-0.2.2.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "294073e5dfe455700dda866625c2fccc", "sha256": "2bb06bfe57676a34a56dddbcec55ecf5129157ed12c4aa2caf4a9699034268f0" }, "downloads": -1, "filename": "pxml-0.2.3.tar.gz", "has_sig": false, "md5_digest": "294073e5dfe455700dda866625c2fccc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5850, "upload_time": "2013-06-22T07:31:38", "url": "https://files.pythonhosted.org/packages/60/42/854ea96ecb5e10f113f3ea825098eea8024ecc7a0006e2028414d57de4a6/pxml-0.2.3.tar.gz" } ], "0.2.4": [ { "comment_text": "", "digests": { "md5": "7ba761545b8a2f17e3f7a29f025d5855", "sha256": "738990cee1baf40cf0e496de4b6d4d48b70a11de4553e2d9b502f3f6c7c06d09" }, "downloads": -1, "filename": "pxml-0.2.4.tar.gz", "has_sig": false, "md5_digest": "7ba761545b8a2f17e3f7a29f025d5855", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5936, "upload_time": "2013-06-22T07:39:43", "url": "https://files.pythonhosted.org/packages/c0/52/304b08a467f70431dac028684b207131a43aeecd0280b899c0d2f6a162e9/pxml-0.2.4.tar.gz" } ], "0.2.5": [ { "comment_text": "", "digests": { "md5": "9232feddc3937130b29ddebbf7557eea", "sha256": "14e91f7711d61900b78c3e26953abc6872e3b9d9352298e660be2422e5c99938" }, "downloads": -1, "filename": "pxml-0.2.5.tar.gz", "has_sig": false, "md5_digest": "9232feddc3937130b29ddebbf7557eea", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5498, "upload_time": "2013-09-03T21:31:33", "url": "https://files.pythonhosted.org/packages/fa/81/5b27bdae1b14c45301fbcd98b23dee0980db3c64306cc68c7c0a23a35762/pxml-0.2.5.tar.gz" } ], "0.2.6": [ { "comment_text": "", "digests": { "md5": "a248d989e4b70f6a233c3df2e5d70e33", "sha256": "5c03d31e98c33d7f3d0ba8187d6c417861f9abeba99bb44ce0c3e37fa6464b2f" }, "downloads": -1, "filename": "pxml-0.2.6.tar.gz", "has_sig": false, "md5_digest": "a248d989e4b70f6a233c3df2e5d70e33", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5917, "upload_time": "2013-09-03T22:15:27", "url": "https://files.pythonhosted.org/packages/2d/12/6b0040b84bd7264327ba2c09bff5752129a4215ae1b6e39166c86ad87106/pxml-0.2.6.tar.gz" } ], "0.2.7": [ { "comment_text": "", "digests": { "md5": "71c5e455be36faa9440d93d6e2f570a5", "sha256": "ccf8a460858ad1605053aa077fe52b2e0469c66e28496d25086d055a331d1bbc" }, "downloads": -1, "filename": "pxml-0.2.7.tar.gz", "has_sig": false, "md5_digest": "71c5e455be36faa9440d93d6e2f570a5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6609, "upload_time": "2013-10-20T22:47:41", "url": "https://files.pythonhosted.org/packages/56/d6/7a3d74283aa1c1ebc9d3c86de346e9cb35339934200796c807dc66b515cb/pxml-0.2.7.tar.gz" } ], "0.2.8": [ { "comment_text": "", "digests": { "md5": "dcd7ad7d16fbe75bd7a9e2d2e8d78b00", "sha256": "d9c3c1cc41b6168ed90d589aac79027c6406a4b27b27c94d05d2bc09a9adb339" }, "downloads": -1, "filename": "pxml-0.2.8.tar.gz", "has_sig": false, "md5_digest": "dcd7ad7d16fbe75bd7a9e2d2e8d78b00", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6705, "upload_time": "2013-11-07T17:21:53", "url": "https://files.pythonhosted.org/packages/fb/71/c92b63766fe5a57fd784f83ed870a0cc39940ecc6a65dee9d995d86a241f/pxml-0.2.8.tar.gz" } ], "0.2.9": [ { "comment_text": "", "digests": { "md5": "d11bd39e41fe5193b964c3c464e8b538", "sha256": "a1e90424293dc3824b9bff5644d97eb6ba632e9026e9a6d537d45ee83893552a" }, "downloads": -1, "filename": "pxml-0.2.9.tar.gz", "has_sig": false, "md5_digest": "d11bd39e41fe5193b964c3c464e8b538", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7552, "upload_time": "2013-11-07T17:24:06", "url": "https://files.pythonhosted.org/packages/d3/a1/9469e01aea50c0f61bb6e6711dbd53947a2d15432b47cae465325f8319f9/pxml-0.2.9.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "e480bfbe16bcb4886d57ec73ac3ba636", "sha256": "e4752816e3353e8456b83a22c9c29bfef55e088ddc94722a4ece4766b6fb3f31" }, "downloads": -1, "filename": "pxml-0.2.13.tar.gz", "has_sig": false, "md5_digest": "e480bfbe16bcb4886d57ec73ac3ba636", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21305, "upload_time": "2016-11-05T04:09:31", "url": "https://files.pythonhosted.org/packages/d0/b7/fbb739a8c43089289250b77125eaf858d8bdb085b234a26de987bee30931/pxml-0.2.13.tar.gz" } ] }