pycares 2.0.0 released!

Tonight I’m happy to announce that pycares (the Python bindings for c-ares, an asynchronous DNS resolver) has reached version 2.0.0.

This release contains a few important features:

  • CFFI port for PyPy (it can optionally also be used in CPython)
  • Python 3.5 support
  • c-ares updated to version 1.11.1

Plus some minor bugfixes. I’d like to thank Jesse (@boytm) for the CFFI patch, that was a massive contribution, thank you so much!

Binary wheels are available for Python 2.7, 3.3, 3.4 and 3.5 on Windows (both 32 and 64 bits), checkout the PyPI page.


pycares 1.0.0 released

Long time no blog!

Today I’m happy to announce pycares 1.0.0 was just released. pycares is a Python library which wrapps the c-ares C library, providing asynchronous DNS resolution capability to different applications.

The full changelog can be checked here, but these are the main highlights:

  • Return nametuple-like objects for all query types
  • Return TTL information
  • Dropped support for old Python versions
  • AppVeyor CI integration
  • Binary wheels available for 32 and 64 bit Windows (thanks AppVeyor!)

As usual, the code is available on GitHub and the documentation is here.

Happy querying!



pycares: Python bindings for c-ares, released!

Hi! As you all probably know DNS lookups can get tricky at times, since they block. c-ares is a completely asynchronous DNS resolver written in C, and pycares exports its functionality to Python.

After giving the idea some thought I decided to remove the c-ares based resolver which I had implemented in pyuv and created a standalone package instead.

This way, the implementation is completely independent and it can be used with any asynchronous library like Eventlet, Gevent, pyev, …

Since the c-ares build process can be a bit tricy and uses autotools I decided to use a modified version of the build system used in libuv which is based in plain Makefiles.

You can get the source code on the GitHub repository and checkout the documentation here.

Hope you like it!