summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2024-02-17 19:18:26 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2024-02-17 19:18:26 +0000
commitb9d56667ce71c4fbbf793b86abe2e904abf638d5 (patch)
tree4347ced0d342f3a9864b97b917e3462ecf59170f /dev-python
parent81429d0bdfa074ea4890ecf4563af574228ea2d7 (diff)
downloadbaldeagleos-repo-b9d56667ce71c4fbbf793b86abe2e904abf638d5.tar.gz
baldeagleos-repo-b9d56667ce71c4fbbf793b86abe2e904abf638d5.tar.xz
baldeagleos-repo-b9d56667ce71c4fbbf793b86abe2e904abf638d5.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/Faker/Faker-23.2.1.ebuild40
-rw-r--r--dev-python/Faker/Manifest1
-rw-r--r--dev-python/black/black-24.1.1.ebuild2
-rw-r--r--dev-python/boto3/Manifest1
-rw-r--r--dev-python/boto3/boto3-1.34.44.ebuild58
-rw-r--r--dev-python/botocore/Manifest1
-rw-r--r--dev-python/botocore/botocore-1.34.44.ebuild67
-rw-r--r--dev-python/cfn-lint/Manifest1
-rw-r--r--dev-python/cfn-lint/cfn-lint-0.85.2.ebuild65
-rw-r--r--dev-python/dnspython/Manifest1
-rw-r--r--dev-python/dnspython/dnspython-2.6.0.ebuild47
-rw-r--r--dev-python/pytest/Manifest1
-rw-r--r--dev-python/pytest/pytest-8.0.1.ebuild110
-rw-r--r--dev-python/shapely/Manifest1
-rw-r--r--dev-python/shapely/shapely-2.0.3.ebuild50
-rw-r--r--dev-python/testfixtures/Manifest1
-rw-r--r--dev-python/testfixtures/testfixtures-8.0.0.ebuild46
-rw-r--r--dev-python/tox/Manifest1
-rw-r--r--dev-python/tox/tox-4.13.0.ebuild87
-rw-r--r--dev-python/trimesh/Manifest1
-rw-r--r--dev-python/trimesh/trimesh-4.1.4.ebuild68
-rw-r--r--dev-python/types-setuptools/Manifest1
-rw-r--r--dev-python/types-setuptools/types-setuptools-69.1.0.20240217.ebuild17
-rw-r--r--dev-python/zope-interface/Manifest1
-rw-r--r--dev-python/zope-interface/zope-interface-6.2.ebuild51
25 files changed, 719 insertions, 1 deletions
diff --git a/dev-python/Faker/Faker-23.2.1.ebuild b/dev-python/Faker/Faker-23.2.1.ebuild
new file mode 100644
index 000000000000..b726995539a4
--- /dev/null
+++ b/dev-python/Faker/Faker-23.2.1.ebuild
@@ -0,0 +1,40 @@
+# Copyright 2022-2024 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} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A Python package that generates fake data for you"
+HOMEPAGE="
+ https://github.com/joke2k/faker/
+ https://pypi.org/project/Faker/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/python-dateutil-2.4.2[${PYTHON_USEDEP}]
+ !dev-ruby/faker
+"
+BDEPEND="
+ test? (
+ dev-python/freezegun[${PYTHON_USEDEP}]
+ dev-python/pillow[${PYTHON_USEDEP},tiff]
+ dev-python/validators[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ local -x PYTEST_PLUGINS=faker.contrib.pytest.plugin
+ epytest
+}
diff --git a/dev-python/Faker/Manifest b/dev-python/Faker/Manifest
index 05945c117373..18948c7f6915 100644
--- a/dev-python/Faker/Manifest
+++ b/dev-python/Faker/Manifest
@@ -4,3 +4,4 @@ DIST Faker-22.7.0.tar.gz 1705221 BLAKE2B 9c41a053de75ca238399140531e7d37148ffa35
DIST Faker-23.0.0.tar.gz 1705271 BLAKE2B 0c83bf26ef1005a00c132e4634a617aef659cfb0ce59d67dd0d63d80371ab58b963417c5e26c5d8ef945bbb1a57db408424f0360327035844654e90338d49eff SHA512 f385c839d3d6cd5103e7a5e92dfda0581e1cd2e5e9270c678524ccaa7b97ddfc666423c2ae02605ed1d2c1c2a04dbda482323e40fb3c9854bf48b3208793f8d6
DIST Faker-23.1.0.tar.gz 1708228 BLAKE2B c72883e054b9e5e9f77de76ce354b7518038c055c6c034e091cbf89246a192c26896e427a9dd48981327498c8fcf63cd1b87b7e25647ce84606d4ba1bedfae51 SHA512 84fbf69d3911f21f98cd14926aad12c1da5be083c0820332bbd1212a995b7995960d7635b54f74b6ee125cfa8e81b991026647c46fa9035f6506bb8a853f4908
DIST Faker-23.2.0.tar.gz 1708429 BLAKE2B 053b8300ebae3c1b1012c5314305e57e224c0fd46893d29063fc1fcf763aaf985b242e8d028185031c68d1735d4155ecbb6241bc96b12e7fa279ad4ca7ca34e1 SHA512 7046f66f344dc9bbe4c8ee8586aae8c03e7eaac4e472e08b8f10206cde40a2741ed9ac2891239e61fc9a4cfee5590caff086ca065d833c58517a2476573c494c
+DIST Faker-23.2.1.tar.gz 1708603 BLAKE2B 94759727bb7feb520d51c3a52e50e01bad164cc3f262620d9f106f4746e68b298447d678dba7a5af9a80d0fdd7d9981f57ca50e27ab10671caec52c34e0442ee SHA512 1fefc84bed97e012c4e07117d62a6e0970e1be9d1c2b6f09db497b0d5ba66a2b2b0f3ba806926621d59dc0753a8b8c9caacefa15fbb23c755f110c5ef908975d
diff --git a/dev-python/black/black-24.1.1.ebuild b/dev-python/black/black-24.1.1.ebuild
index dc8dab43fcd4..379edfc6ba3f 100644
--- a/dev-python/black/black-24.1.1.ebuild
+++ b/dev-python/black/black-24.1.1.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos"
RDEPEND="
>=dev-python/click-8.0.0[${PYTHON_USEDEP}]
diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest
index 2486087d8fdb..3556151b7c89 100644
--- a/dev-python/boto3/Manifest
+++ b/dev-python/boto3/Manifest
@@ -5,3 +5,4 @@ DIST boto3-1.34.40.gh.tar.gz 773834 BLAKE2B 3622514c5e114a015dc7725bf7415858956e
DIST boto3-1.34.41.gh.tar.gz 774170 BLAKE2B ec6c60a181afa8266018f8dd58917a7277d2b405736b2af94689cd7b3af6b961799f8ba4ea1395917695673d857cb9542507daed78d5e13f9517e3bcb254e08c SHA512 2f9be9b87c2f632d9291419eccd155a13d6120e93e1966afc236405742d4a2357fe53cc5dcc9b10aaf22ffe93d2e52285e3d44d4f578b5688a08b9cb705c42f1
DIST boto3-1.34.42.gh.tar.gz 774581 BLAKE2B af50bc64eee24b2a8e56453a1823ad008e745dcd0335d2ea2bcbf58d84311cd1b4da91bf1cdbb0ed74ea4e17fb6a278279628634f33bf2649d4c22be1251cb18 SHA512 cfee96d5da7eaeb324113baa5f52fc1f3576db74e2d5bd72345701ebdd9907a915715fff14cd0cabcffb5a790c0432177e4881eda487b0882f97d6cc2c14bc57
DIST boto3-1.34.43.gh.tar.gz 775352 BLAKE2B 3b692a89c6c6c7af50c5815fd95819f44cca7c1933a06cb1e5de4197b527281143a04074b1dc40ff9563098efb399360b9ca708789457cbf2d79bdd0c4c0f149 SHA512 21a90448c3b6feaec2492d86c4c40d69a8227198d1c18347a5b85d51c082abe357024efb699207c70f60c47ed3ffa7ece2b2fb50695c2df8d09628ae25ef7ff2
+DIST boto3-1.34.44.gh.tar.gz 775883 BLAKE2B 97648819e48af3bbdec76ca47f5532cf9f0a99845f90515cbc7bec02bd5cc04ed5cc842b55cd589a8fb1cd8852edf4d12d3e8a23320e23fd4c5920854ef588d3 SHA512 310689dd7fc3a08c3a8ed6e223381870f028ee07354f74654abafc893f8230fee82bcd136c9e04a675a06bad496458f6778e6d571e75f6541130b3e06cdf324a
diff --git a/dev-python/boto3/boto3-1.34.44.ebuild b/dev-python/boto3/boto3-1.34.44.ebuild
new file mode 100644
index 000000000000..c6201d2c5818
--- /dev/null
+++ b/dev-python/boto3/boto3-1.34.44.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2024 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="The AWS SDK for Python"
+HOMEPAGE="
+ https://github.com/boto/boto3/
+ https://pypi.org/project/boto3/
+"
+SRC_URI="
+ https://github.com/boto/boto3/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ >=dev-python/botocore-${PV}[${PYTHON_USEDEP}]
+ >=dev-python/jmespath-0.7.1[${PYTHON_USEDEP}]
+ >=dev-python/s3transfer-0.10.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/mock[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ # don't lock versions to narrow ranges
+ sed -e '/botocore/ d' \
+ -e '/jmespath/ d' \
+ -e '/s3transfer/ d' \
+ -i setup.py || die
+
+ # do not rely on bundled deps in botocore (sic!)
+ find -name '*.py' -exec sed -i \
+ -e 's:from botocore[.]vendored import:import:' \
+ -e 's:from botocore[.]vendored[.]:from :' \
+ {} + || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest tests/{functional,unit}
+}
diff --git a/dev-python/botocore/Manifest b/dev-python/botocore/Manifest
index 887fc97af7c9..cf0c71f62237 100644
--- a/dev-python/botocore/Manifest
+++ b/dev-python/botocore/Manifest
@@ -5,3 +5,4 @@ DIST botocore-1.34.40.gh.tar.gz 12700016 BLAKE2B 95be55cb5c0f1a55846478196c90542
DIST botocore-1.34.41.gh.tar.gz 12702662 BLAKE2B 65c99f1c6ebfe6f33dc8747bdd104ab8a81884f0f729072ecc7f06e077766bbac58fffe7d185e959a3de892f634d2b68e96c2f3c7193e36a0eb3f54656c3ea41 SHA512 7ce1a8cfc196f200baddb395e63ebac405c320b8f521d8fea23fcf2d8d17e3530efc18e94cfcce749dfe86c5c4f2943f533edadb6bdcff05d623d3fa07b5b738
DIST botocore-1.34.42.gh.tar.gz 12706455 BLAKE2B 8167771d56270caafe58cd9acdc1a6e25da3fd11c4b49196f3de00814e98d8db100f08e9862331c5e905ba863c852611d9fe796d7b84ac2e8a0865888e75a923 SHA512 074f06a506044bbfb2c925dafbcc63a08f968e9aab755f9779a97e4502ad457e468d833a151c538a575025df853fcc7ff409ab3455f8d02f4888af15dae0e6b6
DIST botocore-1.34.43.gh.tar.gz 12712686 BLAKE2B 7cd7d6b3e57dba02ff2727d7c3aa80978a8431ae19dc6f2900bba8372a42eef416113d0cca26ec79518e97c019189f4c4d1faf706763a41a51c870dcfb51846f SHA512 fc66e51828a6818b2bdb3a27bd47b6e55dbc0530ef7e6fab7961e6e7f33126de2dd0261d76e976f11680730f4b581783d812bbcc01f4aad5db9aef5377e6f026
+DIST botocore-1.34.44.gh.tar.gz 12716767 BLAKE2B 335d59ae57ae5a5a1bdb44c3e196dff18cb24dd4a4d3beb59e7b8e887d5cc56f0716b2e4fead0c9a4c96978d661308fb0f1e045300e7af69c94ed799bb25a2ef SHA512 12893173c0123711f496448e661bb8e463fcc29ac95c500fe427e2dcf9810659b92de1d38ec3192e1e20a92ca01a5315733f34d0ffe61f2c9b69763e427ee96f
diff --git a/dev-python/botocore/botocore-1.34.44.ebuild b/dev-python/botocore/botocore-1.34.44.ebuild
new file mode 100644
index 000000000000..857224b496b7
--- /dev/null
+++ b/dev-python/botocore/botocore-1.34.44.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2024 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="Low-level, data-driven core of boto 3"
+HOMEPAGE="
+ https://github.com/boto/botocore/
+ https://pypi.org/project/botocore/
+"
+SRC_URI="
+ https://github.com/boto/botocore/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ <dev-python/jmespath-2[${PYTHON_USEDEP}]
+ dev-python/python-dateutil[${PYTHON_USEDEP}]
+ >=dev-python/urllib3-1.25.4[${PYTHON_USEDEP}]
+"
+# unbundled packages
+RDEPEND+="
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/jsonschema[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+src_prepare() {
+ # unpin deps
+ sed -i -e "s:>=.*':':" setup.py || die
+
+ # unbundle deps
+ rm -r botocore/vendored || die
+ find -name '*.py' -exec sed -i \
+ -e 's:from botocore[.]vendored import:import:' \
+ -e 's:from botocore[.]vendored[.]:from :' \
+ {} + || die
+
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # rely on bundled six
+ tests/functional/test_six_imports.py::test_no_bare_six_imports
+ tests/functional/test_six_threading.py::test_six_thread_safety
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest tests/{functional,unit}
+}
diff --git a/dev-python/cfn-lint/Manifest b/dev-python/cfn-lint/Manifest
index 634803029538..4b7538c3f9a1 100644
--- a/dev-python/cfn-lint/Manifest
+++ b/dev-python/cfn-lint/Manifest
@@ -1,3 +1,4 @@
DIST cfn-lint-0.84.0.tar.gz 3890781 BLAKE2B 160c8f29f2551c0885d784d725e5e7077aaf162b13f8bcbe8f04c2f6dd939bdb22166ebc3fbba6ba71b0ec68356f520ae1968a447a7a24082eb85271c684aa1b SHA512 0e783c6c2fc590ce59526da887a3bdcc2f8c55e6d5d6e11f49df82c72d387a18abbac545b861bf806e829080b7be6da00d948d32769396b6730570ab4bc23f7a
DIST cfn-lint-0.85.0.tar.gz 3875659 BLAKE2B 64bbd4ba0dc153b78da40588a2d0e9f34feafcf17b7262b84f3c3e0a98ecc6cc7b78152dc829fd2bcb3f3c3fe601fdf217111bd5a11d402a3b70ceda822206f7 SHA512 b7d65fb360e8743f08ec2feb451e6dc6cbda62c0850a954e5beec8d6a2a6bee2be2dddee36f262f571e5e9838deb7237895a3020b951686423315f5914f82d67
DIST cfn-lint-0.85.1.tar.gz 3875240 BLAKE2B 40ea81dcb938648c7bd772e8e4ad751281488048a9718a0bedef299eb32f0b9776ad4529a1cb724f7e7cc41d249c8555c8f72eddb146d940e227a6dd90e0b04c SHA512 4936facb73fa32745fe3915accee00c82135263fd6f05ae08d6540b97f53d13047631cbc39c580985c1f574f3cb6bb9b91c2805b6503ba20499cd997dfcbf677
+DIST cfn-lint-0.85.2.tar.gz 3887432 BLAKE2B 3ae9f84d977c576b8051226b73960c97d568c5cfe4aab2030b753abd6e25b39ff2d7f2265e1edca17339ca35658808d00805ce95d3f155b395e3ed3cd84c0bdd SHA512 7c28a8f9771cb38087d30425340b95fbec637c7345cdd2c6ae2f6dc6f550cfe0b3f4cc53a60625767b40850bbf29859370cf89185bdd2a1de59a64aa43c598c3
diff --git a/dev-python/cfn-lint/cfn-lint-0.85.2.ebuild b/dev-python/cfn-lint/cfn-lint-0.85.2.ebuild
new file mode 100644
index 000000000000..4d0fa31eff07
--- /dev/null
+++ b/dev-python/cfn-lint/cfn-lint-0.85.2.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2024 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="CloudFormation Linter"
+HOMEPAGE="
+ https://github.com/aws-cloudformation/cfn-lint/
+ https://pypi.org/project/cfn-lint/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+
+RDEPEND="
+ >=dev-python/aws-sam-translator-1.84.0[${PYTHON_USEDEP}]
+ dev-python/jsonpatch[${PYTHON_USEDEP}]
+ >=dev-python/jschema-to-python-1.2.3[${PYTHON_USEDEP}]
+ <dev-python/jsonschema-5[${PYTHON_USEDEP}]
+ >=dev-python/jsonschema-3.0[${PYTHON_USEDEP}]
+ dev-python/junit-xml[${PYTHON_USEDEP}]
+ <dev-python/networkx-4[${PYTHON_USEDEP}]
+ >dev-python/pyyaml-5.4[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.15.0[${PYTHON_USEDEP}]
+ >=dev-python/regex-2021.7.1[${PYTHON_USEDEP}]
+ >=dev-python/sarif-om-1.0.4[${PYTHON_USEDEP}]
+ >=dev-python/sympy-1.0.0[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ # unpin the deps
+ sed -e 's:~=[0-9.]*::' -i setup.py || die
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # TODO
+ test/unit/module/test_template.py::TestTemplate::test_build_graph
+ # requires git repo
+ test/unit/module/maintenance/test_update_documentation.py::TestUpdateDocumentation::test_update_docs
+ # Internet
+ test/unit/module/formatters/test_formatters.py::TestFormatters::test_sarif_formatter
+ test/unit/module/maintenance/test_update_resource_specs.py::TestUpdateResourceSpecs::test_update_resource_specs_python_3
+ # TODO: it looks as if AWS_DEFAULT_REGION didn't work
+ test/unit/module/core/test_run_cli.py::TestCli::test_bad_config
+ test/unit/module/core/test_run_cli.py::TestCli::test_override_parameters
+ test/unit/module/core/test_run_cli.py::TestCli::test_positional_template_parameters
+ test/unit/module/core/test_run_cli.py::TestCli::test_template_config
+ )
+
+ # from tox.ini
+ local -x AWS_DEFAULT_REGION=us-east-1
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
diff --git a/dev-python/dnspython/Manifest b/dev-python/dnspython/Manifest
index 9e6182aa07c0..b75573b1d071 100644
--- a/dev-python/dnspython/Manifest
+++ b/dev-python/dnspython/Manifest
@@ -1 +1,2 @@
DIST dnspython-2.5.0.gh.tar.gz 366093 BLAKE2B f8e3d8632a74b0421f7c77316dc80e01936277d701c282239ed60e79952755d34c673f15e19d4da812883e33d5f2cb54a8faa419185d8d198de923a2f3861095 SHA512 8ed207f9cee88dc1deb626d727c510dabace327586911e340df435c8cce5936efee51937b52881b4b4452d9c8c5bd903044bfef5a4effa95aaf05f24c0213b07
+DIST dnspython-2.6.0.gh.tar.gz 372953 BLAKE2B c35a994ff0573a175a8011ef84291ea9de3450e4e57ae059c756cdb5e3163a736057b994e0d370b3c237eff7cf2650b7faae1f11071c53e9c953e655f539f8f3 SHA512 68361d624af6b308669a20316c9046e23135fdaec69f0dd0580f865b363565b813d836aaf9ddd1db5c51a831bd34ddbf6136b6bf72d2e91833d4c7c209528c2b
diff --git a/dev-python/dnspython/dnspython-2.6.0.ebuild b/dev-python/dnspython/dnspython-2.6.0.ebuild
new file mode 100644
index 000000000000..05191e93a134
--- /dev/null
+++ b/dev-python/dnspython/dnspython-2.6.0.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2024 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} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="DNS toolkit for Python"
+HOMEPAGE="
+ https://www.dnspython.org/
+ https://github.com/rthalley/dnspython/
+ https://pypi.org/project/dnspython/
+"
+SRC_URI="
+ https://github.com/rthalley/dnspython/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+IUSE="dnssec examples"
+
+RDEPEND="
+ dnssec? (
+ >=dev-python/cryptography-41[${PYTHON_USEDEP}]
+ )
+ >=dev-python/idna-2.1[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ >=dev-python/cryptography-41[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_install_all() {
+ distutils-r1_python_install_all
+ if use examples; then
+ dodoc -r examples
+ docompress -x /usr/share/doc/${PF}/examples
+ fi
+}
diff --git a/dev-python/pytest/Manifest b/dev-python/pytest/Manifest
index be65f4ce38e8..f5e07934a4f4 100644
--- a/dev-python/pytest/Manifest
+++ b/dev-python/pytest/Manifest
@@ -1,2 +1,3 @@
DIST pytest-7.4.4.tar.gz 1357116 BLAKE2B 0bf281b3d4b7b2eb7805423a75c8c2befa820cc230318511e5a2d5ea35321a78a2603d5dbc033414ed73171525371efa9d9f54083d5638fc752c1c218e6d53aa SHA512 28a259dac6739683c131993409d508e10fbfee461291b8fc7697dd83f30725a3c60e681ba00b5669a215af6a5e683f07a329485d780acc9ad0372a6552f783a1
DIST pytest-8.0.0.tar.gz 1395242 BLAKE2B 99d0dce33a2a9c0c421777779584b6f74950e27c4a3a64daaf9fbb9d6a28583cff1890ebd6f471e1ffdc6f9d3cfc69deb513b6884ec216a7e95b16eba8c59c5e SHA512 18c09d378e02a5b33bdf269aa27b6a4e84d43c46a702d34252ddf01a7cab3d56c8c9793ed4605ae041fc8c8845016b69dba4eb1f723756bab3704ab3e079b551
+DIST pytest-8.0.1.tar.gz 1396338 BLAKE2B feb21b576e1c82376481493d4c7c345f16ac7c818c13b88d37a2b5c3ecdbb6fa7397243f8672df320657a4a6fd654267760a278313fd0cba069da950834fdb55 SHA512 ce1fa9fa2a78f73320e1692681930c7bee5f6bd66b592d6f8b7e6c958cbdc180d9b1f39ecad2556c0811c5337e7fa28b84a093f064ac46f7fd3c4a6d94b3e73a
diff --git a/dev-python/pytest/pytest-8.0.1.ebuild b/dev-python/pytest/pytest-8.0.1.ebuild
new file mode 100644
index 000000000000..97dddf035948
--- /dev/null
+++ b/dev-python/pytest/pytest-8.0.1.ebuild
@@ -0,0 +1,110 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_TESTED=( python3_{8,9,10,11,12} pypy3 )
+PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" )
+
+inherit distutils-r1 multiprocessing pypi
+
+DESCRIPTION="Simple powerful testing with Python"
+HOMEPAGE="
+ https://pytest.org/
+ https://github.com/pytest-dev/pytest/
+ https://pypi.org/project/pytest/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-python/iniconfig[${PYTHON_USEDEP}]
+ >=dev-python/more-itertools-4.0.0[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ >=dev-python/pluggy-1.3.0[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ >=dev-python/exceptiongroup-1.0.0_rc8[${PYTHON_USEDEP}]
+ >=dev-python/tomli-1.0.0[${PYTHON_USEDEP}]
+ ' 3.{9..10})
+"
+BDEPEND="
+ >=dev-python/setuptools-scm-6.2.3[${PYTHON_USEDEP}]
+ test? (
+ ${RDEPEND}
+ $(python_gen_cond_dep '
+ dev-python/argcomplete[${PYTHON_USEDEP}]
+ >=dev-python/attrs-19.2.0[${PYTHON_USEDEP}]
+ >=dev-python/hypothesis-3.56[${PYTHON_USEDEP}]
+ dev-python/mock[${PYTHON_USEDEP}]
+ >=dev-python/pygments-2.7.2[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/xmlschema[${PYTHON_USEDEP}]
+ ' "${PYTHON_TESTED[@]}")
+ )
+"
+
+src_test() {
+ # workaround new readline defaults
+ echo "set enable-bracketed-paste off" > "${T}"/inputrc || die
+ local -x INPUTRC="${T}"/inputrc
+ distutils-r1_src_test
+}
+
+python_test() {
+ if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then
+ einfo "Skipping tests on ${EPYTHON}"
+ return
+ fi
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ local -x COLUMNS=80
+
+ local EPYTEST_DESELECT=(
+ # broken by epytest args
+ testing/test_warnings.py::test_works_with_filterwarnings
+
+ # tend to be broken by random pytest plugins
+ # (these tests patch PYTEST_DISABLE_PLUGIN_AUTOLOAD out)
+ testing/test_helpconfig.py::test_version_less_verbose
+ testing/test_helpconfig.py::test_version_verbose
+ testing/test_junitxml.py::test_random_report_log_xdist
+ testing/test_junitxml.py::test_runs_twice_xdist
+ testing/test_terminal.py::TestProgressOutputStyle::test_xdist_normal
+ testing/test_terminal.py::TestProgressOutputStyle::test_xdist_normal_count
+ testing/test_terminal.py::TestProgressOutputStyle::test_xdist_verbose
+ testing/test_terminal.py::TestProgressWithTeardown::test_xdist_normal
+ testing/test_terminal.py::TestTerminalFunctional::test_header_trailer_info
+ testing/test_terminal.py::TestTerminalFunctional::test_no_header_trailer_info
+
+ # unstable with xdist
+ testing/test_terminal.py::TestTerminalFunctional::test_verbose_reporting_xdist
+
+ # TODO (XPASS)
+ testing/test_debugging.py::TestDebuggingBreakpoints::test_pdb_not_altered
+ testing/test_debugging.py::TestPDB::test_pdb_interaction_capturing_simple
+ testing/test_debugging.py::TestPDB::test_pdb_interaction_capturing_twice
+ testing/test_debugging.py::TestPDB::test_pdb_with_injected_do_debug
+ testing/test_debugging.py::test_pdb_suspends_fixture_capturing
+
+ # setuptools warnings
+ testing/acceptance_test.py::TestInvocationVariants::test_cmdline_python_namespace_package
+
+ # times out
+ testing/test_debugging.py::TestPDB::test_pdb_interaction_exception
+ )
+
+ [[ ${EPYTHON} == pypy3 ]] && EPYTEST_DESELECT+=(
+ # regressions on pypy3.9
+ # https://github.com/pytest-dev/pytest/issues/9787
+ testing/test_skipping.py::test_errors_in_xfail_skip_expressions
+ testing/test_unraisableexception.py
+ )
+
+ epytest -p xdist -n "$(makeopts_jobs)"
+}
diff --git a/dev-python/shapely/Manifest b/dev-python/shapely/Manifest
index f27b357882e0..efb3e7b31070 100644
--- a/dev-python/shapely/Manifest
+++ b/dev-python/shapely/Manifest
@@ -1 +1,2 @@
DIST shapely-2.0.2.gh.tar.gz 330120 BLAKE2B 01630239075c767897635fb25573bc37469ecb7b03d62cef2d82b95a8bd7216864087b9bbcaa46c75850f2048efac2b171f2a78090bf4cd846e882fd8b549942 SHA512 7d19984a1fae9a4ec6abaa2f88712ff442272019976427a915ccd3493e3dc8fe169c5ab3aacf71f3104fc325f93b1877bfcbe9c44968b661feccc38eeeb16f9a
+DIST shapely-2.0.3.gh.tar.gz 330889 BLAKE2B 32b56fb6517ee1831f2a93a54b2844e71fb860b3d0de992c9c16ab3e028ade8f6a0ecb5a5c7c8104637111486cec24ecbeb6fe0cf1a1f5282f8bc0b2c73a112a SHA512 862c9af9a40ddc759094375689327298979cb19cde6e4fbd0edc7e6bd0ed5296960628a4be7030bedfecaa8d3dd77bc1e1bac137d698530fea055ddc914e2ab8
diff --git a/dev-python/shapely/shapely-2.0.3.ebuild b/dev-python/shapely/shapely-2.0.3.ebuild
new file mode 100644
index 000000000000..80acbe3d4ef0
--- /dev/null
+++ b/dev-python/shapely/shapely-2.0.3.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2024 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} )
+
+inherit distutils-r1
+
+MY_P=${P/_p/.post}
+DESCRIPTION="Geometric objects, predicates, and operations"
+HOMEPAGE="
+ https://pypi.org/project/shapely/
+ https://github.com/shapely/shapely/
+"
+SRC_URI="
+ https://github.com/shapely/shapely/archive/${PV/_p/.post}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+DEPEND="
+ >=sci-libs/geos-3.9
+"
+RDEPEND="
+ ${DEPEND}
+ dev-python/numpy[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ ${DEPEND}
+ >=dev-python/cython-0.29.32[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.0.2-c99.patch
+)
+
+distutils_enable_tests pytest
+
+python_test() {
+ rm -rf shapely || die
+ epytest --pyargs shapely
+}
diff --git a/dev-python/testfixtures/Manifest b/dev-python/testfixtures/Manifest
index 2241a86ce2e9..06c07a7b8667 100644
--- a/dev-python/testfixtures/Manifest
+++ b/dev-python/testfixtures/Manifest
@@ -1 +1,2 @@
DIST testfixtures-7.2.2.tar.gz 133809 BLAKE2B 6a3701bb9c5ca476aadc144f1013268f87e10dd47a6f757e8a0aaa3feb33e1a06663a38f0789b7c54cf439b07562dfb638bd9b89efdc36831d04977f6035ecc8 SHA512 4f7a5ed659b650080deac0b1caff6d2dff0b71d23eaeb26b48b7daa4df85dc0a1f6cfef98275c9a90289eb893c0a06311c849b84f2cc35447fb766f4d0d41c89
+DIST testfixtures-8.0.0.tar.gz 133847 BLAKE2B 0197f1946b6124298251a2d0bedf706f36982b1f10c8f959fe1ac52aa8290a9123355a110aa2bdf932229bd152bd041f086eba76b29aa97f9df2f8a1b3a3f7c3 SHA512 57d7876cccda12f3abb47c50e15c5a9e2cbae2039a573733cb10d1708245f20adbf959fec34fd06edf1ba9279a10e336b34acd8bda0cf1f8a64f9940bd5c8c2b
diff --git a/dev-python/testfixtures/testfixtures-8.0.0.ebuild b/dev-python/testfixtures/testfixtures-8.0.0.ebuild
new file mode 100644
index 000000000000..a3c0f5c9d856
--- /dev/null
+++ b/dev-python/testfixtures/testfixtures-8.0.0.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2024 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="A collection of helpers and mock objects for unit tests and doc tests"
+HOMEPAGE="
+ https://pypi.org/project/testfixtures/
+ https://github.com/Simplistix/testfixtures/
+"
+
+SLOT="0"
+LICENSE="MIT"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86 ~amd64-linux ~x86-linux"
+
+BDEPEND="
+ test? (
+ $(python_gen_impl_dep sqlite)
+ dev-python/django[${PYTHON_USEDEP}]
+ dev-python/pytest-django[${PYTHON_USEDEP}]
+ >=dev-python/sybil-6[${PYTHON_USEDEP}]
+ >=dev-python/twisted-18[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_sphinx docs \
+ dev-python/furo
+distutils_enable_tests pytest
+
+python_test() {
+ local -x PYTHONPATH="."
+ local -x DJANGO_SETTINGS_MODULE=testfixtures.tests.test_django.settings
+
+ local EPYTEST_DESELECT=(
+ # TODO
+ testfixtures/tests/test_shouldwarn.py::ShouldWarnTests::test_filter_missing
+ testfixtures/tests/test_shouldwarn.py::ShouldWarnTests::test_filter_present
+ )
+
+ epytest
+}
diff --git a/dev-python/tox/Manifest b/dev-python/tox/Manifest
index da022d39f3e3..b3af44a95e32 100644
--- a/dev-python/tox/Manifest
+++ b/dev-python/tox/Manifest
@@ -1,2 +1,3 @@
DIST tox-3.28.0.gh.tar.gz 309472 BLAKE2B 9896411426f6aebb3efa468c01696ecc5f17ec3e67825672d0efc74c1b1468bc8b8d9c14b6177c181750ba4b9a5e77d616068dd83e21f5641acfc8e2a271cc1f SHA512 64816754e6800661bb564c5c7d21c4139522d540a04fafe3c4591d596072d48d1cbe0ee2abee9c8faf3d5007774f5371431b5a7a8f49912bc879c7b168aab2ca
DIST tox-4.12.1.tar.gz 176858 BLAKE2B 805764e507ba2894e46dad6b82eb928b4f184d20b2ceb0e7c2ff15f553121158f7f84515a5922d095893a1d6a73030777300163dfdd60964ffe6c41cf2047c14 SHA512 217fbc2933999fcc5d080d97521cd01b7d9a35d4f1542cc58bcc2ff86d07884caa43fd42b09e5064cbad1334e4df9cd717c48c70041c9cf856b0beb22e1ea8a7
+DIST tox-4.13.0.tar.gz 177875 BLAKE2B d32d0bbcf04d5aa4eec80907ad0099522aba520617a260d2586856c36f6246bc0ce22ec5eacb4a4f6766802e7529578fd00077eaf13c21e4fb1213278b926d5b SHA512 8fcd69cafd94a6c930769d26a9a8297d6e18e8962a646992330ebea9e49a5fa299915bd6833680c7bb0ed5f84f9be5faa915653c8a03ab0125bc00bd34e9d0e7
diff --git a/dev-python/tox/tox-4.13.0.ebuild b/dev-python/tox/tox-4.13.0.ebuild
new file mode 100644
index 000000000000..60ee4e5af69b
--- /dev/null
+++ b/dev-python/tox/tox-4.13.0.ebuild
@@ -0,0 +1,87 @@
+# Copyright 1999-2024 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} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="virtualenv-based automation of test activities"
+HOMEPAGE="
+ https://tox.readthedocs.io/
+ https://github.com/tox-dev/tox/
+ https://pypi.org/project/tox/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ dev-python/cachetools[${PYTHON_USEDEP}]
+ dev-python/chardet[${PYTHON_USEDEP}]
+ dev-python/colorama[${PYTHON_USEDEP}]
+ dev-python/filelock[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ dev-python/platformdirs[${PYTHON_USEDEP}]
+ dev-python/pluggy[${PYTHON_USEDEP}]
+ dev-python/pyproject-api[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/tomli[${PYTHON_USEDEP}]
+ ' 3.{9..10})
+ dev-python/virtualenv[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/hatch-vcs[${PYTHON_USEDEP}]
+ test? (
+ dev-python/build[${PYTHON_USEDEP}]
+ dev-python/distlib[${PYTHON_USEDEP}]
+ dev-python/flaky[${PYTHON_USEDEP}]
+ dev-python/psutil[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ dev-python/re-assert[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/time-machine[${PYTHON_USEDEP}]
+ ' 'python*')
+ )
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ # upstream lower bounds are meaningless
+ sed -i -e 's:>=[0-9.]*::' pyproject.toml || die
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ # devpi_process is not packaged, and has lots of dependencies
+ cat > "${T}"/devpi_process.py <<-EOF || die
+ def IndexServer(*args, **kwargs): raise NotImplementedError()
+ EOF
+
+ local -x PYTHONPATH=${T}:${PYTHONPATH}
+ local EPYTEST_DESELECT=(
+ # Internet
+ tests/tox_env/python/virtual_env/package/test_package_cmd_builder.py::test_build_wheel_external
+ tests/tox_env/python/virtual_env/package/test_package_cmd_builder.py::test_run_installpkg_targz
+ )
+ local EPYTEST_IGNORE=(
+ # requires devpi*
+ tests/test_provision.py
+ )
+
+ [[ ${EPYTHON} == pypy3 ]] && EPYTEST_DESELECT+=(
+ 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[explicit-True-True]'
+ 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[requirements-True-True]'
+ 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[constraints-True-True]'
+ 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[explicit+requirements-True-True]'
+ 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[requirements_indirect-True-True]'
+ 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[requirements_constraints_indirect-True-True]'
+ )
+
+ epytest
+}
diff --git a/dev-python/trimesh/Manifest b/dev-python/trimesh/Manifest
index 0686ebaa6bd0..16975b9bec0c 100644
--- a/dev-python/trimesh/Manifest
+++ b/dev-python/trimesh/Manifest
@@ -1,2 +1,3 @@
DIST trimesh-4.1.0.gh.tar.gz 13437739 BLAKE2B 4a5c54bd17506fa391404f825c2be47e34c3757b6380bb8af43b27b3b1f30f6518dc997f0ce6a20d87c7c8ced4c5f54092a58d6d03f5d73e4fe6cc8bbc62342e SHA512 77729d3b14f90d106fd79d1bddd0261cc1e6aeb3f3af7fcad9c9dacbd8fecea4f996944d5af232f2af46e274b14b657e0ad90700cd194afa9fb2a40dc3763c44
DIST trimesh-4.1.3.gh.tar.gz 13438037 BLAKE2B 1aaa2ad9fc974bc335710e12381f63fc7d6c6db47b6d88e9590dba92c126dee374ebe8282df02bdd4405558b391ce836c861b0672be847c627238c9c4c6c2285 SHA512 5f9b81c9e59760ec023e0a2ceeb62fdd4308f69ebc0cb495bcb0d7b58244a6754d4016c87110509f01696b291c03838b7896f9f470fe95f99d8755781b82051a
+DIST trimesh-4.1.4.gh.tar.gz 13438872 BLAKE2B b03efc741bccf3b08c9f8611dbf282d99fb8a2691d54d0230326453aa5666b69470d00fce7eccf2863c6f6939c56d74d3d537100b8def9c8660a33eabf3ba462 SHA512 bbdc3ec24d5a53e329b3b3021bec14668b1bb19e231ebb5f2ee186449e9c4ad162a14c4f42b8bdaed513ff5c874bf7ec1f0fc4bf103ee6b79ca7564494316984
diff --git a/dev-python/trimesh/trimesh-4.1.4.ebuild b/dev-python/trimesh/trimesh-4.1.4.ebuild
new file mode 100644
index 000000000000..b621d3cf0967
--- /dev/null
+++ b/dev-python/trimesh/trimesh-4.1.4.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2024 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 optfeature
+
+DESCRIPTION="Python library for loading and using triangular meshes"
+HOMEPAGE="
+ https://trimesh.org/
+ https://github.com/mikedh/trimesh/
+ https://pypi.org/project/trimesh/
+"
+SRC_URI="
+ https://github.com/mikedh/${PN}/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+RDEPEND="
+ dev-python/chardet[${PYTHON_USEDEP}]
+ dev-python/colorlog[${PYTHON_USEDEP}]
+ dev-python/httpx[${PYTHON_USEDEP}]
+ dev-python/jsonschema[${PYTHON_USEDEP}]
+ dev-python/lxml[${PYTHON_USEDEP}]
+ dev-python/networkx[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/pillow[${PYTHON_USEDEP}]
+ dev-python/pycollada[${PYTHON_USEDEP}]
+ dev-python/pyglet[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/scipy[${PYTHON_USEDEP}]
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ >=dev-python/shapely-1.8.2[${PYTHON_USEDEP}]
+ dev-python/svg-path[${PYTHON_USEDEP}]
+ dev-python/sympy[${PYTHON_USEDEP}]
+ dev-python/xxhash[${PYTHON_USEDEP}]
+ sci-libs/rtree[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/mapbox_earcut[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_TIMEOUT=900
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+python_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
+
+pkg_postinst() {
+ optfeature_header "${PN} functionality can be extended by installing the following packages:"
+ optfeature "making GUI applications with 3D stuff" dev-python/glooey
+ optfeature "2D triangulations of polygons" dev-python/mapbox_earcut
+ optfeature "loading a number of additional mesh formats" dev-python/meshio
+ optfeature "figuring out how much memory we have" dev-python/psutil
+ optfeature "marching cubes and other nice stuff" dev-python/scikit-image
+}
diff --git a/dev-python/types-setuptools/Manifest b/dev-python/types-setuptools/Manifest
index 6355eb54f52e..cf745988debc 100644
--- a/dev-python/types-setuptools/Manifest
+++ b/dev-python/types-setuptools/Manifest
@@ -1,2 +1,3 @@
DIST types-setuptools-69.0.0.20240125.tar.gz 33291 BLAKE2B c5b987f4ef5a67d8f09c2b3a96df17ef38e58e0d3d353dad34d34eb5d509f241edc2ed0a9bcf517331168d747d56c62c1a5cdf0cc315ec43cbac8815283e3e05 SHA512 9bf3865a7d49814939f8ba3cb553cd5c3d2623c8b029ac5da7a5c264049e09d6ab2d61e184ce1a4c3ed321bfb8fee0428742770b2e5398594172aff53503af91
DIST types-setuptools-69.1.0.20240215.tar.gz 33567 BLAKE2B 70347da95db2668e98626f1823b646d50ec232c1bed9424f15f8dc5ee44922c18b45b99c3583066c3d080044dcc6990e65e2ffe8905cbc37d88a7724da7f6017 SHA512 d30720f1e210643b0676bb85ab7c8110cbe354d931d954486cf5e17f0f5ba234f108fc5237ecfc372704958fcacb5ae51425a2dc4ed55605cfcb26527f38ca64
+DIST types-setuptools-69.1.0.20240217.tar.gz 33570 BLAKE2B 07427f0daf001586812993136bc77d571def95ff95ae3bf9dcda0fddd8b282cb546f956d33aff28ef1491eafea6e223fc7af6a86c4d117deff8006696aea20e7 SHA512 c63a5e893e4781dc03ef46c6786d00c1c45cf877e72d692c56c3e0f7ef4ea07c44feee05787dc4d8c439ebe8ace0048d1a6595aa29b3a6e09ed80f2e34581eb3
diff --git a/dev-python/types-setuptools/types-setuptools-69.1.0.20240217.ebuild b/dev-python/types-setuptools/types-setuptools-69.1.0.20240217.ebuild
new file mode 100644
index 000000000000..c755b6e96b17
--- /dev/null
+++ b/dev-python/types-setuptools/types-setuptools-69.1.0.20240217.ebuild
@@ -0,0 +1,17 @@
+# Copyright 2023-2024 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="Typing stubs for setuptools"
+HOMEPAGE="https://pypi.org/project/types-setuptools/"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
diff --git a/dev-python/zope-interface/Manifest b/dev-python/zope-interface/Manifest
index d399f6b078bf..439bce7987f7 100644
--- a/dev-python/zope-interface/Manifest
+++ b/dev-python/zope-interface/Manifest
@@ -1 +1,2 @@
DIST zope.interface-6.1.tar.gz 293914 BLAKE2B e0285c381bbd241be24aef60a59a70d268852dd99113e890d67f6e371792d2c8d19b3bf42d60b04f2a94259c144ec191c1baaca171ece1adf49d0558574152cc SHA512 04305eaf98fb40269d417c6894a6e154340669b66033c50e130d58bf6166cabc0a8979e1ba80dda47cb2bc508dde01ea2175628f89cbfd44cc2f59ac3cdce2c0
+DIST zope.interface-6.2.tar.gz 247528 BLAKE2B 4112579da95e763bb5feca7fc8845896178afd5e3fb181a5945de80cf579d0c66373e9ee9cbff97964f79750908b5e4650316b3df1cef16a267c3625268cec46 SHA512 42c169ba88e0e4fe7895f0956250ddb5f3e9aef3e73a801ef71b0e94f906e9f597008de16955a7a8a5ca59551b800e6f000c70ffb3f486a7cbb7bf9caa00059d
diff --git a/dev-python/zope-interface/zope-interface-6.2.ebuild b/dev-python/zope-interface/zope-interface-6.2.ebuild
new file mode 100644
index 000000000000..e7ac2640a571
--- /dev/null
+++ b/dev-python/zope-interface/zope-interface-6.2.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+PYPI_PN=${PN/-/.}
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Interfaces for Python"
+HOMEPAGE="
+ https://github.com/zopefoundation/zope.interface/
+ https://pypi.org/project/zope.interface/
+"
+
+LICENSE="ZPL"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+RDEPEND="
+ !dev-python/namespace-zope
+"
+BDEPEND="
+ test? (
+ dev-python/zope-event[${PYTHON_USEDEP}]
+ dev-python/zope-testing[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests unittest
+
+src_prepare() {
+ # strip rdep specific to namespaces
+ sed -e "/'setuptools'/d" -i setup.py || die
+ distutils-r1_src_prepare
+}
+
+python_compile() {
+ distutils-r1_python_compile
+ find "${BUILD_DIR}" -name '*.pth' -delete || die
+}
+
+python_test() {
+ cd "${BUILD_DIR}/install$(python_get_sitedir)" || die
+ distutils_write_namespace zope
+ eunittest
+}