{ "info": { "author": "S\u00f8ren L\u00f8vborg", "author_email": "kwi@kwi.dk", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: Python Software Foundation License", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Topic :: Internet", "Topic :: System :: Networking" ], "description": "``ipaddress`` backport for Python 2.6 and 2.7\n=============================================\n\nThis is a Python 2.6 backport of the Python 3.4 ``ipaddress`` module.\n\nPlease refer to the `official Python 3.4 documentation`__ for more information\non the module.\n\n__ http://docs.python.org/3.4/library/ipaddress\n\n\nChanges from Python 3.4's ``ipaddress`` module\n----------------------------------------------\n\nSince Python 2 has no distinct ``bytes`` type, ``bytearray`` is used\ninstead for the \"packed\" address representation. Additionally, since\nPython 2.7's ``functools`` does not have Python 3.2's ``lru_cache``,\nno caching is performed for the ``is_private`` and ``is_global``\nproperties; this should be a minor problem as Python 3.3's ``ipaddress``\ndid not use ``lru_cache`` either. The backport should behave identical\nto 3.4 in all other respects.\n\n\nChanges from py2-ipaddress 3.4\n------------------------------\n\nPython 2.6 support and a bugfix.\n\n\nChanges from py2-ipaddress 2.0.1 and earlier\n--------------------------------------------\n\nSince Python 2 does not distinguish between ``bytes`` and ``str`` like\nPython 3 does, version 2.0.1 and earlier of py2-ipaddress attempted to\ninterpret ``str`` arguments as _both_ and do the \"right\" thing.\n\nThis unfortunately led to surprising behavior in py2-ipaddress::\n\n >>> ipaddress.ip_address('test.example.org')\n IPv6Address('7465:7374:2e65:7861:6d70:6c65:2e6f:7267')\n\nThe ``ipaddress`` module does not, of course, perform DNS resolution.\nRather, the argument is interpreted as a byte string (of length 16) and\nconverted bit-for-bit into an IPv6 address. In Python 3, ``ipaddress``\ncorrectly rejects such a constructor argument (unless the ``b`` prefix\nis used to explicitly mark the literal as a byte string).\n\nEven worse, there is not always a single right interpretation. Python 3\nexample::\n\n >>> ipaddress.ip_address('::1234:5678:9abc')\n IPv6Address('::1234:5678:9abc')\n >>> ipaddress.ip_address(b'::1234:5678:9abc')\n IPv6Address('3a3a:3132:3334:3a35:3637:383a:3961:6263')\n\nThere is no way to distinguish the two invocations in Python 2. As a\nresult, py2-ipaddress 3.4 uses ``bytearray`` for all byte strings, and\n``str`` for text strings only::\n\n >>> ipaddress.ip_address('::1234:5678:9abc')\n IPv6Address('::1234:5678:9abc')\n >>> ipaddress.ip_address(b'::1234:5678:9abc')\n IPv6Address('::1234:5678:9abc')\n >>> ipaddress.ip_address(bytearray('::1234:5678:9abc'))\n IPv6Address('3a3a:3132:3334:3a35:3637:383a:3961:6263')\n\n\nLicense\n-------\n\nThe ``ipaddress`` modules (both the original and this backport) are licensed\nunder the `Python Software Foundation License version 2`__.\n\nThe modifications made for Python 2.6 compatibility are hereby released into\nthe public domain by the authors.\n\n__ https://www.python.org/download/releases/3.4.0/license", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://bitbucket.org/kwi/py2-ipaddress/", "keywords": null, "license": "Python Software Foundation License version 2", "maintainer": null, "maintainer_email": null, "name": "py2-ipaddress", "package_url": "https://pypi.org/project/py2-ipaddress/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/py2-ipaddress/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://bitbucket.org/kwi/py2-ipaddress/" }, "release_url": "https://pypi.org/project/py2-ipaddress/3.4.1/", "requires_dist": null, "requires_python": null, "summary": "Python 2.6 backport of 3.4's ipaddress module", "version": "3.4.1" }, "last_serial": 1542261, "releases": { "1.0": [ { "comment_text": "", "digests": { "md5": "7cb0f598d2ef01d657f950552127d1cd", "sha256": "4d81a81987b287b60e74eacc01de3760d0237def732387868151ca8c224ecbae" }, "downloads": -1, "filename": "py2-ipaddress-1.0.tar.gz", "has_sig": false, "md5_digest": "7cb0f598d2ef01d657f950552127d1cd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14645, "upload_time": "2013-08-08T16:03:19", "url": "https://files.pythonhosted.org/packages/4b/95/49533e06d665c70a86d55a678314a7b1e4ace0de7589676a63e0281ed350/py2-ipaddress-1.0.tar.gz" } ], "2.0": [ { "comment_text": "", "digests": { "md5": "f179bb49f7e1007445d169e053a68ffb", "sha256": "67d7b482757be233c712425d58b29afa02ee48352c340d6164b38ed2765d24b5" }, "downloads": -1, "filename": "py2-ipaddress-2.0.tar.bz2", "has_sig": false, "md5_digest": "f179bb49f7e1007445d169e053a68ffb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14442, "upload_time": "2014-07-12T23:01:11", "url": "https://files.pythonhosted.org/packages/2e/65/b7d41836b1a02b2c4eeca37ffe0397b5a035b11d8fafed9fbf5ed6a642cb/py2-ipaddress-2.0.tar.bz2" } ], "2.0.1": [ { "comment_text": "", "digests": { "md5": "bcecfcf91fb7e7b1e7bbb7a76f3329cd", "sha256": "5e35db1c079fab38626eabadd010dfd94f3141f0702cdc4e9f1c560a90501431" }, "downloads": -1, "filename": "py2-ipaddress-2.0.1.tar.gz", "has_sig": false, "md5_digest": "bcecfcf91fb7e7b1e7bbb7a76f3329cd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16075, "upload_time": "2015-03-28T22:57:31", "url": "https://files.pythonhosted.org/packages/14/5e/7d2c836a480e2e32fd2d44e3d97cdb12deda53bf3f9fef94ddd733a99460/py2-ipaddress-2.0.1.tar.gz" } ], "3.4": [ { "comment_text": "", "digests": { "md5": "275a46975a88eca5531c4b05a47d382e", "sha256": "547e2b14a1898d17377f078dcfb951a54414a02c69b23eac99465e4b1baa0b1a" }, "downloads": -1, "filename": "py2-ipaddress-3.4.tar.gz", "has_sig": false, "md5_digest": "275a46975a88eca5531c4b05a47d382e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17656, "upload_time": "2015-03-28T22:55:56", "url": "https://files.pythonhosted.org/packages/73/92/3a23a92b7e830f4e8ad85097175db4fbb5f7988f7c2c41cbbb5a26cf857e/py2-ipaddress-3.4.tar.gz" } ], "3.4.1": [ { "comment_text": "", "digests": { "md5": "47734313c841068e3d5386d048d01c3d", "sha256": "6d7bf02ac2590764691bf50ac213e966bc885ed37c02606513dcac484190564b" }, "downloads": -1, "filename": "py2-ipaddress-3.4.1.tar.gz", "has_sig": false, "md5_digest": "47734313c841068e3d5386d048d01c3d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17880, "upload_time": "2015-05-11T16:22:06", "url": "https://files.pythonhosted.org/packages/06/f2/ff20f2d2fd4757be329c8ecb81e9e7fa3bec0b65445821e3a575410cf194/py2-ipaddress-3.4.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "47734313c841068e3d5386d048d01c3d", "sha256": "6d7bf02ac2590764691bf50ac213e966bc885ed37c02606513dcac484190564b" }, "downloads": -1, "filename": "py2-ipaddress-3.4.1.tar.gz", "has_sig": false, "md5_digest": "47734313c841068e3d5386d048d01c3d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17880, "upload_time": "2015-05-11T16:22:06", "url": "https://files.pythonhosted.org/packages/06/f2/ff20f2d2fd4757be329c8ecb81e9e7fa3bec0b65445821e3a575410cf194/py2-ipaddress-3.4.1.tar.gz" } ] }