summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2025-04-23 19:11:26 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2025-04-23 19:11:26 +0000
commitc2c72a6d069149ecb31753fc14d5831edb7b744d (patch)
tree95b5b199bee02b4cf6b5cdcd86f8f4dd57546289 /dev-python
parent7aef9701b4d5d8b6c7de39b6fbb56d242bb8082f (diff)
downloadbaldeagleos-repo-c2c72a6d069149ecb31753fc14d5831edb7b744d.tar.gz
baldeagleos-repo-c2c72a6d069149ecb31753fc14d5831edb7b744d.tar.xz
baldeagleos-repo-c2c72a6d069149ecb31753fc14d5831edb7b744d.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/boto3/Manifest1
-rw-r--r--dev-python/boto3/boto3-1.38.0.ebuild53
-rw-r--r--dev-python/botocore/Manifest1
-rw-r--r--dev-python/botocore/botocore-1.38.0.ebuild67
-rw-r--r--dev-python/coverage/Manifest1
-rw-r--r--dev-python/coverage/coverage-7.7.1.ebuild114
-rw-r--r--dev-python/coverage/coverage-7.8.0.ebuild2
-rw-r--r--dev-python/dns-lexicon/dns-lexicon-3.21.0.ebuild2
-rw-r--r--dev-python/google-auth-oauthlib/Manifest1
-rw-r--r--dev-python/google-auth-oauthlib/google-auth-oauthlib-1.2.2.ebuild42
-rw-r--r--dev-python/greenlet/Manifest1
-rw-r--r--dev-python/greenlet/greenlet-3.2.1.ebuild50
-rw-r--r--dev-python/hypothesis/Manifest1
-rw-r--r--dev-python/hypothesis/hypothesis-6.131.7.ebuild116
-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/loky/Manifest1
-rw-r--r--dev-python/loky/loky-3.5.2.ebuild59
-rw-r--r--dev-python/lxml/Manifest1
-rw-r--r--dev-python/lxml/lxml-5.4.0.ebuild121
-rw-r--r--dev-python/lz4/Manifest1
-rw-r--r--dev-python/lz4/lz4-4.4.3.ebuild49
-rw-r--r--dev-python/lz4/lz4-4.4.4.ebuild2
-rw-r--r--dev-python/mkdocs-git-authors-plugin/Manifest1
-rw-r--r--dev-python/mkdocs-git-authors-plugin/mkdocs-git-authors-plugin-0.9.5.ebuild55
-rw-r--r--dev-python/more-itertools/Manifest1
-rw-r--r--dev-python/more-itertools/more-itertools-10.7.0.ebuild23
-rw-r--r--dev-python/mypy-extensions/Manifest1
-rw-r--r--dev-python/mypy-extensions/mypy-extensions-1.1.0.ebuild31
-rw-r--r--dev-python/pivy/Manifest1
-rw-r--r--dev-python/pivy/pivy-0.6.10.ebuild67
-rw-r--r--dev-python/pycares/Manifest1
-rw-r--r--dev-python/pycares/pycares-4.5.0.ebuild57
-rw-r--r--dev-python/pycares/pycares-4.6.0.ebuild2
-rw-r--r--dev-python/pyglet/Manifest1
-rw-r--r--dev-python/pyglet/pyglet-2.1.5.ebuild85
-rw-r--r--dev-python/pyicu/Manifest1
-rw-r--r--dev-python/pyicu/pyicu-2.15.2.ebuild45
-rw-r--r--dev-python/pyotp/pyotp-2.9.0.ebuild2
-rw-r--r--dev-python/pypi-attestations/Manifest1
-rw-r--r--dev-python/pypi-attestations/pypi-attestations-0.0.24.ebuild38
-rw-r--r--dev-python/pysvn/pysvn-1.9.22-r1.ebuild2
-rw-r--r--dev-python/python-augeas/python-augeas-1.1.0-r1.ebuild2
-rw-r--r--dev-python/pyzmq/Manifest1
-rw-r--r--dev-python/pyzmq/pyzmq-26.3.0.ebuild87
-rw-r--r--dev-python/pyzmq/pyzmq-26.4.0.ebuild2
-rw-r--r--dev-python/rapidfuzz/Manifest1
-rw-r--r--dev-python/rapidfuzz/rapidfuzz-3.12.2.ebuild59
-rw-r--r--dev-python/rapidfuzz/rapidfuzz-3.13.0.ebuild2
-rw-r--r--dev-python/s3transfer/Manifest1
-rw-r--r--dev-python/s3transfer/s3transfer-0.12.0.ebuild39
-rw-r--r--dev-python/setuptools-scm/Manifest1
-rw-r--r--dev-python/setuptools-scm/setuptools-scm-8.3.0.ebuild61
-rw-r--r--dev-python/sqlglot/Manifest6
-rw-r--r--dev-python/sqlglot/sqlglot-26.14.0.ebuild96
-rw-r--r--dev-python/sqlglot/sqlglot-26.16.0.ebuild (renamed from dev-python/sqlglot/sqlglot-26.13.2.ebuild)0
-rw-r--r--dev-python/testresources/Manifest1
-rw-r--r--dev-python/testresources/testresources-2.0.2.ebuild33
-rw-r--r--dev-python/tldextract/Manifest1
-rw-r--r--dev-python/tldextract/tldextract-5.1.3.ebuild2
-rw-r--r--dev-python/tldextract/tldextract-5.3.0.ebuild45
-rw-r--r--dev-python/types-setuptools/Manifest1
-rw-r--r--dev-python/types-setuptools/types-setuptools-79.0.0.20250422.ebuild16
65 files changed, 1097 insertions, 490 deletions
diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest
index bdfff4c8b02e..98245ff3a460 100644
--- a/dev-python/boto3/Manifest
+++ b/dev-python/boto3/Manifest
@@ -2,3 +2,4 @@ DIST boto3-1.37.28.gh.tar.gz 922848 BLAKE2B 134a4054d1142de5f63198f6fd97eef3dc5f
DIST boto3-1.37.33.gh.tar.gz 927758 BLAKE2B ed246a9e8966bfb51a3ef567461a5ec6103cb7e710799db908b5c5e790c09b765a1b977f8b1a0b4f65ecc013178afe1c8e0b03729e1c4ae9f20a22a21e248267 SHA512 373b5eb1340c7da82b3d4e493f63e4b9e4b80fa4fe3a215961ea8c793382efca83de9b3c744456de572c9b6bb7bbb73cffdbc7d892d501da3213ed9073ae2264
DIST boto3-1.37.37.gh.tar.gz 930327 BLAKE2B 93ed4e903189a9620f13e71fe64557ebcfa5c696688b4a21fc4de0f9d21f51fd3b9c9dafa4a5dc91fc88165c14207b17b3f121e9eebdf1c1ab7e55472573d2ec SHA512 e19700633ccf6be76ab1baa0811c24d36aba7e0b8f1933fc10d1dc67d73ec0cd66a4c45ace1f2bdf815c3b35ffafaff2ce7ce9a4678e7f57984039f96d0f9fa0
DIST boto3-1.37.38.gh.tar.gz 930949 BLAKE2B 387213d4d7bf3eeec902f0720d8a5be87004a9a45f92243636a9ad8e4157cf5ab1b2673387959ae31fc6605078654a7f571bfbaa5cc421b27bb7912c91a93121 SHA512 1723f0b2239c5837759b5f0a5bdedb19decb4d179a5e9e1ef8412bf5f927eda89670578dfec9cefffa694ece5397e2a5a601380252ab125bfe99a968619d360a
+DIST boto3-1.38.0.gh.tar.gz 932603 BLAKE2B 40fe6f942b15d86a248edf65ffc5dbad72069f929015363470d4df9ba6ee0970915ec536a285b29cb92fe46e323dfbc755195b5901d0c841eb1def32019fde9b SHA512 9c4b9b478b0c4832a5b43f0efe5204988e7a8d644280a1e78cb7cfe12034453cf022d052271bfb133691a7a9def72bdb5cdadadd27b4bcf29beaf05f1654e351
diff --git a/dev-python/boto3/boto3-1.38.0.ebuild b/dev-python/boto3/boto3-1.38.0.ebuild
new file mode 100644
index 000000000000..b862f479d876
--- /dev/null
+++ b/dev-python/boto3/boto3-1.38.0.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+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 ~loong ~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.12.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 573b855c45fb..1fae4a02faa0 100644
--- a/dev-python/botocore/Manifest
+++ b/dev-python/botocore/Manifest
@@ -2,3 +2,4 @@ DIST botocore-1.37.28.gh.tar.gz 14529730 BLAKE2B aa04a445d45d24ff7dad8553ce19676
DIST botocore-1.37.33.gh.tar.gz 14547041 BLAKE2B 65fc9cd205b582dd5b046670dec5708d16e638789edfa3c3c6126f404b83a150210d92bb108156540523b0ed30ad06b5ecaa832ed8c751b99ba49b8cc975e4cd SHA512 e07480e100aa3b58831fb76f58d69e1ccea85c629ce9048909d51072d1b2a66ce10b65f97bfc0b82ba5235257035e85442b31b09a3fe4bbb2dfed7bcbeebfc37
DIST botocore-1.37.37.gh.tar.gz 14563135 BLAKE2B 290689f13333ab7ebdbac0bccf6568035776482dbab62c542a41ce6bf93b9d5e01400526c50534fb068798dc5626408c039f8746f091fe881cb70629c6ccd6e4 SHA512 3e020f6f264ef19a71f812733536812abe92e5998f3c19766782e01cdd235a17648b330bdb64289ea8b87a520625e0c7ece9436e014ade111d66bc4181f5bec9
DIST botocore-1.37.38.gh.tar.gz 14568062 BLAKE2B ca684d02e52ecb0f12597b9e1ab8de4a4979cd177c40d4d71af3bcdaf7d5a27187521624cb178553054acd1eefed7ff10abedb29b86fa0f0025978349ef9a21f SHA512 ed1cedf46a47853a889d6daa63113e0900732fd40af4f44d1787a0d12238aed4c2262de0e1380d2eab2e4a667720d985d48b57e558a3f5305edd3172fe686808
+DIST botocore-1.38.0.gh.tar.gz 14576953 BLAKE2B 7a843baf6d1fdc1f9c79fa4eb387c255e97f2bdd0716a3acd21948045ce71206b426bf97d8b9a20339c78db806dde8795b5b3e9dab1c069c8c0866db02308380 SHA512 a3dbd68615454868126da1d57fe3e4a1e602ebc44646a7fd7853471d738a1e6bbdb29881bbe551731cfa693f6a418dfd6140bd1297c20c8a7e59238ecb711da1
diff --git a/dev-python/botocore/botocore-1.38.0.ebuild b/dev-python/botocore/botocore-1.38.0.ebuild
new file mode 100644
index 000000000000..df85ee0d220c
--- /dev/null
+++ b/dev-python/botocore/botocore-1.38.0.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+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 ~loong ~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/coverage/Manifest b/dev-python/coverage/Manifest
index c48ce798fe74..5f6569c318b3 100644
--- a/dev-python/coverage/Manifest
+++ b/dev-python/coverage/Manifest
@@ -1,2 +1 @@
-DIST coverage-7.7.1.tar.gz 810332 BLAKE2B 859efa6da1451fdfbae5c190b6254d3ba9e4aa8d45e668fc223d752930a02d97071d0f0cef61c86eb7bc933c5f57c81600ddb2c7f648d171a46b46eb2af73177 SHA512 857dad56eaf4930b4e1e881d9c5f195669f2cd21b802d8dae117531b8eb7db328361c6797c4ad5d85eeb9358a6db183eeba20ea34d627bf7b082a21c0ca2120f
DIST coverage-7.8.0.tar.gz 811872 BLAKE2B e2054d58c31fb772b907220d2d8a768242208eb8ab829b579d3a1b081ae9169d8231bf79488e581ef95f53aa22682807fb74200859d8f49a739a3d9ac9859546 SHA512 ccc502d28a2a14ed9fa0b18a87b73ae0a3bd806948ca0887285c388399fa21aa8433d6fa2734ef6c42c92537edb7221406a91aab52b3cfb78bd8b77e6bea394c
diff --git a/dev-python/coverage/coverage-7.7.1.ebuild b/dev-python/coverage/coverage-7.7.1.ebuild
deleted file mode 100644
index 1d90f5f63af6..000000000000
--- a/dev-python/coverage/coverage-7.7.1.ebuild
+++ /dev/null
@@ -1,114 +0,0 @@
-# Copyright 1999-2025 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_{9,10,11,12,13} pypy3 )
-PYTHON_REQ_USE="threads(+),sqlite(+)"
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="Code coverage measurement for Python"
-HOMEPAGE="
- https://coverage.readthedocs.io/en/latest/
- https://github.com/nedbat/coveragepy/
- https://pypi.org/project/coverage/
-"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos"
-IUSE="+native-extensions"
-
-RDEPEND="
- $(python_gen_cond_dep '
- dev-python/tomli[${PYTHON_USEDEP}]
- ' 3.10)
-"
-BDEPEND="
- test? (
- dev-python/flaky[${PYTHON_USEDEP}]
- dev-python/hypothesis[${PYTHON_USEDEP}]
- dev-python/pytest-xdist[${PYTHON_USEDEP}]
- >=dev-python/unittest-mixins-1.4[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-
-src_prepare() {
- distutils-r1_src_prepare
-
- sed -i -e '/addopts/s:-q -n auto::' pyproject.toml || die
-}
-
-python_compile() {
- if ! use native-extensions; then
- local -x COVERAGE_DISABLE_EXTENSION=1
- fi
-
- distutils-r1_python_compile
-}
-
-test_tracer() {
- local -x COVERAGE_CORE=${1}
- einfo " Testing with the ${COVERAGE_CORE} core ..."
- epytest -p flaky -p hypothesis -p xdist tests
-}
-
-python_test() {
- local EPYTEST_DESELECT=(
- # TODO: fails because of additional "Terminated" print on SIGTERM
- tests/test_concurrency.py::SigtermTest::test_sigterm_threading_saves_data
- # broken because of pytest plugins explicity loaded
- tests/test_debug.py::ShortStackTest::test_short_stack{,_skip}
- # these expect specific availability of C extension matching
- # COVERAGE_CORE (which breaks testing pytracer on CPython)
- tests/test_cmdline.py::CmdLineStdoutTest::test_version
- tests/test_debug.py::DebugTraceTest::test_debug_sys_ctracer
- # mismatch of expected concurrency in error message
- # TODO: report upstream?
- tests/test_concurrency.py::ConcurrencyTest::test_greenlet
- tests/test_concurrency.py::ConcurrencyTest::test_greenlet_simple_code
- # packaging tests, fragile to setuptools version
- tests/test_setup.py
- )
- local EPYTEST_IGNORE=(
- # pip these days insists on fetching build deps from Internet
- tests/test_venv.py
- )
-
- "${EPYTHON}" igor.py zip_mods || die
-
- local -x COVERAGE_TESTING=True
- # TODO: figure out why they can't be imported inside test env
- local -x COVERAGE_NO_CONTRACTS=1
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
-
- local prev_opt=$(shopt -p nullglob)
- shopt -s nullglob
- local c_ext=( "${BUILD_DIR}/install$(python_get_sitedir)"/coverage/*.so )
- ${prev_opt}
-
- if [[ -n ${c_ext} ]]; then
- cp "${c_ext}" coverage/ || die
- test_tracer ctrace
- fi
-
- test_tracer pytrace
-
- case ${EPYTHON} in
- python3.1[01]|pypy3|pypy3.11)
- ;;
- *)
- # available since Python 3.12
- test_tracer sysmon
- ;;
- esac
-
- if [[ -n ${c_ext} ]]; then
- rm coverage/*.so || die
- fi
-}
diff --git a/dev-python/coverage/coverage-7.8.0.ebuild b/dev-python/coverage/coverage-7.8.0.ebuild
index bda6274afbc2..1d90f5f63af6 100644
--- a/dev-python/coverage/coverage-7.8.0.ebuild
+++ b/dev-python/coverage/coverage-7.8.0.ebuild
@@ -19,7 +19,7 @@ HOMEPAGE="
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~alpha amd64 ~arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos"
IUSE="+native-extensions"
RDEPEND="
diff --git a/dev-python/dns-lexicon/dns-lexicon-3.21.0.ebuild b/dev-python/dns-lexicon/dns-lexicon-3.21.0.ebuild
index 025f4ab3d79d..e7b56652d263 100644
--- a/dev-python/dns-lexicon/dns-lexicon-3.21.0.ebuild
+++ b/dev-python/dns-lexicon/dns-lexicon-3.21.0.ebuild
@@ -20,7 +20,7 @@ SRC_URI="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+KEYWORDS="~amd64 ~arm arm64 ~ppc64 ~riscv ~x86"
RDEPEND="
>=dev-python/beautifulsoup4-4[${PYTHON_USEDEP}]
diff --git a/dev-python/google-auth-oauthlib/Manifest b/dev-python/google-auth-oauthlib/Manifest
index d012afa2abc5..d326e17055cf 100644
--- a/dev-python/google-auth-oauthlib/Manifest
+++ b/dev-python/google-auth-oauthlib/Manifest
@@ -1 +1,2 @@
DIST google-auth-library-python-oauthlib-1.2.1.gh.tar.gz 74582 BLAKE2B 668f4c7c6640e6fd71d9c6135f5cdfe822f4170c8640b574e8fa7eb4e29b9645b95c002d9df2a595d465daceea2c4eeb111811729915bcb508ae5dc911e2f738 SHA512 d4b53eeb72f25128230c94d909fac1814727ee09e2133e9481f8c608ecf18003d571504215dceb7ec6450b289efb8b393cd33d9cbed12072a228644cc48539b5
+DIST google-auth-library-python-oauthlib-1.2.2.gh.tar.gz 55488 BLAKE2B ebc67448bc1bfa9ea2879bee5a655dbb0beca01e4e43abe712860c64628d764405339220695a508586175a7590f3fc08d2b87163ec9bb59a4197a968880b8492 SHA512 5e57320b4c6ffdde42975625268647afa02978cb0d6598ca2db9986fa4744f7f8740779c6010f99064a223661c879cc4928642d9a9ebc308aabd950cdfd232f3
diff --git a/dev-python/google-auth-oauthlib/google-auth-oauthlib-1.2.2.ebuild b/dev-python/google-auth-oauthlib/google-auth-oauthlib-1.2.2.ebuild
new file mode 100644
index 000000000000..c5fe4addaef8
--- /dev/null
+++ b/dev-python/google-auth-oauthlib/google-auth-oauthlib-1.2.2.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+inherit distutils-r1
+
+MY_P=google-auth-library-python-oauthlib-${PV}
+DESCRIPTION="Google Authentication Library"
+HOMEPAGE="
+ https://github.com/googleapis/google-auth-library-python-oauthlib/
+ https://pypi.org/project/google-auth-oauthlib/
+"
+SRC_URI="
+ https://github.com/googleapis/google-auth-library-python-oauthlib/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/click-6.0.0[${PYTHON_USEDEP}]
+ >=dev-python/google-auth-2.15.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-oauthlib-0.7.0[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ # remove mock dependency
+ # https://github.com/googleapis/google-auth-library-python-oauthlib/pull/351
+ find -name 'test_*.py' -exec \
+ sed -i -e 's:import mock:from unittest import mock:' {} + || die
+}
diff --git a/dev-python/greenlet/Manifest b/dev-python/greenlet/Manifest
index 8276307d19e8..6c97f56dbc5c 100644
--- a/dev-python/greenlet/Manifest
+++ b/dev-python/greenlet/Manifest
@@ -1,2 +1,3 @@
DIST greenlet-3.1.1.tar.gz 186022 BLAKE2B 1d73f63d3bf881534bd64eca6510f32d1596261bd42176d396c7a0442494c73f8b03e57621bd11fc1bc67db550514c26a94926eaba8c53e08eecb3f999c9ba16 SHA512 915a6e22c20b235de472c61c7bc4cb60a08b79e29127c4fb817c362cee37f589bc362f12ed31bdc7dda91f49976d4e2784c8d13202bf598156a0aacacdb7f6fb
DIST greenlet-3.2.0.tar.gz 183685 BLAKE2B d750f9f0639003448b95cc0db5046617da0d9c40976c851d4f23f5e26f54fba29da6867304d7569ea171d497047442e85c35aeedd479cdcc8d57af51fd5a76ed SHA512 0a13142bbb9b043a8b6047fdb182b1091dfc8c6da517092ab382b6ae42fbc8d5e4b9d8593d353d1c95dbf7337aa1e4cc946c2638e50e49af4813aee94b07d214
+DIST greenlet-3.2.1.tar.gz 184475 BLAKE2B ff36fafef74ff1c0d9a9c2f5929017afe7f083d31830aebf4f068c84df7312352cd43f9ba1d42b4562921b869df3afd8210d71f318bf2f8f6f7ea441d934ae04 SHA512 75fd697d0bde99c60d4c741c61c1010e2bae659e93661e8ea37f6683c1223422a7f862aa770b80bc3299593a9791ec515fd31797fd36216ed784f4e2f4103420
diff --git a/dev-python/greenlet/greenlet-3.2.1.ebuild b/dev-python/greenlet/greenlet-3.2.1.ebuild
new file mode 100644
index 000000000000..ac6de7027873
--- /dev/null
+++ b/dev-python/greenlet/greenlet-3.2.1.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+# Note: greenlet is built-in in pypy
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Lightweight in-process concurrent programming"
+HOMEPAGE="
+ https://greenlet.readthedocs.io/en/latest/
+ https://github.com/python-greenlet/greenlet/
+ https://pypi.org/project/greenlet/
+"
+
+LICENSE="MIT PSF-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 -hppa ~m68k ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ test? (
+ dev-python/objgraph[${PYTHON_USEDEP}]
+ dev-python/psutil[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_sphinx docs \
+ dev-python/furo
+distutils_enable_tests unittest
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ # patch cflag manipulations out
+ sed -i -e 's:global_compile_args[.]append.*:pass:' setup.py || die
+ # broken assertions on py3.12+
+ # https://github.com/python-greenlet/greenlet/issues/368
+ sed -e 's:test_trace_events_multiple_greenlets_switching:_&: ' \
+ -i src/greenlet/tests/test_tracing.py || die
+}
+
+python_test() {
+ eunittest greenlet.tests
+}
diff --git a/dev-python/hypothesis/Manifest b/dev-python/hypothesis/Manifest
index e70e75cfa40b..7be283840a37 100644
--- a/dev-python/hypothesis/Manifest
+++ b/dev-python/hypothesis/Manifest
@@ -2,3 +2,4 @@ DIST hypothesis-6.130.13.gh.tar.gz 9544282 BLAKE2B 9a74af5cab1562b5eb2fc00fe1ea6
DIST hypothesis-6.130.8.gh.tar.gz 9538996 BLAKE2B 7f2779a69fbb1301cf7cdf0b414aff28e60cb2efb4d2451f2962cda1c048401d1e532e205c993691e1b2aa0f71af1a67274f40dd03a449db4f62de01c22c9dd8 SHA512 85df9ed0477d37b9fb96ada20aa41b8b65b27496fb0a4cfb44ebbab94d6859bc2767e8529f76b53e6f28cc122eea8529784a97b4e4b1803004072e317ecee00f
DIST hypothesis-6.130.9.gh.tar.gz 9540297 BLAKE2B f1739aa493baf7c908064b6450f601576b5e71ad254bf3b45cb2cdcf6b34f98f647beef5ed939e099c33e60cfe5ffc8b1b13b85ac115361e3a19c34ca30fef04 SHA512 11ac4ae33a53d622eaebdf6106b13d51141a57140c268d465d202650ae79925777fbebde828188b2ba1ba87f6e062f8d014131eef5b0d2315a327a9dcea7d30c
DIST hypothesis-6.131.6.gh.tar.gz 9548735 BLAKE2B 7407cb5f3236d4c06fa5fc663473a8a30073f780b5bdc96dd7d165018ff8b53de7cc0b190405eb8e2e815b3885357badeb85b52d7f5fe5d9d03ed851707f8960 SHA512 998314163d4d1c212dd54379b728ac85a6d4a3ea3c70086e48eb882b6949b08520f787425d7b718a038f0e9eb3129d487070c948df6d636f0e19643d7ef5b656
+DIST hypothesis-6.131.7.gh.tar.gz 9549388 BLAKE2B c854d0286d437ac7c22b72feb48ff57c10fb71803c902b50d8e0bd733f1788e453af6aab9bd86dfd8f3381e8fe43c765647ad95b14b5bd130cc375b155b44d26 SHA512 c1995d619729a1d5f7c31c37aecd4fedc671f29cd4f1b897024168c080850c92a870805d248f1d67f7432c0f4e623ab634e703f1838eeab26a2d78eb6524e764
diff --git a/dev-python/hypothesis/hypothesis-6.131.7.ebuild b/dev-python/hypothesis/hypothesis-6.131.7.ebuild
new file mode 100644
index 000000000000..377138685f65
--- /dev/null
+++ b/dev-python/hypothesis/hypothesis-6.131.7.ebuild
@@ -0,0 +1,116 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+CLI_COMPAT=( pypy3 python3_{10..13} )
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+PYTHON_REQ_USE="threads(+),sqlite"
+
+inherit distutils-r1 optfeature
+
+TAG=hypothesis-python-${PV}
+MY_P=hypothesis-${TAG}
+DESCRIPTION="A library for property based testing"
+HOMEPAGE="
+ https://github.com/HypothesisWorks/hypothesis/
+ https://pypi.org/project/hypothesis/
+"
+SRC_URI="
+ https://github.com/HypothesisWorks/hypothesis/archive/${TAG}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+S="${WORKDIR}/${MY_P}/hypothesis-python"
+
+LICENSE="MPL-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="cli"
+
+RDEPEND="
+ >=dev-python/attrs-22.2.0[${PYTHON_USEDEP}]
+ >=dev-python/sortedcontainers-2.1.0[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ >=dev-python/exceptiongroup-1.0.0_rc8[${PYTHON_USEDEP}]
+ ' 3.9 3.10)
+ cli? (
+ $(python_gen_cond_dep '
+ dev-python/black[${PYTHON_USEDEP}]
+ dev-python/click[${PYTHON_USEDEP}]
+ ' "${CLI_COMPAT[@]}")
+ )
+"
+BDEPEND="
+ test? (
+ dev-python/pexpect[${PYTHON_USEDEP}]
+ >=dev-python/pytest-8[${PYTHON_USEDEP}]
+ dev-python/pytest-rerunfailures[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+python_test() {
+ # subtests are broken by warnings from random plugins
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ local -x PYTEST_PLUGINS=xdist.plugin,_hypothesis_pytestplugin
+ local -x HYPOTHESIS_NO_PLUGINS=1
+
+ # NB: paths need to be relative to pytest.ini,
+ # i.e. start with hypothesis-python/
+ local EPYTEST_DESELECT=()
+ case ${EPYTHON} in
+ pypy3)
+ EPYTEST_DESELECT+=(
+ # failing due to warnings from numpy/cython
+ hypothesis-python/tests/pytest/test_fixtures.py::test_given_plus_overridden_fixture
+ )
+ ;;
+ python3.13t)
+ EPYTEST_DESELECT+=(
+ # TODO: missing warning
+ 'hypothesis-python/tests/cover/test_random_module.py::test_passing_referenced_instance_within_function_scope_warns'
+ )
+ ;&
+ python3.1[23]*)
+ EPYTEST_DESELECT+=(
+ # TODO
+ 'hypothesis-python/tests/cover/test_reflection.py::test_clean_source[case-5]'
+ )
+ ;;
+ esac
+
+ epytest -o filterwarnings= -p rerunfailures --reruns=5 \
+ tests/cover tests/pytest tests/quality
+}
+
+src_install() {
+ local HAD_CLI=
+
+ distutils-r1_src_install
+
+ if [[ ! ${HAD_CLI} ]]; then
+ rm -r "${ED}/usr/bin" || die
+ fi
+}
+
+python_install() {
+ distutils-r1_python_install
+ if use cli && has "${EPYTHON}" "${CLI_COMPAT[@]/_/.}"; then
+ HAD_CLI=1
+ else
+ rm -r "${D}$(python_get_scriptdir)" || die
+ fi
+}
+
+pkg_postinst() {
+ optfeature "datetime support" dev-python/pytz
+ optfeature "dateutil support" dev-python/python-dateutil
+ optfeature "numpy support" dev-python/numpy
+ optfeature "django support" dev-python/django dev-python/pytz
+ optfeature "pandas support" dev-python/pandas
+ optfeature "pytest support" dev-python/pytest
+}
diff --git a/dev-python/langdetect/Manifest b/dev-python/langdetect/Manifest
index 37a64204a00a..a11d7c268c91 100644
--- a/dev-python/langdetect/Manifest
+++ b/dev-python/langdetect/Manifest
@@ -1,3 +1 @@
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
new file mode 100644
index 000000000000..637368d2f237
--- /dev/null
+++ b/dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch
@@ -0,0 +1,13 @@
+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 56733bbffc48..eb2586280d80 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 Gentoo Authors
+# Copyright 2022-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -19,4 +19,6 @@ 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 020e07f2a3dd..c0f74ac187e2 100644
--- a/dev-python/langdetect/metadata.xml
+++ b/dev-python/langdetect/metadata.xml
@@ -2,11 +2,9 @@
<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <email>marcin.deranek@slonko.net</email>
- <name>Marcin Deranek</name>
+ <email>pastalian46@gmail.com</email>
+ <name>Takuya Wakazono</name>
</maintainer>
- <upstream>
- <bugs-to>https://github.com/Mimino666/langdetect/issues</bugs-to>
- </upstream>
- <origin>slonko-overlay</origin>
+
+ <origin>gentoo-guru-overlay</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-python/loky/Manifest b/dev-python/loky/Manifest
index 49e7d9d6e0b5..c17f1cb57f89 100644
--- a/dev-python/loky/Manifest
+++ b/dev-python/loky/Manifest
@@ -1 +1,2 @@
DIST loky-3.5.1.gh.tar.gz 145759 BLAKE2B 3fd1a254051a25e0556c29c50d9153e6894150d0eb39094fa3b7128439889777026aea6e001b73d825b6c18c8d7e6e49e0feb6e7fb508696c0694cf5321fa6fd SHA512 9c90fda5af45a89142866a3ec4a2e77425b20f248d55a56f5e78acf09dbf3b61ba04cf4b72c416e1eb343e23ab0d73a0139804a9fd92e27044debf97b8920635
+DIST loky-3.5.2.gh.tar.gz 145219 BLAKE2B 6de1d77d64db2cda1e45ec3f34aec1cc367a6bd83675b0f7172b4640d866bb1d03ebda963d5b7ee4d680ec5bc40a02ea13b760f1cb6cef2f3fe28509d4b0ffae SHA512 1cc67fcb3450afff67e3e5d598ae93624fd792335a222fd7e4723bb6e04231a68094ab1a78ec505a13c69384868fb05c1fa3a016b2d215d233f8fd9945586e69
diff --git a/dev-python/loky/loky-3.5.2.ebuild b/dev-python/loky/loky-3.5.2.ebuild
new file mode 100644
index 000000000000..d47214d70848
--- /dev/null
+++ b/dev-python/loky/loky-3.5.2.ebuild
@@ -0,0 +1,59 @@
+# Copyright 2020-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+inherit distutils-r1
+
+DESCRIPTION="Robust and reusable Executor for joblib"
+HOMEPAGE="
+ https://github.com/joblib/loky/
+ https://pypi.org/project/loky/
+"
+SRC_URI="
+ https://github.com/joblib/loky/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86 ~arm64-macos ~x64-macos"
+
+RDEPEND="
+ dev-python/cloudpickle[${PYTHON_USEDEP}]
+ dev-python/psutil[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ dev-python/pytest-rerunfailures[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+python_test() {
+ EPYTEST_DESELECT=(
+ # docker, seriously?
+ tests/test_loky_module.py::test_cpu_count_cfs_limit
+ tests/test_loky_module.py::test_cpu_count_cgroup_limit
+ # hangs, and even pytest-timeout does not help
+ tests/test_reusable_executor.py::TestExecutorDeadLock::test_deadlock_kill
+ tests/test_reusable_executor.py::TestResizeExecutor::test_reusable_executor_resize
+ # Python 3.12 raises an additional warning due to the use of fork()
+ # in a multithreaded process, the additional warning breaks this test
+ # since the expected warning is no longer the first.
+ # This is harmless, skip test for now
+ tests/test_worker_timeout.py::TestTimeoutExecutor::test_worker_timeout_shutdown_no_deadlock
+ tests/test_reusable_executor.py::TestResizeExecutor::test_resize_after_timeout
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ # high memory test needs a lot of memory + is broken on 32-bit platforms
+ epytest --skip-high-memory -p rerunfailures --reruns=5
+}
diff --git a/dev-python/lxml/Manifest b/dev-python/lxml/Manifest
index 61747f1bb37b..5715059ddf07 100644
--- a/dev-python/lxml/Manifest
+++ b/dev-python/lxml/Manifest
@@ -1,2 +1,3 @@
DIST lxml-5.3.1.gh.tar.gz 951340 BLAKE2B e73cc8513cfe42d163b8475788472f00f2f3492deb7536b6556ed4f14924ffe57497947e660a161ec5a0821135b3d103799c0da0b9c647ccdcbfa9b0c5d6a1d9 SHA512 e89ada765791b67e4e83a9151c500f2e8d924c05d421a46bece1183666fc566d545d2e6b62987075e82cbafb8cd4b1f48f6f94e9ebcc0bbd7227d687b2282794
DIST lxml-5.3.2.gh.tar.gz 951502 BLAKE2B d9a9bc49ecbc2d9dba2539c0fa884afc62fbb7a8d6b02571c1ee387386f473472e7cea66e776d758ab1f9307c77f938761ef1be58b029edb2c3b9546aa5f8561 SHA512 d128f7d6dd2a08286f8478508cb2693c7749c5f3822acfcd10877b92bec24e82c3da624b3a1872f95f72d310247083c84f76a42eadfc910b8180749d85b32d8b
+DIST lxml-5.4.0.gh.tar.gz 950906 BLAKE2B 00c47f34178df5f1b3555f5980a0c7ca9ecc5f0b54cc2756125fd6b2684e369563220c42d380f43af4e53ed2756ebfd71e9f6e1113aa192f14c76defb56c944a SHA512 a7f297b94fd88f20de9371bef207f8e95243a060b24e4006ec310c4a94f6147c8bb38fc3cff0f874f0b76282e745bb62e65a5cba2ce6e34ee54be0e3fde66724
diff --git a/dev-python/lxml/lxml-5.4.0.ebuild b/dev-python/lxml/lxml-5.4.0.ebuild
new file mode 100644
index 000000000000..171a0220fb1d
--- /dev/null
+++ b/dev-python/lxml/lxml-5.4.0.ebuild
@@ -0,0 +1,121 @@
+# Copyright 1999-2025 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_{9,10,11,12,13} pypy3 )
+
+inherit distutils-r1 optfeature toolchain-funcs
+
+DESCRIPTION="A Pythonic binding for the libxml2 and libxslt libraries"
+HOMEPAGE="
+ https://lxml.de/
+ https://pypi.org/project/lxml/
+ https://github.com/lxml/lxml/
+"
+SRC_URI="
+ https://github.com/lxml/lxml/archive/${P}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+S=${WORKDIR}/lxml-${P}
+
+LICENSE="BSD ElementTree GPL-2 PSF-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc examples +threads test"
+RESTRICT="!test? ( test )"
+
+# Note: lib{xml2,xslt} are used as C libraries, not Python modules.
+DEPEND="
+ >=dev-libs/libxml2-2.10.3
+ >=dev-libs/libxslt-1.1.38
+"
+RDEPEND="
+ ${DEPEND}
+"
+# cython: they are using __pyx_empty_tuple directly
+BDEPEND="
+ virtual/pkgconfig
+ <dev-python/cython-3.1[${PYTHON_USEDEP}]
+ >=dev-python/cython-3.0.10[${PYTHON_USEDEP}]
+ doc? (
+ $(python_gen_any_dep '
+ dev-python/docutils[${PYTHON_USEDEP}]
+ dev-python/pygments[${PYTHON_USEDEP}]
+ dev-python/sphinx[${PYTHON_USEDEP}]
+ dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]
+ ')
+ )
+ test? (
+ dev-python/cssselect[${PYTHON_USEDEP}]
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-5.3.0-pypy.patch"
+)
+
+python_check_deps() {
+ use doc || return 0
+ python_has_version -b "dev-python/docutils[${PYTHON_USEDEP}]" &&
+ python_has_version -b "dev-python/pygments[${PYTHON_USEDEP}]" &&
+ python_has_version -b "dev-python/sphinx[${PYTHON_USEDEP}]" &&
+ python_has_version -b "dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]"
+}
+
+python_prepare_all() {
+ # don't use some random SDK on Darwin
+ sed -i -e '/_ldflags =/s/=.*isysroot.*darwin.*None/= None/' \
+ setupinfo.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_compile() {
+ local DISTUTILS_ARGS=(
+ # by default it adds -w to CFLAGS
+ --warnings
+ )
+ tc-export PKG_CONFIG
+ distutils-r1_python_compile
+}
+
+python_compile_all() {
+ use doc && emake html
+}
+
+python_test() {
+ local dir=${BUILD_DIR}/test$(python_get_sitedir)/lxml
+ local -x PATH=${BUILD_DIR}/test/usr/bin:${PATH}
+
+ cp -al "${BUILD_DIR}"/{install,test} || die
+ cp -al src/lxml/tests "${dir}/" || die
+ cp -al src/lxml/html/tests "${dir}/html/" || die
+ mkdir "${dir}"/../../doc || die
+ # this one needs to be copied, because upstream uses doc/../../../doc
+ cp -r "${S}"/doc "${dir}"/../../ || die
+ ln -s "${S}"/doc "${dir}"/../../../../ || die
+
+ "${EPYTHON}" test.py --no-src -vv --all-levels -p ||
+ die "Tests fail on ${EPYTHON}"
+}
+
+python_install_all() {
+ if use doc; then
+ local DOCS=( README.rst *.txt doc/*.txt )
+ local HTML_DOCS=( doc/html/. )
+ fi
+ if use examples; then
+ dodoc -r samples
+ fi
+
+ distutils-r1_python_install_all
+}
+
+pkg_postinst() {
+ optfeature "Support for BeautifulSoup as a parser backend" dev-python/beautifulsoup4
+ optfeature "Translates CSS selectors to XPath 1.0 expressions" dev-python/cssselect
+ optfeature "Support for lxml.html.clean sanitizer" dev-python/lxml-html-clean
+}
diff --git a/dev-python/lz4/Manifest b/dev-python/lz4/Manifest
index 403ceb471701..ba3feedbff32 100644
--- a/dev-python/lz4/Manifest
+++ b/dev-python/lz4/Manifest
@@ -1,2 +1 @@
-DIST lz4-4.4.3.tar.gz 171848 BLAKE2B 54873ac48b5b43787dd45c92056af2d302e018c0b78acb56ccef50becb4073ded1dead6d02ef203b239a4699e0af4527da04a74d3550a5a36fcdc88dda98772c SHA512 b02899f3011453f77e99aa31c7dc717a7d0ca636475e9ead617196d906e3e2abcee511e84f68e9071b27227cad8ece7fb5f78c04bd8f44cc0959bb687b72e73f
DIST lz4-4.4.4.tar.gz 171884 BLAKE2B a5a1a183b831de32c6197007a278351ed2ff7003c77d686432887436ca8920345995f1a1c2f64144d71ad929fe0cea13939c568030b8622a6b55bc53f0cad41b SHA512 eb49fa28d8745c8d232e82565338e1021da8bc27b4f9c01277e51fbd01a30943f420ee7a983e4683ccb81e72039a12b05b56836fa06c10039ba7267df72d0fcb
diff --git a/dev-python/lz4/lz4-4.4.3.ebuild b/dev-python/lz4/lz4-4.4.3.ebuild
deleted file mode 100644
index 7f3eb5d7079e..000000000000
--- a/dev-python/lz4/lz4-4.4.3.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2025 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_{9,10,11,12,13} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="LZ4 Bindings for Python"
-HOMEPAGE="
- https://github.com/python-lz4/python-lz4/
- https://pypi.org/project/lz4/
-"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~loong ~riscv ~sparc x86 ~amd64-linux ~x86-linux"
-
-DEPEND="
- app-arch/lz4:=
-"
-RDEPEND="
- ${DEPEND}
-"
-BDEPEND="
- dev-python/setuptools-scm[${PYTHON_USEDEP}]
- dev-python/pkgconfig[${PYTHON_USEDEP}]
- test? (
- dev-python/psutil[${PYTHON_USEDEP}]
- )
-"
-
-# note: test suite fails with xdist
-distutils_enable_tests pytest
-
-python_test() {
- local EPYTEST_IGNORE=(
- # lz4.stream is not officially supported and not installed by default
- # (we do not support installing it at the moment)
- tests/stream
- )
-
- rm -rf lz4 || die
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- epytest
-}
diff --git a/dev-python/lz4/lz4-4.4.4.ebuild b/dev-python/lz4/lz4-4.4.4.ebuild
index 2d5f70de8a9d..7f3eb5d7079e 100644
--- a/dev-python/lz4/lz4-4.4.4.ebuild
+++ b/dev-python/lz4/lz4-4.4.4.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~alpha amd64 ~arm arm64 ~loong ~riscv ~sparc x86 ~amd64-linux ~x86-linux"
+KEYWORDS="~alpha amd64 arm arm64 ~loong ~riscv ~sparc x86 ~amd64-linux ~x86-linux"
DEPEND="
app-arch/lz4:=
diff --git a/dev-python/mkdocs-git-authors-plugin/Manifest b/dev-python/mkdocs-git-authors-plugin/Manifest
index e656aefaebbb..63885c3021ec 100644
--- a/dev-python/mkdocs-git-authors-plugin/Manifest
+++ b/dev-python/mkdocs-git-authors-plugin/Manifest
@@ -1 +1,2 @@
DIST mkdocs-git-authors-plugin-0.9.4.gh.tar.gz 92571 BLAKE2B c9b0cab92b179157bf5af93c1c1df714df17b959bb3a18ea3bc0fa0d113323b37fad1b5406ce2bbb1b3eb1ed0ac213525e1129e0b96b7abcca57fc48397dd283 SHA512 8036752ae314a9eb87567a6b8a55d5fd1fc7d6beca9e8a2f6d6d3c51f77bc11c880cb747a28b6dacfc78959a56944ab7c86b523b3909fcf33ddd1611da594c2b
+DIST mkdocs-git-authors-plugin-0.9.5.gh.tar.gz 93152 BLAKE2B 746fb1010b6631e2387a0207159aa88a11aa92d3866e8f2487b5dacddb1df0813b16e93287c3c42339e0f38c7d01986157e9e268450af325f2de2243de615db3 SHA512 f1e147dd15515f92641ab1e2eb858edb93c720af21a340eed6414ea3014ea1bac264478f0985fa6cc1014cadc3ac1e9c41f6744b2a4fac1fb83ceb47f7eacadf
diff --git a/dev-python/mkdocs-git-authors-plugin/mkdocs-git-authors-plugin-0.9.5.ebuild b/dev-python/mkdocs-git-authors-plugin/mkdocs-git-authors-plugin-0.9.5.ebuild
new file mode 100644
index 000000000000..16a593b2d0d5
--- /dev/null
+++ b/dev-python/mkdocs-git-authors-plugin/mkdocs-git-authors-plugin-0.9.5.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517="setuptools"
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+# Requires self to be installed to build docs
+# TODO: Do this a bit better
+DOCS_BUILDER="mkdocs"
+DOCS_DEPEND="
+ dev-python/regex
+ dev-python/mkdocs-material
+ dev-python/mkdocs-git-authors-plugin
+"
+DOCS_INITIALIZE_GIT=1
+
+inherit distutils-r1 docs
+
+DESCRIPTION="Mkdocs plugin to display git authors of a page"
+HOMEPAGE="
+ https://github.com/timvink/mkdocs-git-authors-plugin/
+ https://pypi.org/project/mkdocs-git-authors-plugin/
+"
+SRC_URI="https://github.com/timvink/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+
+# Tests are broken outside of upstream git repo
+RESTRICT="test"
+
+RDEPEND="
+ dev-python/gitpython[${PYTHON_USEDEP}]
+ >=dev-python/mkdocs-1.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/click[${PYTHON_USEDEP}]
+ dev-python/mkdocs-material[${PYTHON_USEDEP}]
+ dev-python/mkdocs-git-revision-date-localized-plugin[${PYTHON_USEDEP}]
+ dev-vcs/git
+ )
+"
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ # mkdocs-git-authors tests need git repo
+ use test && initialize_git_repo
+
+ distutils-r1_python_prepare_all
+}
diff --git a/dev-python/more-itertools/Manifest b/dev-python/more-itertools/Manifest
index e19b9d37d764..a608b58dafc6 100644
--- a/dev-python/more-itertools/Manifest
+++ b/dev-python/more-itertools/Manifest
@@ -1 +1,2 @@
DIST more-itertools-10.6.0.tar.gz 125009 BLAKE2B f4bade093a730f7daf035d698bfb0fb8f0f8aa6832546e30f9e6d0c39aef96e9cd326d73682c7fa5458f7e75511d759c443a58fed96e831d11375818abb020d8 SHA512 57322c80252e79d1ef82fe5cfc3a3f0208ab6f90d2e59c47491974c23fc30ad1b48d1671c06507b0489b2bdb240c52dee5419a19b96ae06a3d2bdb3a3b483eab
+DIST more_itertools-10.7.0.tar.gz 127671 BLAKE2B 0540d13c0dc2918ea612a1f8ca651f6a0a27d1ab3b6b13160f0bca07fc8b80c0d4b5c175c466cde59d24d54d8ed1cc99f1765d1a559064b82e19ead196ae515c SHA512 a0b2b5d7ae4dc6ecc3c6b81dacccbe23174f31cf6eaba4bef27bf17f8b69a083cbad54818db870289d788da8bbffc362f8b34acb838a5af1c398bd85fbd6db5d
diff --git a/dev-python/more-itertools/more-itertools-10.7.0.ebuild b/dev-python/more-itertools/more-itertools-10.7.0.ebuild
new file mode 100644
index 000000000000..a40c3d03c4de
--- /dev/null
+++ b/dev-python/more-itertools/more-itertools-10.7.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="More routines for operating on iterables, beyond itertools"
+HOMEPAGE="
+ https://github.com/more-itertools/more-itertools/
+ https://pypi.org/project/more-itertools/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+
+distutils_enable_sphinx docs \
+ dev-python/furo
+distutils_enable_tests unittest
diff --git a/dev-python/mypy-extensions/Manifest b/dev-python/mypy-extensions/Manifest
index edb1536892fa..eb02687d626c 100644
--- a/dev-python/mypy-extensions/Manifest
+++ b/dev-python/mypy-extensions/Manifest
@@ -1 +1,2 @@
DIST mypy_extensions-1.0.0.gh.tar.gz 6097 BLAKE2B 099616ee0bacad62d9ce642c3adb1eebe27546f7c567d1e0fa6ec04d9e6cbcda2966fff9769940cfda8b7d6cc9f33100af9d6f416ab2def26079668a16c354b3 SHA512 ac89a9f60a2c3df3457d5a6ab7ed47b72dd173646ef57f1450556051617e62046405a69fadeb40d2c24e68ce6ffed56d9182365e3203477facdc935e1a807847
+DIST mypy_extensions-1.1.0.gh.tar.gz 6853 BLAKE2B 05c7b9b6ccc873d11642057e8c5c16cc4f7a5ad597a2e90f8d540e4875f01bd4e665929cb0f3294aaac3b0720b4ca3c9697e5676ad42e8e59f1111dfe304d9e1 SHA512 f31428ae3315675c7789eba1a92081a2155babc6d2b229482c2d2f2891e9bb50a182a589adaa5b2afee8c2d08c170946ba3eb3b4f76d219be92ba1876eff4b36
diff --git a/dev-python/mypy-extensions/mypy-extensions-1.1.0.ebuild b/dev-python/mypy-extensions/mypy-extensions-1.1.0.ebuild
new file mode 100644
index 000000000000..afbcc8ebb4ee
--- /dev/null
+++ b/dev-python/mypy-extensions/mypy-extensions-1.1.0.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+DISTUTILS_USE_PEP517=flit
+
+inherit distutils-r1
+
+MY_P=mypy_extensions-${PV}
+DESCRIPTION="Type system extensions for programs checked with mypy"
+HOMEPAGE="
+ https://www.mypy-lang.org/
+ https://github.com/python/mypy_extensions/
+"
+SRC_URI="
+ https://github.com/python/mypy_extensions/archive/${PV}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+
+distutils_enable_tests pytest
+
+python_test() {
+ epytest tests/*.py
+}
diff --git a/dev-python/pivy/Manifest b/dev-python/pivy/Manifest
index 02d933036402..189226c130b7 100644
--- a/dev-python/pivy/Manifest
+++ b/dev-python/pivy/Manifest
@@ -1,2 +1,3 @@
+DIST pivy-0.6.10.tar.gz 6678472 BLAKE2B 125551acde1bb5b323672e24cfd7554a32fab3a0abfa3431594ed793603f2ad38d957fddb75e8b5ad7bd40ea3d9259c7ed6b07e91f543697b0950f23892ac4cc SHA512 d4f52635c1e18f137322e52ead8e8e69a6519ed0902aab17a264fc296df9fe2b82221de2234aa152db9c7fd45003a6299a19ddace4488adea99c2159d31d68bb
DIST pivy-0.6.8-python312-unittests.patch 39874 BLAKE2B e63be84da3b852c89e04cf7baa61b44e175414245dc20799a6463fecb6896082dfb03a365540880e37b30cde99c0124bd5b2aacf9d011d580cda2c1add917922 SHA512 3cb3980b31b2d6ff957a38b028319c32bfc0398cd08048171f1fe7a0b3e25a6a6096960fdfc2ada1b4adf184c381537214a7110569e91e75ede7b951a4e3ac98
DIST pivy-0.6.8.tar.gz 6618458 BLAKE2B 08c57f0d7bff15a7f9d49b56b75b44c587416eb0feb2b237db48d7e2edd478f9212d7e898f4dd102b9d5dd10046dd652f37a9974861598c7ba91d7fdb1145c91 SHA512 723b09028f2e3075056b9588cebad0ddccbc98d0c15552b9565c177b0de764b9645f88ea2bc534ccf606f2e0b59f91e1d03551b55ece66c0654ce9cdf09a1a7c
diff --git a/dev-python/pivy/pivy-0.6.10.ebuild b/dev-python/pivy/pivy-0.6.10.ebuild
new file mode 100644
index 000000000000..09e370b410d8
--- /dev/null
+++ b/dev-python/pivy/pivy-0.6.10.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2025 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_{9,10,11,12,13} )
+
+inherit distutils-r1
+
+DESCRIPTION="Coin3D bindings for Python"
+HOMEPAGE="https://github.com/coin3d/pivy"
+
+if [[ ${PV} == *9999 ]]; then
+ inherit git-r3
+ PIVY_REPO_URI="https://github.com/coin3d/pivy.git"
+else
+ SRC_URI="
+ https://github.com/coin3d/pivy/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz
+ "
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="ISC"
+SLOT="0"
+IUSE="+quarter soqt test"
+RESTRICT="!test? ( test )"
+
+REQUIRED_USE="
+ ${PYTHON_REQUIRED_USE}
+ || ( quarter soqt )
+"
+
+RDEPEND="
+ >=media-libs/coin-4.0.0
+ quarter? ( media-libs/quarter )
+ soqt? ( >=media-libs/SoQt-1.6.0 )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ dev-build/cmake
+ dev-lang/swig
+ test? ( ${RDEPEND} )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.6.6-0001-fix-CMakeLists.txt-for-distutils_cmake.patch
+ "${FILESDIR}"/${PN}-0.6.6-0002-Gentoo-specific-clear-swig-deprecation-warning.patch
+ "${FILESDIR}"/${PN}-0.6.7-find-qmake.patch
+ # in 0.6.9:
+ "${FILESDIR}"/${PN}-0.6.8-SoQtViewer-w-cmath.patch # bug 920482
+)
+
+DOCS=( AUTHORS HACKING NEWS README.md THANKS )
+
+python_test() {
+ # visual_test.py is interactive
+ tests=(
+ tests/coin_tests.py
+ tests/pyside_tests.py
+ tests/quarter_tests.py
+ )
+ for f in "${strings[@]}"; do
+ "${EPYTHON}" "${f}" || die "Test ${f} failed with ${EPYTHON}"
+ done
+}
diff --git a/dev-python/pycares/Manifest b/dev-python/pycares/Manifest
index f3721c8e0d7e..06fa1a98785e 100644
--- a/dev-python/pycares/Manifest
+++ b/dev-python/pycares/Manifest
@@ -1,3 +1,2 @@
-DIST pycares-4.5.0.tar.gz 821554 BLAKE2B 75e178d288779876becae08af08218364f13fd6b2e03c4dc6a67e5e330e26ef17fee831d0a9329a66cc9358fcc167808379b6881a0f8e18bd76a8e6ed2587c60 SHA512 224c8807396590e07fbe10c3f26eae1a457bf4969788b432b4367898382a5c68f2d7ef33f62e31dea772491319287ff1685f3cb0eb78f9c07cec80d50864e617
DIST pycares-4.6.0.tar.gz 822080 BLAKE2B 1bfad7d7afe0eaabe12ac758655889ff2c819137dfd63634646c060d09599b7bc8a18ae8c782742e40f552959298c312c6c152927775f5a5fdc539b148d97a86 SHA512 3b4db74e8411359165bf6c8b2c3ece2b954bd50cbe2db9c8c1678a2f18611f7c548dd2c004c8db40c28d8384a6f41a4863e0661892eda93e735b5182ba68a802
DIST pycares-4.6.1.tar.gz 822359 BLAKE2B 54e055a716a6fc021e54fd12e255fc8e54e774b8391e5ab7291176a18138431184598bc2fd73ab14d226f4db1f65798bf18dbc5ff7a698438117ca131c5497c9 SHA512 140f206435a2f7f6bdcdb707035f6216710852161552dd733a383cc13e085e44a168bc425c0bc107bc82c4808c13a58b48407af0b45c7b5abae3e1d39fffbc95
diff --git a/dev-python/pycares/pycares-4.5.0.ebuild b/dev-python/pycares/pycares-4.5.0.ebuild
deleted file mode 100644
index cfe0f6ee7a06..000000000000
--- a/dev-python/pycares/pycares-4.5.0.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 1999-2025 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_{9,10,11,12,13} pypy3 )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="Python interface for c-ares"
-HOMEPAGE="
- https://github.com/saghul/pycares/
- https://pypi.org/project/pycares/
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-IUSE="test"
-# Tests fail with network-sandbox, since they try to resolve google.com
-PROPERTIES="test_network"
-RESTRICT="test"
-
-DEPEND="
- net-dns/c-ares:=
-"
-BDEPEND="
- $(python_gen_cond_dep '
- dev-python/cffi[${PYTHON_USEDEP}]
- ' 'python*')
-"
-RDEPEND="
- dev-python/idna[${PYTHON_USEDEP}]
- ${DEPEND}
- ${BDEPEND}
-"
-BDEPEND+="
- test? (
- dev-python/idna[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-
-EPYTEST_DESELECT=(
- # regression due to Internet changing (probably)
- # https://github.com/saghul/pycares/issues/187
- tests/test_all.py::DNSTest::test_query_class_chaos
- tests/test_all.py::DNSTest::test_idna_encoding_query_a
- tests/test_all.py::DNSTest::test_query_txt_chunked
- # TODO
- tests/test_all.py::DNSTest::test_custom_resolvconf
-)
-
-export PYCARES_USE_SYSTEM_LIB=1
diff --git a/dev-python/pycares/pycares-4.6.0.ebuild b/dev-python/pycares/pycares-4.6.0.ebuild
index da8068a3cbbe..cfe0f6ee7a06 100644
--- a/dev-python/pycares/pycares-4.6.0.ebuild
+++ b/dev-python/pycares/pycares-4.6.0.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha amd64 ~arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="test"
# Tests fail with network-sandbox, since they try to resolve google.com
PROPERTIES="test_network"
diff --git a/dev-python/pyglet/Manifest b/dev-python/pyglet/Manifest
index e45980d34fb4..a2b5faa43e8c 100644
--- a/dev-python/pyglet/Manifest
+++ b/dev-python/pyglet/Manifest
@@ -1,2 +1,3 @@
DIST pyglet-2.1.3.gh.tar.gz 6534900 BLAKE2B edf8715213682b184050f1ab2d51913e787acf03e6911b68d7076afb9427ec6d60efbc28145f4e5b7e228d00d0aa5daa5ebb5a8c5a118f2006ab447360e8440f SHA512 fbdc45888ed0cbb380115365b96db82c57ffbfc8f03c03265a276992e154cc5ec81c752e6fc8940003d96c489009eefe0976e3f87129fea1605ab6db7b4fe1bf
DIST pyglet-2.1.4.gh.tar.gz 6564795 BLAKE2B 07f2c08e1d7e3ef7ad915f7e4a873d24ebad808dc2cd35d36509ddf3c7ac99c9db097f04023fb5ca7774ed6d0b82eda2e44dc1b73d29136d3f4ee64d456bc587 SHA512 726ee72eae2521a6136fe413459daa9cef22aa806f189f42f8eb8118a4265e0b97618410e1747bd3070268f8aeabb81f753745ad350302bd33d7f677d76d4b72
+DIST pyglet-2.1.5.gh.tar.gz 6564793 BLAKE2B bb70824f7c0367ad1bb4bd4ebf7b0f36640d8f0d610a053e469444dd2c7bd72be6527f6204d2722cb2e9744072e03f859f91a9d4771afa6303521f9012b01ddd SHA512 1cec5f23bac6217b1df6e56c3725ada18ea0c1727347dfb68433dc24c8b30d369e049142033225f0165db4e0e7cc6440428c78ebe6d127375a83edbb4d9162a3
diff --git a/dev-python/pyglet/pyglet-2.1.5.ebuild b/dev-python/pyglet/pyglet-2.1.5.ebuild
new file mode 100644
index 000000000000..6a4098f915db
--- /dev/null
+++ b/dev-python/pyglet/pyglet-2.1.5.ebuild
@@ -0,0 +1,85 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+
+inherit distutils-r1 virtualx xdg-utils
+
+MY_P=${P/_/.}
+DESCRIPTION="Cross-platform windowing and multimedia library for Python"
+HOMEPAGE="
+ https://pyglet.org/
+ https://github.com/pyglet/pyglet/
+ https://pypi.org/project/pyglet/
+"
+SRC_URI="
+ https://github.com/pyglet/pyglet/archive/v${PV/_/.}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux"
+IUSE="examples image +sound"
+
+RDEPEND="
+ virtual/glu
+ virtual/opengl
+ image? (
+ || (
+ dev-python/pillow[${PYTHON_USEDEP}]
+ x11-libs/gtk+:2
+ )
+ )
+ sound? (
+ || (
+ media-libs/libpulse
+ media-libs/openal
+ )
+ )
+"
+# ffmpeg? ( media-libs/avbin-bin )
+BDEPEND="
+ test? (
+ dev-python/pillow[${PYTHON_USEDEP}]
+ media-libs/fontconfig
+ x11-base/xorg-server[-minimal]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_test() {
+ virtx distutils-r1_src_test
+}
+
+python_test() {
+ xdg_environment_reset
+
+ local EPYTEST_DESELECT=(
+ # lacking device/server permissions
+ tests/unit/media/test_listener.py::test_openal_listener
+ tests/unit/media/test_listener.py::test_pulse_listener
+ # fragile to system load
+ tests/unit/media/test_player.py::PlayerTestCase::test_pause_resume
+ tests/unit/test_clock_freq.py::test_elapsed_time_between_tick
+ )
+
+ # Specify path to avoid running interactive tests
+ # We could add in integration tests, but they're slow
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ nonfatal epytest tests/unit || die "Tests failed with ${EPYTHON}"
+}
+
+python_install_all() {
+ if use examples; then
+ dodoc -r examples
+ docompress -x /usr/share/doc/${PF}/examples
+ fi
+
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/pyicu/Manifest b/dev-python/pyicu/Manifest
index 62db6d9eecb5..8739060aad75 100644
--- a/dev-python/pyicu/Manifest
+++ b/dev-python/pyicu/Manifest
@@ -1,2 +1,3 @@
DIST pyicu-v2.14.tar.bz2 198031 BLAKE2B f0b4e4162df9854c68dd61aae9b57f97793283e57658327cc41d8f71661dbe45e1b2af1fceb214187d031906a769f70e16085764af30b28ec190097f0f5663d7 SHA512 671a02c69c2ad5b0d6dec5eceeda87500d6c362cd8066147b5027d0b37211025deb7e231a29f977c98f9ed22201b554988418627aeb7a10164ebcdeaacab2cef
DIST pyicu-v2.15.1.tar.bz2 199541 BLAKE2B 02cdc69f3a1ec2db33a938df89bf47837a9e03a14e036d1200f04b4914965fb7da0e48c713b03c0e29b133fdeae4b341e454473ea62d0e2016412497cc92bdd0 SHA512 878fd518518f1072b422c14d612ca781e7ec1b85f9b2848dca26395232526206b35a8017371f5b436e48e754683879cada4c5082a7c9e47db81923dad9a85099
+DIST pyicu-v2.15.2.tar.bz2 199619 BLAKE2B ae08a808d74a574a61eae2f3b2701a2fb379c790115ca6018a1511b1fc4e84864a2c9f426e3566e924285047ccf432a8f09b81529a3e0c9ef8284e8d72b75fcd SHA512 5effb58c9da01d5cc37289991dc82cf1d6aac07b381f8b7355171a3a4cce8528c550ae27ba58342b28ff8ad15ba6266fdaccf2e3c38347c9073c2caeebf04c81
diff --git a/dev-python/pyicu/pyicu-2.15.2.ebuild b/dev-python/pyicu/pyicu-2.15.2.ebuild
new file mode 100644
index 000000000000..a9fadabeb119
--- /dev/null
+++ b/dev-python/pyicu/pyicu-2.15.2.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2025 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_{9,10,11,12,13} )
+
+inherit distutils-r1
+
+MY_P=${P/-/-v}
+DESCRIPTION="Python bindings for dev-libs/icu"
+HOMEPAGE="
+ https://gitlab.pyicu.org/main/pyicu/
+ https://pypi.org/project/pyicu/
+"
+SRC_URI="
+ https://gitlab.pyicu.org/main/pyicu/-/archive/v${PV}/${MY_P}.tar.bz2
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86 ~arm64-macos ~x64-macos"
+
+DEPEND="
+ dev-libs/icu:=
+"
+RDEPEND="
+ ${DEPEND}
+"
+BDEPEND="
+ test? (
+ dev-python/six[${PYTHON_USEDEP}]
+ )
+"
+
+DOCS=( CHANGES CREDITS README.md )
+
+distutils_enable_tests pytest
+
+python_test() {
+ epytest test
+}
diff --git a/dev-python/pyotp/pyotp-2.9.0.ebuild b/dev-python/pyotp/pyotp-2.9.0.ebuild
index f3e90cc75ac8..77ea3db5e04a 100644
--- a/dev-python/pyotp/pyotp-2.9.0.ebuild
+++ b/dev-python/pyotp/pyotp-2.9.0.ebuild
@@ -16,6 +16,6 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+KEYWORDS="~amd64 ~arm arm64 ~ppc64 ~riscv ~x86"
distutils_enable_tests unittest
diff --git a/dev-python/pypi-attestations/Manifest b/dev-python/pypi-attestations/Manifest
index 1fcecc0b06c9..3b9f87114ddf 100644
--- a/dev-python/pypi-attestations/Manifest
+++ b/dev-python/pypi-attestations/Manifest
@@ -1 +1,2 @@
DIST pypi_attestations-0.0.23.tar.gz 124046 BLAKE2B 9545680499dcee9241012b9c5e9a86368fc17db0608f0635fa1234769df51d78364fd1b202cb22c155ef6fec5f9ff6877bc996f68d64bbe98c10f680df2ff6db SHA512 1df039d715992b5d5e40fffee9982cf73c950f33ef5b8251382192d29f0652f24d868f83887cf394dfd1a7166b5d98a5fab51812987a9cc49f67ee548772929a
+DIST pypi_attestations-0.0.24.tar.gz 124841 BLAKE2B 327fc0abd3c1ff35ecde3e020bf059870f1b97b0cda11833a3dfb29286b4f7575c0121b57871222792e909d81645110ca208b0a7781fb7baa885ad6bbc8d20f2 SHA512 f894b597896026cb65cca729dbd58606eaba2e989562fef402bc882d20335a9adf448d3f4e8e22061c8a82cafd3238df36e83142d3e13e67a477099d033c7925
diff --git a/dev-python/pypi-attestations/pypi-attestations-0.0.24.ebuild b/dev-python/pypi-attestations/pypi-attestations-0.0.24.ebuild
new file mode 100644
index 000000000000..777cc16c5b48
--- /dev/null
+++ b/dev-python/pypi-attestations/pypi-attestations-0.0.24.ebuild
@@ -0,0 +1,38 @@
+# Copyright 2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Convert between Sigstore Bundles and PEP-740 Attestation objects"
+HOMEPAGE="
+ https://github.com/trailofbits/pypi-attestations/
+ https://pypi.org/project/pypi-attestations/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ =dev-python/pyasn1-0.6*[${PYTHON_USEDEP}]
+ >=dev-python/pydantic-2.10.0[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/rfc3986[${PYTHON_USEDEP}]
+ <dev-python/sigstore-3.7[${PYTHON_USEDEP}]
+ dev-python/sigstore-protobuf-specs[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+ test? (
+ dev-python/pretend[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/pysvn/pysvn-1.9.22-r1.ebuild b/dev-python/pysvn/pysvn-1.9.22-r1.ebuild
index 660ef8fc788c..1bbd4dcd3cd2 100644
--- a/dev-python/pysvn/pysvn-1.9.22-r1.ebuild
+++ b/dev-python/pysvn/pysvn-1.9.22-r1.ebuild
@@ -15,7 +15,7 @@ SRC_URI="https://downloads.sourceforge.net/project/pysvn/pysvn/V${PV}/${P}.tar.g
LICENSE="Apache-1.1"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
+KEYWORDS="~amd64 ~arm ~ppc x86 ~amd64-linux ~x86-linux ~ppc-macos"
IUSE="doc examples"
DEPEND="
diff --git a/dev-python/python-augeas/python-augeas-1.1.0-r1.ebuild b/dev-python/python-augeas/python-augeas-1.1.0-r1.ebuild
index 3a7a6d195665..c23dd2808553 100644
--- a/dev-python/python-augeas/python-augeas-1.1.0-r1.ebuild
+++ b/dev-python/python-augeas/python-augeas-1.1.0-r1.ebuild
@@ -18,7 +18,7 @@ HOMEPAGE="
LICENSE="LGPL-2.1"
SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ~ppc64 ~riscv x86"
+KEYWORDS="amd64 ~arm arm64 ~ppc64 ~riscv x86"
RDEPEND="
app-admin/augeas
diff --git a/dev-python/pyzmq/Manifest b/dev-python/pyzmq/Manifest
index 3e57e64b0e25..a4dc52007e35 100644
--- a/dev-python/pyzmq/Manifest
+++ b/dev-python/pyzmq/Manifest
@@ -1,2 +1 @@
-DIST pyzmq-26.3.0.gh.tar.gz 278127 BLAKE2B baa30f3901a76786933df8ab676a759ea3bf6a863508ea76c66e53e844c8bbb8a445a2b01ac65163af043ca81cc097db6edf3d6e95d92d9f1c134fd29160e403 SHA512 463124f0788b2370de1f3b14fcaeebca29f81f96bf5dbc959c6aef77710ccd5dbf5a68aa436ab3915c18c46367ba2034b5320f49bf9cda2a4c13b528adad212e
DIST pyzmq-26.4.0.gh.tar.gz 279710 BLAKE2B 45d798d8abeed1ebcaa39c1a53f4669a84e1fbd6b6e3df1444d60e6615e684557f5106c1b540447946977bf88c900f765b9ffda9c790bbfb08a45b072ef74183 SHA512 8a90e81ac3e6819ca559bd7b9a5261967f8082da257a79288c7fada32611b72d96a03ad53177894446ee5559a8a763b1a1c97b98e236d120f678d8fa0623f42c
diff --git a/dev-python/pyzmq/pyzmq-26.3.0.ebuild b/dev-python/pyzmq/pyzmq-26.3.0.ebuild
deleted file mode 100644
index 8ae4a9af7da1..000000000000
--- a/dev-python/pyzmq/pyzmq-26.3.0.ebuild
+++ /dev/null
@@ -1,87 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-DISTUTILS_USE_PEP517=scikit-build-core
-PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
-PYTHON_REQ_USE="threads(+)"
-
-inherit distutils-r1
-
-DESCRIPTION="Lightweight and super-fast messaging library built on top of the ZeroMQ library"
-HOMEPAGE="
- https://zeromq.org/languages/python/
- https://pypi.org/project/pyzmq/
- https://github.com/zeromq/pyzmq/
-"
-SRC_URI="
- https://github.com/zeromq/pyzmq/archive/v${PV}.tar.gz
- -> ${P}.gh.tar.gz
-"
-
-LICENSE="LGPL-3"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~x64-macos"
-IUSE="drafts"
-
-# There are additional test failures if zeromq has the draft api enabled, but pyzmq has it disabled.
-DEPEND="
- >=net-libs/zeromq-4.2.2-r2:=[drafts=]
-"
-# It uses cffi backend for pypy, cython backend for cpython
-RDEPEND="
- ${DEPEND}
-"
-BDEPEND="
- dev-python/packaging[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '
- >=dev-python/cython-3.0.0[${PYTHON_USEDEP}]
- ' 'python*')
- test? (
- dev-python/pytest-asyncio[${PYTHON_USEDEP}]
- dev-python/pytest-rerunfailures[${PYTHON_USEDEP}]
- >=dev-python/tornado-5.0.2[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-# TODO: Package enum_tools
-# distutils_enable_sphinx docs/source \
-# dev-python/numpydoc \
-# dev-python/sphinx-rtd-theme \
-# dev-python/myst-parser
-
-src_configure() {
- DISTUTILS_ARGS=(
- -DZMQ_DRAFT_API="$(usex drafts)"
- -DPYZMQ_NO_BUNDLE=ON
- # unnecessarily adds /usr/lib* to rpath
- -DPYZMQ_LIBZMQ_RPATH=OFF
- )
-}
-
-python_test() {
- local EPYTEST_DESELECT=(
- # often crashes zmq?
- tests/test_log.py::TestPubLog
- )
- local EPYTEST_IGNORE=(
- # Avoid dependency on mypy
- tests/test_mypy.py
- )
-
- case ${EPYTHON} in
- pypy3*)
- EPYTEST_DESELECT+=(
- # not implemented in cffi variant?
- tests/test_draft.py::TestDraftSockets
- )
- esac
-
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- rm -rf zmq || die
- # avoid large to reduce memory consumption
- epytest -p asyncio -p rerunfailures tests -m "not large"
-}
diff --git a/dev-python/pyzmq/pyzmq-26.4.0.ebuild b/dev-python/pyzmq/pyzmq-26.4.0.ebuild
index e6f6da28ef1b..8ae4a9af7da1 100644
--- a/dev-python/pyzmq/pyzmq-26.4.0.ebuild
+++ b/dev-python/pyzmq/pyzmq-26.4.0.ebuild
@@ -23,7 +23,7 @@ SRC_URI="
LICENSE="LGPL-3"
SLOT="0"
-KEYWORDS="~alpha amd64 ~arm arm64 hppa ~loong ~m68k ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~x64-macos"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~x64-macos"
IUSE="drafts"
# There are additional test failures if zeromq has the draft api enabled, but pyzmq has it disabled.
diff --git a/dev-python/rapidfuzz/Manifest b/dev-python/rapidfuzz/Manifest
index d5afd0041f63..c0c42d096d48 100644
--- a/dev-python/rapidfuzz/Manifest
+++ b/dev-python/rapidfuzz/Manifest
@@ -1,2 +1 @@
-DIST rapidfuzz-3.12.2.tar.gz 57907839 BLAKE2B c5f6d2022fbab6539b67ae845e36ff346727076d956451600d4996cc75f369926d72f9c65bb6982333a53db1bc1e7c97086e3fc4966ef36aee59a01cc5ba98bd SHA512 b179eeb1ce7cd4c5a211fcdd20af6b82fcd985ac05c9c6199f9b86d2ebf8527a54dd30b832cc3acd166730b23db8cc27a16100267dcb3999f3350ad91ae56c90
DIST rapidfuzz-3.13.0.tar.gz 57904226 BLAKE2B c71b8a5642d4f15ec96a7ad17b9053d06a46a2a7cc86083f119082325fbfe11558c44682f6c555ce9212510e2336f5ec13f91007c165afce74faf9662ca32f71 SHA512 6890d9a00e67b2efd89fd8582b7055ac006ed323ad254d8c640826b724f107063e1e4b8a88a905194f0b61d044cd0765a6715647cbaf04290165bcc5658550f3
diff --git a/dev-python/rapidfuzz/rapidfuzz-3.12.2.ebuild b/dev-python/rapidfuzz/rapidfuzz-3.12.2.ebuild
deleted file mode 100644
index 50c8ecd64333..000000000000
--- a/dev-python/rapidfuzz/rapidfuzz-3.12.2.ebuild
+++ /dev/null
@@ -1,59 +0,0 @@
-# Copyright 2022-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-DISTUTILS_USE_PEP517=scikit-build-core
-PYPI_PN=RapidFuzz
-PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="Rapid fuzzy string matching in Python using various string metrics"
-HOMEPAGE="
- https://github.com/rapidfuzz/RapidFuzz/
- https://pypi.org/project/RapidFuzz/
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-
-# all these are header-only libraries
-DEPEND="
- >=dev-cpp/taskflow-3.0.0
- >=dev-cpp/rapidfuzz-cpp-3.2.0
- dev-python/numpy[${PYTHON_USEDEP}]
-"
-BDEPEND="
- >=dev-python/cython-3[${PYTHON_USEDEP}]
- test? (
- dev-python/hypothesis[${PYTHON_USEDEP}]
- )
-"
-
-EPYTEST_XDIST=1
-distutils_enable_tests pytest
-
-src_prepare() {
- # sterilize build flags
- sed -i -e '/CMAKE_INTERPROCEDURAL_OPTIMIZATION/d' CMakeLists.txt || die
- # remove bundled libraries
- rm -r extern || die
- # force recythonization
- find src -name '*.cxx' -delete || die
- # do not require exact taskflow version
- sed -i -e '/Taskflow/s:3\.9\.0::' CMakeLists.txt || die
- # https://github.com/scikit-build/scikit-build-core/issues/912
- sed -i -e '/scikit-build-core/s:0\.11:0.8:' pyproject.toml || die
-
- distutils-r1_src_prepare
-
- export RAPIDFUZZ_BUILD_EXTENSION=1
-}
-
-python_test() {
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- epytest
-}
diff --git a/dev-python/rapidfuzz/rapidfuzz-3.13.0.ebuild b/dev-python/rapidfuzz/rapidfuzz-3.13.0.ebuild
index e3f5709a3714..a70cf9575d0a 100644
--- a/dev-python/rapidfuzz/rapidfuzz-3.13.0.ebuild
+++ b/dev-python/rapidfuzz/rapidfuzz-3.13.0.ebuild
@@ -18,7 +18,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
# all these are header-only libraries
DEPEND="
diff --git a/dev-python/s3transfer/Manifest b/dev-python/s3transfer/Manifest
index 4dad7589b1b8..2a1461e5f294 100644
--- a/dev-python/s3transfer/Manifest
+++ b/dev-python/s3transfer/Manifest
@@ -1,2 +1,3 @@
DIST s3transfer-0.11.4.tar.gz 148419 BLAKE2B 140cdc5810cde2d758726ff0605d2fcf45ed0f1001e5f66f37ff1c5502129cc3e329fe2c67298eb541fba75ccb977c8fabd1fca2d059c7d46c16ba3a9ecbdabf SHA512 824e03bccd8d724ebe8146f8c2b115c0d43ffe3a89d005f7cfa53431140130c77997b66fc605ea1a61d3291f4d808e6869150466b2f30a216c2290e902554c5b
DIST s3transfer-0.11.5.tar.gz 149107 BLAKE2B a5eed06767663a87b63649e62f3d98301551defda08e64b623a5beb38e4573ccdbbd68f426b580f93e17f8d09e679766b28cc248658c8ed515ada7064d7f53a6 SHA512 b8c0aa483429d4beabf58127678ebbfb28b407a95f1dde8bbcbb9d0adcf2143d3e1449cd71fa5c6eb3cf0ba25f08aa4f22f1671a34da26f67f36aab38837796b
+DIST s3transfer-0.12.0.tar.gz 149178 BLAKE2B ab9f293e04864190b7128bf1cb46f1fd13b240c5b4f419fbd937529e36c954c5595d2575b039e041a0555e6b0d609d7d4922a638b25f7487fdb4bf62b610c134 SHA512 06bd5bcab95c8b0f06e69e5cc78fc5f9e1dd1dba30a88b4fb2206e4e64ba4addd0679cf5e2384cd7ba674577c6a075dc0cc6dc5880e584a7fe5e4dc6df758ea0
diff --git a/dev-python/s3transfer/s3transfer-0.12.0.ebuild b/dev-python/s3transfer/s3transfer-0.12.0.ebuild
new file mode 100644
index 000000000000..b961e21eb65c
--- /dev/null
+++ b/dev-python/s3transfer/s3transfer-0.12.0.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="An Amazon S3 Transfer Manager"
+HOMEPAGE="
+ https://github.com/boto/s3transfer/
+ https://pypi.org/project/s3transfer/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ <dev-python/botocore-2[${PYTHON_USEDEP}]
+ >=dev-python/botocore-1.37.4[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ # 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_src_prepare
+}
+
+python_test() {
+ epytest tests/{unit,functional}
+}
diff --git a/dev-python/setuptools-scm/Manifest b/dev-python/setuptools-scm/Manifest
index 9217a4d8adb4..2731758e2b50 100644
--- a/dev-python/setuptools-scm/Manifest
+++ b/dev-python/setuptools-scm/Manifest
@@ -1 +1,2 @@
DIST setuptools_scm-8.2.1.tar.gz 78075 BLAKE2B e026c02cd172b6a7cbcea93c2ceeeaaff9912722063523b1f12039b7d9c147a9b5d1267e907867e27d8c8deb14e9d32e4c48cdf5683ec796a0c1fc01dabf1843 SHA512 4afa1bba1a9e3791be5b2cda945ee9c6a0d3b085a528ec9d74ca4e3649522d947594aade9e146164df3548a853aed96c62a14c617d38b50a7797f8e1f53f7ab1
+DIST setuptools_scm-8.3.0.tar.gz 78025 BLAKE2B e500924090316b94a0c3c67794eba1d0ebbe65ffa2ba0a37636fc9c3f82e66ad36e50e5ec09a44b17631285ee17fa473a3c2e408b60144efc3ef8a9f9ba3473d SHA512 11c401b6075b1da5cbf0108a1d6464f885b0086960643cc7dd4750f20879a6cc9af947ecb80bb5f4e3aaa4e2b6c98301d6207cd466e49b7bcdf55fe995299783
diff --git a/dev-python/setuptools-scm/setuptools-scm-8.3.0.ebuild b/dev-python/setuptools-scm/setuptools-scm-8.3.0.ebuild
new file mode 100644
index 000000000000..f342244a272d
--- /dev/null
+++ b/dev-python/setuptools-scm/setuptools-scm-8.3.0.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# please keep this ebuild at EAPI 8 -- sys-apps/portage dep
+EAPI=8
+
+DISTUTILS_USE_PEP517=standalone
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Manage versions by scm tags via setuptools"
+HOMEPAGE="
+ https://github.com/pypa/setuptools-scm/
+ https://pypi.org/project/setuptools-scm/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+
+# there's an optional dep on rich for cute logs
+RDEPEND="
+ dev-python/packaging[${PYTHON_USEDEP}]
+ >=dev-python/setuptools-61[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ >=dev-python/tomli-2.0.2[${PYTHON_USEDEP}]
+ ' 3.10)
+"
+BDEPEND="
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ test? (
+ dev-python/build[${PYTHON_USEDEP}]
+ dev-python/typing-extensions[${PYTHON_USEDEP}]
+ dev-vcs/git
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # the usual nondescript gpg-agent failure
+ testing/test_git.py::test_git_getdate_signed_commit
+
+ # fetching from the Internet
+ testing/test_regressions.py::test_pip_download
+
+ # calls flake8, unpredictable
+ testing/test_functions.py::test_dump_version_flake8
+ )
+
+ if has_version dev-python/nose; then
+ EPYTEST_DESELECT+=(
+ # https://bugs.gentoo.org/892639
+ testing/test_integration.py::test_pyproject_support
+ )
+ fi
+
+ epytest
+}
diff --git a/dev-python/sqlglot/Manifest b/dev-python/sqlglot/Manifest
index 8e0210ca26b9..1ba5675de8b5 100644
--- a/dev-python/sqlglot/Manifest
+++ b/dev-python/sqlglot/Manifest
@@ -1,6 +1,4 @@
-DIST sqlglot-26.13.2-crates.tar.xz 8327388 BLAKE2B 69213d11940f9d4e743b169ef831b8b52a771f012e247570cf0703580a14af435d4d033b4b3ddfca6f4022b741261a24f3b47e5137de644d863714006520f857 SHA512 5de0781c54265b369e5e46b7cfbcc04a3118aa8d1323bff14f2841c95d471f545c923eedb88dbbb81a910801c5a505ff37a25701af936c06cf55a1659cd8822e
-DIST sqlglot-26.13.2.tar.gz 5348477 BLAKE2B 82e65a48e746cb378f114eb11b48383520696f58a6223f4760ed3068531bda0d377ed3d5af00e3bf77bfcda37cf16eab78a60a5c5412cd0ad4e72d1a3b969b18 SHA512 e6bd8098b45cf11c10a9ec704e208131b6140fd4dc2933a1dfae42f8e037bb3135dea837f7fffafe284d7eb544fbeeb70cbeff34b4500e2ad0378dd6e2c57569
-DIST sqlglot-26.14.0-crates.tar.xz 8327388 BLAKE2B 69213d11940f9d4e743b169ef831b8b52a771f012e247570cf0703580a14af435d4d033b4b3ddfca6f4022b741261a24f3b47e5137de644d863714006520f857 SHA512 5de0781c54265b369e5e46b7cfbcc04a3118aa8d1323bff14f2841c95d471f545c923eedb88dbbb81a910801c5a505ff37a25701af936c06cf55a1659cd8822e
-DIST sqlglot-26.14.0.tar.gz 5348485 BLAKE2B 863b7d11383a19f55435c2bed649b7f7c21f916408805ff996560657e7d7837d96141fe177d466d6c2119f025c708df405bf51a9a516ec17223ebc857adbf15f SHA512 3423959e8823418c84a3c211f552ea1573fedc0d82f96e41661ac7558ed097450b22f995847e26362a5493f051109a05737b0a2b2474a3f0d4dbefeaefcaa7ad
DIST sqlglot-26.15.0-crates.tar.xz 8327388 BLAKE2B 69213d11940f9d4e743b169ef831b8b52a771f012e247570cf0703580a14af435d4d033b4b3ddfca6f4022b741261a24f3b47e5137de644d863714006520f857 SHA512 5de0781c54265b369e5e46b7cfbcc04a3118aa8d1323bff14f2841c95d471f545c923eedb88dbbb81a910801c5a505ff37a25701af936c06cf55a1659cd8822e
DIST sqlglot-26.15.0.tar.gz 5350274 BLAKE2B d4fb9262af3facd04896f94a21f927f8a91edd1e67563a043ca338012b76abd2e4b60899032f5718b503accc829d95d786a2605eba49bf15709844edfd3e358b SHA512 0b7eb7a8c2bec05873837c16420c577a50affe8ca2f028f863b6bb50e3f9be18e5873c33de122940e04dab2e8e46329090cade371ef9e2f60535ad23e25b43f0
+DIST sqlglot-26.16.0-crates.tar.xz 8327388 BLAKE2B 69213d11940f9d4e743b169ef831b8b52a771f012e247570cf0703580a14af435d4d033b4b3ddfca6f4022b741261a24f3b47e5137de644d863714006520f857 SHA512 5de0781c54265b369e5e46b7cfbcc04a3118aa8d1323bff14f2841c95d471f545c923eedb88dbbb81a910801c5a505ff37a25701af936c06cf55a1659cd8822e
+DIST sqlglot-26.16.0.tar.gz 5351655 BLAKE2B 0618ff41709126854edfc74b55622d7dd1a61d619e10e7566b5a49b6a407b4a85b766b64b3604fa6507a66902a94746bc6735848b2d1fa018e0907d6e6f21079 SHA512 a7299d1c654521624f5d3e2962a597d21e7891b93eff762351fd664301388d69daff489ac5f8a626bfb6e4aadae1400513b1900b9d377f767ad4c6b8de3e52e7
diff --git a/dev-python/sqlglot/sqlglot-26.14.0.ebuild b/dev-python/sqlglot/sqlglot-26.14.0.ebuild
deleted file mode 100644
index 745ae109fd13..000000000000
--- a/dev-python/sqlglot/sqlglot-26.14.0.ebuild
+++ /dev/null
@@ -1,96 +0,0 @@
-# Copyright 2023-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-CRATES=""
-DISTUTILS_EXT=1
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{9,10,11,12,13} )
-
-CARGO_OPTIONAL=1
-
-inherit cargo distutils-r1 pypi optfeature
-
-DESCRIPTION="An easily customizable SQL parser and transpiler"
-HOMEPAGE="
- https://sqlglot.com/
- https://github.com/tobymao/sqlglot/
- https://pypi.org/project/sqlglot/
-"
-SRC_URI+="
- native-extensions? (
- https://github.com/gentoo-crate-dist/sqlglot/releases/download/v${PV}/${P}-crates.tar.xz
- )
-"
-
-LICENSE="MIT"
-LICENSE+=" native-extensions? ("
-# Dependent crate licenses
-LICENSE+="
- Apache-2.0 Apache-2.0-with-LLVM-exceptions MIT Unicode-DFS-2016
-"
-LICENSE+=" )"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="+native-extensions"
-
-BDEPEND="
- native-extensions? (
- ${RUST_DEPEND}
- dev-util/maturin[${PYTHON_USEDEP}]
- )
- test? (
- dev-python/pytz[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-
-QA_FLAGS_IGNORED="usr/lib.*/py.*/site-packages/sqlglotrs/sqlglotrs.*.so"
-
-pkg_setup() {
- use native-extensions && rust_pkg_setup
-}
-
-src_unpack() {
- cargo_src_unpack
-}
-
-python_compile() {
- distutils-r1_python_compile
-
- if use native-extensions; then
- local DISTUTILS_USE_PEP517=maturin
- local DISTUTILS_UPSTREAM_PEP517=maturin
- cd sqlglotrs || die
- distutils-r1_python_compile
- cd - >/dev/null || die
- fi
-}
-
-python_test() {
- local EPYTEST_DESELECT=(
- # timing, sigh
- # https://github.com/tobymao/sqlglot/issues/3961
- tests/test_generator.py::TestGenerator::test_generate_nested_binary
- )
- local EPYTEST_IGNORE=(
- # Tests require pyspark or duckdb which aren't in the tree.
- # Pandas would be a requirement normally, but it gets ignored by proxy.
- "tests/dataframe/integration/test_dataframe.py"
- "tests/dataframe/integration/test_grouped_data.py"
- "tests/dataframe/integration/test_session.py"
- "tests/test_executor.py"
- "tests/test_optimizer.py"
- )
-
- # make sure not to use an earlier installed version
- local -x SQLGLOTRS_TOKENIZER=$(usex native-extensions 1 0)
- rm -rf sqlglotrs || die
- epytest
-}
-
-pkg_postinst() {
- optfeature "simplifying timedelta expressions" dev-python/python-dateutil
-}
diff --git a/dev-python/sqlglot/sqlglot-26.13.2.ebuild b/dev-python/sqlglot/sqlglot-26.16.0.ebuild
index 745ae109fd13..745ae109fd13 100644
--- a/dev-python/sqlglot/sqlglot-26.13.2.ebuild
+++ b/dev-python/sqlglot/sqlglot-26.16.0.ebuild
diff --git a/dev-python/testresources/Manifest b/dev-python/testresources/Manifest
index 71e47358687b..182563a5699c 100644
--- a/dev-python/testresources/Manifest
+++ b/dev-python/testresources/Manifest
@@ -1 +1,2 @@
DIST testresources-2.0.1.tar.gz 41948 BLAKE2B 81f597099eb17090cfa759c2fc4e30be2de3f749760e6a0e88e4c5484c91fe6a00d1296ec6ba7dc5aea1bcd0f9239989fab8fbb4f211b6c5bf031ff1be4b803b SHA512 0b23432b019400fe378e957d14a91083eef7fe1130a494b567a5274d69e4e8e09ab75861e5453c3f217507e144cf179c908f84dd1a807992d4bee0b8d32cb0f4
+DIST testresources-2.0.2.tar.gz 45057 BLAKE2B bb4c0cc12eae792eae3546cb7d0a71aaef0e50e7e26bffe3c8e80230e1e7686b91e93dd8fb31ec45a8c7c4e7f5c201193356653fcf1e199406d18d4673e8babc SHA512 3e7970830833f0a057488638e77af017ca337a736c27e1bd86c896e02174d8f52ad154a649ba3f5a32aac36e1e17b4cb63a6539fcdb19eedba2dba42a76adaf1
diff --git a/dev-python/testresources/testresources-2.0.2.ebuild b/dev-python/testresources/testresources-2.0.2.ebuild
new file mode 100644
index 000000000000..1e77de19676e
--- /dev/null
+++ b/dev-python/testresources/testresources-2.0.2.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A pyunit extension for managing expensive test resources"
+HOMEPAGE="
+ https://launchpad.net/testresources/
+ https://github.com/testing-cabal/testresources/
+ https://pypi.org/project/testresources/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ dev-python/pbr[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/pbr[${PYTHON_USEDEP}]
+ test? (
+ dev-python/testtools[${PYTHON_USEDEP}]
+ dev-python/fixtures[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests unittest
diff --git a/dev-python/tldextract/Manifest b/dev-python/tldextract/Manifest
index 61d58e34dbe6..44e91161c5a6 100644
--- a/dev-python/tldextract/Manifest
+++ b/dev-python/tldextract/Manifest
@@ -1,2 +1,3 @@
DIST tldextract-5.1.3.tar.gz 125033 BLAKE2B b2557ae29cf049c06bb3b520f11e47e174d23709de7d785cbd78ac184e14635ab9923f9390633246c6342c6c040333bc4cc4dc06d09f0e64a7fbcaefbac9ccc5 SHA512 be10b4a6f227af9249f59c3b810a2ba08efb45ca18bbd9cef3f554671bc665ba596d7ee3f2bbfa789dacca6fc4b09c9178e9f658f7c920f8667566652ee5624f
DIST tldextract-5.2.0.tar.gz 126839 BLAKE2B a8560b381e2969ad7161949a1820b3b55ebe5fc74c9cf15ea1ff5ecd9f4245c2a33e7cdeb0b4033e5b6474eed961d3737b5271e45e974a9285aeb31652b4962d SHA512 574146034076280dd524ef33530471d14485e3602fe3b1ce06c72ecea4f99918efee25cc8f26e6809244e053c084d0f37ca4477348400be67f13da68448aebbe
+DIST tldextract-5.3.0.tar.gz 128502 BLAKE2B 36579f832c508283fc78c514d9274659d5f55b2d60f3af93a686d9470fc8e8473f30e3404dda15f6e0dd4a0020b841e98eaf3506feeeb591ed1c27d7b2b45185 SHA512 8745464464355be830f30ee4a694ede58f3e6ee3339c38d32e2cdca4c5cffb5178b64f8c463d0c824034ea1c0b3eefd42e5b1dd694fa8971771444c34f4c01f5
diff --git a/dev-python/tldextract/tldextract-5.1.3.ebuild b/dev-python/tldextract/tldextract-5.1.3.ebuild
index 11e1454d1cdd..1161efa87c01 100644
--- a/dev-python/tldextract/tldextract-5.1.3.ebuild
+++ b/dev-python/tldextract/tldextract-5.1.3.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="BSD"
SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv x86"
+KEYWORDS="amd64 ~arm arm64 ~loong ~ppc64 ~riscv x86"
RDEPEND="
>=dev-python/filelock-3.0.8[${PYTHON_USEDEP}]
diff --git a/dev-python/tldextract/tldextract-5.3.0.ebuild b/dev-python/tldextract/tldextract-5.3.0.ebuild
new file mode 100644
index 000000000000..989df19a3072
--- /dev/null
+++ b/dev-python/tldextract/tldextract-5.3.0.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Accurately separate the TLD from the registered domain and subdomains of a URL"
+HOMEPAGE="
+ https://github.com/john-kurkowski/tldextract/
+ https://pypi.org/project/tldextract/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
+
+RDEPEND="
+ >=dev-python/filelock-3.0.8[${PYTHON_USEDEP}]
+ dev-python/idna[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.1.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-file-1.4[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+ test? (
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ dev-python/responses[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_IGNORE=(
+ # we don't need release tests, also deps
+ tests/test_release.py
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -p pytest_mock
+}
diff --git a/dev-python/types-setuptools/Manifest b/dev-python/types-setuptools/Manifest
index 9461a8f8c2ec..9f801705021c 100644
--- a/dev-python/types-setuptools/Manifest
+++ b/dev-python/types-setuptools/Manifest
@@ -1 +1,2 @@
DIST types_setuptools-78.1.0.20250329.tar.gz 43942 BLAKE2B 1d471cda411f650fa42fc04d4cf44e8a0deb078c9601922fb70bb3bc44701753071ff8b5a220e1e788e33a51f71e492a6edba6b5695151fd9e7da1f8e0ef84fa SHA512 9de9e79ddc6bc6b0a02ecdb40702c8e041fe2197f4e1773cca70632510982c5e1549f38f6e3f36eb80e160c246a8db805b0ec375ac26262113f5c85624bf4699
+DIST types_setuptools-79.0.0.20250422.tar.gz 43865 BLAKE2B 3ef152fbaa27057b0279bfd5ef6e6104a04eaa55d9594e1cd5867bbaea4cd105ab7da94aad0f5e84382c566deec572d203b68feab06ece61982823eeb55d0806 SHA512 841a4d5332f0c8ed27333330cf5e78f21b1d033e3202d733f44234d234fca7db0bd0205520287d5cc0e69bb9befe79bff72e80fde593e70821692c3a8be29352
diff --git a/dev-python/types-setuptools/types-setuptools-79.0.0.20250422.ebuild b/dev-python/types-setuptools/types-setuptools-79.0.0.20250422.ebuild
new file mode 100644
index 000000000000..4d6bfa0439df
--- /dev/null
+++ b/dev-python/types-setuptools/types-setuptools-79.0.0.20250422.ebuild
@@ -0,0 +1,16 @@
+# Copyright 2023-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+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 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"