at 17.09-beta 1.8 kB view raw
1{ fetchPypi 2, lib 3, buildPythonPackage 4, python 5, isPy3k 6, appdirs 7, cached-property 8, defusedxml 9, isodate 10, lxml 11, pytz 12, requests_toolbelt 13, six 14# test dependencies 15, freezegun 16, mock 17, nose 18, pretend 19, pytest 20, pytestcov 21, requests-mock 22, testtools 23}: 24 25let 26 pname = "zeep"; 27 version = "2.3.0"; 28in buildPythonPackage { 29 name = "${pname}-${version}"; 30 31 src = fetchPypi { 32 inherit pname version; 33 sha256 = "b01d81c61d7b7858b7be001615d3c995a371815f5e6902c914fea9beba30b716"; 34 }; 35 36 propagatedBuildInputs = [ 37 appdirs 38 cached-property 39 defusedxml 40 isodate 41 lxml 42 pytz 43 requests_toolbelt 44 six 45 ]; 46 47 # testtools dependency not supported for py3k 48 doCheck = !isPy3k; 49 50 buildInputs = if isPy3k then [] else [ 51 freezegun 52 mock 53 nose 54 pretend 55 pytest 56 pytestcov 57 requests-mock 58 ]; 59 60 patchPhase = '' 61 # remove overly strict bounds and lint requirements 62 sed -e "s/freezegun==.*'/freezegun'/" \ 63 -e "s/pytest-cov==.*'/pytest-cov'/" \ 64 -e "s/'isort.*//" \ 65 -e "s/'flake8.*//" \ 66 -i setup.py 67 68 # locale.preferredencoding() != 'utf-8' 69 sed -e "s/xsd', 'r')/xsd', 'r', encoding='utf-8')/" -i tests/*.py 70 71 # cache defaults to home directory, which doesn't exist 72 sed -e "s|SqliteCache()|SqliteCache(path='./zeeptest.db')|" \ 73 -i tests/test_transports.py 74 75 # requires xmlsec python module 76 rm tests/test_wsse_signature.py 77 ''; 78 79 checkPhase = '' 80 runHook preCheck 81 ${python.interpreter} -m pytest tests 82 runHook postCheck 83 ''; 84 85 meta = with lib; { 86 homepage = http://docs.python-zeep.org; 87 license = licenses.mit; 88 description = "A modern/fast Python SOAP client based on lxml / requests"; 89 maintainers = with maintainers; [ rvl ]; 90 }; 91}