summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2024-08-28 19:17:56 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2024-08-28 19:17:56 +0000
commitc1ec2b0946b52305b6ce1cc6272d0261e878a87e (patch)
treeef1a3bd3356221184a14ba8c1a43e29ba7fc1461 /dev-python
parent7dc327e91b5914509541dd690b777eb5941554d4 (diff)
downloadbaldeagleos-repo-c1ec2b0946b52305b6ce1cc6272d0261e878a87e.tar.gz
baldeagleos-repo-c1ec2b0946b52305b6ce1cc6272d0261e878a87e.tar.xz
baldeagleos-repo-c1ec2b0946b52305b6ce1cc6272d0261e878a87e.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/Events/Events-0.5.ebuild24
-rw-r--r--dev-python/Events/Manifest1
-rw-r--r--dev-python/Events/metadata.xml15
-rw-r--r--dev-python/beartype/Manifest1
-rw-r--r--dev-python/beartype/beartype-0.19.0_rc1.ebuild40
-rw-r--r--dev-python/boto3/Manifest1
-rw-r--r--dev-python/boto3/boto3-1.35.7.ebuild53
-rw-r--r--dev-python/botocore/Manifest1
-rw-r--r--dev-python/botocore/botocore-1.35.7.ebuild76
-rw-r--r--dev-python/cfn-lint/Manifest1
-rw-r--r--dev-python/cfn-lint/cfn-lint-1.11.0.ebuild70
-rw-r--r--dev-python/contourpy/Manifest1
-rw-r--r--dev-python/contourpy/contourpy-1.3.0.ebuild53
-rw-r--r--dev-python/ensurepip-setuptools/Manifest1
-rw-r--r--dev-python/ensurepip-setuptools/ensurepip-setuptools-74.0.0.ebuild24
-rw-r--r--dev-python/google-api-core/Manifest1
-rw-r--r--dev-python/google-api-core/google-api-core-2.19.2.ebuild64
-rw-r--r--dev-python/googleapis-common-protos/Manifest1
-rw-r--r--dev-python/googleapis-common-protos/googleapis-common-protos-1.65.0.ebuild31
-rw-r--r--dev-python/httpx/Manifest1
-rw-r--r--dev-python/httpx/httpx-0.27.2.ebuild95
-rw-r--r--dev-python/langdetect/Manifest2
-rw-r--r--dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch13
-rw-r--r--dev-python/langdetect/langdetect-1.0.9.ebuild4
-rw-r--r--dev-python/langdetect/metadata.xml10
-rw-r--r--dev-python/notebook/Manifest1
-rw-r--r--dev-python/notebook/notebook-7.2.2.ebuild64
-rw-r--r--dev-python/opensearch-py/Manifest1
-rw-r--r--dev-python/opensearch-py/opensearch-py-2.7.1.ebuild44
-rw-r--r--dev-python/openstackdocstheme/Manifest1
-rw-r--r--dev-python/openstackdocstheme/openstackdocstheme-3.3.0.ebuild29
-rw-r--r--dev-python/pbr/Manifest1
-rw-r--r--dev-python/pbr/pbr-6.1.0.ebuild72
-rw-r--r--dev-python/pipdeptree/files/pipdeptree-2.13.1-expect-hpy-in-pypy-7.3.3.patch26
-rw-r--r--dev-python/pipdeptree/files/pipdeptree-2.13.2-fix-pypy-7.3.14.patch37
-rw-r--r--dev-python/pyghmi/Manifest1
-rw-r--r--dev-python/pyghmi/pyghmi-1.5.71.ebuild33
-rw-r--r--dev-python/pytest-check/Manifest1
-rw-r--r--dev-python/pytest-check/pytest-check-2.4.0.ebuild26
-rw-r--r--dev-python/python-keystoneclient/Manifest1
-rw-r--r--dev-python/python-keystoneclient/python-keystoneclient-5.5.0.ebuild56
-rw-r--r--dev-python/pyudev/Manifest1
-rw-r--r--dev-python/pyudev/files/pyudev-0.24.3-tests.patch13
-rw-r--r--dev-python/pyudev/pyudev-0.24.3.ebuild77
-rw-r--r--dev-python/quantities/Manifest1
-rw-r--r--dev-python/quantities/quantities-0.16.0.ebuild40
-rw-r--r--dev-python/setuptools/Manifest1
-rw-r--r--dev-python/setuptools/setuptools-74.0.0.ebuild127
-rw-r--r--dev-python/sphinx/files/sphinx-7.3.7-opt-defusedxml.patch34
-rw-r--r--dev-python/sqlalchemy/files/sqlalchemy-2.0.30-py313.patch13
-rw-r--r--dev-python/tifffile/Manifest1
-rw-r--r--dev-python/tifffile/tifffile-2024.8.28.ebuild47
-rw-r--r--dev-python/tree-sitter/Manifest1
-rw-r--r--dev-python/tree-sitter/tree-sitter-0.23.0.ebuild64
-rw-r--r--dev-python/uv/Manifest2
-rw-r--r--dev-python/uv/uv-0.3.5.ebuild113
-rw-r--r--dev-python/zope-interface/Manifest1
-rw-r--r--dev-python/zope-interface/zope-interface-7.0.3.ebuild48
58 files changed, 1432 insertions, 130 deletions
diff --git a/dev-python/Events/Events-0.5.ebuild b/dev-python/Events/Events-0.5.ebuild
new file mode 100644
index 000000000000..57907b826747
--- /dev/null
+++ b/dev-python/Events/Events-0.5.ebuild
@@ -0,0 +1,24 @@
+# Copyright 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="Bringing the elegance of C# EventHandler to Python"
+HOMEPAGE="
+ https://pypi.org/project/Events/
+ https://github.com/pyeve/events
+"
+# No sdist in pypi as of PV=0.5
+SRC_URI="https://github.com/pyeve/events/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+S=${WORKDIR}/${P,,}
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+distutils_enable_tests unittest
diff --git a/dev-python/Events/Manifest b/dev-python/Events/Manifest
new file mode 100644
index 000000000000..89f6288ca703
--- /dev/null
+++ b/dev-python/Events/Manifest
@@ -0,0 +1 @@
+DIST Events-0.5.gh.tar.gz 13200 BLAKE2B c55361a0a31c0f01ae7c9e49ceb2ad6900384b0164d9ac8a5e289a8a80d9ab07f6439ee85f4ec77f0ae639b46e7c69c0f4b54341f9edfff05f865e0738315ff7 SHA512 3eb067bb2a8441eaf4801f25ced65afd7f6c253461c61a2e9bbdd87645718c72a7c13a66e46a6a48ef5b5857993f23a462a286937dc93a259bd02887a3dda6c6
diff --git a/dev-python/Events/metadata.xml b/dev-python/Events/metadata.xml
new file mode 100644
index 000000000000..e80fd870bb02
--- /dev/null
+++ b/dev-python/Events/metadata.xml
@@ -0,0 +1,15 @@
+<?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>
+ <name>Python</name>
+ </maintainer>
+ <maintainer type="person">
+ <email>arthurzam@gentoo.org</email>
+ <name>Arthur Zamarin</name>
+ </maintainer>
+
+ <origin>gentoo-staging</origin>
+ <stabilize-allarches/>
+</pkgmetadata> \ No newline at end of file
diff --git a/dev-python/beartype/Manifest b/dev-python/beartype/Manifest
index ac4e1728b94e..1d5b0b7f9647 100644
--- a/dev-python/beartype/Manifest
+++ b/dev-python/beartype/Manifest
@@ -1 +1,2 @@
DIST beartype-0.18.5.tar.gz 1193506 BLAKE2B 497de6f326a3b600992748db8b74ba80d4a14003a0cc484b3eeaf48f0f808864fe64462ef3315d421dc4b5fe5d7060b48585ee00eb822c9f124612f394ab93bb SHA512 114b256619c6c7fc48fbe28db00ae5a8ddea4ce11c5394a06fa026f0317a34907ff12ef0c0009cff7a7b83742e6b66bc8b503b4c0e382c0b6cf79d43780bda5b
+DIST beartype-0.19.0rc1.tar.gz 1281359 BLAKE2B df124c838891e5bbce62ac8116968631887dc5e5918a1b6a7c46c1705d05fcacf5f4cc4034b39a6d8565a78e2edd99686643a0d1d8c22586cfd797ceb8085b29 SHA512 630fd68a55ab379aca7b49b72161b732e0790835d7f62568239fb53f719fc8295bbe3c942058ab6dfad3226060a5a11820bc87080a2dcfb46c482e1877f775b7
diff --git a/dev-python/beartype/beartype-0.19.0_rc1.ebuild b/dev-python/beartype/beartype-0.19.0_rc1.ebuild
new file mode 100644
index 000000000000..0b14e6ca5115
--- /dev/null
+++ b/dev-python/beartype/beartype-0.19.0_rc1.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=hatchling
+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 ~arm64 ~riscv"
+
+BDEPEND="
+ test? (
+ dev-python/mypy[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # fragile performance test
+ beartype_test/a00_unit/a70_decor/test_decorwrapper.py::test_wrapper_fail_obj_large
+ # test for building docs, apparently broken too
+ beartype_test/a90_func/z90_lib/a00_sphinx
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest
index 956f6d4088e7..7e868a62ef51 100644
--- a/dev-python/boto3/Manifest
+++ b/dev-python/boto3/Manifest
@@ -2,3 +2,4 @@ DIST boto3-1.34.158.gh.tar.gz 848930 BLAKE2B 5db04b9eee08f5418a595e736f075fbe22b
DIST boto3-1.35.0.gh.tar.gz 851637 BLAKE2B 485b17616fed53a88280aad92d2e4219d8bcbf469b42cff6113f9596c6b245fad39b403b4fb29ed99b50955baa50940091e9c0f88cc6e350b44c69c4b1df5fdc SHA512 0236748c667ef1baf7484d4808083cb517c19ceae672973ac0cf9ce509a9e4a965c15349876807dc320fc96210ba6c5d16ea66545de19eed33dace058392d85d
DIST boto3-1.35.5.gh.tar.gz 854016 BLAKE2B f94d738e310725cd5f9c7b405a094155f3ecf640f02045662ed94ab3689ea549fde7eee19ae2be450768560ad705b8740fda78b79ed42cf536231626d247e09a SHA512 fc1106abbb306bacb80dce825bf71303e71b0d0698d7e3bb4dcaca4ea6e4f7a97e70753367200294f334b351e764bca57f2316afec854d2e46db4644dfefc25b
DIST boto3-1.35.6.gh.tar.gz 854351 BLAKE2B 0aea780d070a5a806bcb8196ebc3785eb1a1b5ad3cb9f1598a24bf80b4be5f8757b551a524afed9440deae505e427b97f9b79b1a7c30c7db977319ee317bb58c SHA512 81fce9301003a5b2f67107a7f6ebbd033a43a43c890be7ff3248136c1fcc826fd475f9860d3295f16900f199057e1a7da7be60554dc193826ecef6e64f97341d
+DIST boto3-1.35.7.gh.tar.gz 854615 BLAKE2B 4cf4fd926bc4175273df2007f1275e0781c199361cb8c419c7c34bc764e47d0c74f7f9c9de8d25a7052072a73ccdf0c3d2ec7fcab5b71a4107b2c22a1eef5700 SHA512 4e85d9d2004d6d74190f560b41cb6a4ace30b3ce4d09d5b390045874bedca1d0fc1756170bf81f615c81a371038fa7a94c407a3de417c0be6b33805bd32866e1
diff --git a/dev-python/boto3/boto3-1.35.7.ebuild b/dev-python/boto3/boto3-1.35.7.ebuild
new file mode 100644
index 000000000000..509842b2699d
--- /dev/null
+++ b/dev-python/boto3/boto3-1.35.7.ebuild
@@ -0,0 +1,53 @@
+# 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}]
+"
+
+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 7af0ffee3fee..15edec15d263 100644
--- a/dev-python/botocore/Manifest
+++ b/dev-python/botocore/Manifest
@@ -2,3 +2,4 @@ DIST botocore-1.34.158.gh.tar.gz 13282704 BLAKE2B c244a36093cdaf57ac82dc11a3e9d4
DIST botocore-1.35.0.gh.tar.gz 13294975 BLAKE2B a0cbafd1b0da5cd7150ea7a2e21b1209b206b7afcb86ad3ff004ca1c96f47da34eff29a43568f0e9a2dca3443516fdb6adf7bd3778835b908fa5fb3a8d22f79a SHA512 7d0c9815703ef49a8958ed1a5159018320108ae86efe20e6dff182db24ceeb67968db7027ee75809a1ebd1c835709d0d758b0699742bca2e435888dbe5e15a97
DIST botocore-1.35.5.gh.tar.gz 13303437 BLAKE2B 0a95351fbc93074bb0398871773120a194fe581a26f9a74c1101a5ea57bb3acb9a33937fc2d5a39a065988cdcc6dbe253bd2227cf93e670602ccc67ab82d8845 SHA512 5527420017a4a23d5593f5b3a0eb8caf15357642ed90cd73e0fe22774cc8f9f3637028286063e3e2810e5dafe52e882928269e5c82f6369be9af99bef18fb365
DIST botocore-1.35.6.gh.tar.gz 13305231 BLAKE2B 1c3716883b2cc8dd98e4391ff60039f14e0e0fcd076a3780b6ee18c216f004d6f1ed2e916681d28133ae9788fd5c721abbba6c44354442a6d7862074e7f8956a SHA512 6d2ab4264886e231cb0b65ea34d2757b29ba71fe227bf8dbff3474074d612f13b3e9fcfe17b9cb2f8f420bd962f1eefe7b8038ef5017060c6732ec5ed927906e
+DIST botocore-1.35.7.gh.tar.gz 13308318 BLAKE2B 4e92e22dde9a4b414a1cace9a21f8a536a0f386dd4b14bd594dc08dff3d05e8aa17c669222b07617db8b883ec79ab48a18d669619ff14400c09df26c0d3101fe SHA512 5188b485db0db1fdaf51ae1ff5c57caa114d0f08b04ef20cd821b5b13b661374dc4463694cf027c1ac25f903ea74be81464d0041c856e93315781398cfde611c
diff --git a/dev-python/botocore/botocore-1.35.7.ebuild b/dev-python/botocore/botocore-1.35.7.ebuild
new file mode 100644
index 000000000000..64a61a30c80b
--- /dev/null
+++ b/dev-python/botocore/botocore-1.35.7.ebuild
@@ -0,0 +1,76 @@
+# 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
+ )
+
+ case ${EPYTHON} in
+ python3.13)
+ EPYTEST_DESELECT+=(
+ # memory use tests, probably fragile
+ tests/functional/leak/test_resource_leaks.py::TestDoesNotLeakMemory
+ )
+ ;;
+ esac
+
+ 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 5787b060fd0b..b681a6863942 100644
--- a/dev-python/cfn-lint/Manifest
+++ b/dev-python/cfn-lint/Manifest
@@ -1,2 +1,3 @@
DIST cfn_lint-1.10.3.tar.gz 2418034 BLAKE2B f889112d5572401dd5333d1a9edcb277c6150bc58ba8d6e64322d4eb732be706386b795cb4abb4ec7a03855394b7c95f1f7048d2cd499fd2717f5cbe4458ee32 SHA512 b81a8afef2c2b5fcc3e9e5557908bd6510714421cae9e0a1319019ca23ba41b904e69888b9f84dcc5f612dfacf745071a79251c773b816b9e7d7b347e4e26586
+DIST cfn_lint-1.11.0.tar.gz 2414804 BLAKE2B 211dc6e9e7ad3e2ae9821753b5f1f5932fe74b9c89332e3463e58799cfcd19b7f5dbe3ff3323b26624652a2debd2e62aa135fc17c6253b32d24e88512416c3e0 SHA512 a2783d09461d4e480fffe3190aa00648568996679e0ea491ce2472276ad3bdeae3bea3fbb70d1d3e866d2b0cee18743a7b4b4163fae3db42175daaa9aa7769be
DIST cfn_lint-1.9.7.tar.gz 2519610 BLAKE2B a454027a85bb55770b91ab4d801ffad807a2b9200e88872e2149485bb17196e050e0eea02db9be6bd705f7b427d825b5510cd0e78ff4d0db2cefa988be138782 SHA512 b6fff3b56f78b85d7335d33fa93e41003311c60f008ce56ae3f373ec32b2105ad40bc68210bd15ee88cc4bcb9f6cd61bfb1367773ff870cc4ec1807aec011100
diff --git a/dev-python/cfn-lint/cfn-lint-1.11.0.ebuild b/dev-python/cfn-lint/cfn-lint-1.11.0.ebuild
new file mode 100644
index 000000000000..ff0861230c7a
--- /dev/null
+++ b/dev-python/cfn-lint/cfn-lint-1.11.0.ebuild
@@ -0,0 +1,70 @@
+# 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="CloudFormation Linter"
+HOMEPAGE="
+ https://github.com/aws-cloudformation/cfn-lint/
+ https://pypi.org/project/cfn-lint/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
+
+RDEPEND="
+ >=dev-python/aws-sam-translator-1.91.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/regex-2021.7.1[${PYTHON_USEDEP}]
+ >=dev-python/sarif-om-1.0.4[${PYTHON_USEDEP}]
+ >=dev-python/sympy-1.0.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/defusedxml[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ # unpin the deps
+ sed -e 's:~=[0-9.]*::' -i pyproject.toml || 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
+ # different graphviz version?
+ test/unit/module/template/test_template.py::TestTemplate::test_build_graph
+ )
+
+ # from tox.ini
+ local -x AWS_DEFAULT_REGION=us-east-1
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
diff --git a/dev-python/contourpy/Manifest b/dev-python/contourpy/Manifest
index b85d4878838b..ec22239f2293 100644
--- a/dev-python/contourpy/Manifest
+++ b/dev-python/contourpy/Manifest
@@ -1 +1,2 @@
DIST contourpy-1.2.1.gh.tar.gz 13440991 BLAKE2B 2e792ca990244f7890462b84a2f23e4fbc31fd8ce0a18bc8724767dfa4b5fc0a4271dc6989531423db58d567706a28ce95e680372dbf64bae93a09914353f3ac SHA512 2bb2ac7436cbee1ebc69e6edaf3166e294de32711cec506ce9a3132f1cf20ff8de70af27b432b81abb582c9fe30239f8724f68936908bdbf6348eb249eaae4d5
+DIST contourpy-1.3.0.gh.tar.gz 13445333 BLAKE2B d49131f0d46f4000ecbd9caf7cf63c3089085cb6ce85f745ba737f0c3a430e8f5594205dd6be0e5fcc1ae8572594825b363b07c01feabe8ef13641eacc4a9ac0 SHA512 aa16e87879f3513219b1c1f4e001e99c9842248baebd2b1632b3177b141c16ed7d28efcd96bb33bddf941fa1613887691f4c293262c1fe7f82d12c0713fe852b
diff --git a/dev-python/contourpy/contourpy-1.3.0.ebuild b/dev-python/contourpy/contourpy-1.3.0.ebuild
new file mode 100644
index 000000000000..542eb25884ca
--- /dev/null
+++ b/dev-python/contourpy/contourpy-1.3.0.ebuild
@@ -0,0 +1,53 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=meson-python
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Python library for calculating contours in 2D quadrilateral grids"
+HOMEPAGE="
+ https://pypi.org/project/contourpy/
+ https://github.com/contourpy/contourpy/
+"
+SRC_URI="
+ https://github.com/contourpy/contourpy/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos"
+
+RDEPEND="
+ >=dev-python/numpy-1.23[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ >=dev-python/pybind11-2.12.0[${PYTHON_USEDEP}]
+ test? (
+ dev-python/matplotlib[${PYTHON_USEDEP}]
+ dev-python/pillow[${PYTHON_USEDEP}]
+ dev-python/pytest-rerunfailures[${PYTHON_USEDEP}]
+ dev-python/wurlitzer[${PYTHON_USEDEP}]
+ )
+"
+
+DISTUTILS_ARGS=(
+ -Dwerror=false
+)
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_IGNORE=(
+ # linters
+ tests/test_codebase.py
+ )
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
diff --git a/dev-python/ensurepip-setuptools/Manifest b/dev-python/ensurepip-setuptools/Manifest
index 6b468915bf61..777cb7522c7b 100644
--- a/dev-python/ensurepip-setuptools/Manifest
+++ b/dev-python/ensurepip-setuptools/Manifest
@@ -1,3 +1,4 @@
DIST setuptools-72.1.0-py3-none-any.whl 2337965 BLAKE2B 88954b396a47b4223b73313100b9ae0782a16f755660da1abed31316f056beca78401b151f1bec39a791b1c556da09479e527b2316f5d1391e6996f5433c0bc3 SHA512 ef9f855c8ca4d7f6e5eb79f3d40b44830eede4664ec5667415fc676a0b8230a64fb62fda49c1eef6a9c3f89d4724b0717e7d702be99ab61f8763d91feb9a6ea1
DIST setuptools-72.2.0-py3-none-any.whl 2336658 BLAKE2B d46adb6be347ee6107ca90850ad1c8df60723e1cb93e402b53c02316a07b7cb71dd8d657cb3beb8c926fa23308d4e8fca7221b52e5f59fbfa744d6758b603343 SHA512 e7730427e7ff342a52f638fe1d457cdb906971f33dd87bb01a26b2d01b134f561397b7a6ffbe078ba5867306ba14bd8316995ab823f9b1c806646c2f242209c6
DIST setuptools-73.0.1-py3-none-any.whl 2346588 BLAKE2B 74c84539d1c3592aca5678ecf3c7c71c57fffa877fc5dcc42701c7b2f58613d3767ca10b190c37b30dc24ca9a6b67b76e1e70f63b188d9228f1b73b17f4a3198 SHA512 cef43928c8eebc673ca1befb1df1dc230eab8cf10fc66b06f02a0d459e78701457b8024bdc4ac33082e85e07dd5a63e031fcbf13e0b94d6bc9ccc90931060841
+DIST setuptools-74.0.0-py3-none-any.whl 1301729 BLAKE2B 2711e6bd9ccb3bd32850b81031c78c046ed155c8426cc8072fa38583e8819179a8d810a5ac863a64f644931f3c64babf3d5b927d263d5fc7ff89fcc893212e04 SHA512 909484ddc43ee4487e16182b3bae620c2ae27a0f5a0d43088ccb9f09dcc11dfe73381513e13b2ad7c380d72377be850da76ce2574572f175a9787c38b3c3d52d
diff --git a/dev-python/ensurepip-setuptools/ensurepip-setuptools-74.0.0.ebuild b/dev-python/ensurepip-setuptools/ensurepip-setuptools-74.0.0.ebuild
new file mode 100644
index 000000000000..97aca4a61872
--- /dev/null
+++ b/dev-python/ensurepip-setuptools/ensurepip-setuptools-74.0.0.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit pypi
+
+DESCRIPTION="Shared setuptools wheel for ensurepip Python module"
+HOMEPAGE="https://pypi.org/project/setuptools/"
+SRC_URI="$(pypi_wheel_url "${PN#ensurepip-}")"
+S=${DISTDIR}
+
+LICENSE="MIT"
+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/google-api-core/Manifest b/dev-python/google-api-core/Manifest
index fa801e06b6cb..e1fe714bb572 100644
--- a/dev-python/google-api-core/Manifest
+++ b/dev-python/google-api-core/Manifest
@@ -1 +1,2 @@
DIST python-api-core-2.19.1.gh.tar.gz 212130 BLAKE2B b68482540dfb896129d903d49623db88661652db9eef6d3bd0615746fe64bdcd1d83a3d284110cb7f617ae89ffbe47257d2db7a0fdc84c984c6321a51499d116 SHA512 0f4ffcfd2bf5458ebe942d2a601d8568026b280373538d2362379cc86200f5762eb9eb978a7f9cb5c8014d549c8e48d4acd6114ce54f90fe01f09814c720f589
+DIST python-api-core-2.19.2.gh.tar.gz 212969 BLAKE2B 6ecb63085b9108cb0755dc3bdd31d328de948ede85e2f1e62dae92bd9c12d6d90d4ef24f57a7a953567e6f9e8d105ffbde8bd99d8a42081190f95f2a48b6504c SHA512 76a890ebaaecfd4d913e4e1d3d370e81e655eb5e8192a10292a7a792f6a9287dde7dea43f27a70edcc7430f71346e52f2719393b54cfd7c4223eeba3c28d37e4
diff --git a/dev-python/google-api-core/google-api-core-2.19.2.ebuild b/dev-python/google-api-core/google-api-core-2.19.2.ebuild
new file mode 100644
index 000000000000..927cb05c9aac
--- /dev/null
+++ b/dev-python/google-api-core/google-api-core-2.19.2.ebuild
@@ -0,0 +1,64 @@
+# Copyright 2020-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
+
+MY_P=python-api-core-${PV}
+DESCRIPTION="Core Library for Google Client Libraries"
+HOMEPAGE="
+ https://github.com/googleapis/python-api-core/
+ https://pypi.org/project/google-api-core/
+ https://googleapis.dev/python/google-api-core/latest/index.html
+"
+SRC_URI="
+ https://github.com/googleapis/python-api-core/archive/v${PV}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+RDEPEND="
+ >=dev-python/googleapis-common-protos-1.56.2[${PYTHON_USEDEP}]
+ >=dev-python/google-auth-1.25.0[${PYTHON_USEDEP}]
+ >=dev-python/proto-plus-1.22.3[${PYTHON_USEDEP}]
+ >=dev-python/protobuf-python-3.19.5[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.18.0[${PYTHON_USEDEP}]
+ <dev-python/requests-3[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/mock[${PYTHON_USEDEP}]
+ dev-python/rsa[${PYTHON_USEDEP}]
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+EPYTEST_DESELECT=(
+ # failing due to missing grpcio-status
+ tests/asyncio/test_grpc_helpers_async.py::test_wrap_unary_errors
+ tests/asyncio/test_grpc_helpers_async.py::test_wrap_stream_errors_raised
+ tests/asyncio/test_grpc_helpers_async.py::test_wrap_stream_errors_read
+ tests/asyncio/test_grpc_helpers_async.py::test_wrap_stream_errors_aiter
+ tests/asyncio/test_grpc_helpers_async.py::test_wrap_stream_errors_write
+ tests/unit/test_grpc_helpers.py::test_wrap_unary_errors
+ tests/unit/test_grpc_helpers.py::test_wrap_stream_errors_invocation
+ tests/unit/test_grpc_helpers.py::test_wrap_stream_errors_iterator_initialization
+ tests/unit/test_grpc_helpers.py::test_wrap_stream_errors_during_iteration
+)
+
+python_test() {
+ rm -rf google || die
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -p asyncio tests
+}
diff --git a/dev-python/googleapis-common-protos/Manifest b/dev-python/googleapis-common-protos/Manifest
index e28649927e2a..16f32a93c7d1 100644
--- a/dev-python/googleapis-common-protos/Manifest
+++ b/dev-python/googleapis-common-protos/Manifest
@@ -1,2 +1,3 @@
DIST googleapis-common-protos-1.63.2.tar.gz 112890 BLAKE2B c6b5262435e7458721fe63fcdc9f8c6485fda27b417619f597d662624b1be13380669d5467427e3f70755f64a187b320cf5954adc307242ae937830c3774aab9 SHA512 ec987acb6ead40771d69e851ca679e7985532a39821d5a2318f9e5ccfce17b9e6f9d4339266b77cb2e55f2c0de0256c80321677d026f4f2c830bdb435aeff676
DIST googleapis_common_protos-1.64.0.tar.gz 113350 BLAKE2B 79f578c079956926215489353c5b75542f0a44a27f41d8f36a7459357e4d425dc361cfa437d1dc5bbe3338b9ed8a70667c18fd718b962b41e6489b107fb05222 SHA512 3757083840f1a1a6645836f64be350fd0a7378c97f72ab540342a9cdc733d427179dc49a73b0a97e0ab75544ef1e4f81292b0a83e375829c6082de76a6d02fab
+DIST googleapis_common_protos-1.65.0.tar.gz 113657 BLAKE2B a74f10ce3fd1d7eb1805174157ef751ffedc6042f27c11c2e9febbc2a91de7c963fe266beb51f44445bdf6eb8a7237f86902ca670a875ea87fe24782dc8fc79d SHA512 5c62ee5ff6b6d39dc7053031a17be88300888ca3f91e8743ab11deab9b571d40371c12332dbd5bd906941e7917aca36ed28a19d7af619afd305e0649aaeab85d
diff --git a/dev-python/googleapis-common-protos/googleapis-common-protos-1.65.0.ebuild b/dev-python/googleapis-common-protos/googleapis-common-protos-1.65.0.ebuild
new file mode 100644
index 000000000000..92b3f9ad869f
--- /dev/null
+++ b/dev-python/googleapis-common-protos/googleapis-common-protos-1.65.0.ebuild
@@ -0,0 +1,31 @@
+# Copyright 2020-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="Python classes generated from the common protos in the googleapis repository"
+HOMEPAGE="
+ https://github.com/googleapis/python-api-common-protos/
+ https://pypi.org/project/googleapis-common-protos/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+RDEPEND="
+ <dev-python/protobuf-python-6[${PYTHON_USEDEP}]
+ >=dev-python/protobuf-python-3.15.0[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
+
+python_compile() {
+ distutils-r1_python_compile
+ find "${BUILD_DIR}" -name '*.pth' -delete || die
+}
diff --git a/dev-python/httpx/Manifest b/dev-python/httpx/Manifest
index 6dfbfb2e792e..307d6da6aa25 100644
--- a/dev-python/httpx/Manifest
+++ b/dev-python/httpx/Manifest
@@ -1 +1,2 @@
DIST httpx-0.27.0.gh.tar.gz 2168004 BLAKE2B 2bfe58ffa9bd75b602acf844967d399c2173499981e73296bfc0726ee738219031ac3ac04517dd027f769966b77bf225287490c55435a53aec44b9784a0c4b2e SHA512 9db19cced6554effdb5fb0b442cbe05dc66cbfbdb23e8fbc19f43e1acc81028bca9e0fba5d2dae617b19be9f64baa0f02e727e92fef3f3f1288aa19ae07f35c6
+DIST httpx-0.27.2.gh.tar.gz 2185609 BLAKE2B 7e77cab0e9bda032cd595549e43dfc102f90bb8668b62f6b1f0df6bce6b6358f34aa1f51457a315eb774dde8c76083d180c02ff45283dd348c39b4a659307713 SHA512 c7852ae3e982bacee1587b66aed506f3f7e12caf296e651d3cdd9c111a7d737af49473be455bcabccc8e52487ad18b4821ea56b39500c3b77ed2325fc55505ae
diff --git a/dev-python/httpx/httpx-0.27.2.ebuild b/dev-python/httpx/httpx-0.27.2.ebuild
new file mode 100644
index 000000000000..4b768beb9877
--- /dev/null
+++ b/dev-python/httpx/httpx-0.27.2.ebuild
@@ -0,0 +1,95 @@
+# Copyright 2022-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 optfeature
+
+DESCRIPTION="Fully-featured HTTP client which provides sync and async APIs"
+HOMEPAGE="
+ https://www.python-httpx.org/
+ https://github.com/encode/httpx/
+ https://pypi.org/project/httpx/
+"
+SRC_URI="
+ https://github.com/encode/httpx/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="cli"
+
+RDEPEND="
+ dev-python/anyio[${PYTHON_USEDEP}]
+ dev-python/certifi[${PYTHON_USEDEP}]
+ =dev-python/httpcore-1*[${PYTHON_USEDEP}]
+ dev-python/idna[${PYTHON_USEDEP}]
+ dev-python/sniffio[${PYTHON_USEDEP}]
+ cli? (
+ =dev-python/click-8*[${PYTHON_USEDEP}]
+ =dev-python/pygments-2*[${PYTHON_USEDEP}]
+ dev-python/rich[${PYTHON_USEDEP}]
+ )
+"
+BDEPEND="
+ dev-python/hatch-fancy-pypi-readme[${PYTHON_USEDEP}]
+ test? (
+ dev-python/brotlicffi[${PYTHON_USEDEP}]
+ dev-python/chardet[${PYTHON_USEDEP}]
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ dev-python/h2[${PYTHON_USEDEP}]
+ dev-python/socksio[${PYTHON_USEDEP}]
+ dev-python/trustme[${PYTHON_USEDEP}]
+ dev-python/typing-extensions[${PYTHON_USEDEP}]
+ dev-python/uvicorn[${PYTHON_USEDEP}]
+ >=dev-python/zstandard-0.18.0[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/trio[${PYTHON_USEDEP}]
+ ' 3.{10..13})
+ )
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ local PATCHES=(
+ "${FILESDIR}/${PN}-0.27.0-opt-trio.patch"
+ )
+
+ if ! use cli; then
+ sed -i -e '/^httpx =/d' pyproject.toml || die
+ fi
+ sed -i -e '/rich/s:,<14::' pyproject.toml || die
+
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local args=()
+ local EPYTEST_DESELECT=(
+ # Internet
+ tests/client/test_proxies.py::test_async_proxy_close
+ tests/client/test_proxies.py::test_sync_proxy_close
+ )
+
+ use cli || EPYTEST_IGNORE+=(
+ tests/test_main.py
+ )
+
+ if ! has_version "dev-python/trio[${PYTHON_USEDEP}]"; then
+ args+=( -o filterwarnings= -k "not trio" )
+ fi
+
+ epytest "${args[@]}"
+}
+
+pkg_postinst() {
+ optfeature "HTTP/2 support" dev-python/h2
+ optfeature "SOCKS proxy support" dev-python/socksio
+ optfeature "Decoding for brotli compressed responses" dev-python/brotlicffi
+}
diff --git a/dev-python/langdetect/Manifest b/dev-python/langdetect/Manifest
index a11d7c268c91..37a64204a00a 100644
--- a/dev-python/langdetect/Manifest
+++ b/dev-python/langdetect/Manifest
@@ -1 +1,3 @@
DIST langdetect-1.0.9.tar.gz 981474 BLAKE2B ea8a9c3f16a2987c080742473bff4f2c1503f53fb3c2b40b0b1d6212bb6133ea22dce7864ffcfb8968c3a46b157d45cb3e2cf6f84bdbed0266cc716a853b032c SHA512 7558d674c47b080c79e43a00a25d2c7f77188cf60bea2cecb3bebb803d75e1aa42b43c74bd26ea1b541f4cb927421908882cbec01a91f0913984217e71ccc8db
+EBUILD langdetect-1.0.9.ebuild 494 BLAKE2B 9b3521c5721afa49a58e0c35267f7d82bb56bd7e1d6d3152be0d36cd220180a526cb20b90b1113fbf0fff4a512137570f0b3bcf864498b7b7cc00403cb61ca27 SHA512 16d311400bf84a5f04e15f3da4b68b2810e4b005009f4d03dc8a487176dfc294403c976c412c83dcfa8084a49ef7b7d5389b43fb2ba446ce107ce4595e3558c6
+MISC metadata.xml 457 BLAKE2B 630128a3e982b6d60cc7b9f74c79fcb5ee47a71a02c73a50af9da8cedb6fad8e20a7f74b881e5b25c6483b92c9edbd56552cd38b2d9cbfa8b3eb4530facea969 SHA512 674f4f5cd809c6c77bc14e0f5687fa972bef14bdfa0b3343c5d66b7163eef1906eb87d060c8288732f825de71dce291ad0b841a5f2f0dd230f957b5687e45d45
diff --git a/dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch b/dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch
deleted file mode 100644
index 637368d2f237..000000000000
--- a/dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Fix "Package 'langdetect.profiles' is absent from the `packages` configuration."
-
---- a/setup.py
-+++ b/setup.py
-@@ -18,7 +18,7 @@ setup(
- author_email='michal.danilak@gmail.com',
- url='https://github.com/Mimino666/langdetect',
- keywords='language detection library',
-- packages=['langdetect', 'langdetect.utils', 'langdetect.tests'],
-+ packages=['langdetect', 'langdetect.utils', 'langdetect.tests', 'langdetect.profiles'],
- include_package_data=True,
- install_requires=['six'],
- license='MIT',
diff --git a/dev-python/langdetect/langdetect-1.0.9.ebuild b/dev-python/langdetect/langdetect-1.0.9.ebuild
index 630fe63c6f53..c09b7356f549 100644
--- a/dev-python/langdetect/langdetect-1.0.9.ebuild
+++ b/dev-python/langdetect/langdetect-1.0.9.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2022-2024 Gentoo Authors
+# Copyright 2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -19,6 +19,4 @@ KEYWORDS="~amd64"
RDEPEND="dev-python/six[${PYTHON_USEDEP}]"
-PATCHES=( "${FILESDIR}/${P}-explicit-config.patch" )
-
distutils_enable_tests unittest
diff --git a/dev-python/langdetect/metadata.xml b/dev-python/langdetect/metadata.xml
index c0f74ac187e2..020e07f2a3dd 100644
--- a/dev-python/langdetect/metadata.xml
+++ b/dev-python/langdetect/metadata.xml
@@ -2,9 +2,11 @@
<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <email>pastalian46@gmail.com</email>
- <name>Takuya Wakazono</name>
+ <email>marcin.deranek@slonko.net</email>
+ <name>Marcin Deranek</name>
</maintainer>
-
- <origin>gentoo-guru-overlay</origin>
+ <upstream>
+ <bugs-to>https://github.com/Mimino666/langdetect/issues</bugs-to>
+ </upstream>
+ <origin>slonko-overlay</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-python/notebook/Manifest b/dev-python/notebook/Manifest
index 4d38801a4682..564d6424ece4 100644
--- a/dev-python/notebook/Manifest
+++ b/dev-python/notebook/Manifest
@@ -1 +1,2 @@
DIST notebook-7.2.1.tar.gz 4946671 BLAKE2B 2f78c497b1527c29a911fd0a057df41f3e522e426e3eae940d9adea9f1df982b14c5bb61210357dfc271df51d2534f97408790bffb4e02ff2f12b33769f9836e SHA512 e11415139a21a7dd8692673c2011d11621881cd4b99f69de5f32c23161734b1620560f57654b2e57177cb3ba01152bb76e0c9f79c2f7924b0d8424c21c219677
+DIST notebook-7.2.2.tar.gz 4948876 BLAKE2B 2f145ee832e9eff647f7c736d116cbf684ae63948d8e2e1da2a1d8f2d1d3df23d198719bde9f8a705eb5b77b62dbd654e16ac4de658fbd4a9a809e37d3add8e4 SHA512 b18348e898f6135bea72e759a8137bf32f6ea79619388bd8b3627bd497746a233de69e1b7865bec473a7c49d65f22bc5755afbf79eeb1b4dbb7e0e3e8afe8e7f
diff --git a/dev-python/notebook/notebook-7.2.2.ebuild b/dev-python/notebook/notebook-7.2.2.ebuild
new file mode 100644
index 000000000000..c5ed968aea82
--- /dev/null
+++ b/dev-python/notebook/notebook-7.2.2.ebuild
@@ -0,0 +1,64 @@
+# 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 )
+PYTHON_REQ_USE="threads(+)"
+
+inherit distutils-r1 pypi xdg-utils
+
+DESCRIPTION="Jupyter Interactive Notebook"
+HOMEPAGE="
+ https://jupyter.org/
+ https://github.com/jupyter/notebook/
+ https://pypi.org/project/notebook/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
+
+RDEPEND="
+ >=dev-python/jupyter-server-2.4.0[${PYTHON_USEDEP}]
+ <dev-python/jupyter-server-3[${PYTHON_USEDEP}]
+ >=dev-python/jupyterlab-4.2.0[${PYTHON_USEDEP}]
+ <dev-python/jupyterlab-4.3[${PYTHON_USEDEP}]
+ >=dev-python/jupyterlab-server-2.27.1[${PYTHON_USEDEP}]
+ <dev-python/jupyterlab-server-3[${PYTHON_USEDEP}]
+ >=dev-python/notebook-shim-0.2[${PYTHON_USEDEP}]
+ <dev-python/notebook-shim-0.3[${PYTHON_USEDEP}]
+ >=dev-python/tornado-6.2.0[${PYTHON_USEDEP}]
+"
+
+BDEPEND="
+ dev-python/hatch-jupyter-builder[${PYTHON_USEDEP}]
+ test? (
+ dev-python/ipykernel[${PYTHON_USEDEP}]
+ dev-python/nbval[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/requests-unixsocket[${PYTHON_USEDEP}]
+ dev-python/pytest-console-scripts[${PYTHON_USEDEP}]
+ dev-python/pytest-jupyter[${PYTHON_USEDEP}]
+ dev-python/pytest-timeout[${PYTHON_USEDEP}]
+ dev-python/pytest-tornasync[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_install_all() {
+ distutils-r1_python_install_all
+ mv "${ED}/usr/etc" "${ED}/etc" || die
+}
+
+pkg_postinst() {
+ xdg_desktop_database_update
+ xdg_icon_cache_update
+}
+
+pkg_postrm() {
+ xdg_desktop_database_update
+ xdg_icon_cache_update
+}
diff --git a/dev-python/opensearch-py/Manifest b/dev-python/opensearch-py/Manifest
index 9dea46936495..61b1e5e9472d 100644
--- a/dev-python/opensearch-py/Manifest
+++ b/dev-python/opensearch-py/Manifest
@@ -1 +1,2 @@
DIST opensearch-py-2.3.0.gh.tar.gz 392631 BLAKE2B b2e88c98676c8c035f8c295b12b8cd8a7b8f4d6e4b1b4dca76f2417cf9d8c01b16bc36b3bed7f64d91d643aa2ceba681af6eac9b4d1a3d3bfa1a2cb13a53f167 SHA512 8be82ff19b4aa3d44dba8dd3b56676241de1999d6ae91c8414528132a6ed450850bf3b544a858c9fe0a5b188cd0da1196a524f9515e90369f5232c3ca7244d22
+DIST opensearch-py-2.7.1.gh.tar.gz 479006 BLAKE2B 17203e9c65e9bc2ec0b73b3b2f1ccdf0ad053ebf5173aa5b21423e607b68c1c0e4349b99be593eb982cb6cb9cfa2331a30668b9a74ce425591d966728d86254d SHA512 84041a075667b54b0afeae11221bb56d41a86d7bf4b3fae3f9406822bb8c8f55a6ba67c4ca1a2cfea70d3ed6e089b0921a535b32fccc04a1016549bcf66ac03c
diff --git a/dev-python/opensearch-py/opensearch-py-2.7.1.ebuild b/dev-python/opensearch-py/opensearch-py-2.7.1.ebuild
new file mode 100644
index 000000000000..6493074e32fa
--- /dev/null
+++ b/dev-python/opensearch-py/opensearch-py-2.7.1.ebuild
@@ -0,0 +1,44 @@
+# Copyright 2023-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="Python client for OpenSearch"
+HOMEPAGE="
+ https://pypi.org/project/opensearch-py/
+ https://github.com/opensearch-project/opensearch-py
+"
+SRC_URI="
+ https://github.com/opensearch-project/opensearch-py/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+
+# Uses 156 GB of RAM for the test suite, needs more work.
+RESTRICT="test"
+
+RDEPEND="
+ >=dev-python/urllib3-1.26.19[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.32.0[${PYTHON_USEDEP}]
+ dev-python/python-dateutil[${PYTHON_USEDEP}]
+ dev-python/certifi[${PYTHON_USEDEP}]
+ dev-python/Events[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-python/pytz[${PYTHON_USEDEP}]
+ dev-python/pytest[${PYTHON_USEDEP}]
+ dev-python/botocore[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ )
+"
diff --git a/dev-python/openstackdocstheme/Manifest b/dev-python/openstackdocstheme/Manifest
index bd23e2b87cba..e466e5756b34 100644
--- a/dev-python/openstackdocstheme/Manifest
+++ b/dev-python/openstackdocstheme/Manifest
@@ -1 +1,2 @@
DIST openstackdocstheme-3.2.0.tar.gz 1256119 BLAKE2B b4e0536d9846270597f9456998a9e38d728acee1f992793354dd814596dbc8b189e7e86d1aab4d85b97abdf9a0a502cdef884447fe66b8b57836cf07bec26f67 SHA512 8a9cff0ef68c78917a8a18653567683dda269ea1c4c915d183324ad28ecdfc111083c94082b4e47a88f46f8990a20e3d277478ac02febb3ea0c31067069f315b
+DIST openstackdocstheme-3.3.0.tar.gz 1256566 BLAKE2B d69f9edae656de888cb06b9a4c42ece7c615976d8e454b5b391772a19958366ed14c57b55a3e8514052a845eaf5f9774e5415e71c0d16e44dab1c7285c66be45 SHA512 b49be9d4b7deccbdf6f9c398ddd1e763572dadfecdc228fe6956aab5fdb5588a4d20aaa1e445b2de66e99fe0953f753c2734bb6bc2211836f5bf4b0567ba7deb
diff --git a/dev-python/openstackdocstheme/openstackdocstheme-3.3.0.ebuild b/dev-python/openstackdocstheme/openstackdocstheme-3.3.0.ebuild
new file mode 100644
index 000000000000..acacee8478de
--- /dev/null
+++ b/dev-python/openstackdocstheme/openstackdocstheme-3.3.0.ebuild
@@ -0,0 +1,29 @@
+# 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="Theme and extension support for Sphinx documentation"
+HOMEPAGE="
+ https://docs.openstack.org/openstackdocstheme/latest/
+ https://opendev.org/openstack/openstackdocstheme/
+ https://github.com/openstack/openstackdocstheme/
+ https://pypi.org/project/openstackdocstheme/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc64 ~riscv ~s390 ~x86"
+
+BDEPEND="
+ >dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
+"
+RDEPEND="
+ ${BDEPEND}
+ >=dev-python/dulwich-0.15.0[${PYTHON_USEDEP}]
+"
diff --git a/dev-python/pbr/Manifest b/dev-python/pbr/Manifest
index 3d2779411bd6..4dc76d64f6bf 100644
--- a/dev-python/pbr/Manifest
+++ b/dev-python/pbr/Manifest
@@ -1 +1,2 @@
DIST pbr-6.0.0.tar.gz 123150 BLAKE2B ed41fcf9febc11fe664d3045a8ac01f7a549f770e359b29045508653bffa838d91797c4aec5d5d1eba97907e83fb199f78afa4fd6f0b6be6b93b2e5f781d4425 SHA512 35cb184b02c9bc38e839e652d1f114197b2a82255f824253e156666a07dee1d19823ab4f2fb17b1f4376c775295f533e006cb58136ee978f9989e98a3f782120
+DIST pbr-6.1.0.tar.gz 124032 BLAKE2B 640c39d75329e4a1c28623439fd1466de3e491bb043abc1c62c68a9e19c6bc5523fca8ad18c4d6246fe2973af5ee6076c1e74e0967b9adb096ec31970fcf8491 SHA512 30478fa3146abdbc1da35ba950dcc3ead04e26060e0926a7a28390cc33cfae5acbb9a2385535bac43cb40830ef7cfa83be8bf963a6ee135a54d696c27b20a962
diff --git a/dev-python/pbr/pbr-6.1.0.ebuild b/dev-python/pbr/pbr-6.1.0.ebuild
new file mode 100644
index 000000000000..92bdd4cbac59
--- /dev/null
+++ b/dev-python/pbr/pbr-6.1.0.ebuild
@@ -0,0 +1,72 @@
+# 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} )
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+PYTHON_REQ_USE="threads(+)"
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Inject some useful and sensible default behaviors into setuptools"
+HOMEPAGE="
+ https://opendev.org/openstack/pbr/
+ https://github.com/openstack/pbr/
+ https://pypi.org/project/pbr/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ >=dev-python/setuptools-60.5.0[${PYTHON_USEDEP}]
+"
+
+# git is needed for tests, see https://bugs.launchpad.net/pbr/+bug/1326682 and
+# https://bugs.gentoo.org/show_bug.cgi?id=561038 docutils is needed for sphinx
+# exceptions... https://bugs.gentoo.org/show_bug.cgi?id=603848 stestr is run as
+# external tool.
+BDEPEND="
+ test? (
+ $(python_gen_cond_dep '
+ >=dev-python/wheel-0.32.0[${PYTHON_USEDEP}]
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/six-1.12.0[${PYTHON_USEDEP}]
+ >=dev-python/testresources-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/virtualenv-20.0.3[${PYTHON_USEDEP}]
+ dev-vcs/git
+ ' "${PYTHON_TESTED[@]}")
+ )
+"
+
+distutils_enable_tests unittest
+
+python_prepare_all() {
+ # TODO: investigate
+ sed -e 's:test_console_script_develop:_&:' \
+ -e 's:test_console_script_install:_&:' \
+ -e 's:test_setup_py_keywords:_&:' \
+ -i pbr/tests/test_core.py || die
+ # network
+ rm pbr/tests/test_wsgi.py || die
+ # installs random packages via pip from the Internet
+ sed -e 's:test_requirement_parsing:_&:' \
+ -e 's:test_pep_517_support:_&:' \
+ -i pbr/tests/test_packaging.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then
+ einfo "Testing on ${EPYTHON} is not supported at the moment"
+ return
+ fi
+
+ eunittest -b
+}
diff --git a/dev-python/pipdeptree/files/pipdeptree-2.13.1-expect-hpy-in-pypy-7.3.3.patch b/dev-python/pipdeptree/files/pipdeptree-2.13.1-expect-hpy-in-pypy-7.3.3.patch
deleted file mode 100644
index 5cc4b1ca580d..000000000000
--- a/dev-python/pipdeptree/files/pipdeptree-2.13.1-expect-hpy-in-pypy-7.3.3.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-https://github.com/tox-dev/pipdeptree/pull/302
-
-From 8a2ccfe062d8978f010e2e4bd3f8e8b9e46ecbce Mon Sep 17 00:00:00 2001
-From: Alfred Wingate <parona@protonmail.com>
-Date: Tue, 14 Nov 2023 08:36:09 +0200
-Subject: [PATCH] Expect hpy in pypy versions >= 7.3.3
-
-Signed-off-by: Alfred Wingate <parona@protonmail.com>
---- a/tests/test_non_host.py
-+++ b/tests/test_non_host.py
-@@ -33,7 +33,11 @@ def test_custom_interpreter(
- if implementation == "CPython":
- expected = {"pip", "setuptools", "wheel"}
- elif implementation == "PyPy":
-- expected = {"cffi", "greenlet", "pip", "readline", "setuptools", "wheel"}
-+ # hpy added in 7.3.2, enabled in 7.3.3
-+ if sys.pypy_version_info >= (7, 3, 3):
-+ expected = {"cffi", "greenlet", "hpy", "pip", "readline", "setuptools", "wheel"}
-+ else:
-+ expected = {"cffi", "greenlet", "pip", "readline", "setuptools", "wheel"}
- else:
- raise ValueError(implementation)
- if sys.version_info >= (3, 12):
---
-2.42.1
-
diff --git a/dev-python/pipdeptree/files/pipdeptree-2.13.2-fix-pypy-7.3.14.patch b/dev-python/pipdeptree/files/pipdeptree-2.13.2-fix-pypy-7.3.14.patch
deleted file mode 100644
index 3718174d0af6..000000000000
--- a/dev-python/pipdeptree/files/pipdeptree-2.13.2-fix-pypy-7.3.14.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-https://bugs.gentoo.org/923893
-
-From 5d111ebe3bb1d24baa314b615d67d3e3928297ca Mon Sep 17 00:00:00 2001
-From: Alfred Wingate <parona@protonmail.com>
-Date: Wed, 7 Feb 2024 08:47:03 +0200
-Subject: [PATCH] Use json output for test which parses installed packages
-
-* pypy bundles hpy which has a dependency on setuptools, therefore
- breaking non-json output due sub-dependency pretty printing.
-* Using json makes parsing dependencies straight forward.
-
-Signed-off-by: Alfred Wingate <parona@protonmail.com>
---- a/tests/test_non_host.py
-+++ b/tests/test_non_host.py
-@@ -1,5 +1,6 @@
- from __future__ import annotations
-
-+import json
- import sys
- from platform import python_implementation
- from typing import TYPE_CHECKING
-@@ -25,10 +26,10 @@ def test_custom_interpreter(
- monkeypatch.chdir(tmp_path)
- py = str(result.creator.exe.relative_to(tmp_path))
- cmd += [f"--python={result.creator.exe}"] if args_joined else ["--python", py]
-- monkeypatch.setattr(sys, "argv", cmd)
-+ monkeypatch.setattr(sys, "argv", [*cmd, "-j"])
- main()
- out, _ = capfd.readouterr()
-- found = {i.split("==")[0] for i in out.splitlines()}
-+ found = {i["package"]["package_name"] for i in json.loads(out)}
- implementation = python_implementation()
- if implementation == "CPython":
- expected = {"pip", "setuptools", "wheel"}
---
-2.43.0
-
diff --git a/dev-python/pyghmi/Manifest b/dev-python/pyghmi/Manifest
index 52f491d02dff..fcaa49344765 100644
--- a/dev-python/pyghmi/Manifest
+++ b/dev-python/pyghmi/Manifest
@@ -1,2 +1,3 @@
DIST pyghmi-1.5.69.tar.gz 257074 BLAKE2B af1b93bda37aa078c4a04f68970f86a2f6b7c005ed762977d8297bdb4ff8e89c972ec24342ccb226a6cb43d6085f89f23e4e8547e1632275accea0fc5f5558ff SHA512 ad6837b61748ff045196109050fc743e0335b9037e06c723be86e12c42569f6e46b2c004148b4ce4416d0e67967bf6b7596bc10bca30323e2eca11da54067f21
DIST pyghmi-1.5.70.tar.gz 257192 BLAKE2B cf1ed047bf40e6ed81d322c091141b8012d7550afeba06fb5bed313ce37e2c5d79674a2d9deb1ade741488342d5e3d89ab3b65dfeb15e46aca52ebc3ca5b4dcc SHA512 61d6488034778a51e7a3ed34dadf758a98ed9670f079f6b90b4266191abd48aae5646e497b8ea9616eb1bce03f358b0017c7da1daea61e8be97d42bb1bfe1f18
+DIST pyghmi-1.5.71.tar.gz 258623 BLAKE2B 1032101d1c8b145896a6ccb99a66830c5327fa71c991be95fc6af0fca87f2a3491ae04195d10e2696f67285f79c96750413cfd1050297c1e1340a49f67694ba2 SHA512 77aa8f05bf003b4be803a6c74e1c0040a23a0270094c72ba58aaab0b56e7fdd68691c0c642d7116a62a3a66fafb0bf67d718373b7e67c7b6c6165dec78884d4d
diff --git a/dev-python/pyghmi/pyghmi-1.5.71.ebuild b/dev-python/pyghmi/pyghmi-1.5.71.ebuild
new file mode 100644
index 000000000000..6a7e9e524bc1
--- /dev/null
+++ b/dev-python/pyghmi/pyghmi-1.5.71.ebuild
@@ -0,0 +1,33 @@
+# 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 pure python implementation of IPMI protocol"
+HOMEPAGE="
+ https://opendev.org/x/pyghmi/
+ https://pypi.org/project/pyghmi/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+RDEPEND="
+ >=dev-python/cryptography-2.1[${PYTHON_USEDEP}]
+ dev-python/pbr[${PYTHON_USEDEP}]
+ >=dev-python/python-dateutil-2.8.1[${PYTHON_USEDEP}]
+ >=dev-python/six-1.10.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests unittest
diff --git a/dev-python/pytest-check/Manifest b/dev-python/pytest-check/Manifest
index 70bfe4e5dd87..015937648c55 100644
--- a/dev-python/pytest-check/Manifest
+++ b/dev-python/pytest-check/Manifest
@@ -1 +1,2 @@
DIST pytest_check-2.3.1.tar.gz 28674 BLAKE2B 732538aec690d121132a0594a49b77658eb8be79d6e59bacae1d13ea38e59dd3e4b55c62fc07741e08621dda271d7d2284f825770a2acef7d5b0c80c80e79beb SHA512 b4a2805b7dc3dfe9f56db6f27a9e4927de070d57bf3906f303c611021081d7b638d9ee58de744491005e10541f527f1bfddaf51be64f2def8a1190cfd1abd43a
+DIST pytest_check-2.4.0.tar.gz 28965 BLAKE2B 1c87ffa59f6c2497c933822463fd20b36f1653db7fd6cf3e56e6722df4488bd2efbdd05d9251bc97f900fa49a06696c37a6186942891a5fbf3ff3a5b59fa2cb0 SHA512 68f3eb02be3a1ad68db9f7f0d5043297d708e2ac0fdeced50cd657426e307df785909a91f1bcb002cb17b3198aaa595404189c83b4ee1bca268f6a4096e5a90f
diff --git a/dev-python/pytest-check/pytest-check-2.4.0.ebuild b/dev-python/pytest-check/pytest-check-2.4.0.ebuild
new file mode 100644
index 000000000000..6e50cc45546c
--- /dev/null
+++ b/dev-python/pytest-check/pytest-check-2.4.0.ebuild
@@ -0,0 +1,26 @@
+# Copyright 2021-2024 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} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="pytest plugin that allows multiple failures per test"
+HOMEPAGE="
+ https://github.com/okken/pytest-check/
+ https://pypi.org/project/pytest-check/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/colorama-0.4.6[${PYTHON_USEDEP}]
+ >=dev-python/pytest-7.0.0[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/python-keystoneclient/Manifest b/dev-python/python-keystoneclient/Manifest
index beb90557e4f3..9f25c32dcfbe 100644
--- a/dev-python/python-keystoneclient/Manifest
+++ b/dev-python/python-keystoneclient/Manifest
@@ -1 +1,2 @@
DIST python-keystoneclient-5.4.0.tar.gz 324151 BLAKE2B a086432c7fe81e6b39661f2e582e5c81efde88f04ba9e8e4fca17d4d217cb67a9a7cc38087e41a2b47e5b4540245a2586436c31e9596a2c520ad3e3219ff9b0f SHA512 496c321cc68efc3f7eaacfcef39ce3a4e669ab816245e6d4afb8e06a97490eafa6f16135a2c957bfdaecf9fe12577f0ecb6a97185844d376e41d22beee190475
+DIST python-keystoneclient-5.5.0.tar.gz 324070 BLAKE2B e901a44285b6962ff7cfa499460bc93ad58263c9f033c39eee3a6f241592e46b3078bf180b3581f2a6ecf126fe052bce862b45c84a169370c11847720f6299f1 SHA512 f9e6300af0fcae0a1eef6b964a81ab16cc164afc51c5b6f2dcb2d391f7934b2a937554af20985311f7e74d6794e69059dce4ba0e2cf972b6f47a76272a274ed8
diff --git a/dev-python/python-keystoneclient/python-keystoneclient-5.5.0.ebuild b/dev-python/python-keystoneclient/python-keystoneclient-5.5.0.ebuild
new file mode 100644
index 000000000000..d3bee40dea22
--- /dev/null
+++ b/dev-python/python-keystoneclient/python-keystoneclient-5.5.0.ebuild
@@ -0,0 +1,56 @@
+# 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="Client Library for OpenStack Identity"
+HOMEPAGE="
+ https://opendev.org/openstack/python-keystoneclient/
+ https://github.com/openstack/python-keystoneclient/
+ https://pypi.org/project/python-keystoneclient/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+
+RDEPEND="
+ >dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
+ >=dev-python/debtcollector-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/keystoneauth1-3.4.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-config-5.2.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
+ >dev-python/oslo-serialization-2.19.1[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
+ >=dev-python/six-1.10.0[${PYTHON_USEDEP}]
+ >=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ >dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
+ test? (
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/lxml-4.5.0[${PYTHON_USEDEP}]
+ >=dev-python/oauthlib-0.6.2[${PYTHON_USEDEP}]
+ >=dev-python/os-client-config-1.28.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-mock-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/tempest-17.1.0[${PYTHON_USEDEP}]
+ >=dev-python/testresources-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests unittest
+
+python_test() {
+ # functional tests require cloud instance access
+ eunittest keystoneclient/tests/unit
+}
diff --git a/dev-python/pyudev/Manifest b/dev-python/pyudev/Manifest
index b2322adc55a9..874c438f922a 100644
--- a/dev-python/pyudev/Manifest
+++ b/dev-python/pyudev/Manifest
@@ -1 +1,2 @@
DIST pyudev-0.24.1.tar.gz 85963 BLAKE2B 86c6d04691c99671735915564f58b4ef892e45925047487500bc7005343db7145941dde270f4ce9279881bd9bbf203965082d54b34b396febff52f387a1c26ac SHA512 10e32d9a74884000fbf8b86bee60530f6e7b936b990e7ae3b76099ace71834602de404721101c1076ef57365622a9a8f4819d57f58508ced09a21b7d50326886
+DIST pyudev-0.24.3.gh.tar.gz 80807 BLAKE2B 8b047c1d44f9bbb9ace782b690e0859eb3cdc2c1a994a398513e7cc2288803f8cfcdc227546de22275d47961f880bd76e0dec244e46abf451534f5648682febe SHA512 9075437f6fdba0fc1921e252c0a49e1a5eeed8c5cf598856a32aa9f9fcb8885dc0727258d2965241b2e044acfdf70561d5aa3f1380b84e013afc7cb8dcbfce2b
diff --git a/dev-python/pyudev/files/pyudev-0.24.3-tests.patch b/dev-python/pyudev/files/pyudev-0.24.3-tests.patch
new file mode 100644
index 000000000000..a21327df2394
--- /dev/null
+++ b/dev-python/pyudev/files/pyudev-0.24.3-tests.patch
@@ -0,0 +1,13 @@
+diff --git a/tests/_device_tests/_attributes_tests.py b/tests/_device_tests/_attributes_tests.py
+index 71b3a7a..9136cea 100644
+--- a/tests/_device_tests/_attributes_tests.py
++++ b/tests/_device_tests/_attributes_tests.py
+@@ -49,7 +49,7 @@ def test_getitem(self, a_context, device_datum):
+ device = Devices.from_path(a_context, device_datum.device_path)
+ assert all(
+ isinstance(device.attributes.get(key), bytes)
+- for key in device_datum.attributes.keys()
++ for key in device_datum.attributes.keys() if key is not None
+ )
+
+ @given(strategies.sampled_from(_DEVICES))
diff --git a/dev-python/pyudev/pyudev-0.24.3.ebuild b/dev-python/pyudev/pyudev-0.24.3.ebuild
new file mode 100644
index 000000000000..8520fff181fb
--- /dev/null
+++ b/dev-python/pyudev/pyudev-0.24.3.ebuild
@@ -0,0 +1,77 @@
+# 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 pypi
+
+DESCRIPTION="Python binding to libudev"
+HOMEPAGE="https://pyudev.readthedocs.io/en/latest/ https://github.com/pyudev/pyudev"
+SRC_URI="https://github.com/pyudev/pyudev/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="qt5"
+
+# Known to fail on test system that aren't exactly the same devices as on CI
+#RESTRICT="test"
+
+RDEPEND="
+ virtual/udev
+"
+BDEPEND="
+ test? (
+ dev-python/docutils[${PYTHON_USEDEP}]
+ dev-python/hypothesis[${PYTHON_USEDEP}]
+ )
+"
+
+DOCS=( CHANGES.rst README.rst )
+
+PATCHES=(
+ "${FILESDIR}/pyudev-0.24.3-tests.patch"
+)
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ if use test; then
+ ewarn "If your PORTAGE_TMPDIR is longer in length then '/var/tmp/',"
+ ewarn "change it to /var/tmp to ensure tests will pass."
+ fi
+
+ # tests are known to pass then fail on alternate runs
+ # tests: fix run_path
+ sed -e "s|== \('/run/udev'\)|in (\1,'/dev/.udev')|g" \
+ -i tests/test_core.py || die
+
+ # disable usage of hypothesis timeouts (too short)
+ sed -e '/@settings/s/(/(deadline=None,/' -i tests{,/_device_tests}/*.py || die
+
+ # remove GUI tests that require a display server
+ rm tests/test_observer.py tests/test_observer_deprecated.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ local -a EPYTEST_DESELECT=(
+ # tests that require root access
+ tests/test_device.py::TestAttributes::test_asint
+ tests/test_device.py::TestAttributes::test_asbool
+ tests/test_device.py::TestAttributes::test_getitem
+ tests/test_device.py::TestAttributes::test_asstring
+
+ # tests don't work on systems that differ from the upstream CI
+ tests/test_monitor.py::TestMonitorObserver::test_deprecated_handler
+ tests/test_monitor.py::TestMonitorObserver::test_fake
+ )
+ epytest tests
+}
+
+pkg_postinst() {
+ optfeature "PyQt5 bindings" "dev-python/PyQt5"
+}
diff --git a/dev-python/quantities/Manifest b/dev-python/quantities/Manifest
index 4a036d67ff41..79c32e71b701 100644
--- a/dev-python/quantities/Manifest
+++ b/dev-python/quantities/Manifest
@@ -1 +1,2 @@
DIST python-quantities-0.15.0.gh.tar.gz 91327 BLAKE2B b75371e99b0f270d97cf6e9b80df1e7a0afa8ae8eb5d18750196e9b874737d58d3e3189ef9fdca4b312d24a19b406fe21f7eb304f0c1f11987873528190ca2e4 SHA512 987fb30d25a7b14e681d6eb963fc2cc68f954d017eca256739e897062249fce606adcb3224e3c8f0d371e49904caef7171a9a8ba4a7e60baa2fe063004846439
+DIST python-quantities-0.16.0.gh.tar.gz 92228 BLAKE2B 2570b50a983cf1e84fc6df0590a2de251f671d15af06191c4fbf673c7bb75ec419e04f7bcc1a1730f87ed2269b40d707aa6a1103d1238421c19b939f2bbc7f2b SHA512 592001add7201868844197e67ac3a200d4a82c11f02c0d2ce4f007bda5b8c66c29c0f30563da7fd214c3aede4564590b1de9e29b2e9dac0a77a1db0b410e750d
diff --git a/dev-python/quantities/quantities-0.16.0.ebuild b/dev-python/quantities/quantities-0.16.0.ebuild
new file mode 100644
index 000000000000..9ffb55fb1a59
--- /dev/null
+++ b/dev-python/quantities/quantities-0.16.0.ebuild
@@ -0,0 +1,40 @@
+# Copyright 2020-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
+
+MY_P="python-quantities-${PV}"
+DESCRIPTION="Support for physical quantities with units, based on numpy"
+HOMEPAGE="
+ https://github.com/python-quantities/python-quantities/
+ https://pypi.org/project/quantities/
+"
+SRC_URI="
+ https://github.com/python-quantities/python-quantities/archive/v${PV}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+RDEPEND="
+ >=dev-python/numpy-1.20[$PYTHON_USEDEP]
+"
+BDEPEND="
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
+
+export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
+
+python_test() {
+ epytest --pyargs quantities.tests
+}
diff --git a/dev-python/setuptools/Manifest b/dev-python/setuptools/Manifest
index 41cf4603d6dc..abe310fec9ce 100644
--- a/dev-python/setuptools/Manifest
+++ b/dev-python/setuptools/Manifest
@@ -1,3 +1,4 @@
DIST setuptools-72.1.0.tar.gz 2419487 BLAKE2B df05affc48f8909b6b3b9dc30ef33e31c4b3781e747fea7d23b855d0294976f563e25b268666bfd2c758be66eca00e3e850463ff3d6f26b891185a2a15c8d31c SHA512 d0a34f16dfa6bb9a6df39076cd43528cf854d343f6f801c448ea0ebab2a259aec3d03571e2a26709df6082ed2fcb6c43b86448be556fd559b6af41831b4f38e0
DIST setuptools-72.2.0.tar.gz 2419230 BLAKE2B f04c196d13f62302e7c6f30a1021598fe22955cc8c980ddf22efa65f4d398c25273552b1a19b8719e2fee722dc44e9f1a2e339c5b6da8f4ca4ae8399cd27b2e1 SHA512 029c711be2953cc7fd88b6a0a00715e05ac04414e085e0b2387d58757c970a3316afb6e13426fa10dcc53785b98c8543ba48d49acf223a6332399a39a4924732
DIST setuptools-73.0.1.tar.gz 2526506 BLAKE2B 766453a7f6f3e34bdc63628b8c0321730c66381cc6048d01fbf9dbf76eb9900cd5cfa6dbd7c55c95ada3e01065d43bf7cd9029793e0735cae989b3cb1b95287c SHA512 5def2d817329524e610c7981fc3a84687ea4d2e0a72799341a706a16ec61df3efc16c4622f8b88746ad4cb52f92f2493c23a99a21cf3607ed48da480dedd200b
+DIST setuptools-74.0.0.tar.gz 1389536 BLAKE2B 11a9c4a6e175cc1d48b4bfed4f57f38e0e2f1e9c1de08706afc8199860c61325c85eb1f0772f30a47d7dec1923ea866eeeeb3cf51e74d7396bd291769cae42cf SHA512 c8116bb2cd6b39c74a03bf267eb44289ab54a8b6acb91882e0159f9bd57f369d686e44dda8bb6b2466baa50abad684f939df914bfb5c2564cc9596bc602c7388
diff --git a/dev-python/setuptools/setuptools-74.0.0.ebuild b/dev-python/setuptools/setuptools-74.0.0.ebuild
new file mode 100644
index 000000000000..56729558c985
--- /dev/null
+++ b/dev-python/setuptools/setuptools-74.0.0.ebuild
@@ -0,0 +1,127 @@
+# 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
+
+# please bump dev-python/ensurepip-setuptools along with this package!
+
+DISTUTILS_USE_PEP517=standalone
+PYTHON_TESTED=( python3_{8,9,10,11,12} pypy3 )
+PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" )
+PYTHON_REQ_USE="xml(+)"
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Collection of extensions to Distutils"
+HOMEPAGE="
+ https://github.com/pypa/setuptools/
+ https://pypi.org/project/setuptools/
+"
+
+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="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ !!<dev-python/setuptools-rust-1.8.0
+ >=dev-python/jaraco-text-3.7.0-r1[${PYTHON_USEDEP}]
+ >=dev-python/more-itertools-8.12.0-r1[${PYTHON_USEDEP}]
+ >=dev-python/packaging-24[${PYTHON_USEDEP}]
+ >=dev-python/platformdirs-2.6.2-r1[${PYTHON_USEDEP}]
+ >=dev-python/wheel-0.44.0[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ >=dev-python/tomli-2.0.1[${PYTHON_USEDEP}]
+ ' 3.10)
+"
+BDEPEND="
+ ${RDEPEND}
+ test? (
+ $(python_gen_cond_dep '
+ >=dev-python/build-1.0.3[${PYTHON_USEDEP}]
+ >=dev-python/ini2toml-0.14[${PYTHON_USEDEP}]
+ >=dev-python/filelock-3.4.0[${PYTHON_USEDEP}]
+ >=dev-python/jaraco-envs-2.2[${PYTHON_USEDEP}]
+ >=dev-python/jaraco-path-3.2.0[${PYTHON_USEDEP}]
+ dev-python/jaraco-test[${PYTHON_USEDEP}]
+ dev-python/pip[${PYTHON_USEDEP}]
+ dev-python/pip-run[${PYTHON_USEDEP}]
+ dev-python/pyproject-hooks[${PYTHON_USEDEP}]
+ dev-python/pytest[${PYTHON_USEDEP}]
+ >=dev-python/pytest-home-0.5[${PYTHON_USEDEP}]
+ dev-python/pytest-subprocess[${PYTHON_USEDEP}]
+ dev-python/pytest-timeout[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ >=dev-python/tomli-w-1.0.0[${PYTHON_USEDEP}]
+ >=dev-python/virtualenv-20[${PYTHON_USEDEP}]
+ ' "${PYTHON_TESTED[@]}")
+ )
+"
+# setuptools-scm is here because installing plugins apparently breaks stuff at
+# runtime, so let's pull it early. See bug #663324.
+#
+# trove-classifiers are optionally used in validation, if they are
+# installed. Since we really oughtn't block them, let's always enforce
+# the newest version for the time being to avoid errors.
+# https://github.com/pypa/setuptools/issues/4459
+PDEPEND="
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+ >=dev-python/trove-classifiers-2024.7.2[${PYTHON_USEDEP}]
+"
+
+src_prepare() {
+ local PATCHES=(
+ # TODO: remove this when we're 100% PEP517 mode
+ "${FILESDIR}/setuptools-62.4.0-py-compile.patch"
+ )
+
+ distutils-r1_src_prepare
+
+ # breaks tests
+ sed -i -e '/--import-mode/d' pytest.ini || die
+
+ # remove bundled dependencies
+ rm -r */_vendor setuptools/_distutils/_vendor || die
+
+ find -name '*.py' -exec sed \
+ -e 's:from [.]_vendor[.]:from :' \
+ -i {} + || die
+}
+
+python_test() {
+ if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then
+ return
+ fi
+
+ local EPYTEST_DESELECT=(
+ # network
+ setuptools/tests/test_build_meta.py::test_legacy_editable_install
+ setuptools/tests/test_distutils_adoption.py
+ setuptools/tests/test_editable_install.py
+ setuptools/tests/test_virtualenv.py::test_no_missing_dependencies
+ setuptools/tests/test_virtualenv.py::test_test_command_install_requirements
+ # TODO
+ setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_basic
+ setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_ignore_errors
+ # expects bundled deps in virtualenv
+ setuptools/tests/config/test_apply_pyprojecttoml.py::TestMeta::test_example_file_in_sdist
+ setuptools/tests/config/test_apply_pyprojecttoml.py::TestMeta::test_example_file_not_in_wheel
+ # fails if python-xlib is installed
+ setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_allow_hosts
+ # TODO, probably some random package
+ setuptools/tests/config/test_setupcfg.py::TestOptions::test_cmdclass
+ # broken by unbundling
+ setuptools/tests/test_setuptools.py::test_wheel_includes_vendored_metadata
+ # fails on normalized metadata, perhaps different dep version?
+ setuptools/tests/test_build_meta.py::TestBuildMetaBackend::test_build_with_pyproject_config
+ # TODO
+ setuptools/tests/test_sdist.py::test_sanity_check_setuptools_own_sdist
+ )
+
+ local EPYTEST_XDIST=1
+ local -x PRE_BUILT_SETUPTOOLS_WHEEL=${DISTUTILS_WHEEL_PATH}
+ epytest -o tmp_path_retention_policy=all \
+ -m "not uses_network" setuptools
+}
diff --git a/dev-python/sphinx/files/sphinx-7.3.7-opt-defusedxml.patch b/dev-python/sphinx/files/sphinx-7.3.7-opt-defusedxml.patch
deleted file mode 100644
index cb70e2cf89fc..000000000000
--- a/dev-python/sphinx/files/sphinx-7.3.7-opt-defusedxml.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From ce86026f3b667949ef39f7fdab9a40941d99c5ca Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
-Date: Sat, 11 May 2024 18:31:02 +0200
-Subject: [PATCH] DEPS: Lazy import `defusedxml` only when necessary (#12362)
-
-The `defusedxml` dependency was added to `sphinx.testing` in sphinx 7.3,
-but it is not part of the core sphinx dependencies, and not strictly necessary for the running of the pytest plugin.
-This commit moves the import into the only function which uses it,
-so that the pytest plugins can be used again without this dependency.
----
- sphinx/testing/util.py | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/sphinx/testing/util.py b/sphinx/testing/util.py
-index d1de8ea2b7..b2df709eea 100644
---- a/sphinx/testing/util.py
-+++ b/sphinx/testing/util.py
-@@ -11,7 +11,6 @@
- from types import MappingProxyType
- from typing import TYPE_CHECKING
-
--from defusedxml.ElementTree import parse as xml_parse
- from docutils import nodes
- from docutils.parsers.rst import directives, roles
-
-@@ -73,6 +72,8 @@ def assert_node(node: Node, cls: Any = None, xpath: str = "", **kwargs: Any) ->
- # keep this to restrict the API usage and to have a correct return type
- def etree_parse(path: str | os.PathLike[str]) -> ElementTree:
- """Parse a file into a (safe) XML element tree."""
-+ from defusedxml.ElementTree import parse as xml_parse
-+
- return xml_parse(path)
-
-
diff --git a/dev-python/sqlalchemy/files/sqlalchemy-2.0.30-py313.patch b/dev-python/sqlalchemy/files/sqlalchemy-2.0.30-py313.patch
deleted file mode 100644
index 6c519d2a205e..000000000000
--- a/dev-python/sqlalchemy/files/sqlalchemy-2.0.30-py313.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/lib/sqlalchemy/util/langhelpers.py b/lib/sqlalchemy/util/langhelpers.py
-index c97fa7d..9a02e7d 100644
---- a/lib/sqlalchemy/util/langhelpers.py
-+++ b/lib/sqlalchemy/util/langhelpers.py
-@@ -1657,6 +1657,8 @@
- items: List[symbol]
- cls._items = items = []
- for k, v in dict_.items():
-+ if re.match(r"^__.*__$", k):
-+ continue
- if isinstance(v, int):
- sym = symbol(k, canonical=v)
- elif not k.startswith("_"):
diff --git a/dev-python/tifffile/Manifest b/dev-python/tifffile/Manifest
index af18b90076ab..3535d05d410a 100644
--- a/dev-python/tifffile/Manifest
+++ b/dev-python/tifffile/Manifest
@@ -1,2 +1,3 @@
DIST tifffile-2024.8.10.gh.tar.gz 350933 BLAKE2B 72cbb36f9ee169e337235b9f9790c11ac92fcff0c46dd791c551bc91d080d05b237ab5d2f4d7cf55744af3a7b04e22cc952d643898527157fa16880272256118 SHA512 59edbecf3ab762d24f1f560dcd471036989003f9385b8d6e0480882df2cfbf81ef5ecc6c41d098e832227717d866e31d158129e17cb1f68bc3d8cf02e1944f90
DIST tifffile-2024.8.24.gh.tar.gz 351308 BLAKE2B daffd7179f1450c60acc63b78ee2870e29e1baa50eb1daf0540020a3e47048ba3622f7ed1512f17802a6c89d4d68975ced8ebe4c2779cb71a13893104c1233be SHA512 658b9e3f64e73c6e08627aaf5f8d15a55cf04c2002afa8694b8596dafdc8f84517a62e7b8369285edc43d0fb4990c54727fa33e591015093bbbbc066b8341a4a
+DIST tifffile-2024.8.28.gh.tar.gz 351568 BLAKE2B 4ee3c41f5ebb31b35e230c9784c89a43735d27b67e16d48a58ff2ee5ff0a28f3f84c2e02fd25ea1879b4adda0d70aae723a6ec93cb8f8b54e47680fb773c4d11 SHA512 5710de50e303f4012cd6bfdbbc4f6d4045b2917236dd268124df7326f36ef43b004bb4bed1b2d3b9444b55b2947b48a3882b6db2cb75582a990100e58c7d1105
diff --git a/dev-python/tifffile/tifffile-2024.8.28.ebuild b/dev-python/tifffile/tifffile-2024.8.28.ebuild
new file mode 100644
index 000000000000..1f53f5beadd7
--- /dev/null
+++ b/dev-python/tifffile/tifffile-2024.8.28.ebuild
@@ -0,0 +1,47 @@
+# Copyright 2021-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="Read and write TIFF files"
+HOMEPAGE="
+ https://pypi.org/project/tifffile/
+ https://github.com/cgohlke/tifffile/
+ https://www.cgohlke.com/
+"
+SRC_URI="
+ https://github.com/cgohlke/tifffile/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+RDEPEND="
+ >=dev-python/numpy-1.19.2[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/defusedxml[${PYTHON_USEDEP}]
+ >=dev-python/fsspec-2021.5.0[${PYTHON_USEDEP}]
+ dev-python/lxml[${PYTHON_USEDEP}]
+ dev-python/xarray[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+python_test() {
+ local -x SKIP_LARGE=1
+ local -x SKIP_HTTP=1
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
diff --git a/dev-python/tree-sitter/Manifest b/dev-python/tree-sitter/Manifest
index 32ba7543cb3c..2cbbb592013b 100644
--- a/dev-python/tree-sitter/Manifest
+++ b/dev-python/tree-sitter/Manifest
@@ -1,5 +1,6 @@
DIST tree-sitter-0.21.3.gh.tar.gz 38504 BLAKE2B dd8ed0047763d92babbdb3fd34a6fe6b7a9299b99067600f473bf16b9754a98ada141d96f9b6b26abcb2ff178dd4ec34da547c9cdb7b3449f7b98a44ad10476e SHA512 61f3d4cb15a4106eb350be2adc6ad39de31bd5b2656f35acf2cdf828ababac37b6197d5565ee74b0b2c3a161619163bb98c38108ca3db616fee633e6e2a835a7
DIST tree-sitter-0.22.3.gh.tar.gz 164914 BLAKE2B 7ab97203fed17fc8d18c40d5a24ff60cea4757353a4124c832cc52bff93ed8af913dbbab682225eac309762a26e90c216d2e1058dcaeb860ebd467b4c9655939 SHA512 8ac729b90f942eef07de97c4ebd070c1040f338c1f57a2203b6aa4f3f8db863fdb5183c9b27d5be2ec270d7eefba7665800d6cc4e9265cbd4b4715af4c4d3921
+DIST tree-sitter-0.23.0.gh.tar.gz 167761 BLAKE2B 694e90f608f51fe4f9add476cd5ebcd0ce04a7b027efc4948ce49a6cc0f05ebf4f15e0fe3f365f89f3e04cfec542cb3f1db1e5b05ff7ca23d3134561ea3dcf36 SHA512 67a6f3359c6283c58afcdbe5b6a521cdfcf2585a5361fb69a55eff82941726a143528a402e6d609286d8846c77e20d0a38551525d761e35abb21045ad9c5a2f8
DIST tree-sitter-embedded-template-6d791b897ecda59baa0689a85a9906348a2a6414.tar.gz 12420 BLAKE2B 9b9c6dd135cef4490e145657c5eeeb1fd470faee3846007638d8247daf07227029c6e7e323a0ed30c5cf6d35602be6bfb62dc1c22076fd4a0e76b161d55cca38 SHA512 7744852711cb1659607298fa373ce3ef79de3212ff55c0fb4e9aebcb715548934065ee3b5b12e9d08169a6207879e154a94c9de8bff892c32729c35d49964736
DIST tree-sitter-html-b5d9758e22b4d3d25704b72526670759a9e4d195.tar.gz 26609 BLAKE2B 223fe82ea18bf61b2b7ec664ad68ec1f324c9e0a1c78578db6063b9037c62be2bb762a9e47d0af81f7f244889f1f72683da3751c1d1c609c4a27fdcd0dc008b8 SHA512 15fd961c18d55a20487f48ef6a6f1822f9033baba8995f2e00cf8db1750036d69e19607f578fe90676aab30a173874969c69b91605b6073eb298f32f5f24f81d
DIST tree-sitter-javascript-de1e682289a417354df5b4437a3e4f92e0722a0f.tar.gz 396570 BLAKE2B d80cecb070bd1c82737ee1d38fff293ac4c96fde02563ecc910d30c920b902bd5c25a7ac50585f8cb7a26203d98f4a9e6feeebd4ac0d54bede9486ff642e03be SHA512 4a509a886ebeae0d960360113aff89fb56090f1fe4bb5a7866952736a04838a8b6421cc7d19473acc48b135bca4615325c59c0f0f7f3734f23a78fff9cc2050e
diff --git a/dev-python/tree-sitter/tree-sitter-0.23.0.ebuild b/dev-python/tree-sitter/tree-sitter-0.23.0.ebuild
new file mode 100644
index 000000000000..014d8c4c9cda
--- /dev/null
+++ b/dev-python/tree-sitter/tree-sitter-0.23.0.ebuild
@@ -0,0 +1,64 @@
+# 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
+
+DESCRIPTION="Python bindings to the Tree-sitter parsing library"
+HOMEPAGE="
+ https://github.com/tree-sitter/py-tree-sitter/
+ https://pypi.org/project/tree-sitter/
+"
+SRC_URI="
+ https://github.com/tree-sitter/py-tree-sitter/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+S=${WORKDIR}/py-${P}
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+# setuptools is needed for distutils import
+DEPEND=">=dev-libs/tree-sitter-0.23.0:="
+RDEPEND="${DEPEND}
+ $(python_gen_cond_dep '
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ ' 3.12)
+"
+BDEPEND="
+ test? (
+ >=dev-libs/tree-sitter-html-0.20.4[python,${PYTHON_USEDEP}]
+ >=dev-libs/tree-sitter-javascript-0.21.0[python,${PYTHON_USEDEP}]
+ >=dev-libs/tree-sitter-json-0.20.3[python,${PYTHON_USEDEP}]
+ >=dev-libs/tree-sitter-python-0.23.0[python,${PYTHON_USEDEP}]
+ >=dev-libs/tree-sitter-rust-0.21.2[python,${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.22.2-unbundle.patch
+)
+
+src_unpack() {
+ default
+ rmdir "${S}/tree_sitter/core" || die
+}
+
+src_prepare() {
+ default
+
+ sed -i tree_sitter/binding/query.c -e 's/_PyErr_FormatFromCause/PyErr_Format/' || die
+}
+
+src_test() {
+ rm -r tree_sitter || die
+ distutils-r1_src_test
+}
diff --git a/dev-python/uv/Manifest b/dev-python/uv/Manifest
index 8004d1037a0a..d71ccc06ec0f 100644
--- a/dev-python/uv/Manifest
+++ b/dev-python/uv/Manifest
@@ -6,3 +6,5 @@ DIST uv-0.3.3-crates.tar.xz 50333232 BLAKE2B 01e0bf8a8fe6f73aea3e77580bfae1d632c
DIST uv-0.3.3.gh.tar.gz 2452105 BLAKE2B c4d1b0c1a4ef0439ec8d0187b2e77d44c020cd1284729c50c99b8e345b8338e6e551a286165674240d2d4b562476504425f0726b746b9821ba2683f9176f131d SHA512 cf79574a0ec3468daca7a7a6af39e5eb38f646837043bf783f69c60edc9af16fc90b65ef97dfe65b7ca4381d13caacf222a6a38d2c8f7ede90679fff8be9a009
DIST uv-0.3.4-crates.tar.xz 48658524 BLAKE2B 51a3a4883f8c435355ebb6da3da5bdc8d2dbccbf215c13a9cea394db431db0cde27d008323a711da3d11342fc9f84427ad83d3b70b478bce317e1b6316afe1da SHA512 fa3315832b3e5252a709d1250e4ad81e6aa963216871f0a0a99422424c2009e455a29836703e207279e06ad607187d209b9443791bbcfcfd3860156fa5de871a
DIST uv-0.3.4.gh.tar.gz 2458698 BLAKE2B 89db8580a2b3e04546a82bdeb916660cd25344ce604f4201f71bad047ec2e8af651a81d8793207e43755f06e9d69c2fa3afe7386113c0fd79e683964f4a8dd56 SHA512 a99e6963f0ccd6becfdd6802b6195d5ebf5e2563d3fbad3d09ca5302d1d3fcf4fcdf9d2c5837023fef09ea89f5cf736ac61005d4c0e6f824d5a0c64160183686
+DIST uv-0.3.5-crates.tar.xz 48793516 BLAKE2B 49ada395e1834a3c5ec7835a2a23cea885ec111250e4fccc8d78558b561938e12cdb1de643a1b84383a5aa1abfca916d1f4d06fe2dbe69ef47092ddbed06a367 SHA512 d3d2d5a33c91f4dd6397d60d4877d8501136e74291bd214d5b54593f4b9aa246015c58caab5de4e6b5b7040c9d6bd41478a800bb92957df8f12da81d5b843030
+DIST uv-0.3.5.gh.tar.gz 2471050 BLAKE2B 5c089260e5091042c88307fa71f24e773eea80e959c27273781e13f50ef1e08e17220586f6661703ec9e9b58200eb974b311501f3f32fd7862a4a0b185d03bbc SHA512 0d7842aad0f0da030b1d336f962eb1252247bb62e24c2a0ba97fb2f13cfc9f48ba0a1aac42770be93fda8e5e08a59462a242c8ea95a9c97dc56959492cf5c6db
diff --git a/dev-python/uv/uv-0.3.5.ebuild b/dev-python/uv/uv-0.3.5.ebuild
new file mode 100644
index 000000000000..72bc0ed13457
--- /dev/null
+++ b/dev-python/uv/uv-0.3.5.ebuild
@@ -0,0 +1,113 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CRATES="
+"
+
+declare -A GIT_CRATES=(
+ [async_zip]='https://github.com/charliermarsh/rs-async-zip;011b24604fa7bc223daaad7712c0694bac8f0a87;rs-async-zip-%commit%'
+ [pubgrub]='https://github.com/astral-sh/pubgrub;388685a8711092971930986644cfed152d1a1f6c;pubgrub-%commit%'
+ [reqwest-middleware]='https://github.com/astral-sh/reqwest-middleware;5e3eaf254b5bd481c75d2710eed055f95b756913;reqwest-middleware-%commit%/reqwest-middleware'
+ [reqwest-retry]='https://github.com/astral-sh/reqwest-middleware;5e3eaf254b5bd481c75d2710eed055f95b756913;reqwest-middleware-%commit%/reqwest-retry'
+ [tl]='https://github.com/charliermarsh/tl;6e25b2ee2513d75385101a8ff9f591ef51f314ec;tl-%commit%'
+)
+
+inherit cargo check-reqs
+
+CRATE_PV=0.3.5
+DESCRIPTION="A Python package installer and resolver, written in Rust"
+HOMEPAGE="
+ https://github.com/astral-sh/uv/
+ https://pypi.org/project/uv/
+"
+# pypi sdist misses scripts/, needed for tests
+SRC_URI="
+ https://github.com/astral-sh/uv/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+ ${CARGO_CRATE_URIS}
+"
+if [[ ${PKGBUMPING} != ${PVR} ]]; then
+ SRC_URI+="
+ https://dev.gentoo.org/~mgorny/dist/uv-${CRATE_PV}-crates.tar.xz
+ "
+fi
+
+# most of the code
+LICENSE="|| ( Apache-2.0 MIT )"
+# crates/pep508-rs is || ( Apache-2.0 BSD-2 ) which is covered below
+# Dependent crate licenses
+LICENSE+="
+ 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 BSD ISC MIT
+ MPL-2.0 Unicode-DFS-2016
+"
+# ring crate
+LICENSE+=" openssl"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
+IUSE="test"
+RESTRICT="test"
+PROPERTIES="test_network"
+
+BDEPEND="
+ >=virtual/rust-1.80
+ test? (
+ dev-lang/python:3.8
+ dev-lang/python:3.9
+ dev-lang/python:3.10
+ dev-lang/python:3.11
+ dev-lang/python:3.12
+ )
+"
+
+QA_FLAGS_IGNORED="usr/bin/.*"
+
+check_space() {
+ local CHECKREQS_DISK_BUILD=3G
+ use debug && CHECKREQS_DISK_BUILD=9G
+ check-reqs_pkg_setup
+}
+
+pkg_pretend() {
+ check_space
+}
+
+pkg_setup() {
+ check_space
+}
+
+src_prepare() {
+ default
+
+ # remove patch.* that breaks GIT_CRATES
+ local reqmw=${GIT_CRATES[reqwest-middleware]}
+ reqmw=${reqmw#*;}
+ reqmw=${reqmw%;*}
+ sed -i -e "/^\[patch/,\$s@^\(reqwest-middleware = \).*@\1 { path = \"${WORKDIR}/reqwest-middleware-${reqmw}/reqwest-middleware\" }@" Cargo.toml || die
+
+ # https://github.com/vorot93/tokio-tar/pull/23
+ # (fortunately uv already depends on portable-atomic, so we don't
+ # have to fight Cargo.lock)
+ cd "${ECARGO_VENDOR}/tokio-tar-0.3.1" || die
+ eapply "${FILESDIR}/tokio-tar-0.3.1-ppc.patch"
+}
+
+src_compile() {
+ cd crates/uv || die
+ cargo_src_compile
+}
+
+src_test() {
+ # work around https://github.com/astral-sh/uv/issues/4376
+ local -x PATH=${BROOT}/usr/lib/python-exec/python3.12:${PATH}
+ local -x COLUMNS=100
+
+ cd crates/uv || die
+ cargo_src_test --no-fail-fast
+}
+
+src_install() {
+ cd crates/uv || die
+ cargo_src_install
+}
diff --git a/dev-python/zope-interface/Manifest b/dev-python/zope-interface/Manifest
index 8ba8be0e1f6c..2b534b41cb48 100644
--- a/dev-python/zope-interface/Manifest
+++ b/dev-python/zope-interface/Manifest
@@ -1 +1,2 @@
DIST zope.interface-6.4.post2.tar.gz 294539 BLAKE2B c6d892357e2ead04841cc5dde924b560e0cd968d84c607e3d1d2ebd804c2d1fbc764a721e8182ffd373a6339967b5230153e3e4934359028e98a0ad4e26c92a9 SHA512 da53c2136a6057de49374a428e855ad731288e45f27787d255073adb188680cb46a7b493258da01d6bbce5d7c7181306b64eb90609520aab361ac07dfba00d4b
+DIST zope.interface-7.0.3.tar.gz 252504 BLAKE2B 958605f010f7d282c8850160322bcc8ae4343508ff56d4ae2547815ac5dee76b39d9f7296402d1ccb9d410c64eabf5001be3df59d3768f9a400eaf0f4c94f1ad SHA512 fd086290943b6748b451ea0d375cd9d11a94a1d13c734cbd2834b062600400b5f7381e2b00fcdf6abbaaabf1abf687d15d44e81dd6967c39cbd19f9833b6c4dc
diff --git a/dev-python/zope-interface/zope-interface-7.0.3.ebuild b/dev-python/zope-interface/zope-interface-7.0.3.ebuild
new file mode 100644
index 000000000000..82bfc2effd93
--- /dev/null
+++ b/dev-python/zope-interface/zope-interface-7.0.3.ebuild
@@ -0,0 +1,48 @@
+# 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"
+
+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
+}