1{ lib
2, aiohttp
3, aioresponses
4, attrs
5, buildPythonPackage
6, cached-property
7, defusedxml
8, fetchFromGitHub
9, fetchpatch
10, freezegun
11, httpx
12, isodate
13, lxml
14, mock
15, platformdirs
16, pretend
17, pytest-asyncio
18, pytest-httpx
19, pytestCheckHook
20, pythonOlder
21, pytz
22, requests
23, requests-toolbelt
24, requests-file
25, requests-mock
26, xmlsec
27}:
28
29buildPythonPackage rec {
30 pname = "zeep";
31 version = "4.2.1";
32
33 disabled = pythonOlder "3.6";
34
35 src = fetchFromGitHub {
36 owner = "mvantellingen";
37 repo = "python-zeep";
38 rev = "refs/tags/${version}";
39 hash = "sha256-8f6kS231gbaZ8qyE8BKMcbnZsm8o2+iBoTlQrs5X+jY=";
40 };
41
42 propagatedBuildInputs = [
43 attrs
44 cached-property
45 defusedxml
46 httpx
47 isodate
48 lxml
49 platformdirs
50 pytz
51 requests
52 requests-file
53 requests-toolbelt
54 xmlsec
55 ];
56
57 nativeCheckInputs = [
58 aiohttp
59 aioresponses
60 freezegun
61 mock
62 pretend
63 pytest-asyncio
64 pytest-httpx
65 pytestCheckHook
66 requests-mock
67 ];
68
69 preCheck = ''
70 export HOME=$(mktemp -d);
71 '';
72
73 disabledTests = [
74 # lxml.etree.XMLSyntaxError: Extra content at the end of the document, line 2, column 64
75 "test_mime_content_serialize_text_xml"
76 # Tests are outdated
77 "test_load"
78 "test_load_cache"
79 "test_post"
80 ];
81
82 pythonImportsCheck = [
83 "zeep"
84 ];
85
86 meta = with lib; {
87 description = "Python SOAP client";
88 homepage = "http://docs.python-zeep.org";
89 license = licenses.mit;
90 maintainers = with maintainers; [ rvl ];
91 };
92}