summary refs log tree commit diff
path: root/gnu/packages/python-web.scm
diff options
context:
space:
mode:
authorVinicius Monego <monego@posteo.net>2022-01-11 16:25:18 +0000
committerHartmut Goebel <h.goebel@crazy-compilers.com>2022-06-16 09:25:55 +0200
commit5d28f089efba5eb1491f4cd3fd4fb0d4deb19d12 (patch)
tree2e39cdbcb1c568a2a067d32e1a262b75be42911b /gnu/packages/python-web.scm
parent9ee6d9cb176e09b07c64cf1a2bf30c0d2d3c0ade (diff)
downloadguix-5d28f089efba5eb1491f4cd3fd4fb0d4deb19d12.tar.gz
gnu: Add python-zeep.
* gnu/packages/python-web.scm (python-zeep): New variable.
* gnu/packages/patches/python-zeep-Fix-pytest_httpx-test-cases.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.

Co-authored-by: Hartmut Goebel <h.goebel@crazy-compilers.com>
Diffstat (limited to 'gnu/packages/python-web.scm')
-rw-r--r--gnu/packages/python-web.scm57
1 files changed, 57 insertions, 0 deletions
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 30c461f247..b4500c6d2f 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -7478,3 +7478,60 @@ metadata from HTML markup.  Currently, extruct supports:
     (description "The @code{wadllib} Python library allows navigating HTTP
 resources using Web Application Description Language (WADL) files as guides.")
     (license license:lgpl3)))
+
+(define-public python-zeep
+  (package
+    (name "python-zeep")
+    (version "4.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "zeep" version))
+       (patches
+        (search-patches "python-zeep-Fix-pytest_httpx-test-cases.patch"))
+       (sha256
+        (base32 "1ranr4hkjd2kbbhxa3is1qlgkankj3sml5gla6bqs0kbvpmg4rsq"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda* (#:key tests? #:allow-other-keys)
+             (when tests?
+               (setenv "HOME" (getcwd)) ; one test requires write access
+               (invoke "pytest" "-vv")))))))
+    (propagated-inputs
+     (list python-attrs
+           python-cached-property
+           python-isodate
+           python-lxml
+           python-platformdirs
+           python-pytz
+           python-requests
+           python-requests-file
+           python-requests-toolbelt))
+    (native-inputs
+     (list python-aiohttp
+           python-aioresponses
+           python-freezegun
+           python-mock
+           python-pretend
+           python-pytest
+           python-pytest-asyncio
+           python-pytest-cov
+           python-pytest-httpx
+           python-requests-mock))
+    (home-page "https://docs.python-zeep.org/en/stable/")
+    (synopsis "Python SOAP client based on lxml / requests")
+    (description "Zeep is a Python SOAP client.  Highlights:
+
+@itemize
+@item Build on top of @code{lxml} and @code{requests}.
+@item Support for Soap 1.1, Soap 1.2 and HTTP bindings.
+@item Support for WS-Addressing headers.
+@item Support for WSSE (UserNameToken / x.509 signing).
+@item Support for @code{asyncio} via @code{httpx}.
+@item Experimental support for XOP messages.
+@end itemize")
+    (license license:expat)))
+