diff options
author | V3n3RiX <venerix@koprulu.sector> | 2025-01-07 06:41:06 +0000 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2025-01-07 06:41:06 +0000 |
commit | d69399c7befdd98cda62d6a1788ae2aa7f104c5e (patch) | |
tree | eac7184f4cfe7d67580c1d0a0d9942a91e6cb4ee /dev-python/httpretty | |
parent | e4d9d6796d5018e338f0b27a3bc97716195bf0b8 (diff) |
gentoo auto-resync : 07:01:2025 - 06:41:06
Diffstat (limited to 'dev-python/httpretty')
-rw-r--r-- | dev-python/httpretty/Manifest | 4 | ||||
-rw-r--r-- | dev-python/httpretty/files/httpretty-1.1.4-urllib3-2.3.patch | 40 | ||||
-rw-r--r-- | dev-python/httpretty/httpretty-1.1.4-r2.ebuild (renamed from dev-python/httpretty/httpretty-1.1.4-r1.ebuild) | 4 | ||||
-rw-r--r-- | dev-python/httpretty/httpretty-1.1.4-r3.ebuild | 86 |
4 files changed, 131 insertions, 3 deletions
diff --git a/dev-python/httpretty/Manifest b/dev-python/httpretty/Manifest index e5b939cbee56..431f6c514eab 100644 --- a/dev-python/httpretty/Manifest +++ b/dev-python/httpretty/Manifest @@ -1,4 +1,6 @@ AUX httpretty-1.1.4-pytest.patch 4970 BLAKE2B 396fd081c958616978b0f0fa476a0b6b1f3e530aee5bddc969fcd0b9471e094dfb7c2114940f86dea6e50222f4224321cf7ed449999c61eb7006c9d1cff3e7e6 SHA512 f9064a67d852a026a7398fc1593499d4d3c7e44d00d01d1ecb68d813b1114578858a2b2d11f56f44ce7284b618143098c590fef442c118f532b29503f135ab55 +AUX httpretty-1.1.4-urllib3-2.3.patch 1830 BLAKE2B 718ef918a459cde04cfdbe1bca33c839e72e8711626770c46a756af9b6cd706155bb22db95139d32e6c715098c2b9f206dcd5bf8090ce32e591a892f7239dc33 SHA512 483cb20c64872b68dbef35a3325fc7f93d5e550c3e4cb266425a0d0ecac172b97674de8f837b2b48d63145ff0a24d3a89af1871cb84bfec9eeb70b1bea803a34 DIST httpretty-1.1.4.tar.gz 442389 BLAKE2B 020a9fd2b5dc9790b53009caac37a3cf5a0e47102b9be05f4df255880f5daf5e7689714e0c0a8f223155d191c471cb5ff4f9b0d0d34b07bd5f377311ed56ba25 SHA512 4daceea4f30ce181e871167d304bd7af9d504364f55d42f8025770f2efe7e833d018aed681c8733d653d4de90db3433e999c56bccd4675f81e66d1cc4023e418 -EBUILD httpretty-1.1.4-r1.ebuild 2251 BLAKE2B 464751cc19364ff699062318688563dbca3363af5f8c41d7b921630ff14d3a84c052898c50fcd4a1444610153712df48bf4f299aef4f88913acd2d61668c7456 SHA512 b43cfe5e08658c1afbb8c19e07ae72e948d3af234578915608affe32dde685b6f879da6dcbeb18f93a244a5cbeac536369ba12c43c0f0772c2a27e6d4e2b4bdf +EBUILD httpretty-1.1.4-r2.ebuild 2256 BLAKE2B 7f6f8b3a39346c8b067668c3c218b6bf098039f150deb94a34465badc6e9584ac8494774bed94dfaf65c38aebba5688ae94dadd3a7048a08dde965f30bd93dbc SHA512 8bf7aea9c137a46daefcfff0199468cd3aaf648f042de2b1eed9926784dc7e162cc13baaa6a2a6dc700baf0f6a489cdcf1c4a5d01a69e7a43043bc496baac8a7 +EBUILD httpretty-1.1.4-r3.ebuild 2351 BLAKE2B 21fd42bfdd6ad5ad3da5513f5fd9ef1b6b6446d598b64d790cd0ed6215944a15c37e3a1598059e394b16fa5a0bd4b604bac4c4013a9d8e2948aa3b60bbcc5863 SHA512 d9fdd8885e0b9915966dcf514518e538d338739816c9e345a97bf41af53d6dc80a71d234b3c56d4ea6c7a6944d9294692566ce73254306ee0f4e22930c38bd29 MISC metadata.xml 616 BLAKE2B 65eeaf117de44f4d836a207f29728912c57ea62ca6102334ab183beb5e48e4f9fe683b3356f39a8456e3981e7c9470f312d516f47a2b14b6c08befdbd777a778 SHA512 2ba0ba780ad8dba7c193d0c10eb4b993f93c8ca0e4c99d22a70d3bf86588e9b9df20f560a91edbaa72a95beead383386dfc96ae16299ef03936257d4e03a4b77 diff --git a/dev-python/httpretty/files/httpretty-1.1.4-urllib3-2.3.patch b/dev-python/httpretty/files/httpretty-1.1.4-urllib3-2.3.patch new file mode 100644 index 000000000000..c559f84fe997 --- /dev/null +++ b/dev-python/httpretty/files/httpretty-1.1.4-urllib3-2.3.patch @@ -0,0 +1,40 @@ +From 8e96b1e312d473429fbd08bc867376e9932ad42a Mon Sep 17 00:00:00 2001 +From: Carl Smedstad <carl.smedstad@protonmail.com> +Date: Mon, 30 Dec 2024 19:08:26 +0100 +Subject: [PATCH] Mock socket.shutdown for compatibility with urllib3 >= 2.3 + +Version 2.3.0 of urllib3 gets the attribute socket.shutdown which +HTTPretty does no mock. See the following call stack: + + /usr/lib/python3.13/site-packages/requests/sessions.py:602: in get + return self.request("GET", url, **kwargs) + /usr/lib/python3.13/site-packages/requests/sessions.py:589: in request + resp = self.send(prep, **send_kwargs) + /usr/lib/python3.13/site-packages/requests/sessions.py:703: in send + r = adapter.send(request, **kwargs) + /usr/lib/python3.13/site-packages/requests/adapters.py:667: in send + resp = conn.urlopen( + /usr/lib/python3.13/site-packages/urllib3/connectionpool.py:787: in urlopen + response = self._make_request( + /usr/lib/python3.13/site-packages/urllib3/connectionpool.py:534: in _make_request + response = conn.getresponse() + /usr/lib/python3.13/site-packages/urllib3/connection.py:513: in getresponse + _shutdown = getattr(self.sock, "shutdown", None) +--- + httpretty/core.py | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/httpretty/core.py b/httpretty/core.py +index 69686458..de7e091a 100644 +--- a/httpretty/core.py ++++ b/httpretty/core.py +@@ -861,6 +861,9 @@ def recv_into(self, *args, **kwargs): + def recvfrom(self, *args, **kwargs): + return self.forward_and_trace('recvfrom', *args, **kwargs) + ++ def shutdown(self, *args, **kwargs): ++ return self.forward_and_trace('shutdown', *args, **kwargs) ++ + def recv(self, buffersize=0, *args, **kwargs): + if not self._read_buf: + self._read_buf = io.BytesIO() diff --git a/dev-python/httpretty/httpretty-1.1.4-r1.ebuild b/dev-python/httpretty/httpretty-1.1.4-r2.ebuild index b3df1302ab77..53cbeecfb01f 100644 --- a/dev-python/httpretty/httpretty-1.1.4-r1.ebuild +++ b/dev-python/httpretty/httpretty-1.1.4-r2.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -20,7 +20,7 @@ KEYWORDS="amd64 arm arm64 ppc ppc64 ~riscv sparc x86" IUSE="test-rust" RDEPEND=" - dev-python/urllib3[${PYTHON_USEDEP}] + <dev-python/urllib3-2.3[${PYTHON_USEDEP}] " BDEPEND=" test? ( diff --git a/dev-python/httpretty/httpretty-1.1.4-r3.ebuild b/dev-python/httpretty/httpretty-1.1.4-r3.ebuild new file mode 100644 index 000000000000..9dd3d3216a85 --- /dev/null +++ b/dev-python/httpretty/httpretty-1.1.4-r3.ebuild @@ -0,0 +1,86 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{10..13} ) + +inherit distutils-r1 pypi + +DESCRIPTION="HTTP client mock for Python" +HOMEPAGE=" + https://github.com/gabrielfalcao/httpretty/ + https://pypi.org/project/httpretty/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86" +IUSE="test-rust" + +RDEPEND=" + dev-python/urllib3[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/freezegun[${PYTHON_USEDEP}] + >=dev-python/requests-1.1[${PYTHON_USEDEP}] + dev-python/sure[${PYTHON_USEDEP}] + >=dev-python/tornado-2.2[${PYTHON_USEDEP}] + ) +" +# These are optional test deps, that are used to test compatibility +# with various HTTP libs. We prefer pulling them in whenever possible +# to increase test coverage but we can live without them. +# We're skipping redis entirely since it requires a running server. +BDEPEND+=" + test? ( + test-rust? ( + dev-python/pyopenssl[${PYTHON_USEDEP}] + ) + >=dev-python/boto3-1.17.72[${PYTHON_USEDEP}] + dev-python/httplib2[${PYTHON_USEDEP}] + >=dev-python/httpx-0.18.1[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +PATCHES=( + "${FILESDIR}/${P}-pytest.patch" + # https://github.com/gabrielfalcao/HTTPretty/pull/485 + "${FILESDIR}/${P}-urllib3-2.3.patch" +) + +python_test() { + local EPYTEST_IGNORE=( + # this seems to be a stress test + tests/bugfixes/pytest/test_426_mypy_segfault.py + # passthrough tests require Internet access + tests/functional/test_passthrough.py + # eventlet is masked for removal + tests/bugfixes/nosetests/test_eventlet.py + ) + local EPYTEST_DESELECT=( + # regressions with newer dev-python/requests + tests/functional/test_requests.py::test_httpretty_should_allow_registering_regexes_with_streaming_responses + tests/functional/test_requests.py::test_httpretty_should_handle_paths_starting_with_two_slashes + ) + + local ignore_by_dep=( + dev-python/boto3:tests/bugfixes/nosetests/test_416_boto3.py + dev-python/httplib2:tests/functional/test_httplib2.py + dev-python/httpx:tests/bugfixes/nosetests/test_414_httpx.py + dev-python/pyopenssl:tests/bugfixes/nosetests/test_417_openssl.py + ) + + local x + for x in "${ignore_by_dep[@]}"; do + if ! has_version "${x%:*}[${PYTHON_USEDEP}]"; then + EPYTEST_IGNORE+=( "${x#*:}" ) + fi + done + + epytest +} |