re-add zeep-4.1.0-r2 from main

This commit is contained in:
Andreas Billmeier 2023-01-30 19:21:19 +01:00 committed by Andreas Billmeier
parent e67534ae87
commit 2f81bbc884
Signed by: onkelbeh
GPG Key ID: E6DB12C8C550F3C0
4 changed files with 176 additions and 0 deletions

3
dev-python/zeep/Manifest Normal file
View File

@ -0,0 +1,3 @@
DIST zeep-4.2.1.tar.gz 161072 BLAKE2B 01e3ec848bc4a98b301b7d091a0740f4a69057f3bb56e884a31b1d73ed51b0c62b4e0e148b2a59ebb6f01469aa949cb4079c0147dae7b3d8e7c8a2f66e5b31f8 SHA512 08de88c1e4cd1787137ea18f12bf343c5c9bb7b353ecd8781c58c7c1acf1b6ee8a0483b47d9a78eb24c79d8ecc347eb8595d460d9f75ca0428963f36a76dff5d
EBUILD zeep-4.2.1.ebuild 660 BLAKE2B 036e3cfea629a6d8430a6f1f9dcea2c8ea27ec71e4156c20ca9dc5a86ebe7aeb63a34cf9e4299fddbae52c172fefd64a537bd67ab163e8d351364ddac9d6c65c SHA512 c47331f003f6ef5c5771f63e6a23ccb8602cb0a8361c8ba7aa5d43df7ace620f52a05cc8b52f083771242a05875ba35e3cc7ad759b7269557ebc7e041da8a2c5
MISC metadata.xml 534 BLAKE2B f109342e8c08a5960fac99e2e4f750ab9c5ba0f1704413e2dd067a8ab6ebc8c7e57c1c54d15c2236b337d36684b38b269c3f9fdcfcf3ae02d8ff2a1b31d7acc1 SHA512 cc29c0be1cd9faad9648b1d11564c9c5ef1721f59d0bab6d762deedb8881f77a7951a2f4fa91c6b1e50688cac9ef03bb05ee00bb48d105bde89d84816d6825f8

View File

@ -0,0 +1,100 @@
From 25701f0b69ee46914179070b7e8906ea3e521480 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
Date: Thu, 11 Nov 2021 08:55:41 +0100
Subject: [PATCH] Use stdlib functools.cached_property if available
Python 3.8+ provides a functools.cached_property in the stdlib that is
thread-safe, i.e. equivalent to threaded_cached_property. Use it
instead of adding third-party dependencies whenever available.
---
setup.py | 2 +-
src/zeep/wsdl/attachments.py | 6 +++++-
src/zeep/xsd/elements/indicators.py | 6 +++++-
src/zeep/xsd/types/any.py | 6 +++++-
src/zeep/xsd/types/complex.py | 6 +++++-
5 files changed, 21 insertions(+), 5 deletions(-)
diff --git a/setup.py b/setup.py
index cb51ac4..8ef81b6 100755
--- a/setup.py
+++ b/setup.py
@@ -4,7 +4,7 @@ from setuptools import setup
install_requires = [
"attrs>=17.2.0",
- "cached-property>=1.3.0",
+ "cached-property>=1.3.0; python_version<'3.8'",
"isodate>=0.5.4",
"lxml>=4.6.0",
"platformdirs>=1.4.0",
diff --git a/src/zeep/wsdl/attachments.py b/src/zeep/wsdl/attachments.py
index 037e439..075bee5 100644
--- a/src/zeep/wsdl/attachments.py
+++ b/src/zeep/wsdl/attachments.py
@@ -6,7 +6,11 @@ See https://www.w3.org/TR/SOAP-attachments
import base64
-from cached_property import cached_property
+try:
+ from functools import cached_property
+except ImportError:
+ from cached_property import cached_property
+
from requests.structures import CaseInsensitiveDict
diff --git a/src/zeep/xsd/elements/indicators.py b/src/zeep/xsd/elements/indicators.py
index 40325da..e9ef2c4 100644
--- a/src/zeep/xsd/elements/indicators.py
+++ b/src/zeep/xsd/elements/indicators.py
@@ -16,7 +16,11 @@ import operator
import typing
from collections import OrderedDict, defaultdict, deque
-from cached_property import threaded_cached_property
+try:
+ from functools import cached_property as threaded_cached_property
+except ImportError:
+ from cached_property import threaded_cached_property
+
from lxml import etree
from zeep.exceptions import UnexpectedElementError, ValidationError
diff --git a/src/zeep/xsd/types/any.py b/src/zeep/xsd/types/any.py
index b4525e4..17f244e 100644
--- a/src/zeep/xsd/types/any.py
+++ b/src/zeep/xsd/types/any.py
@@ -1,7 +1,11 @@
import logging
import typing
-from cached_property import threaded_cached_property
+try:
+ from functools import cached_property as threaded_cached_property
+except ImportError:
+ from cached_property import threaded_cached_property
+
from lxml import etree
from zeep.utils import qname_attr
diff --git a/src/zeep/xsd/types/complex.py b/src/zeep/xsd/types/complex.py
index 8141bc1..b2ed9bf 100644
--- a/src/zeep/xsd/types/complex.py
+++ b/src/zeep/xsd/types/complex.py
@@ -4,7 +4,11 @@ import typing
from collections import OrderedDict, deque
from itertools import chain
-from cached_property import threaded_cached_property
+try:
+ from functools import cached_property as threaded_cached_property
+except ImportError:
+ from cached_property import threaded_cached_property
+
from lxml import etree
from zeep.exceptions import UnexpectedElementError, XMLParseError
--
2.33.1

View File

@ -0,0 +1,16 @@
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>b@edevau.net</email>
<name>Andreas Billmeier</name>
</maintainer>
<upstream>
<remote-id type="pypi">zeep</remote-id>
<remote-id type="github">mvantellingen/python-zeep</remote-id>
<maintainer status="unknown">
<email>michaelvantellingen@gmail.com</email>
<name>Michael van Tellingen</name>
</maintainer>
</upstream>
</pkgmetadata>

View File

@ -0,0 +1,57 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{8..10} )
inherit distutils-r1
DESCRIPTION="A modern/fast Python SOAP client based on lxml / requests"
HOMEPAGE="https://docs.python-zeep.org/"
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="amd64 x86"
IUSE="async"
RDEPEND="
>=dev-python/attrs-17.2.0[${PYTHON_USEDEP}]
>=dev-python/isodate-0.5.4[${PYTHON_USEDEP}]
>=dev-python/lxml-4.6.0[${PYTHON_USEDEP}]
>=dev-python/platformdirs-1.4.0[${PYTHON_USEDEP}]
>=dev-python/requests-file-1.5.1[${PYTHON_USEDEP}]
>=dev-python/requests-2.7.0[${PYTHON_USEDEP}]
>=dev-python/requests-toolbelt-0.7.1[${PYTHON_USEDEP}]
dev-python/pytz[${PYTHON_USEDEP}]
async? ( >=dev-python/aiohttp-1.0[${PYTHON_USEDEP}] )
"
BDEPEND="
test? (
dev-python/aiohttp[${PYTHON_USEDEP}]
dev-python/aioresponses[${PYTHON_USEDEP}]
dev-python/freezegun[${PYTHON_USEDEP}]
dev-python/mock[${PYTHON_USEDEP}]
dev-python/pretend[${PYTHON_USEDEP}]
dev-python/python-xmlsec[${PYTHON_USEDEP}]
dev-python/pytest-asyncio[${PYTHON_USEDEP}]
dev-python/pytest-httpx[${PYTHON_USEDEP}]
dev-python/requests-mock[${PYTHON_USEDEP}]
)
"
distutils_enable_tests pytest
PATCHES=(
"${FILESDIR}"/${P}-cached-prop.patch
)
EPYTEST_DESELECT=(
# broken by new pytest-httpx?
tests/test_async_transport.py::test_load
tests/test_async_transport.py::test_load_cache
tests/test_async_transport.py::test_post
tests/test_async_transport.py::test_http_error
)