From 91e5c96080c224c65d7755f93baec4e2a3c43fd4 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak Date: Fri, 2 Aug 2024 17:19:04 +0200 Subject: [PATCH] dev-python/urllib3: Add from Gentoo It's from Gentoo commit 03adc5504b703867161beb662dd94e5982f6240d. --- .../dev-python/urllib3/Manifest | 2 + .../dev-python/urllib3/metadata.xml | 14 +++ .../dev-python/urllib3/urllib3-2.2.2.ebuild | 94 +++++++++++++++++++ 3 files changed, 110 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/urllib3/Manifest create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/urllib3/metadata.xml create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/urllib3/urllib3-2.2.2.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-python/urllib3/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/urllib3/Manifest new file mode 100644 index 0000000000..fb8ffafc19 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/urllib3/Manifest @@ -0,0 +1,2 @@ +DIST hypercorn-d1719f8c1570cbd8e6a3719ffdb14a4d72880abb.gh.tar.gz 156216 BLAKE2B fcb5f49653401e6e4079e1c770d3cd407602d4d6764437b735bd4ec04191dec59cdc930822fa2aff726ee25cddd0f71fd457dedf31026bff1da121d93af8b768 SHA512 62d6787d88a2e716f0ac04fc49f6cdc586e473a660ee754ff66961922ae78bcc75d1f78b091e78557dd60f006e8e480114738c7b4ff71beac804e4fc9603240b +DIST urllib3-2.2.2.tar.gz 292266 BLAKE2B 50d4825ff4bd950742708bec63feb1713e211293f7720c79f2c71740f3eb3d501b476b8de5b389b8fb978c2486081023ebc2e05162c5d4fcedd811452743e07a SHA512 98695bcf37e772a1220cc05679ea799d82a09c73115717668c90dab9377690dd096f648d60ac0759a23cf65f2b1b6f363ec6826f669d4299bfa0a203a45dce0f diff --git a/sdk_container/src/third_party/portage-stable/dev-python/urllib3/metadata.xml b/sdk_container/src/third_party/portage-stable/dev-python/urllib3/metadata.xml new file mode 100644 index 0000000000..e27c6550e7 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/urllib3/metadata.xml @@ -0,0 +1,14 @@ + + + + + python@gentoo.org + Python + + + + urllib3 + cpe:/a:urllib3:urllib3 + urllib3/urllib3 + + diff --git a/sdk_container/src/third_party/portage-stable/dev-python/urllib3/urllib3-2.2.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/urllib3/urllib3-2.2.2.ebuild new file mode 100644 index 0000000000..caf4788a28 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/urllib3/urllib3-2.2.2.ebuild @@ -0,0 +1,94 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# please keep this ebuild at EAPI 8 -- sys-apps/portage dep +EAPI=8 + +DISTUTILS_USE_PEP517=hatchling +PYTHON_TESTED=( python3_{10..13} pypy3 ) +PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" ) +PYTHON_REQ_USE="ssl(+)" + +inherit distutils-r1 pypi + +# The package has a test dependency on their own hypercorn fork. +HYPERCORN_COMMIT=d1719f8c1570cbd8e6a3719ffdb14a4d72880abb +DESCRIPTION="HTTP library with thread-safe connection pooling, file post, and more" +HOMEPAGE=" + https://github.com/urllib3/urllib3/ + https://pypi.org/project/urllib3/ +" +SRC_URI+=" + test? ( + https://github.com/urllib3/hypercorn/archive/${HYPERCORN_COMMIT}.tar.gz + -> hypercorn-${HYPERCORN_COMMIT}.gh.tar.gz + ) +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" +IUSE="brotli http2 test zstd" +RESTRICT="!test? ( test )" + +# [secure] extra is deprecated and slated for removal, we don't need it: +# https://github.com/urllib3/urllib3/issues/2680 +RDEPEND=" + >=dev-python/PySocks-1.5.8[${PYTHON_USEDEP}] + =dev-python/brotlicffi-0.8.0[${PYTHON_USEDEP}] ) + http2? ( + =dev-python/h2-4[${PYTHON_USEDEP}] + ) + zstd? ( >=dev-python/zstandard-0.18.0[${PYTHON_USEDEP}] ) +" +BDEPEND=" + test? ( + $(python_gen_cond_dep " + ${RDEPEND} + dev-python/brotlicffi[\${PYTHON_USEDEP}] + dev-python/freezegun[\${PYTHON_USEDEP}] + dev-python/h2[\${PYTHON_USEDEP}] + dev-python/httpx[\${PYTHON_USEDEP}] + dev-python/pytest[\${PYTHON_USEDEP}] + dev-python/pytest-rerunfailures[\${PYTHON_USEDEP}] + dev-python/pytest-timeout[\${PYTHON_USEDEP}] + dev-python/pytest-xdist[\${PYTHON_USEDEP}] + dev-python/quart[\${PYTHON_USEDEP}] + dev-python/quart-trio[\${PYTHON_USEDEP}] + dev-python/trio[\${PYTHON_USEDEP}] + >=dev-python/tornado-4.2.1[\${PYTHON_USEDEP}] + >=dev-python/trustme-0.5.3[\${PYTHON_USEDEP}] + >=dev-python/zstandard-0.18.0[\${PYTHON_USEDEP}] + " "${PYTHON_TESTED[@]}") + ) +" + +src_prepare() { + # upstream considers 0.5 s to be "long" for a timeout + # we get tons of test failures on *fast* systems because of that + sed -i -e '/LONG_TIMEOUT/s:0.5:5:' test/__init__.py || die + distutils-r1_src_prepare +} + +python_test() { + local -x PYTHONPATH=${WORKDIR}/hypercorn-${HYPERCORN_COMMIT}/src + local -x CI=1 + if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then + einfo "Skipping tests on ${EPYTHON}" + return + fi + + local EPYTEST_DESELECT=( + # TODO: timeouts + test/contrib/test_pyopenssl.py::TestSocketClosing::test_timeout_errors_cause_retries + test/with_dummyserver/test_socketlevel.py::TestSocketClosing::test_timeout_errors_cause_retries + # TODO: random regression? + test/contrib/test_socks.py::TestSocks5Proxy::test_socket_timeout + ) + + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + local EPYTEST_XDIST=1 + epytest -p timeout -p rerunfailures --reruns=10 --reruns-delay=2 +}