1{ lib
2, aiodns
3, buildPythonPackage
4, c-ares
5, cffi
6, fetchPypi
7, idna
8, pythonOlder
9, tornado
10}:
11
12buildPythonPackage rec {
13 pname = "pycares";
14 version = "4.3.0";
15 format = "setuptools";
16
17 disabled = pythonOlder "3.7";
18
19 src = fetchPypi {
20 inherit pname version;
21 hash = "sha256-xUJpb22sl46dmRkjhHRaZfgKfZRQUBFR5KdWPgYBDUU=";
22 };
23
24 buildInputs = [
25 c-ares
26 ];
27
28 propagatedBuildInputs = [
29 cffi
30 idna
31 ];
32
33 propagatedNativeBuildInputs = [
34 cffi
35 ];
36
37 # Requires network access
38 doCheck = false;
39
40 passthru.tests = {
41 inherit aiodns tornado;
42 };
43
44 pythonImportsCheck = [
45 "pycares"
46 ];
47
48 meta = with lib; {
49 description = "Python interface for c-ares";
50 homepage = "https://github.com/saghul/pycares";
51 changelog = "https://github.com/saghul/pycares/releases/tag/pycares-${version}";
52 license = licenses.mit;
53 maintainers = with maintainers; [ fab ];
54 };
55}