Skip to main content

Python interface for c-ares

Project description

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.

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:

python setup.py install

Mac OSX:

(XCode needs to be installed)
export ARCHFLAGS="-arch x86_64"
python setup.py install

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 :-)

Release history Release notifications

This version
History Node

2.3.0

History Node

2.2.0

History Node

2.1.1

History Node

2.1.0

History Node

2.0.1

History Node

2.0.0

History Node

1.0.0

History Node

0.7.0

History Node

0.6.3

History Node

0.6.2

History Node

0.6.1

History Node

0.6.0

History Node

0.5.0

History Node

0.4.0

History Node

0.3.0

History Node

0.2.0

History Node

0.1.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
pycares-2.3.0-cp27-cp27mu-manylinux1_i686.whl (182.4 kB) Copy SHA256 hash SHA256 Wheel cp27 Jul 20, 2017
pycares-2.3.0-cp27-cp27mu-manylinux1_x86_64.whl (196.6 kB) Copy SHA256 hash SHA256 Wheel cp27 Jul 20, 2017
pycares-2.3.0-cp27-cp27m-win32.whl (49.5 kB) Copy SHA256 hash SHA256 Wheel cp27 Jul 20, 2017
pycares-2.3.0-cp27-cp27m-win_amd64.whl (58.6 kB) Copy SHA256 hash SHA256 Wheel cp27 Jul 20, 2017
pycares-2.3.0-cp33-cp33m-manylinux1_i686.whl (182.8 kB) Copy SHA256 hash SHA256 Wheel cp33 Jul 20, 2017
pycares-2.3.0-cp33-cp33m-manylinux1_x86_64.whl (197.0 kB) Copy SHA256 hash SHA256 Wheel cp33 Jul 20, 2017
pycares-2.3.0-cp33-cp33m-win32.whl (50.2 kB) Copy SHA256 hash SHA256 Wheel cp33 Jul 20, 2017
pycares-2.3.0-cp33-cp33m-win_amd64.whl (58.3 kB) Copy SHA256 hash SHA256 Wheel cp33 Jul 20, 2017
pycares-2.3.0-cp34-cp34m-manylinux1_i686.whl (186.0 kB) Copy SHA256 hash SHA256 Wheel cp34 Jul 20, 2017
pycares-2.3.0-cp34-cp34m-manylinux1_x86_64.whl (200.0 kB) Copy SHA256 hash SHA256 Wheel cp34 Jul 20, 2017
pycares-2.3.0-cp34-cp34m-win32.whl (50.2 kB) Copy SHA256 hash SHA256 Wheel cp34 Jul 20, 2017
pycares-2.3.0-cp34-cp34m-win_amd64.whl (58.3 kB) Copy SHA256 hash SHA256 Wheel cp34 Jul 20, 2017
pycares-2.3.0-cp35-cp35m-manylinux1_i686.whl (186.2 kB) Copy SHA256 hash SHA256 Wheel cp35 Jul 20, 2017
pycares-2.3.0-cp35-cp35m-manylinux1_x86_64.whl (200.2 kB) Copy SHA256 hash SHA256 Wheel cp35 Jul 20, 2017
pycares-2.3.0-cp35-cp35m-win32.whl (51.5 kB) Copy SHA256 hash SHA256 Wheel cp35 Jul 20, 2017
pycares-2.3.0-cp35-cp35m-win_amd64.whl (63.8 kB) Copy SHA256 hash SHA256 Wheel cp35 Jul 20, 2017
pycares-2.3.0-cp36-cp36m-manylinux1_i686.whl (186.2 kB) Copy SHA256 hash SHA256 Wheel cp36 Jul 20, 2017
pycares-2.3.0-cp36-cp36m-manylinux1_x86_64.whl (200.2 kB) Copy SHA256 hash SHA256 Wheel cp36 Jul 20, 2017
pycares-2.3.0-cp36-cp36m-win32.whl (51.5 kB) Copy SHA256 hash SHA256 Wheel cp36 Jul 20, 2017
pycares-2.3.0-cp36-cp36m-win_amd64.whl (63.8 kB) Copy SHA256 hash SHA256 Wheel cp36 Jul 20, 2017
pycares-2.3.0.tar.gz (224.9 kB) Copy SHA256 hash SHA256 Source None Jul 20, 2017

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page