{ "info": { "author": "Sa\u00fal Ibarra Corretg\u00e9", "author_email": "s@saghul.net", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: Microsoft :: Windows", "Operating System :: POSIX", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7" ], "description": "===============================\nSimple DNS resolver for asyncio\n===============================\n\n.. image:: https://secure.travis-ci.org/saghul/aiodns.png?branch=master\n :target: http://travis-ci.org/saghul/aiodns\n\naiodns provides a simple way for doing asynchronous DNS resolutions using `pycares `_.\n\n\nExample\n=======\n\n::\n\n import asyncio\n import aiodns\n\n loop = asyncio.get_event_loop()\n resolver = aiodns.DNSResolver(loop=loop)\n\n async def query(name, query_type):\n return await resolver.query(name, query_type)\n\n coro = query('google.com', 'A')\n result = loop.run_until_complete(coro)\n\n\nThe following query types are supported: A, AAAA, ANY, CNAME, MX, NAPTR, NS, PTR, SOA, SRV, TXT.\n\n\nAPI\n===\n\nThe API is pretty simple, three functions are provided in the ``DNSResolver`` class:\n\n* ``query(host, type)``: Do a DNS resolution of the given type for the given hostname. It returns an\n instance of ``asyncio.Future``. The actual result of the DNS query is taken directly from pycares.\n As of version 1.0.0 of aiodns (and pycares, for that matter) results are always namedtuple-like\n objects with different attributes. Please check `the documentation `_\n for the result fields.\n* ``gethostbyname(host, socket_family)``: Do a DNS resolution for the given\n hostname and the desired type of address family (i.e. ``socket.AF_INET``).\n While ``query()`` always performs a request to a DNS server,\n ``gethostbyname()`` first looks into ``/etc/hosts`` and thus can resolve\n local hostnames (such as ``localhost``). Please check `the documentation\n `_\n for the result fields. The actual result of the call is a ``asyncio.Future``.\n* ``gethostbyaddr(name)``: Make a reverse lookup for an address.\n* ``cancel()``: Cancel all pending DNS queries. All futures will get ``DNSError`` exception set, with\n ``ARES_ECANCELLED`` errno.\n\n\nRunning the test suite\n======================\n\nTo run the test suite: ``python tests.py``\n\n\nAuthor\n======\n\nSa\u00fal Ibarra Corretg\u00e9 \n\n\nLicense\n=======\n\naiodns uses the MIT license, check LICENSE file.\n\n\nPython versions\n===============\n\nPython >= 3.5 are supported.\n\n\nContributing\n============\n\nIf you'd like to contribute, fork the project, make a patch and send a pull\nrequest. Have a look at the surrounding code and please, make yours look\nalike :-)\n\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/saghul/aiodns", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "aiodns", "package_url": "https://pypi.org/project/aiodns/", "platform": "POSIX", "project_url": "https://pypi.org/project/aiodns/", "project_urls": { "Homepage": "http://github.com/saghul/aiodns" }, "release_url": "https://pypi.org/project/aiodns/2.0.0/", "requires_dist": [ "pycares (>=3.0.0)", "typing ; python_version < \"3.7\"" ], "requires_python": "", "summary": "Simple DNS resolver for asyncio", "version": "2.0.0" }, "last_serial": 4888159, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "eb55b156357e12cfe93bd5003885e4b2", "sha256": "190bc77eed888b87f54afd292b36e114648f32446f59e7fd4de0eb22a4ce326f" }, "downloads": -1, "filename": "aiodns-0.1.0.tar.gz", "has_sig": false, "md5_digest": "eb55b156357e12cfe93bd5003885e4b2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4161, "upload_time": "2014-03-27T08:03:42", "url": "https://files.pythonhosted.org/packages/71/bd/022450d00e5449740d665b4d28cd5745f53d7830810946255fee51d6eb5f/aiodns-0.1.0.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "a2325581f537a2e1d9bc56f3bb5ea1fa", "sha256": "5517af5c61781f78275d4bb8b63adea0aa70a43ba2d86651a08cf99ab0746ff1" }, "downloads": -1, "filename": "aiodns-0.2.0.tar.gz", "has_sig": false, "md5_digest": "a2325581f537a2e1d9bc56f3bb5ea1fa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3873, "upload_time": "2014-03-29T08:05:15", "url": "https://files.pythonhosted.org/packages/95/ae/8f3361b7c547283ebfd1338db36b443d82844acc365fc6dad02108f8fa80/aiodns-0.2.0.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "28bf878794e505b2e2279ae65cf14bee", "sha256": "d8cd6ff774dcae9ff351a4fdc264a18e1c33bf09e34f965fa5ad30fdba06e8c1" }, "downloads": -1, "filename": "aiodns-0.3.0.tar.gz", "has_sig": false, "md5_digest": "28bf878794e505b2e2279ae65cf14bee", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4087, "upload_time": "2014-04-06T10:58:11", "url": "https://files.pythonhosted.org/packages/2d/e4/a9a6e9b648afada8b3e2c2c25fb8988822aae8678d6f32a6e480bffca273/aiodns-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "90adcd2524a8d9feb6463f4b795935a7", "sha256": "3138c10391903202325b38692b5dc0c2c1eb6d0db07bcce96e0384e7da95b421" }, "downloads": -1, "filename": "aiodns-0.3.1.tar.gz", "has_sig": false, "md5_digest": "90adcd2524a8d9feb6463f4b795935a7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4147, "upload_time": "2014-09-24T19:27:28", "url": "https://files.pythonhosted.org/packages/ef/55/d2e44f0b43ae2ba9ba6ec37122e1dc381d2f44353154999c0a8ab5adf4b8/aiodns-0.3.1.tar.gz" } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "07d22af802c0b1174010cd213763272d", "sha256": "f3c85ec02fbaa3d2139746f4c5bebfda3eb7230d50e7390f92a93442d3be3e45" }, "downloads": -1, "filename": "aiodns-0.3.2.tar.gz", "has_sig": false, "md5_digest": "07d22af802c0b1174010cd213763272d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4164, "upload_time": "2015-04-20T06:47:43", "url": "https://files.pythonhosted.org/packages/05/8e/5f9004e113602f1119d4effd3675dfface906bccd372bc50ce435a7cd286/aiodns-0.3.2.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "f8d3dd6b49e1b7a9efae06acd0063a50", "sha256": "95140e4d2b67ee16dfbf357d9b54d7453b58f1732e81f869a1803a3ba3773b0d" }, "downloads": -1, "filename": "aiodns-1.0.0.tar.gz", "has_sig": false, "md5_digest": "f8d3dd6b49e1b7a9efae06acd0063a50", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4566, "upload_time": "2015-09-12T10:01:43", "url": "https://files.pythonhosted.org/packages/3e/33/a9b979e05e1e1db7847df580851e7e46b3b24e67545330905411029a753f/aiodns-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "974a12aba9186dccb2aaa51d75da8cbe", "sha256": "595b78b8d54115d937cf60d778c02dad76b6f789fd527dab308f99e5601e7f3d" }, "downloads": -1, "filename": "aiodns-1.0.1.tar.gz", "has_sig": false, "md5_digest": "974a12aba9186dccb2aaa51d75da8cbe", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5658, "upload_time": "2016-01-25T08:28:43", "url": "https://files.pythonhosted.org/packages/cb/b3/26aec847e55bf56d27605c4513ab589aa87240e3f7ebe25fe19f405e7a88/aiodns-1.0.1.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "f071549af9454ee5d710ba160c47d7ef", "sha256": "70c2fae38b219dd560d41289f2e906bb8e9f3c164169671e84ff6134fe536238" }, "downloads": -1, "filename": "aiodns-1.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f071549af9454ee5d710ba160c47d7ef", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6314, "upload_time": "2016-08-27T19:32:50", "url": "https://files.pythonhosted.org/packages/cf/79/5f130bf989dd6aca70d25c0c3a7fd0845fc2905002adea29a3b027c03b7e/aiodns-1.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ee3fc86fc11296a9887a92870bdfd0b1", "sha256": "1e7fe4a2506f9ad5db46827fa93339c722800f2ac50660e02a0fc2cb4ed4a239" }, "downloads": -1, "filename": "aiodns-1.1.0.tar.gz", "has_sig": false, "md5_digest": "ee3fc86fc11296a9887a92870bdfd0b1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6064, "upload_time": "2016-08-27T19:32:52", "url": "https://files.pythonhosted.org/packages/e1/3a/855c8e79e626ca43d7c28072676bf5bf5576a91a987dc39a44c04da6e761/aiodns-1.1.0.tar.gz" } ], "1.1.1": [ { "comment_text": "", "digests": { "md5": "dc11ae23b5b3cd0f37257ff987eac682", "sha256": "99d0652f2c02f73bfa646bf44af82705260a523014576647d7959e664830b26b" }, "downloads": -1, "filename": "aiodns-1.1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "dc11ae23b5b3cd0f37257ff987eac682", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6379, "upload_time": "2016-08-28T08:48:21", "url": "https://files.pythonhosted.org/packages/bd/f5/b69cb930fd5ab0569396659afe3f3c0d37d4098e5d0ba6afdf6fd9388cb0/aiodns-1.1.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "80e0419b49bb4c540b4857ec142219b8", "sha256": "d8677adc679ce8d0ef706c14d9c3d2f27a0e0cc11d59730cdbaf218ad52dd9ea" }, "downloads": -1, "filename": "aiodns-1.1.1.tar.gz", "has_sig": false, "md5_digest": "80e0419b49bb4c540b4857ec142219b8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6084, "upload_time": "2016-08-28T08:48:23", "url": "https://files.pythonhosted.org/packages/3b/45/dcee156eabca900af3a1bab8acb9531636b13db4b677d44ba468a43969e0/aiodns-1.1.1.tar.gz" } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "cae1d31deefd5cb7a6a11949bb47d26b", "sha256": "970688599fcb7d65334ec490a94a51afd634ae2de8a2138d21e2ffbbddc12718" }, "downloads": -1, "filename": "aiodns-1.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "cae1d31deefd5cb7a6a11949bb47d26b", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 5213, "upload_time": "2019-01-17T08:03:25", "url": "https://files.pythonhosted.org/packages/c0/9d/82d910965520ac17956a4b412e36298466de1b87a8fd0ab6dea601cdb8aa/aiodns-1.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b0fb02275cafcbe5ad531c72ba950615", "sha256": "d67e14b32176bcf3ff79b5d47c466011ce4adeadfa264f7949da1377332a0449" }, "downloads": -1, "filename": "aiodns-1.2.0.tar.gz", "has_sig": false, "md5_digest": "b0fb02275cafcbe5ad531c72ba950615", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6457, "upload_time": "2019-01-17T08:03:27", "url": "https://files.pythonhosted.org/packages/7e/1b/f01e4d3502d1364e4df66e477c333bccac2361740e5688b9bc1826cc08bd/aiodns-1.2.0.tar.gz" } ], "2.0.0": [ { "comment_text": "", "digests": { "md5": "b4af9a69eb23a8c4a99db9b1bdfb2014", "sha256": "aaa5ac584f40fe778013df0aa6544bf157799bd3f608364b451840ed2c8688de" }, "downloads": -1, "filename": "aiodns-2.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b4af9a69eb23a8c4a99db9b1bdfb2014", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 4848, "upload_time": "2019-03-02T12:02:22", "url": "https://files.pythonhosted.org/packages/da/01/8f2d49b441573fd2478833bdba91cf0b853b4c750a1fbb9e98de1b94bb22/aiodns-2.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3e121f9eb7ef3ba3556ba7ec28c6f63a", "sha256": "815fdef4607474295d68da46978a54481dd1e7be153c7d60f9e72773cd38d77d" }, "downloads": -1, "filename": "aiodns-2.0.0.tar.gz", "has_sig": false, "md5_digest": "3e121f9eb7ef3ba3556ba7ec28c6f63a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5948, "upload_time": "2019-03-02T12:02:24", "url": "https://files.pythonhosted.org/packages/30/2e/b86ce168485b68d40c6a810838669deacf0abf41845c383659c2b613e69f/aiodns-2.0.0.tar.gz" } ], "2.0.0b0": [ { "comment_text": "", "digests": { "md5": "06dcb78ac7ef85fdb0473ce8d959bbaa", "sha256": "818a4c2a25371beb6c66f4ca486facc13903d943e701569e9bf06bc8ae9ce5eb" }, "downloads": -1, "filename": "aiodns-2.0.0b0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "06dcb78ac7ef85fdb0473ce8d959bbaa", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 4878, "upload_time": "2019-01-18T19:50:45", "url": "https://files.pythonhosted.org/packages/67/80/0d72fe8efd601ff502f7281afab9ab8e1fabed3554e265ed39e54db6eee4/aiodns-2.0.0b0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "30aaacab7c449f96b5bfcd762b5d373e", "sha256": "146842946384adc34d7abd9553a06d3eada4e4b53a5f0dedc4aaca6be1c0453a" }, "downloads": -1, "filename": "aiodns-2.0.0b0.tar.gz", "has_sig": false, "md5_digest": "30aaacab7c449f96b5bfcd762b5d373e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5895, "upload_time": "2019-01-18T19:50:47", "url": "https://files.pythonhosted.org/packages/cc/3d/2b6d1180f4b976dfad0d2eb5a59e844e193fb1832b7d8a988b94445f747f/aiodns-2.0.0b0.tar.gz" } ], "2.0.0b1": [ { "comment_text": "", "digests": { "md5": "5469f95cd1ca08d868453070a5d6d0e6", "sha256": "8159d412530cef1b91ac629954cb49521e7bbb98be4c38ffed56c35edc9960f8" }, "downloads": -1, "filename": "aiodns-2.0.0b1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "5469f95cd1ca08d868453070a5d6d0e6", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 4893, "upload_time": "2019-01-29T14:35:00", "url": "https://files.pythonhosted.org/packages/97/d2/789e5b4efee08fab276afa5f08f767f5e6bc423646d4d636fd78abd8f356/aiodns-2.0.0b1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bb3d960279d3b27bc293d3cd201e7446", "sha256": "86249423533480198613d21de9359e0130881f7d00b078eb530ac9b32c74d145" }, "downloads": -1, "filename": "aiodns-2.0.0b1.tar.gz", "has_sig": false, "md5_digest": "bb3d960279d3b27bc293d3cd201e7446", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5936, "upload_time": "2019-01-29T14:35:01", "url": "https://files.pythonhosted.org/packages/96/66/90c6b46380a83912ffa858101244f8aa7a33d072b85f09ac8591b978ff03/aiodns-2.0.0b1.tar.gz" } ], "2.0.0b2": [ { "comment_text": "", "digests": { "md5": "998910793e7281d9f87f5c9c250cc84d", "sha256": "078d21c86484e90efd0189931069b940506beecdf091de10d7c8cfdfffba20e6" }, "downloads": -1, "filename": "aiodns-2.0.0b2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "998910793e7281d9f87f5c9c250cc84d", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 4879, "upload_time": "2019-02-06T08:19:59", "url": "https://files.pythonhosted.org/packages/8c/fe/f00ffe4ec9af9c3e91ea49b41276dc65f792d6c72c271c78d766d7704868/aiodns-2.0.0b2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "45b1b6227ba4b1986d165594f774e9bf", "sha256": "2c3b3105d7d799e10475cca235518121a1de5f81b9fea5c5f4f46974e89a9857" }, "downloads": -1, "filename": "aiodns-2.0.0b2.tar.gz", "has_sig": false, "md5_digest": "45b1b6227ba4b1986d165594f774e9bf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5928, "upload_time": "2019-02-06T08:20:02", "url": "https://files.pythonhosted.org/packages/e8/35/9abc82b68fa77f536c283ca424a1e642110e359b382d691810931f79a731/aiodns-2.0.0b2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "b4af9a69eb23a8c4a99db9b1bdfb2014", "sha256": "aaa5ac584f40fe778013df0aa6544bf157799bd3f608364b451840ed2c8688de" }, "downloads": -1, "filename": "aiodns-2.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b4af9a69eb23a8c4a99db9b1bdfb2014", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 4848, "upload_time": "2019-03-02T12:02:22", "url": "https://files.pythonhosted.org/packages/da/01/8f2d49b441573fd2478833bdba91cf0b853b4c750a1fbb9e98de1b94bb22/aiodns-2.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3e121f9eb7ef3ba3556ba7ec28c6f63a", "sha256": "815fdef4607474295d68da46978a54481dd1e7be153c7d60f9e72773cd38d77d" }, "downloads": -1, "filename": "aiodns-2.0.0.tar.gz", "has_sig": false, "md5_digest": "3e121f9eb7ef3ba3556ba7ec28c6f63a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5948, "upload_time": "2019-03-02T12:02:24", "url": "https://files.pythonhosted.org/packages/30/2e/b86ce168485b68d40c6a810838669deacf0abf41845c383659c2b613e69f/aiodns-2.0.0.tar.gz" } ] }