{"id":16156868,"url":"https://github.com/saghul/pycares","last_synced_at":"2025-05-15T12:07:11.864Z","repository":{"id":3864422,"uuid":"4949798","full_name":"saghul/pycares","owner":"saghul","description":"Python interface for c-ares","archived":false,"fork":false,"pushed_at":"2025-05-07T20:22:11.000Z","size":557,"stargazers_count":168,"open_issues_count":15,"forks_count":77,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-05-07T21:28:29.095Z","etag":null,"topics":["c-ares","dns","python"],"latest_commit_sha":null,"homepage":"https://pypi.org/project/pycares/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/saghul.png","metadata":{"files":{"readme":"README.rst","changelog":"ChangeLog","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2012-07-08T20:55:01.000Z","updated_at":"2025-05-07T20:17:07.000Z","dependencies_parsed_at":"2024-04-04T10:29:59.062Z","dependency_job_id":"16dd0e94-1378-44b2-b34e-65a18f9c31ac","html_url":"https://github.com/saghul/pycares","commit_stats":{"total_commits":381,"total_committers":36,"mean_commits":"10.583333333333334","dds":0.5643044619422573,"last_synced_commit":"d62a60c6abb20d8b16e1de287863659bc0163a3d"},"previous_names":[],"tags_count":48,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saghul%2Fpycares","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saghul%2Fpycares/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saghul%2Fpycares/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saghul%2Fpycares/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/saghul","download_url":"https://codeload.github.com/saghul/pycares/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254337612,"owners_count":22054254,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["c-ares","dns","python"],"created_at":"2024-10-10T01:46:52.119Z","updated_at":"2025-05-15T12:07:06.852Z","avatar_url":"https://github.com/saghul.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"Looking for new maintainers\n===========================\n\nhttps://github.com/saghul/pycares/issues/139\n\npycares: Python interface for c-ares\n====================================\n\n.. image:: https://badge.fury.io/py/pycares.png\n    :target: https://pypi.org/project/pycares/\n\n.. image:: https://github.com/saghul/pycares/workflows/Test/badge.svg\n    :target: https://github.com/saghul/pycares/actions\n\npycares is a Python module which provides an interface to c-ares.\n`c-ares \u003chttps://c-ares.org\u003e`_ is a C library that performs\nDNS requests and name resolutions asynchronously.\n\n\nDocumentation\n-------------\n\nhttp://readthedocs.org/docs/pycares/\n\n\nBundled c-ares\n--------------\n\npycares currently bundles c-ares as a submodule for ease of building. Using the system\nprovided c-ares is possible if the ``PYCARES_USE_SYSTEM_LIB`` environment variable is\nset to ``1`` when building.\n\nNOTE: Versions prior to 4.0.0 used to embed a modified c-ares with extended TTL support.\nThat is no longer the case and as a result only A and AAAA records will have TTL information.\nFollow this PR in uppstream c-ares, looks like TTLs will be added: https://github.com/c-ares/c-ares/pull/393\n\n\nInstallation\n------------\n\nGNU/Linux, macOS, Windows, others:\n\n::\n\n    pip install pycares\n\nFreeBSD:\n\n::\n\n    cd /usr/ports/dns/py-pycares \u0026\u0026 make install\n\n\nIDNA 2008 support\n^^^^^^^^^^^^^^^^^\n\nIf the ``idna`` package is installed, pycares will support IDNA 2008 encoding otherwise the builtin idna codec will be used,\nwhich provides IDNA 2003 support.\n\nYou can force this at installation time as follows:\n\n::\n\n   pip install pycares[idna]\n\n\nRunning the test suite\n----------------------\n\nFrom the top level directory, run: ``python -m unittest -v``\n\nNOTE: Running the tests requires internet access and are somewhat environment sensitive because real DNS quesries\nare made, there is no mocking. If you observe a failure that the CI cannot reproduce, please try to setup an\nenvironment as close as the current CI.\n\n\nUsing it from the cli, a la dig\n-------------------------------\n\nThis module can be used directly from the command line in a similar fashion to dig (limited, of course):\n\n::\n\n   $ python -m pycares google.com\n   ;; QUESTION SECTION:\n   ;google.com\t\t\tIN\tA\n\n   ;; ANSWER SECTION:\n   google.com\t\t300\tIN\tA\t172.217.17.142\n\n   $ python -m pycares mx google.com\n   ;; QUESTION SECTION:\n   ;google.com\t\t\tIN\tMX\n\n   ;; ANSWER SECTION:\n   google.com\t\t600\tIN\tMX\t50 alt4.aspmx.l.google.com\n   google.com\t\t600\tIN\tMX\t10 aspmx.l.google.com\n   google.com\t\t600\tIN\tMX\t40 alt3.aspmx.l.google.com\n   google.com\t\t600\tIN\tMX\t20 alt1.aspmx.l.google.com\n   google.com\t\t600\tIN\tMX\t30 alt2.aspmx.l.google.com\n\n\nAuthor\n------\n\nSaúl Ibarra Corretgé \u003cs@saghul.net\u003e\n\n\nLicense\n-------\n\nUnless stated otherwise on-file pycares uses the MIT license, check LICENSE file.\n\n\nSupported Python versions\n-------------------------\n\nPython \u003e= 3.9 are supported. Both CPython and PyPy 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","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsaghul%2Fpycares","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsaghul%2Fpycares","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsaghul%2Fpycares/lists"}