summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2023-10-22 18:23:30 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2023-10-22 18:23:30 +0000
commit73694eda0d51d20cdb2e4dab7e99046cfb2be485 (patch)
treed2ad075832550ba8c0ffb65fcdb0fa13240de99d /dev-python
parentd5bd0bc983c2713b66c2c0a6044a3968b14459b1 (diff)
downloadbaldeagleos-repo-73694eda0d51d20cdb2e4dab7e99046cfb2be485.tar.gz
baldeagleos-repo-73694eda0d51d20cdb2e4dab7e99046cfb2be485.tar.xz
baldeagleos-repo-73694eda0d51d20cdb2e4dab7e99046cfb2be485.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/GridDataFormats/GridDataFormats-1.0.2.ebuild29
-rw-r--r--dev-python/GridDataFormats/Manifest1
-rw-r--r--dev-python/Pyro5/Pyro5-5.15-r1.ebuild5
-rw-r--r--dev-python/Pyro5/files/Pyro5-5.15-fix-test-on-ipv6.patch36
-rw-r--r--dev-python/argh/Manifest1
-rw-r--r--dev-python/argh/argh-0.30.0.ebuild28
-rw-r--r--dev-python/beartype/Manifest1
-rw-r--r--dev-python/beartype/beartype-0.16.4.ebuild35
-rw-r--r--dev-python/css-parser/Manifest1
-rw-r--r--dev-python/css-parser/css-parser-1.0.10.ebuild28
-rw-r--r--dev-python/django-configurations/Manifest1
-rw-r--r--dev-python/django-configurations/django-configurations-2.5.ebuild44
-rw-r--r--dev-python/ensurepip-pip/Manifest1
-rw-r--r--dev-python/ensurepip-pip/ensurepip-pip-23.3.1.ebuild24
-rw-r--r--dev-python/fakeredis/Manifest1
-rw-r--r--dev-python/fakeredis/fakeredis-2.20.0.ebuild84
-rw-r--r--dev-python/fsspec/Manifest1
-rw-r--r--dev-python/fsspec/fsspec-2023.10.0.ebuild65
-rw-r--r--dev-python/jc/Manifest1
-rw-r--r--dev-python/jc/jc-1.23.5.ebuild32
-rw-r--r--dev-python/mkdocs-pymdownx-material-extras/Manifest1
-rw-r--r--dev-python/mkdocs-pymdownx-material-extras/mkdocs-pymdownx-material-extras-2.5.5.ebuild23
-rw-r--r--dev-python/pikepdf/Manifest1
-rw-r--r--dev-python/pikepdf/pikepdf-8.5.2.ebuild62
-rw-r--r--dev-python/pip/Manifest1
-rw-r--r--dev-python/pip/pip-23.3.1.ebuild130
-rw-r--r--dev-python/pycairo/Manifest1
-rw-r--r--dev-python/pycairo/pycairo-1.25.1.ebuild73
-rw-r--r--dev-python/pytest-recording/Manifest1
-rw-r--r--dev-python/pytest-recording/metadata.xml10
-rw-r--r--dev-python/pytest-recording/pytest-recording-0.13.0.ebuild46
-rw-r--r--dev-python/sqlglot/Manifest1
-rw-r--r--dev-python/sqlglot/sqlglot-18.16.1.ebuild36
-rw-r--r--dev-python/tblib/Manifest1
-rw-r--r--dev-python/tblib/tblib-3.0.0.ebuild36
-rw-r--r--dev-python/vcrpy/files/vcrpy-5.1.0-py312.patch35
-rw-r--r--dev-python/vcrpy/vcrpy-5.1.0.ebuild8
-rw-r--r--dev-python/websockets/Manifest1
-rw-r--r--dev-python/websockets/websockets-12.0.ebuild57
39 files changed, 942 insertions, 1 deletions
diff --git a/dev-python/GridDataFormats/GridDataFormats-1.0.2.ebuild b/dev-python/GridDataFormats/GridDataFormats-1.0.2.ebuild
new file mode 100644
index 000000000000..0a47a110939f
--- /dev/null
+++ b/dev-python/GridDataFormats/GridDataFormats-1.0.2.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Reading and writing of data on regular grids in Python"
+HOMEPAGE="
+ https://pypi.org/project/GridDataFormats/
+ https://github.com/MDAnalysis/GridDataFormats/
+"
+
+SLOT="0"
+LICENSE="LGPL-3"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/mrcfile[${PYTHON_USEDEP}]
+ >=dev-python/numpy-1.21[${PYTHON_USEDEP}]
+ dev-python/scipy[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/GridDataFormats/Manifest b/dev-python/GridDataFormats/Manifest
index 3c7ae2e165f6..0f2706f017f2 100644
--- a/dev-python/GridDataFormats/Manifest
+++ b/dev-python/GridDataFormats/Manifest
@@ -1 +1,2 @@
DIST GridDataFormats-1.0.1.tar.gz 2155370 BLAKE2B 8bf5ce65cefdcf490b75212bca8831957769118fbad7fdce42b5634ed67a1f5d4ac454f7429b984bafd89f5bc883fff1bca9dc71f529794cdd585e186e41e063 SHA512 2cfb8c50b4d17fa978924a0e65ae27f6e125bd1055bfdc9096ea35511f4c2a8a16f6bd9c652b9130fbdd66d4d464d8074b14f47c175f98df94c02fe973a0107b
+DIST GridDataFormats-1.0.2.tar.gz 2158614 BLAKE2B b5cb9a8abe78a52a8b3f3a053d15a3f9eed73ede3a3a5ce1c29390efa654ebe0e79d42042241028c46a6ed8511fde0f4f2a576c58ab2003c58bfb86d9ae1cbda SHA512 e0f316cb5352dee2b0902122007bf78ba8605109b21ea9c21a02f1bd7649ffb1d5115459077aa33ceb6464c310e750e512835acbcb4ce2256ea6be6e5b10c098
diff --git a/dev-python/Pyro5/Pyro5-5.15-r1.ebuild b/dev-python/Pyro5/Pyro5-5.15-r1.ebuild
index f124be7a5e68..a19c5c9cd6a8 100644
--- a/dev-python/Pyro5/Pyro5-5.15-r1.ebuild
+++ b/dev-python/Pyro5/Pyro5-5.15-r1.ebuild
@@ -26,12 +26,15 @@ RDEPEND="
>=dev-python/serpent-1.40[${PYTHON_USEDEP}]
"
+PATCHES=(
+ "${FILESDIR}"/${P}-fix-test-on-ipv6.patch
+)
+
distutils_enable_tests pytest
distutils_enable_sphinx docs/source \
dev-python/sphinx-rtd-theme
EPYTEST_DESELECT=(
- tests/test_socketutil.py::TestSocketutil::testGetInterface # https://github.com/irmen/Pyro5/issues/82
tests/test_server.py::TestServerOnce::testRegisterWeak # https://github.com/irmen/Pyro5/issues/83 (pypy3 specific)
)
diff --git a/dev-python/Pyro5/files/Pyro5-5.15-fix-test-on-ipv6.patch b/dev-python/Pyro5/files/Pyro5-5.15-fix-test-on-ipv6.patch
new file mode 100644
index 000000000000..fb92d88b6f4f
--- /dev/null
+++ b/dev-python/Pyro5/files/Pyro5-5.15-fix-test-on-ipv6.patch
@@ -0,0 +1,36 @@
+https://github.com/irmen/Pyro5/commit/8db91b617dd08508053e54dea2a781749a00ffc8.patch
+https://bugs.gentoo.org/915997
+
+From 8db91b617dd08508053e54dea2a781749a00ffc8 Mon Sep 17 00:00:00 2001
+From: Irmen de Jong <irmen@razorvine.net>
+Date: Sat, 21 Oct 2023 21:48:56 +0200
+Subject: [PATCH] made getGetInterface test work with ipv6 localhost
+
+---
+ tests/test_socketutil.py | 13 +++++++++----
+ 1 file changed, 9 insertions(+), 4 deletions(-)
+
+diff --git a/tests/test_socketutil.py b/tests/test_socketutil.py
+index ef0720d..c9467ae 100644
+--- a/tests/test_socketutil.py
++++ b/tests/test_socketutil.py
+@@ -56,10 +56,15 @@ def testGetIP6(self):
+
+ def testGetInterface(self):
+ addr = socketutil.get_interface("localhost")
+- assert addr.version == 4
+- assert str(addr).startswith("127.")
+- assert str(addr.ip).startswith("127.0")
+- assert str(addr.network).startswith("127.0")
++ if addr.version == 6:
++ assert str(addr).startswith("::1")
++ assert str(addr.ip) == "::1"
++ assert str(addr.network).startswith("::1")
++ else:
++ assert addr.version == 4
++ assert str(addr).startswith("127.")
++ assert str(addr.ip).startswith("127.0")
++ assert str(addr.network).startswith("127.0")
+ if has_ipv6:
+ addr = socketutil.get_interface("::1")
+ assert addr.version == 6
diff --git a/dev-python/argh/Manifest b/dev-python/argh/Manifest
index 4da6291fb32a..02b7d78181e2 100644
--- a/dev-python/argh/Manifest
+++ b/dev-python/argh/Manifest
@@ -1 +1,2 @@
DIST argh-0.29.4.tar.gz 52694 BLAKE2B 6d2b75200ea7b570ac199139ba7bc92b5bfa41fa4e21d19eff17d8506c4a28c6043413a25679cab52f9d81b8bb9a1f35b77ffee3beaa98c43660ad9e5c6b8dfc SHA512 017346afb237429de1228f604a763f919528fd359edfabb7b5a5c3a48c5e5be5a5a385672d54299cd15e5bc82257d8c33816fbc463873ffb9b3c3a54b40fccfc
+DIST argh-0.30.0.tar.gz 59803 BLAKE2B 2e0a5d9dfbe5177ac434224b78b0575f4b2b4373abee8ba97cbb31617e855309ed152e83e84c03c3b5666705493011bc4a0c86396ed5891914e9af3436d9b058 SHA512 a16fa32cd1fdcd842335ebecdaefce48d248a0a6449b592a3e83dbeb02543123e36dc057f457d7bb097c1b4e118d11a800ecc40a3847e81533d8dcf1d292111d
diff --git a/dev-python/argh/argh-0.30.0.ebuild b/dev-python/argh/argh-0.30.0.ebuild
new file mode 100644
index 000000000000..b39fbe43f5ea
--- /dev/null
+++ b/dev-python/argh/argh-0.30.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A simple argparse wrapper"
+HOMEPAGE="
+ https://pythonhosted.org/argh/
+ https://github.com/neithere/argh/
+ https://pypi.org/project/argh/
+"
+
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+LICENSE="LGPL-3"
+
+BDEPEND="
+ test? (
+ dev-python/iocapture[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/beartype/Manifest b/dev-python/beartype/Manifest
index 6da93840fcf3..5f03199d58bd 100644
--- a/dev-python/beartype/Manifest
+++ b/dev-python/beartype/Manifest
@@ -2,3 +2,4 @@ DIST beartype-0.15.0.tar.gz 1002709 BLAKE2B 96aa96135c4e361790856bea3e905afe6cc0
DIST beartype-0.16.1.tar.gz 1039772 BLAKE2B ba3fb71f72c2b332ace7c653d61a8e60546af4f4385dab0676b48759783df33c352edab813c888dc20289044089f7a650c3d56789fc218a044519d0f6982892d SHA512 71ecfaed4113ff1e05a5ba4eef5321da3af7c19bfc53d92906ae2d1c45e5eb8aa4602a3bbd296b242b2a000e03198267ece9c5e963e5216517ad170661e98198
DIST beartype-0.16.2.tar.gz 1043099 BLAKE2B 9d71ec55db5429036b9ff8aba7b4c4b8332fb21100e746040ddf92689e55566a8bdb6bbff08eace7a3782b41e75f1e5c7a3d23304dacfd9332b327fd0623533c SHA512 a6c374f96084f0da29733b5fdc145f37de73214a9905e501a9bd30e0ab503165875cb876b2e8d9735971718696a5f3f50d9ee7c8aa12c34df29f6ed7e729c02c
DIST beartype-0.16.3.tar.gz 1061171 BLAKE2B 8f8a3f8408585e3c17d3c760b137a7c9e1e8f674c369b7e749652cdc812ed3224c0f9e33b0b7c29c22140a01c0ca012e9f063f3449afd26e65fce7c6a09253aa SHA512 0274859e7722affe115637adbad031a5794d2d9e0fb49480a356c44dcf1cc54a71216faf02c3a5160e7ebee7bfbe99fa64e05a8cd47ed43f81beb5babe7acc19
+DIST beartype-0.16.4.tar.gz 1063638 BLAKE2B a5e399f070cb0e7b9046eeb66f98d5ea194482d9d10db0f63269f2f085ad30c5a103dbb4f4f6e167fef56c348e9de63bd9c70812170c159d9b913235cf769bd9 SHA512 377bf525bdbc46879b2b864289d0450ec7835e424c3d31b682b4d9460f0d65f9759e4e1dc3e6e9b42047f7555ae7dfa8e7598d2181d25c94f30e01f7d006a741
diff --git a/dev-python/beartype/beartype-0.16.4.ebuild b/dev-python/beartype/beartype-0.16.4.ebuild
new file mode 100644
index 000000000000..bdaf7f87a070
--- /dev/null
+++ b/dev-python/beartype/beartype-0.16.4.ebuild
@@ -0,0 +1,35 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Unbearably fast runtime type checking in pure Python"
+HOMEPAGE="
+ https://pypi.org/project/beartype/
+ https://github.com/beartype/beartype/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+BDEPEND="
+ test? (
+ dev-python/mypy[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+EPYTEST_DESELECT=(
+ # fragile performance test
+ beartype_test/a00_unit/a90_decor/test_decorwrapper.py::test_wrapper_fail_obj_large
+ # test for building docs, apparently broken too
+ beartype_test/a90_func/z90_lib/a00_sphinx
+)
diff --git a/dev-python/css-parser/Manifest b/dev-python/css-parser/Manifest
index 4b5a1d2a81e9..920fe384ee8c 100644
--- a/dev-python/css-parser/Manifest
+++ b/dev-python/css-parser/Manifest
@@ -1 +1,2 @@
+DIST css-parser-1.0.10.tar.gz 349673 BLAKE2B 30ba106620e488532d3cfbd84fc44b0bc15f1e98c7ca3db5a04476810f1bd7ff62c425a052e141a2f13d15e30bd8d1ad83bf769ccce256bef5b723560e230810 SHA512 1f339eb5771fb1ff2f2fc5dbcbe86f6ad09d0ae1abeca96194e6d3c0c4e385ae7366618f28d01010e764fa81d30aec7ccfcbeea2a084c8528be33812307149c8
DIST css-parser-1.0.9.tar.gz 349482 BLAKE2B b3ea0e6f10179882827e614837fc109fb9fe926a05fb497c1dd6239e289cf712512d86bb3974adba41cc4bbd0babf623a637604a676b6725dd1e9b49c53c3170 SHA512 487213f870066b2264ec4d7ee4a41819fe2c92187c64557ea011c1a24fbdf623e802ab6a3a828e5e5d23c3d684344b64805676d15837d421a85fba28771af664
diff --git a/dev-python/css-parser/css-parser-1.0.10.ebuild b/dev-python/css-parser/css-parser-1.0.10.ebuild
new file mode 100644
index 000000000000..939e1295521a
--- /dev/null
+++ b/dev-python/css-parser/css-parser-1.0.10.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A CSS Cascading Style Sheets library (fork of cssutils)"
+HOMEPAGE="
+ https://github.com/ebook-utils/css-parser/
+ https://pypi.org/project/css-parser/
+"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~riscv ~x86"
+
+BDEPEND="
+ test? (
+ dev-python/chardet[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests unittest
diff --git a/dev-python/django-configurations/Manifest b/dev-python/django-configurations/Manifest
index 2bfa7d5375a8..e4cf0f869e70 100644
--- a/dev-python/django-configurations/Manifest
+++ b/dev-python/django-configurations/Manifest
@@ -1 +1,2 @@
DIST django-configurations-2.4.1.tar.gz 42952 BLAKE2B 3ed30642b256a648ab5932edd9b2cb5b2a82e69bb1107a5c2bd20d230cbb598f21eddcf52956bf80d6fe3c6e6336c70dfadf2fc5a646dcd32782abc782fe8e32 SHA512 ab35216b326d50d779344efa915d516ffa4a1d5e627c77b27071f6d51c54ea367a0f7ec5a7b768cabd69929499dfeb3e5719ba8fbe690f6854d92ee45a04bf1d
+DIST django-configurations-2.5.tar.gz 43152 BLAKE2B 35976466132f9b78a031955c891733cb0a01f20d39d53708ed5100492b3a1963e50228f3175437f54201fb6d992312c641e08562a85cf57cb089f2c7678101e7 SHA512 a6e3f301bf6123234245a5fe88f4b0eecfc021230c593d2864a969560d52c70b6932c0fac64cd83f21fb06b83821d37320181f0601450d6f3cd4e4b06c4ae9f5
diff --git a/dev-python/django-configurations/django-configurations-2.5.ebuild b/dev-python/django-configurations/django-configurations-2.5.ebuild
new file mode 100644
index 000000000000..b185610a409f
--- /dev/null
+++ b/dev-python/django-configurations/django-configurations-2.5.ebuild
@@ -0,0 +1,44 @@
+# Copyright 2021-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A helper for organizing Django settings"
+HOMEPAGE="
+ https://pypi.org/project/django-configurations/
+ https://github.com/jazzband/django-configurations/
+ https://django-configurations.readthedocs.io/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-python/django-3.2[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+ test? (
+ dev-python/django-cache-url[${PYTHON_USEDEP}]
+ dev-python/dj-database-url[${PYTHON_USEDEP}]
+ dev-python/dj-email-url[${PYTHON_USEDEP}]
+ dev-python/dj-search-url[${PYTHON_USEDEP}]
+ )
+"
+
+export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
+
+python_test() {
+ local -x DJANGO_SETTINGS_MODULE=tests.settings.main
+ local -x DJANGO_CONFIGURATION=Test
+ PYTHONPATH=. django-cadmin test -v2 || die "Tests failed with ${EPYTHON}"
+}
diff --git a/dev-python/ensurepip-pip/Manifest b/dev-python/ensurepip-pip/Manifest
index d5c063e82923..f92fea2795f4 100644
--- a/dev-python/ensurepip-pip/Manifest
+++ b/dev-python/ensurepip-pip/Manifest
@@ -1,2 +1,3 @@
DIST pip-23.2.1-py3-none-any.whl 2086091 BLAKE2B 0a35bf4ba589f07e3c800d8f835e4bcdcd433976db83f91c86e12a2316b0b1c7de7120b248d70fe8b5587c28bb3c6e7bc633c64cdfb65a1f18f87a9e7a423181 SHA512 016a8cbd09384f1a9a44cb0e8274df75a8bcb2f3966bb5d708c62145289efaa5db98f75256c97e4f8046735ce2e529fbb076f284a46cdb716e89a75660200ad9
DIST pip-23.3-py3-none-any.whl 2106643 BLAKE2B bc5d93e71dadba670ef19f8331dd8d9e7fd5f0f70f90de39a3437b25521bb61c97690793d67d4306a98c728fd9eb5fb5848f1abec853d7878b4bab792a51f6a7 SHA512 2ac3e66eb86b90e8bafd1825e84288af81d09ddb60f68b631838d14479b953ad0c6bdc933d754b5f02520401908828a0a8c518f04b0060c82b666e0d01e87ea6
+DIST pip-23.3.1-py3-none-any.whl 2107242 BLAKE2B d5ea7ead01468f1f6a5c60811de9410d260e820638c0073f70e480dd3678e7413ae612913c01456779d391a6108ce939eced95392696eb5b1cc26b3a7a04a99d SHA512 1a60d153982c1c5997d3826f4084b39ec4054228376093ee15c1f4be0781e78c4b1e5219b5f05cdc464588dec379f9f2cc21f075aa0a11a148d3545a547b9889
diff --git a/dev-python/ensurepip-pip/ensurepip-pip-23.3.1.ebuild b/dev-python/ensurepip-pip/ensurepip-pip-23.3.1.ebuild
new file mode 100644
index 000000000000..474a502c1273
--- /dev/null
+++ b/dev-python/ensurepip-pip/ensurepip-pip-23.3.1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit pypi
+
+DESCRIPTION="Shared pip wheel for ensurepip Python module"
+HOMEPAGE="https://pypi.org/project/pip/"
+SRC_URI="$(pypi_wheel_url "${PN#ensurepip-}")"
+S=${DISTDIR}
+
+LICENSE="Apache-2.0 BSD BSD-2 ISC LGPL-2.1+ MIT MPL-2.0 PSF-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+
+RDEPEND="
+ !<dev-python/ensurepip-wheels-100
+"
+
+src_install() {
+ insinto /usr/lib/python/ensurepip
+ doins "${A}"
+}
diff --git a/dev-python/fakeredis/Manifest b/dev-python/fakeredis/Manifest
index 374aa6ca0b2d..1b1ed3ebb205 100644
--- a/dev-python/fakeredis/Manifest
+++ b/dev-python/fakeredis/Manifest
@@ -1 +1,2 @@
DIST fakeredis-2.19.0.tar.gz 117030 BLAKE2B 05976b1011bb3933b275755498cf7b893afc93cbbb0bfcce67d01692f1ebc4bee1b6cddd406eaca4d46f595cde2805f43e767aef1ca491ccfc4afcf7b983b444 SHA512 1800933b86369c7b857e7609e2a6af8d469c713a23bfd792fc8df2695e8aabcb2cd1fa6138f7eb908fbecc9c6e2c242f7da47864067498c5e180956b578985aa
+DIST fakeredis-2.20.0.tar.gz 122679 BLAKE2B 2fd982761fe6e8bd66d2d93b7140b9b97e20d33e40827ac9ab7d050d6e9814891e8a1f95a4f789bc78a1589fe215b40834876da5a3dd0a0ea6f8f7a3489ba400 SHA512 3c71a42df92a92b02c4774cf120c697a5e7f376768923b74561fb4cbe10605b4d57ea826d2b8c4d304ff1e12cf4c84d0fbebc34edd0afa0b0241ff7cb707e5de
diff --git a/dev-python/fakeredis/fakeredis-2.20.0.ebuild b/dev-python/fakeredis/fakeredis-2.20.0.ebuild
new file mode 100644
index 000000000000..63109e21e629
--- /dev/null
+++ b/dev-python/fakeredis/fakeredis-2.20.0.ebuild
@@ -0,0 +1,84 @@
+# Copyright 2020-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Fake implementation of redis API for testing purposes"
+HOMEPAGE="
+ https://github.com/cunla/fakeredis-py/
+ https://pypi.org/project/fakeredis/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+RDEPEND="
+ dev-python/packaging[${PYTHON_USEDEP}]
+ >=dev-python/redis-4.2[${PYTHON_USEDEP}]
+ <dev-python/sortedcontainers-3[${PYTHON_USEDEP}]
+ >=dev-python/sortedcontainers-2[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-db/redis
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # also lupa
+ test/test_aioredis2.py::test_failed_script_error
+ # TODO
+ "test/test_fakeredis.py::test_set_get_nx[StrictRedis]"
+ "test/test_fakeredis.py::test_lpop_count[StrictRedis]"
+ "test/test_fakeredis.py::test_rpop_count[StrictRedis]"
+ "test/test_fakeredis.py::test_zadd_minus_zero[StrictRedis]"
+ "test/test_mixins/test_pubsub_commands.py::test_pubsub_channels[StrictRedis]"
+ test/test_mixins/test_set_commands.py::test_smismember_wrong_type
+ # new redis-server?
+ "test/test_mixins/test_pubsub_commands.py::test_pubsub_shardnumsub[StrictRedis]"
+ # json ext
+ test/test_json/test_json.py
+ test/test_json/test_json_arr_commands.py
+ )
+ local EPYTEST_IGNORE=(
+ # these tests fail a lot...
+ test/test_hypothesis.py
+ )
+ local args=(
+ # tests requiring lupa (lua support)
+ -k 'not test_eval and not test_lua and not test_script'
+ )
+ # Note: this package is not xdist-friendly
+ epytest "${args[@]}"
+}
+
+src_test() {
+ local redis_pid="${T}"/redis.pid
+ local redis_port=6379
+
+ einfo "Spawning Redis"
+ einfo "NOTE: Port ${redis_port} must be free"
+ "${EPREFIX}"/usr/sbin/redis-server - <<- EOF || die "Unable to start redis server"
+ daemonize yes
+ pidfile ${redis_pid}
+ port ${redis_port}
+ bind 127.0.0.1
+ EOF
+
+ # Run the tests
+ distutils-r1_src_test
+
+ # Clean up afterwards
+ kill "$(<"${redis_pid}")" || die
+}
diff --git a/dev-python/fsspec/Manifest b/dev-python/fsspec/Manifest
index 6f6c20cff8b3..b2f646f387e6 100644
--- a/dev-python/fsspec/Manifest
+++ b/dev-python/fsspec/Manifest
@@ -1 +1,2 @@
+DIST filesystem_spec-2023.10.0.gh.tar.gz 404845 BLAKE2B 6c8cf801664c9fc848cb55660db1725c90facf534d58e49f604b2051d1b6a78d13d8f083282071beb7ab3dcb8d75f6d52fe24ce744c5cf1808b4ae3cb673998d SHA512 cb449052208516930c73dbe1de7c495d252677a3d3d85267836224d79c1b8cf9449ebdba8287f6f6206d5a8e631a99cd81c2fb62b82288a626a202876a45139c
DIST filesystem_spec-2023.9.2.gh.tar.gz 400298 BLAKE2B ef7c7c2eac91b190277331aac30b2b03605d3e2758536f6f0d3b894b5e236aa77f3c94a05105180ba44aa438204ef636dcfae8c35c307b40f6e7b2ce8a6e1e2c SHA512 bc61ec65af387f9f11d8f48f57fc50fed657ff6f078f619dd2c6bef20e50576533e34da8452ec13af1e30be336674f2d38032b027c8e9354144b7ed7023b50fe
diff --git a/dev-python/fsspec/fsspec-2023.10.0.ebuild b/dev-python/fsspec/fsspec-2023.10.0.ebuild
new file mode 100644
index 000000000000..bf6ca7425f2c
--- /dev/null
+++ b/dev-python/fsspec/fsspec-2023.10.0.ebuild
@@ -0,0 +1,65 @@
+# Copyright 2020-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1
+
+MY_P=filesystem_spec-${PV}
+DESCRIPTION="A specification that python filesystems should adhere to"
+HOMEPAGE="
+ https://github.com/fsspec/filesystem_spec/
+ https://pypi.org/project/fsspec/
+"
+SRC_URI="
+ https://github.com/fsspec/filesystem_spec/archive/${PV}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+
+BDEPEND="
+ test? (
+ dev-python/aiohttp[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/tqdm[${PYTHON_USEDEP}]
+ dev-vcs/git
+ )
+"
+
+# Note: this package is not xdist-friendly
+distutils_enable_tests pytest
+
+src_test() {
+ git config --global user.email "you@example.com" || die
+ git config --global user.name "Your Name" || die
+ distutils-r1_src_test
+}
+
+EPYTEST_DESELECT=(
+ fsspec/tests/test_spec.py::test_find
+ # requires s3fs
+ fsspec/implementations/tests/test_local.py::test_urlpath_inference_errors
+ fsspec/tests/test_core.py::test_mismatch
+ # requires pyarrow, fastparquet
+ fsspec/implementations/tests/test_reference.py::test_df_single
+ fsspec/implementations/tests/test_reference.py::test_df_multi
+)
+
+EPYTEST_IGNORE=(
+ # sftp and smb require server started via docker
+ fsspec/implementations/tests/test_dbfs.py
+ fsspec/implementations/tests/test_sftp.py
+ fsspec/implementations/tests/test_smb.py
+ # unhappy about dev-python/fuse-python (?)
+ fsspec/tests/test_fuse.py
+)
diff --git a/dev-python/jc/Manifest b/dev-python/jc/Manifest
index 1777f88cc352..3be05819f97e 100644
--- a/dev-python/jc/Manifest
+++ b/dev-python/jc/Manifest
@@ -1 +1,2 @@
DIST jc-1.23.4.gh.tar.gz 12920166 BLAKE2B 3980f0564121362028c03fcdab653ef449bd6706eded19276cdcad7a5a18c819ae89fb5d82157af7add190203af2a9900d185aa54b0620357e6b639934bee0bf SHA512 e757e06e8eb740c85df03a92184fc285f35806365fffd4b8459e73fe54d7fcc4e476a4886daa713cd0fe1c5712aa867478a339eb208b55ef92e88945c4ae63a9
+DIST jc-1.23.5.gh.tar.gz 12938443 BLAKE2B 4234adb9eb402bc7f86abb47831b4803de71d1c193625ca20866d0cf53e9f7a70af2d8e1ec2b3a3414f2df7977a51e72dad95dc893e0e49f7d1e97a590f5a40b SHA512 595f50041b08c3b1e3d6dd65b4b0ed00e381860c87f3a79cf674f675f7c1aba56317b2cab8cac384cbbc6e36d1fa2144624e588fbb004c669d9998cf765c4ff8
diff --git a/dev-python/jc/jc-1.23.5.ebuild b/dev-python/jc/jc-1.23.5.ebuild
new file mode 100644
index 000000000000..8fd1760d7307
--- /dev/null
+++ b/dev-python/jc/jc-1.23.5.ebuild
@@ -0,0 +1,32 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Converts the output of popular command-line tools and file-types to JSON"
+HOMEPAGE="
+ https://github.com/kellyjonbrazil/jc/
+ https://pypi.org/project/jc/
+"
+# no tests in sdist, as of 1.23.2
+SRC_URI="
+ https://github.com/kellyjonbrazil/jc/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc64"
+
+RDEPEND="
+ dev-python/pygments[${PYTHON_USEDEP}]
+ dev-python/ruamel-yaml[${PYTHON_USEDEP}]
+ dev-python/xmltodict[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests unittest
diff --git a/dev-python/mkdocs-pymdownx-material-extras/Manifest b/dev-python/mkdocs-pymdownx-material-extras/Manifest
index 1fab6b609f43..5274133606a4 100644
--- a/dev-python/mkdocs-pymdownx-material-extras/Manifest
+++ b/dev-python/mkdocs-pymdownx-material-extras/Manifest
@@ -1,2 +1,3 @@
DIST mkdocs_pymdownx_material_extras-2.5.1.tar.gz 24771 BLAKE2B 2bee64966601503fd6c11d8256ca73210923cf59df41a319b45c2db2435b205a860cbbfc04e5ddffceb05d6371c95dda6ceab88c4c8d3fdaa583dacd64a832ca SHA512 f50a40c55e72fcbe2d51777c434cc1fb841645456efb3b60fd8f6412b9008467e191e0cb072692e3552c7f28e678b503642845b787c66f56b9f9e4b2504bb68d
DIST mkdocs_pymdownx_material_extras-2.5.4.tar.gz 22567 BLAKE2B f1b666deae52802d81320b06c6f193ae7204dd631551a83717f5c01ceff7bb46779a9c5b0743d23913577b127510a1ac0d9de9a6ff3b7e567c8a7263b38b6077 SHA512 6c41ca67a1f41d6ff3bcee7f1c48fb51cf94ef275eacda2588dd976c94bef310d2679d83fd93363642f191a402b34a159d65024ba983c7bdf21c6c688c340a4f
+DIST mkdocs_pymdownx_material_extras-2.5.5.tar.gz 22591 BLAKE2B 192474ce7e632ba419f6f92830d6d167f9706f4af301fdce8f50db3e7ca647d40318be845b3bd8deb695c9a0a5e490550c54ade7028166cbc64cc3704f825084 SHA512 76e7aa03853dffcae53e25dba29787331d6e4c0604bb1334f9666043d6794cd434d6e9646922a4f329d78dbb49ea2e5f0ed5fd5c843277b21aa6486c016b74c2
diff --git a/dev-python/mkdocs-pymdownx-material-extras/mkdocs-pymdownx-material-extras-2.5.5.ebuild b/dev-python/mkdocs-pymdownx-material-extras/mkdocs-pymdownx-material-extras-2.5.5.ebuild
new file mode 100644
index 000000000000..f3d2e7a9e778
--- /dev/null
+++ b/dev-python/mkdocs-pymdownx-material-extras/mkdocs-pymdownx-material-extras-2.5.5.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Custom alterations based on Mkdocs-Material"
+HOMEPAGE="
+ https://github.com/facelessuser/mkdocs_pymdownx_material_extras/
+ https://pypi.org/project/mkdocs-pymdownx-material-extras/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+
+RDEPEND="
+ >=dev-python/mkdocs-material-8.3.3[${PYTHON_USEDEP}]
+"
diff --git a/dev-python/pikepdf/Manifest b/dev-python/pikepdf/Manifest
index 90bafdae3f85..55fcd889b896 100644
--- a/dev-python/pikepdf/Manifest
+++ b/dev-python/pikepdf/Manifest
@@ -1,2 +1,3 @@
DIST pikepdf-8.4.1.tar.gz 2853305 BLAKE2B 2298514159db17ba49b8e2fa2407d60de50273bea111ece704251d99193bdc4c8ed77f624237a49c3f4f129e3b14ac4ddd1006cf3024bcbf822bc5523e0fee35 SHA512 6989e8a3888f612e453ec1ea8425c0ca35ccfee19ae5e8c32df136ebc3fbb7728d9fe5beaacb4e392a20c9037a1009fc8f8d53d73634427fb0df9103626e34fa
DIST pikepdf-8.5.1.tar.gz 2854559 BLAKE2B 70bca735461d0234cd43cc757a1e8137f9cc30715c409d0bc42c4c547d961e2416203212e91b35cc8a2ac464bb0150fcd685d47fe43d6c1664210918bbb11fc6 SHA512 7c5dc66378c6bb2aaeb9a9fba1c69172619ee516f285e36e5560beb8b10164c01392d06d546f69818af59ebbe7d8c5fa299237d78e622d2cd14ca7c6c1020992
+DIST pikepdf-8.5.2.tar.gz 2854729 BLAKE2B 276d96d21e0d5d58177776257286560771896424dd49145cf5daf32bd6344a0d18b22ca4a0ee806d1aabdef3310a751a091f9a6f4725199d04dab689ea678546 SHA512 7f107ed1535e876c1892d3ffdae57fca85c140ff2fdd981937600b310692248c53a3539dc8c1c1c5ce6e35349692d67c6c4e2f31a3a74ead246faaa212bd70d4
diff --git a/dev-python/pikepdf/pikepdf-8.5.2.ebuild b/dev-python/pikepdf/pikepdf-8.5.2.ebuild
new file mode 100644
index 000000000000..a223f72a612a
--- /dev/null
+++ b/dev-python/pikepdf/pikepdf-8.5.2.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Python library to work with pdf files based on qpdf"
+HOMEPAGE="
+ https://github.com/pikepdf/pikepdf/
+ https://pypi.org/project/pikepdf/
+"
+
+LICENSE="MPL-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+# Check QPDF_MIN_VERSION in pyproject.toml on bumps, as well as
+# https://qpdf.readthedocs.io/en/stable/release-notes.html.
+DEPEND="
+ >=app-text/qpdf-11.5.0:0=
+"
+RDEPEND="
+ ${DEPEND}
+ dev-python/deprecation[${PYTHON_USEDEP}]
+ >=dev-python/lxml-4.0[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ >=dev-python/pillow-10.0.1[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ >=dev-python/pybind11-2.10.1[${PYTHON_USEDEP}]
+ >=dev-python/setuptools-scm-7.0.5[${PYTHON_USEDEP}]
+ test? (
+ >=dev-python/attrs-20.2.0[${PYTHON_USEDEP}]
+ >=dev-python/hypothesis-6.36[${PYTHON_USEDEP}]
+ >=dev-python/numpy-1.21.0[${PYTHON_USEDEP}]
+ >=dev-python/pillow-5.0.0[${PYTHON_USEDEP},jpeg,lcms,tiff]
+ >=dev-python/psutil-5.9[${PYTHON_USEDEP}]
+ >=dev-python/pytest-timeout-2.1.0[${PYTHON_USEDEP}]
+ >=dev-python/python-dateutil-2.8.1[${PYTHON_USEDEP}]
+ >=dev-python/python-xmp-toolkit-2.0.1[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/tomli[${PYTHON_USEDEP}]
+ ' 3.10)
+ )
+"
+
+distutils_enable_tests pytest
+
+EPYTEST_DESELECT=(
+ # fragile to system load
+ tests/test_image_access.py::test_random_image
+)
+
+src_prepare() {
+ sed -e '/-n auto/d' -i pyproject.toml || die
+ distutils-r1_src_prepare
+}
diff --git a/dev-python/pip/Manifest b/dev-python/pip/Manifest
index 20169371ad5f..ba2689a79625 100644
--- a/dev-python/pip/Manifest
+++ b/dev-python/pip/Manifest
@@ -1,2 +1,3 @@
DIST pip-23.2.1.gh.tar.gz 9370625 BLAKE2B 9e7855aae371a773a070c24b50f985dac6ff7c2412d51e268368b911b92d0d0b52a839f9d761d5f6aaff33f1e7570d5f930e5063e8af98aa99f50d2f1c1b5ed2 SHA512 a6c629976c332cffe5dff0ec1e201d694c7a42fa8def202ebf1db251a6dbd90091eaac89c36a354a0cf0c60cdb267b4e0ec9ff6a88b0ac61cfaafdf159e34fc8
+DIST pip-23.3.1.gh.tar.gz 9397023 BLAKE2B f5085bf1faaca93954abb2dfb99f5a365b7bff385ad9f0f692fb41bbf0586617f0a3d7f36df5e3475f150819fdbf7f79fc6bf8b2425fe06dc570cd0ec98fed6e SHA512 eddca29e8c3727d1d8d793ab0b05f069781cac06df805fcf7a363da738d39498135ccbbb6d2d442604a7bf78ba6c3d101ec2043431ac1832a3f2710db7cc5e56
DIST pip-23.3.gh.tar.gz 9394878 BLAKE2B 6ef608b204a4cb796585c5ff130ee642bce0e7a464099b7eaf9c9199203fc28ff0a1b260a731f9ba462a9b82e6f68be12fc622ed809ad41a1ab92adaa4993cbd SHA512 1afef5374410387bd1056a9ada21893f1fbb81e7a2d0ab2c9f4b500c99d25b98b55254e0dc36c4e4e408ad84b7be0e24709d25447168b076ce7723d35462d055
diff --git a/dev-python/pip/pip-23.3.1.ebuild b/dev-python/pip/pip-23.3.1.ebuild
new file mode 100644
index 000000000000..b71ec60ec219
--- /dev/null
+++ b/dev-python/pip/pip-23.3.1.ebuild
@@ -0,0 +1,130 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# please bump dev-python/ensurepip-pip along with this package!
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_TESTED=( python3_{8,9,10,11,12} )
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+PYTHON_REQ_USE="ssl(+),threads(+)"
+
+inherit bash-completion-r1 distutils-r1 multiprocessing
+
+DESCRIPTION="The PyPA recommended tool for installing Python packages"
+HOMEPAGE="
+ https://pip.pypa.io/en/stable/
+ https://pypi.org/project/pip/
+ https://github.com/pypa/pip/
+"
+SRC_URI="
+ https://github.com/pypa/pip/archive/${PV}.tar.gz -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+# bundled deps
+LICENSE+=" Apache-2.0 BSD BSD-2 ISC LGPL-2.1+ MPL-2.0 PSF-2"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+SLOT="0"
+IUSE="test-rust"
+
+RDEPEND="
+ >=dev-python/setuptools-39.2.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ ${RDEPEND}
+ test? (
+ $(python_gen_cond_dep '
+ dev-python/ensurepip-setuptools
+ dev-python/ensurepip-wheel
+ dev-python/freezegun[${PYTHON_USEDEP}]
+ dev-python/pretend[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ dev-python/scripttest[${PYTHON_USEDEP}]
+ dev-python/tomli-w[${PYTHON_USEDEP}]
+ dev-python/virtualenv[${PYTHON_USEDEP}]
+ dev-python/werkzeug[${PYTHON_USEDEP}]
+ dev-python/wheel[${PYTHON_USEDEP}]
+ test-rust? (
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ )
+ ' "${PYTHON_TESTED[@]}")
+ )
+"
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ local PATCHES=(
+ "${FILESDIR}/pip-23.1-no-coverage.patch"
+ )
+
+ distutils-r1_python_prepare_all
+
+ if use test; then
+ local wheels=(
+ "${BROOT}"/usr/lib/python/ensurepip/{setuptools,wheel}-*.whl
+ )
+ mkdir tests/data/common_wheels/ || die
+ cp "${wheels[@]}" tests/data/common_wheels/ || die
+ fi
+}
+
+python_compile_all() {
+ # 'pip completion' command embeds full $0 into completion script, which confuses
+ # 'complete' and causes QA warning when running as "${PYTHON} -m pip".
+ # This trick sets correct $0 while still calling just installed pip.
+ local pipcmd='import sys; sys.argv[0] = "pip"; __file__ = ""; from pip._internal.cli.main import main; sys.exit(main())'
+ "${EPYTHON}" -c "${pipcmd}" completion --bash > completion.bash || die
+ "${EPYTHON}" -c "${pipcmd}" completion --zsh > completion.zsh || die
+}
+
+python_test() {
+ if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then
+ einfo "Skipping tests on ${EPYTHON}"
+ return 0
+ fi
+
+ local EPYTEST_DESELECT=(
+ tests/functional/test_inspect.py::test_inspect_basic
+ tests/functional/test_install.py::test_double_install_fail
+ # Internet
+ tests/functional/test_install.py::test_install_dry_run
+ tests/functional/test_install.py::test_editable_install__local_dir_setup_requires_with_pyproject
+ tests/functional/test_install.py::test_install_8559_wheel_package_present
+ tests/functional/test_config_settings.py::test_backend_sees_config_via_sdist
+ tests/functional/test_install.py::test_link_hash_in_dep_fails_require_hashes
+ # TODO
+ tests/unit/test_network_auth.py::test_keyring_cli_get_password
+ tests/unit/test_network_auth.py::test_keyring_cli_set_password
+ # wants to install keyring from Internet, sigh
+ tests/functional/test_install_config.py::test_prompt_for_keyring_if_needed
+ # probably a too strict assert
+ # https://github.com/pypa/pip/issues/12152
+ tests/unit/test_req.py::TestRequirementSet::test_download_info_archive_cache_with_invalid_origin
+ )
+
+ if ! has_version "dev-python/cryptography[${PYTHON_USEDEP}]"; then
+ EPYTEST_DESELECT+=(
+ tests/functional/test_install.py::test_install_sends_client_cert
+ tests/functional/test_install_config.py::test_do_not_prompt_for_authentication
+ tests/functional/test_install_config.py::test_prompt_for_authentication
+ tests/functional/test_install_config.py::test_prompt_for_keyring_if_needed
+ )
+ fi
+
+ local -x SETUPTOOLS_USE_DISTUTILS=stdlib
+ local -x PIP_DISABLE_PIP_VERSION_CHECK=1
+ epytest -m "not network" -n "$(makeopts_jobs)"
+}
+
+python_install_all() {
+ local DOCS=( AUTHORS.txt docs/html/**/*.rst )
+ distutils-r1_python_install_all
+
+ newbashcomp completion.bash pip
+
+ insinto /usr/share/zsh/site-functions
+ newins completion.zsh _pip
+}
diff --git a/dev-python/pycairo/Manifest b/dev-python/pycairo/Manifest
index 60ac285971ac..0ad1ac076892 100644
--- a/dev-python/pycairo/Manifest
+++ b/dev-python/pycairo/Manifest
@@ -1,2 +1,3 @@
DIST pycairo-1.24.0.tar.gz 344850 BLAKE2B f1469254ccfcb96ee5e39af49fcae575717e2f0e9a3dc74a13408306b5c94f4557a9c6d6a448541cb1f6dd27781e484b37d5ea9f230dc87f9d3370fac31dfdba SHA512 bbc160bc9c3c9365018c680f6a69347bc222cdaec10ea48d18aedd0341048df74973d3299d783662adf02b414874824660da10943d88f64c30451d3fdccc63fb
DIST pycairo-1.25.0.tar.gz 347794 BLAKE2B d05c1f505059c181d176b533ff4753e90888189160b1904531da4d9e9b784976442acb8c848be48d23e04f1fd07fef88a05b374c833ecee1c0b0e2881dadd4d0 SHA512 f34df509d36fbc739e8ddb40e2ead473db6970eacb7a2b0ccad8b82fd41a5daa25c89a5d34e7f2b2b70c4bf74e4e9d87465414aa414280e0aa7a4787b05712da
+DIST pycairo-1.25.1.tar.gz 347088 BLAKE2B ba4eedaf47e514bd7c3ad5ea738d099428958988a708255f59df48372d112d0195fe746be03de56aa25ccce9c2366b8898fcdd568b427372d0340c5edd550a5c SHA512 f2b93a09cbe9cd7c2885794ff58a48df6cf59fbe2dbeabf7c6e9d99e68c71ac220abc866ac0d756c7ffb3f821ef63b65dbb8963f0bf7d5bd21ee0efb800e7b23
diff --git a/dev-python/pycairo/pycairo-1.25.1.ebuild b/dev-python/pycairo/pycairo-1.25.1.ebuild
new file mode 100644
index 000000000000..edde19b61cdd
--- /dev/null
+++ b/dev-python/pycairo/pycairo-1.25.1.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+PYTHON_REQ_USE="threads(+)"
+
+inherit distutils-r1
+
+DESCRIPTION="Python bindings for the cairo library"
+HOMEPAGE="
+ https://www.cairographics.org/pycairo/
+ https://github.com/pygobject/pycairo/
+ https://pypi.org/project/pycairo/
+"
+SRC_URI="
+ https://github.com/pygobject/${PN}/releases/download/v${PV}/${P}.tar.gz
+"
+
+LICENSE="|| ( LGPL-2.1 MPL-1.1 )"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+IUSE="examples"
+
+BDEPEND="
+ virtual/pkgconfig
+ test? (
+ dev-python/hypothesis[${PYTHON_USEDEP}]
+ )
+"
+RDEPEND="
+ >=x11-libs/cairo-1.15.10[svg(+)]
+"
+DEPEND="
+ ${RDEPEND}
+ x11-base/xorg-proto
+"
+
+distutils_enable_sphinx docs \
+ dev-python/sphinx-rtd-theme
+distutils_enable_tests pytest
+
+python_test() {
+ esetup.py build_tests
+ epytest
+}
+
+python_install() {
+ distutils-r1_python_install
+
+ # we need to pass --root via install command, sigh
+ cat > "${T}/distutils-extra.cfg" <<-EOF || die
+ [install]
+ root = ${D}
+ EOF
+ local -x DIST_EXTRA_CONFIG=${T}/distutils-extra.cfg
+ esetup.py \
+ install_pkgconfig --pkgconfigdir="${EPREFIX}/usr/$(get_libdir)/pkgconfig"
+}
+
+python_install_all() {
+ if use examples; then
+ dodoc -r examples
+ fi
+
+ distutils-r1_python_install_all
+
+ insinto /usr/include/pycairo
+ newins cairo/pycairo.h py3cairo.h
+}
diff --git a/dev-python/pytest-recording/Manifest b/dev-python/pytest-recording/Manifest
new file mode 100644
index 000000000000..18cd14ac4930
--- /dev/null
+++ b/dev-python/pytest-recording/Manifest
@@ -0,0 +1 @@
+DIST pytest_recording-0.13.0.tar.gz 25027 BLAKE2B c325aaf809617886e85c3fa597c36858c7e1a9cb1552a18c8ee27f5a7479b66469b61bce51ceb14fc9dd5fa420c20803ed016875eef1a0cf05de5293ead24bfc SHA512 2e9ab39971d89f838f2d778d1d80fdb5519b39855a69019eeeb22d69ca3c92ecb14a7eda7b55ec37ea07fae0c3316c9c16932a0afcf0abe0dbfefc31fe23bd68
diff --git a/dev-python/pytest-recording/metadata.xml b/dev-python/pytest-recording/metadata.xml
new file mode 100644
index 000000000000..a0d4c5913ba0
--- /dev/null
+++ b/dev-python/pytest-recording/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>python@gentoo.org</email>
+ </maintainer>
+
+ <origin>gentoo-staging</origin>
+ <stabilize-allarches/>
+</pkgmetadata> \ No newline at end of file
diff --git a/dev-python/pytest-recording/pytest-recording-0.13.0.ebuild b/dev-python/pytest-recording/pytest-recording-0.13.0.ebuild
new file mode 100644
index 000000000000..43aecaa3ebe0
--- /dev/null
+++ b/dev-python/pytest-recording/pytest-recording-0.13.0.ebuild
@@ -0,0 +1,46 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A pytest plugin to record network interactions via VCR.py"
+HOMEPAGE="
+ https://pypi.org/project/pytest-recording/
+ https://github.com/kiwicom/pytest-recording/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/pytest-3.5.0[${PYTHON_USEDEP}]
+ >=dev-python/vcrpy-2.0.1[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/pytest-httpbin[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test () {
+ local EPYTEST_DESELECT=(
+ # Internet
+ # https://github.com/kiwicom/pytest-recording/issues/131
+ tests/test_blocking_network.py::test_block_network_with_allowed_hosts
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ local -x PYTEST_PLUGINS=pytest_recording.plugin
+ PYTEST_PLUGINS+=,pytest_httpbin.plugin,pytest_mock
+ epytest
+}
diff --git a/dev-python/sqlglot/Manifest b/dev-python/sqlglot/Manifest
index 5c093df431b4..14846e92c43a 100644
--- a/dev-python/sqlglot/Manifest
+++ b/dev-python/sqlglot/Manifest
@@ -4,3 +4,4 @@ DIST sqlglot-18.14.0.tar.gz 8880297 BLAKE2B f5036816e165ca8f6d65ed21db618b216444
DIST sqlglot-18.15.0.tar.gz 8888074 BLAKE2B 22082ddd15eb6245c05495b4202e9fab5d3ab1085cc74139a5ba3f909fbde1487e2cd9501bb218efe9e72748e8b2f7d04a247e357c27e6a9027169b809fe7136 SHA512 25df8fdf1ba2e2022ed82ba7d7a6f2c861b96cc5e440bf23488b75f861ee93504ad1d706cd88cdb74a652070c328abe52e4790cc4020059f27129720c0fa4be8
DIST sqlglot-18.15.1.tar.gz 8895777 BLAKE2B 7aa5d7269c2e9d17ed68130d0129cc0a5abcd101a28ce5b85f5636dfa215934309cf7bf2d56ab6c2a819fe1a6128cd33355b39b29f76db32f84ea88034098502 SHA512 487646147ed2084c54e93326ba8df0225ae26e780e1ed3375f3eb2fc7fc6c82f0a4bf41a1967ce7719df1bd92b09b0fc175cd70659fe692507b6bfc4eafe6791
DIST sqlglot-18.16.0.tar.gz 8929202 BLAKE2B e47a86345eb3ff2422d45171fddda2ebe9994b5749bb91293253d83874df64f5e1d494c78c359c7c46b5f0b95d4bfe89b06fd0deb3a4d75cf379c3f98e8ae03f SHA512 b98837e947c75cdca2034bf09ee0474e908c8d69d5f5e8306381967b7e8d8b3a7e8d4027bbd436eae328d856abdbef7121a117f8486a949f0129fd3e06d6f87a
+DIST sqlglot-18.16.1.tar.gz 8933427 BLAKE2B ecd83a903cc8e4bbe3d1c80086aefe991a671746630366dd30e5072b8287d57643d35fcd138f10c91086a484ee9b4040f94efb766d64d4622af2210009af6680 SHA512 f3d7e729d574d557033bca747aacd9629f18cb57874d1c0b883b9cb3ea42c1635a1a299aaee8849ee1716f567580425ad003ee8eac0d0b4314971e1cddfb69b0
diff --git a/dev-python/sqlglot/sqlglot-18.16.1.ebuild b/dev-python/sqlglot/sqlglot-18.16.1.ebuild
new file mode 100644
index 000000000000..ac53f7b0ad7d
--- /dev/null
+++ b/dev-python/sqlglot/sqlglot-18.16.1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1 pypi optfeature
+
+DESCRIPTION="An easily customizable SQL parser and transpiler"
+HOMEPAGE="
+ https://sqlglot.com/
+ https://github.com/tobymao/sqlglot/
+ https://pypi.org/project/sqlglot/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+EPYTEST_IGNORE=(
+ # Tests require pyspark or duckdb which aren't in the tree.
+ # Pandas would be a requirement normally, but it gets ignored by proxy.
+ "tests/dataframe/integration/test_dataframe.py"
+ "tests/dataframe/integration/test_grouped_data.py"
+ "tests/dataframe/integration/test_session.py"
+ "tests/test_executor.py"
+ "tests/test_optimizer.py"
+)
+
+distutils_enable_tests pytest
+
+pkg_postinst() {
+ optfeature "simplifying timedelta expressions" dev-python/python-dateutil
+}
diff --git a/dev-python/tblib/Manifest b/dev-python/tblib/Manifest
index 0df791fe332f..9fe4ecc5485d 100644
--- a/dev-python/tblib/Manifest
+++ b/dev-python/tblib/Manifest
@@ -1 +1,2 @@
DIST tblib-2.0.0.tar.gz 28695 BLAKE2B 7c7cb584e5a5f03d403253d94c051d7ffd988b2320b095376184b479f30674989cecd39ca43fd269884e73ad97e6f9424a29dec9f1338e002ebe1adfc31a52d4 SHA512 740e7b02c4ae61b12ed1c0c3623c5c2dd142aaa24989e57d67ceed4894212bc18d51f0ab0a97953f1a0e16b30ef992ecee3730038e8b8fd4a3bc437d4a1a92b0
+DIST tblib-3.0.0.tar.gz 30616 BLAKE2B 4e2ea0e0f09894f1a8dee4d0dbdc61c054964e4ec5a8a1fbb31f3793268ab8607b5b6e547f7771264c9863522b01cdd39ef6aa4a91d757f1c37f9fac37d6cbaf SHA512 9914709846a4a9b0d9fe0f58eb321085f69e11ce364930f67cc5fec008d6ca57963b17699b0a136e2de91ff01004275fc43a38f318b9faab7cb2fac861108297
diff --git a/dev-python/tblib/tblib-3.0.0.ebuild b/dev-python/tblib/tblib-3.0.0.ebuild
new file mode 100644
index 000000000000..8bdc3030d111
--- /dev/null
+++ b/dev-python/tblib/tblib-3.0.0.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Traceback fiddling library for Python"
+HOMEPAGE="
+ https://github.com/ionelmc/python-tblib/
+ https://pypi.org/project/tblib/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ dev-python/six[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/twisted[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ local -x PYTHONNODEBUGRANGES=yes
+ epytest
+}
diff --git a/dev-python/vcrpy/files/vcrpy-5.1.0-py312.patch b/dev-python/vcrpy/files/vcrpy-5.1.0-py312.patch
new file mode 100644
index 000000000000..2dc9fdf09e88
--- /dev/null
+++ b/dev-python/vcrpy/files/vcrpy-5.1.0-py312.patch
@@ -0,0 +1,35 @@
+From 69621c67fb29dedd9ece4a7bdbf50380fbe4c5ee Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
+Date: Thu, 3 Aug 2023 06:51:45 +0200
+Subject: [PATCH] Copy `debuglevel` and `_http_vsn` attrs into response classes
+
+Copy the `debuglevel` and `_http_vsn` attributes from base connection
+class into response classes, in order to fix compatibility with
+Python 3.12. For reasons I don't comprehend, these end up being called
+on the class rather than instance, so regular proxying logic does not
+work.
+
+Fixes #707
+---
+ vcr/stubs/__init__.py | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/vcr/stubs/__init__.py b/vcr/stubs/__init__.py
+index dafaec71..4d4bb39d 100644
+--- a/vcr/stubs/__init__.py
++++ b/vcr/stubs/__init__.py
+@@ -389,6 +389,8 @@ class VCRHTTPConnection(VCRConnection):
+
+ _baseclass = HTTPConnection
+ _protocol = "http"
++ debuglevel = _baseclass.debuglevel
++ _http_vsn = _baseclass._http_vsn
+
+
+ class VCRHTTPSConnection(VCRConnection):
+@@ -397,3 +399,5 @@ class VCRHTTPSConnection(VCRConnection):
+ _baseclass = HTTPSConnection
+ _protocol = "https"
+ is_verified = True
++ debuglevel = _baseclass.debuglevel
++ _http_vsn = _baseclass._http_vsn
diff --git a/dev-python/vcrpy/vcrpy-5.1.0.ebuild b/dev-python/vcrpy/vcrpy-5.1.0.ebuild
index e3b6e175a476..87820e188d36 100644
--- a/dev-python/vcrpy/vcrpy-5.1.0.ebuild
+++ b/dev-python/vcrpy/vcrpy-5.1.0.ebuild
@@ -36,6 +36,10 @@ BDEPEND="
)
"
+PATCHES=(
+ "${FILESDIR}/${P}-py312.patch"
+)
+
distutils_enable_tests pytest
python_test() {
@@ -52,6 +56,10 @@ python_test() {
# broken by simplejson, doesn't seem important
# https://github.com/kevin1024/vcrpy/issues/751
tests/unit/test_serialize.py::test_serialize_binary_request
+ # new httpbin, sigh
+ # https://github.com/kevin1024/vcrpy/issues/761
+ tests/integration/test_basic.py::test_basic_json_use
+ tests/integration/test_register_persister.py::test_load_cassette_with_custom_persister
)
local -x REQUESTS_CA_BUNDLE=$("${EPYTHON}" -m pytest_httpbin.certs)
diff --git a/dev-python/websockets/Manifest b/dev-python/websockets/Manifest
index 1163209366bb..a0ae85f598a2 100644
--- a/dev-python/websockets/Manifest
+++ b/dev-python/websockets/Manifest
@@ -1,2 +1,3 @@
DIST websockets-11.0.3-python3.12.patch.xz 4328 BLAKE2B 6ef94255ef5d95de8015eca14a5110373ab9ffadf4d1c86a892da1aac46caa2755cafeb643a222000a03262c1b1b1aea58132daff36981c00dbb68ce05484058 SHA512 421a6fb5a2a801850ea1fbaf890c11eac0f55ad288185f16f4244f316132591bc5a814636141ba3ada67aeff340f41de61d06c8db87010c858c1b0b02fd9b5ab
DIST websockets-11.0.3.gh.tar.gz 347652 BLAKE2B b7d796744cb4c7b944e98644dfb9c0e44ba465a6dba71b9e891604f3012b025557dbcd5b7eeae02e71c84350e05b334f99404ddfda814a8984b7a893d3f092f7 SHA512 37a84d7c57da7a3e48870abf992ba96ee454b342610d51c06f7dfc7ee082b7fb51304518c208379c3dbd039eafb1a85444c257fed20b4605a52dc8fc938a4cca
+DIST websockets-12.0.gh.tar.gz 352120 BLAKE2B cab704e0ee44a7012ee58d515a5ea7380a97a3cbb8f55d105c00c8c2b9ed992b4c87435875474de32e5969fd92256bdec830db0571399a1d2e5fb719b23c2d83 SHA512 f17943d444ce275b709cf89453b2d2cce09f5af26f0460e226c2e24cfbb425c825963352e130dcd4201587606355375b525d8e5a02eccbffbb3985a108a3ed5e
diff --git a/dev-python/websockets/websockets-12.0.ebuild b/dev-python/websockets/websockets-12.0.ebuild
new file mode 100644
index 000000000000..8a8d61eb0b9a
--- /dev/null
+++ b/dev-python/websockets/websockets-12.0.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Library for building WebSocket servers and clients in Python"
+HOMEPAGE="
+ https://websockets.readthedocs.io/
+ https://github.com/python-websockets/websockets/
+ https://pypi.org/project/websockets/
+"
+# tests are missing pypi sdist, as of 11.0
+SRC_URI="
+ https://github.com/python-websockets/websockets/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+ https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-11.0.3-python3.12.patch.xz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="+native-extensions"
+
+BDEPEND="
+ test? (
+ dev-python/pytest-rerunfailures[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_compile() {
+ if use native-extensions && [[ ${EPYTHON} != pypy3 ]] ; then
+ local -x BUILD_EXTENSION=yes
+ else
+ local -x BUILD_EXTENSION=no
+ fi
+
+ distutils-r1_python_compile
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # requires DNS access
+ # https://bugs.gentoo.org/909567
+ tests/legacy/test_client_server.py::ClientServerTests::test_explicit_host_port
+ tests/legacy/test_client_server.py::SecureClientServerTests::test_explicit_host_port
+ )
+
+ epytest tests --reruns=10 --reruns-delay=2
+}