Python interface for c-ares
C Python PowerShell Batchfile Shell
Latest commit 8cfce1c Aug 26, 2016 Tanguy Ortolo committed with doc: update Sphinx configuration so the docs can be built
Searches for the pycares version number in pycares/_version.py rather
than setup.py (which failed as it is no longer there).

Closes: #33
Permalink
Failed to load latest commit information.
appveyor
deps/c-ares/src
docs doc: update Sphinx configuration so the docs can be built Aug 26, 2016
examples
pycares
src core: fix parsing chunked TXT records Jun 10, 2016
tests test: add test for setting nameservers Jul 1, 2016
.gitignore
.travis.yml ci: use PyPy 5 in Travis CI May 24, 2016
ChangeLog
LICENSE Initial import Jul 7, 2012
MANIFEST.in
README.rst doc: update supported Python versions May 25, 2016
TODO
appveyor.yml ci: build CFFI backend first on AppVeyor Jun 10, 2016
build_inplace Initial import Jul 7, 2012
setup.py
setup_cares.py build: refactor building bundled c-ares May 24, 2016
tasks.py
tox.ini test: add Python 3.5 to tox.ini May 24, 2016

README.rst

pycares: Python interface for c-ares

https://badge.fury.io/py/pycares.png https://secure.travis-ci.org/saghul/pycares.png?branch=master https://ci.appveyor.com/api/projects/status/vx1wbkfq3l7nm1m8?svg=true

pycares is a Python module which provides an interface to c-ares. c-ares is a C library that performs DNS requests and name resolutions asynchronously.

Documentation

http://readthedocs.org/docs/pycares/

Bundled c-ares

pycares currently bundles c-ares and as of pycares 1.0.0 this is a strong requirement. Upstream c-ares is not willing to apply a patch adding TTL support. I did apply the patch to the bundled c-ares, but unfortunately it breaks the ABI, so attempting to use a system provided c-ares is not possible.

Building

Linux:

./build_inplace

Mac OSX:

(XCode needs to be installed)
export ARCHFLAGS="-arch x86_64"
./build_inplace

Microsoft Windows (with Visual Studio 2008, 2010, 2015 or the Windows SDK):

./build_inplace

Running the test suite

There are several ways of running the test ruite:

  • Run the test with the current Python interpreter:

    From the toplevel directory, run: python tests/tests.py

  • Use Tox to run the test suite in several virtualenvs with several interpreters

    From the toplevel directory, run: tox -e py27,py33,py34,py35 this will run the test suite on Python 2.7, 3.3, 3.4 and 3.5 (you'll need to have them installed beforehand)

Author

Saúl Ibarra Corretgé <saghul@gmail.com>

License

Unless stated otherwise on-file pycares uses the MIT license, check LICENSE file.

Python versions

Python >= 2.7 and >= 3.3 are supported. Other older versions might work too, but they are not actively tested. Both CPython and PyPy (tested with version 5) are supported.

Contributing

If you'd like to contribute, fork the project, make a patch and send a pull request. Have a look at the surrounding code and please, make yours look alike :-)