summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/breathe/Manifest1
-rw-r--r--dev-python/breathe/breathe-4.35.0-r1.ebuild4
-rw-r--r--dev-python/breathe/breathe-4.36.0.ebuild37
-rw-r--r--dev-python/cairocffi/cairocffi-1.7.1.ebuild4
-rw-r--r--dev-python/clang/Manifest1
-rw-r--r--dev-python/clang/clang-21.0.0_pre20250221.ebuild53
-rw-r--r--dev-python/decorator/Manifest1
-rw-r--r--dev-python/decorator/decorator-5.2.0.ebuild28
-rw-r--r--dev-python/executing/Manifest1
-rw-r--r--dev-python/executing/executing-2.1.0-r1.ebuild65
-rw-r--r--dev-python/executing/executing-2.2.0.ebuild2
-rw-r--r--dev-python/executing/files/executing-2.1.0-py3126.patch178
-rw-r--r--dev-python/flask-caching/Manifest1
-rw-r--r--dev-python/flask-caching/flask-caching-2.3.1.ebuild43
-rw-r--r--dev-python/fonttools/fonttools-4.56.0.ebuild4
-rw-r--r--dev-python/fs/fs-2.4.16.ebuild4
-rw-r--r--dev-python/id/id-1.5.0.ebuild2
-rw-r--r--dev-python/identify/Manifest1
-rw-r--r--dev-python/identify/identify-2.6.8.ebuild29
-rw-r--r--dev-python/lit/Manifest1
-rw-r--r--dev-python/lit/lit-21.0.0_pre20250221.ebuild45
-rw-r--r--dev-python/moto/Manifest1
-rw-r--r--dev-python/moto/moto-5.0.27.ebuild132
-rw-r--r--dev-python/mpmath/mpmath-1.4.0_alpha4.ebuild2
-rw-r--r--dev-python/mypy/Manifest1
-rw-r--r--dev-python/mypy/mypy-1.14.1-r1.ebuild125
-rw-r--r--dev-python/orjson/Manifest29
-rw-r--r--dev-python/orjson/orjson-3.10.11-r1.ebuild89
-rw-r--r--dev-python/orjson/orjson-3.10.12.ebuild88
-rw-r--r--dev-python/orjson/orjson-3.10.13.ebuild89
-rw-r--r--dev-python/orjson/orjson-3.10.14.ebuild91
-rw-r--r--dev-python/pikepdf/pikepdf-9.5.2.ebuild2
-rw-r--r--dev-python/psycopg/Manifest1
-rw-r--r--dev-python/psycopg/psycopg-3.2.5.ebuild119
-rw-r--r--dev-python/pycotap/pycotap-1.3.1.ebuild2
-rw-r--r--dev-python/pydantic/pydantic-2.10.6.ebuild2
-rw-r--r--dev-python/pyopenssl/Manifest2
-rw-r--r--dev-python/pyopenssl/pyopenssl-24.2.1.ebuild61
-rw-r--r--dev-python/pyopenssl/pyopenssl-24.3.0.ebuild61
-rw-r--r--dev-python/pyopenssl/pyopenssl-25.0.0.ebuild2
-rw-r--r--dev-python/pyscard/Manifest1
-rw-r--r--dev-python/pyscard/pyscard-2.2.0.ebuild41
-rw-r--r--dev-python/pytest-import-check/pytest-import-check-0.0.4.ebuild2
-rw-r--r--dev-python/python-lsp-server/Manifest2
-rw-r--r--dev-python/python-lsp-server/files/python-lsp-server-1.12.0-jedi19-compat.patch16
-rw-r--r--dev-python/python-lsp-server/python-lsp-server-1.12.0-r1.ebuild95
-rw-r--r--dev-python/python-lsp-server/python-lsp-server-1.12.1.ebuild90
-rw-r--r--dev-python/python-tests/python-tests-3.12.9.ebuild2
-rw-r--r--dev-python/python-tests/python-tests-3.13.2.ebuild2
-rw-r--r--dev-python/pyzmq/pyzmq-26.2.1.ebuild2
-rw-r--r--dev-python/rapidfuzz/Manifest1
-rw-r--r--dev-python/rapidfuzz/rapidfuzz-3.11.0.ebuild59
-rw-r--r--dev-python/rapidfuzz/rapidfuzz-3.12.1.ebuild2
-rw-r--r--dev-python/rtslib-fb/rtslib-fb-2.2.2.ebuild2
-rw-r--r--dev-python/setproctitle/Manifest1
-rw-r--r--dev-python/setproctitle/setproctitle-1.3.5.ebuild38
-rw-r--r--dev-python/sqlalchemy/sqlalchemy-2.0.38.ebuild2
-rw-r--r--dev-python/starlette/Manifest1
-rw-r--r--dev-python/starlette/starlette-0.46.0.ebuild57
-rw-r--r--dev-python/twine/twine-6.1.0.ebuild2
-rw-r--r--dev-python/websockets/websockets-14.2.ebuild2
-rw-r--r--dev-python/wrapt/wrapt-1.17.2.ebuild2
-rw-r--r--dev-python/xcffib/Manifest4
-rw-r--r--dev-python/xcffib/xcffib-1.5.0.ebuild50
-rw-r--r--dev-python/xcffib/xcffib-1.6.0.ebuild42
-rw-r--r--dev-python/xcffib/xcffib-1.6.2.ebuild42
-rw-r--r--dev-python/xcffib/xcffib-1.7.0.ebuild43
-rw-r--r--dev-python/ytmusicapi/Manifest1
-rw-r--r--dev-python/ytmusicapi/ytmusicapi-1.9.1.ebuild24
69 files changed, 483 insertions, 1549 deletions
diff --git a/dev-python/breathe/Manifest b/dev-python/breathe/Manifest
index a14e4d4d735f..8e844038562c 100644
--- a/dev-python/breathe/Manifest
+++ b/dev-python/breathe/Manifest
@@ -1 +1,2 @@
DIST breathe-4.35.0.gh.tar.gz 212932 BLAKE2B 9423cc99cd1dc45fa1c93f1e2adfe59be4f3398842d3c6f98ee7a17285e108de4eb88e149c4ee179fa1008e30b69c8fa4f3934506aa53892c2eb612fa7652ba3 SHA512 76e36fceb89c21e2c62471a37b856f8e7077f946ca8ebffdd068297d7d447ba4f42f8f9d91e231f7a181d7dba2cb8650479f35f8bef342184e5ccbd3dd951f91
+DIST breathe-4.36.0.gh.tar.gz 219346 BLAKE2B 26e18a7cbe34762579bff965e48772b54438a2ed1235dad52fc63533afe47f78cb921683c201a281e732f4e67d5a5edbe850a369f57d7eca83f0a54f43cb68a5 SHA512 fd640ed75680134a5a0e8860764bb430bb971f49ad2f88392de7ba97d633e377079eaf1c7e35a72db135e4c4d3b066c6c9744ccc151ad18d865bb37c9de833d7
diff --git a/dev-python/breathe/breathe-4.35.0-r1.ebuild b/dev-python/breathe/breathe-4.35.0-r1.ebuild
index 55b2f75ab91f..84e5e84724ca 100644
--- a/dev-python/breathe/breathe-4.35.0-r1.ebuild
+++ b/dev-python/breathe/breathe-4.35.0-r1.ebuild
@@ -1,10 +1,10 @@
-# Copyright 1999-2024 Gentoo Authors
+# 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_{10..13} )
+PYTHON_COMPAT=( python3_{11..13} )
inherit distutils-r1
diff --git a/dev-python/breathe/breathe-4.36.0.ebuild b/dev-python/breathe/breathe-4.36.0.ebuild
new file mode 100644
index 000000000000..f33f124929bc
--- /dev/null
+++ b/dev-python/breathe/breathe-4.36.0.ebuild
@@ -0,0 +1,37 @@
+# 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_{11..13} )
+
+inherit distutils-r1
+
+DESCRIPTION="Sphinx Doxygen renderer"
+HOMEPAGE="
+ https://breathe.readthedocs.io/en/latest/
+ https://github.com/breathe-doc/breathe/
+ https://pypi.org/project/breathe/
+"
+SRC_URI="
+ https://github.com/breathe-doc/breathe/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ app-text/doxygen
+ dev-python/docutils[${PYTHON_USEDEP}]
+ >=dev-python/sphinx-7.2.0[${PYTHON_USEDEP}]
+ dev-texlive/texlive-bibtexextra
+ dev-texlive/texlive-fontsextra
+ dev-texlive/texlive-fontutils
+ dev-texlive/texlive-latex
+ dev-texlive/texlive-latexextra
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/cairocffi/cairocffi-1.7.1.ebuild b/dev-python/cairocffi/cairocffi-1.7.1.ebuild
index fbb356af94b9..6efc028dab10 100644
--- a/dev-python/cairocffi/cairocffi-1.7.1.ebuild
+++ b/dev-python/cairocffi/cairocffi-1.7.1.ebuild
@@ -1,10 +1,10 @@
-# Copyright 1999-2024 Gentoo Authors
+# 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_{10..13} pypy3 )
+PYTHON_COMPAT=( python3_{10..13} pypy3 pypy3_11 )
inherit distutils-r1 pypi virtualx
diff --git a/dev-python/clang/Manifest b/dev-python/clang/Manifest
index 9755f1e011a6..f14cc7e05032 100644
--- a/dev-python/clang/Manifest
+++ b/dev-python/clang/Manifest
@@ -13,4 +13,5 @@ DIST llvm-project-19.1.7.src.tar.xz.sig 438 BLAKE2B 4015140f4ba77de45039bdbdfbaf
DIST llvm-project-20.1.0-rc2.src.tar.xz 147160684 BLAKE2B 6adc1226f022272d78fb0ed361c190d369a2afc53bf868409fe8f4e092d5ffb9894c71870f072bb68162610782f48088468b4a49cdb1bc731d6689c791a5b5e3 SHA512 f303deaec8f25e1b122a7e85df192b6ea10c51472b78a3d14ad9d0b976a533cfbb9164aff0bc99e447e30938cf43363552c5493b4693e1f23291ea7a9b824bbb
DIST llvm-project-20.1.0-rc2.src.tar.xz.sig 566 BLAKE2B aa91f7be228e51b0f2234bb5e0df173e3ddc90b6db4350a9008c2f8ba53220da6eef0c69778aecac3caecf918a0c54a0d910177ffe7643ad7fc5624a97262b7f SHA512 e5563a8a79b5e9ef26d62dc6d4385c1c86d12a652b4b1e7fc9ce45a2ea66e5118112746a61b439823bf99d65aea82285eabf5e07714eec77e6e5cd02feab82ce
DIST llvm-project-2cd8207b26ea4269630feba661f68554d7ae3c15.tar.gz 227261597 BLAKE2B 51ce992b651fcf08b7fd520420040803b59f1260947953325400c50bec576c418b162d8ae2d2307e70b885b1185c302a97409bcfe48cdb14b8e1384f4e2dfa9e SHA512 a41749943508ea4a18b47c4e947917b5268544e64372c0c3347f9ab8172a2c229d8b1d813d1e842be1b98aedd624524857ed3bb23fe98ad5f36e7a71581abb4b
+DIST llvm-project-581599096e8a1a89ccd3e053a1209c69a9079083.tar.gz 227830555 BLAKE2B 28a04dd5ce96716d389fe049c4b877f55d6e5cad5c77d8867dd7e3a448213ef413e4f4d7d5f77b0702b26a8eb25f53e08d90e2a5a97eaa3f89245531d9f6626d SHA512 d775aea9bf71d60673e966a689ff6b933afecab2c133a1f64a158551ba9db049221148eab5087bab0ce0ff917456b85fb4ea4d7284886326f54617d167a385a5
DIST llvm-project-c30a7f459452d5766da244564bc1d5888346c364.tar.gz 227560986 BLAKE2B c1c833aa6d488530826d96db81ca8be2fcf842ccf5b10a65ff18269fdfa32fa2742fb0a547eb315c2a9ee383e1b6b6cce4a78136e1740e04d322c79fb6a66a86 SHA512 0b68d3462e5eac89f50cff5e64603758ab74c701ff2de88c8569dd45b7e702b5d13b26c2745615c0c355d46d13765f47e4d43e61cde735240c6f386c0090becb
diff --git a/dev-python/clang/clang-21.0.0_pre20250221.ebuild b/dev-python/clang/clang-21.0.0_pre20250221.ebuild
new file mode 100644
index 000000000000..694150a44a53
--- /dev/null
+++ b/dev-python/clang/clang-21.0.0_pre20250221.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..13} )
+inherit llvm.org python-r1
+
+DESCRIPTION="Python bindings for llvm-core/clang"
+HOMEPAGE="https://llvm.org/"
+
+LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
+SLOT="0"
+IUSE="test"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+# The module is opening libclang.so directly, and doing some blasphemy
+# on top of it.
+DEPEND="
+ >=llvm-core/clang-${PV}:*
+ !llvm-core/llvm:0[clang(-),python(-)]
+ !llvm-core/clang:0[python(-)]
+"
+RDEPEND="
+ ${DEPEND}
+ ${PYTHON_DEPS}
+"
+BDEPEND="
+ ${PYTHON_DEPS}
+ test? (
+ llvm-core/clang:${LLVM_MAJOR}
+ )
+"
+
+LLVM_COMPONENTS=( clang/bindings/python )
+llvm.org_set_globals
+
+python_test() {
+ # tests rely on results from a specific clang version, so override
+ # the search path
+ local -x CLANG_LIBRARY_PATH=${BROOT}/usr/lib/llvm/${LLVM_MAJOR}/$(get_libdir)
+ local -x CLANG_NO_DEFAULT_CONFIG=1
+ "${EPYTHON}" -m unittest discover -v || die "Tests fail with ${EPYTHON}"
+}
+
+src_test() {
+ python_foreach_impl python_test
+}
+
+src_install() {
+ python_foreach_impl python_domodule clang
+}
diff --git a/dev-python/decorator/Manifest b/dev-python/decorator/Manifest
index d8766686cbb8..4705b6d73673 100644
--- a/dev-python/decorator/Manifest
+++ b/dev-python/decorator/Manifest
@@ -1 +1,2 @@
DIST decorator-5.1.1.tar.gz 35016 BLAKE2B 0e38ee2dea6793d489f5c50692549022f1b252ab3a7b75da5b785f856b7f18faaf5570dde2c68f6936c11460599839063e9eb8a133789a00f683761393a5103d SHA512 584857ffb0c3e52344b473ceb9e28adfd7d789d480a528471f8ab37be055ebe5feb170f41077010e25350e1c311189d45b90773cf12f0043de98ea8ebcde20ab
+DIST decorator-5.2.0.gh.tar.gz 54313 BLAKE2B bab7a0dc6b8431893cdf72258a6b6f8f45e2352cd4bf55fc63571e8d7acaa97f3fdc120a996df278b3eee40c3b0f7c4e9914a8a498feef79145a6d4b9ee772b0 SHA512 b50d645acd924b1c0a35ebe6d52f638fe771910e55a925a2cb642aca694d99c9886b7a580b631ee7c8760d485a0924051235d24d0ccc393638ed305694e14e17
diff --git a/dev-python/decorator/decorator-5.2.0.ebuild b/dev-python/decorator/decorator-5.2.0.ebuild
new file mode 100644
index 000000000000..41b058f0d2d0
--- /dev/null
+++ b/dev-python/decorator/decorator-5.2.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( pypy3 pypy3_11 python3_{10..13} )
+
+inherit distutils-r1
+
+DESCRIPTION="Simplifies the usage of decorators for the average programmer"
+HOMEPAGE="
+ https://github.com/micheles/decorator/
+ https://pypi.org/project/decorator/
+"
+# https://github.com/micheles/decorator/issues/167
+SRC_URI="
+ https://github.com/micheles/decorator/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~x64-macos"
+
+python_test() {
+ "${EPYTHON}" tests/test.py -v || die "Tests failed with ${EPYTHON}"
+}
diff --git a/dev-python/executing/Manifest b/dev-python/executing/Manifest
index 5853f01d7ec4..d8f41c63d5b8 100644
--- a/dev-python/executing/Manifest
+++ b/dev-python/executing/Manifest
@@ -1,2 +1 @@
-DIST executing-2.1.0.gh.tar.gz 980727 BLAKE2B 0d7a3f0a7e83a1607fdc5bd618b7484bd2eb27443568ee6542d7caad050ff7f5a2ddf71518d434059bdc5f17bff81badf393b91628754b5d6b8ec5a4dbe8146a SHA512 0918ed3eca37d55a1c19b20a959538c46d65688979e0808270b7060a25d3db44bb593d2f8de202740af9f008f273e1e7565ba5b20b90c678e070b52a12bed4cd
DIST executing-2.2.0.gh.tar.gz 981774 BLAKE2B 81fb081f3835b8d389ac90fd91db769d0e7171e99b05a3e7ba0edb2910fed0fcd26ff24c6b84bece138de93166571df09c85d47eeec816806c47b816d7b12b96 SHA512 e8f6a399e57519149a15ae84c1d4a01c7cd6fdb81415939ef66f19a4abd9bf2ddbb156a9f59e95328a26504b8f8775a48e8da44af2027dd4763071b1997b8b84
diff --git a/dev-python/executing/executing-2.1.0-r1.ebuild b/dev-python/executing/executing-2.1.0-r1.ebuild
deleted file mode 100644
index db3a4e2df1d2..000000000000
--- a/dev-python/executing/executing-2.1.0-r1.ebuild
+++ /dev/null
@@ -1,65 +0,0 @@
-# Copyright 2020-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( pypy3 python3_{10..13} )
-
-inherit distutils-r1 optfeature
-
-DESCRIPTION="Get information about what a Python frame is currently doing"
-HOMEPAGE="
- https://github.com/alexmojaki/executing/
- https://pypi.org/project/executing/
-"
-SRC_URI="
- https://github.com/alexmojaki/executing/archive/v${PV}.tar.gz
- -> ${P}.gh.tar.gz
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~arm64-macos ~x64-macos"
-
-BDEPEND="
- dev-python/setuptools-scm[${PYTHON_USEDEP}]
- test? (
- >=dev-python/asttokens-2.1.0[${PYTHON_USEDEP}]
- dev-python/littleutils[${PYTHON_USEDEP}]
- dev-python/rich[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-
-export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
-
-PATCHES=(
- # https://github.com/alexmojaki/executing/pull/86
- "${FILESDIR}/${P}-py3126.patch"
-)
-
-python_test() {
- local EPYTEST_DESELECT=()
- case ${EPYTHON} in
- pypy3)
- EPYTEST_DESELECT+=(
- "tests/test_main.py::test_small_samples[22bc344a43584c051d8962116e8fd149d72e7e68bcb54caf201ee6e78986b167.py]"
- "tests/test_main.py::test_small_samples[46597f8f896f11c5d7f432236344cc7e5645c2a39836eb6abdd2437c0422f0f4.py]"
- )
- ;;
- esac
- if ! has_version "dev-python/ipython[${PYTHON_USEDEP}]"; then
- EPYTEST_DESELECT+=(
- tests/test_ipython.py
- )
- fi
-
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- epytest
-}
-
-pkg_postinst() {
- optfeature "getting node's source code" dev-python/asttokens
-}
diff --git a/dev-python/executing/executing-2.2.0.ebuild b/dev-python/executing/executing-2.2.0.ebuild
index 49eeaa2ff719..a2f22f729d8e 100644
--- a/dev-python/executing/executing-2.2.0.ebuild
+++ b/dev-python/executing/executing-2.2.0.ebuild
@@ -21,7 +21,7 @@ SRC_URI="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~arm64-macos ~x64-macos"
BDEPEND="
dev-python/setuptools-scm[${PYTHON_USEDEP}]
diff --git a/dev-python/executing/files/executing-2.1.0-py3126.patch b/dev-python/executing/files/executing-2.1.0-py3126.patch
deleted file mode 100644
index 7c3b96d0b568..000000000000
--- a/dev-python/executing/files/executing-2.1.0-py3126.patch
+++ /dev/null
@@ -1,178 +0,0 @@
-From 4acebfaa89196785ccc893d56b97ac8598c30e71 Mon Sep 17 00:00:00 2001
-From: Frank Hoffmann <15r10nk-git@polarbit.de>
-Date: Mon, 26 Aug 2024 21:43:13 +0200
-Subject: [PATCH 1/2] fix: backward compatibility fix for changed source
- positions in 3.12.6 (#85)
-
----
- executing/_position_node_finder.py | 15 +++++++++++++++
- tests/generate_small_sample.py | 9 ++++++---
- tests/test_main.py | 5 +++++
- 3 files changed, 26 insertions(+), 3 deletions(-)
-
-diff --git a/executing/_position_node_finder.py b/executing/_position_node_finder.py
-index 7a81415..c923822 100644
---- a/executing/_position_node_finder.py
-+++ b/executing/_position_node_finder.py
-@@ -242,6 +242,21 @@ def fix_result(
- # keeping the old behaviour makes it possible to distinguish both cases.
-
- return node.parent
-+
-+ if (
-+ sys.version_info >= (3, 12, 6)
-+ and instruction.opname in ("GET_ITER", "FOR_ITER")
-+ and isinstance(
-+ node.parent.parent,
-+ (ast.ListComp, ast.SetComp, ast.DictComp, ast.GeneratorExp),
-+ )
-+ and isinstance(node.parent,ast.comprehension)
-+ and node is node.parent.iter
-+ ):
-+ # same as above but only for comprehensions, see:
-+ # https://github.com/python/cpython/issues/123142
-+
-+ return node.parent.parent
- return node
-
- def known_issues(self, node: EnhancedAST, instruction: dis.Instruction) -> None:
-diff --git a/tests/generate_small_sample.py b/tests/generate_small_sample.py
-index 89c7477..573d17a 100644
---- a/tests/generate_small_sample.py
-+++ b/tests/generate_small_sample.py
-@@ -18,6 +18,7 @@
- from rich.syntax import Syntax
- from rich.console import Console
- import argparse
-+import ast
-
- last_samples_dir = Path(__file__).parent / "last_samples"
- last_samples_dir.mkdir(exist_ok=True)
-@@ -63,6 +64,11 @@ def test_file(filename: Path):
- delattr(Source, cache_name)
-
- test = TestFiles()
-+ try:
-+ ast.parse(code)
-+ except (RecursionError,SyntaxError):
-+ return True
-+
- try:
- with open(os.devnull, "w") as dev_null:
- with contextlib.redirect_stderr(dev_null):
-@@ -122,9 +128,6 @@ def main():
- break_file.unlink()
- sys.exit(0)
-
-- if time.time() > end_time:
-- print("Timeout")
-- sys.exit(0)
-
- if not result:
- print(f"{filename} is failing the tests -> minimize\n")
-diff --git a/tests/test_main.py b/tests/test_main.py
-index 5d4f83b..a3f92ee 100644
---- a/tests/test_main.py
-+++ b/tests/test_main.py
-@@ -609,6 +609,11 @@ def __next__(self):
- assert {i: i for i in iter_test(ast.DictComp)} == {1: 1, 2: 2}
- assert list(i for i in iter_test(ast.GeneratorExp)) == [1, 2]
-
-+ assert [i for j in [0] for i in iter_test(ast.ListComp)] == [1, 2]
-+ assert {i for j in [0] for i in iter_test(ast.SetComp)} == {1, 2}
-+ assert {i: i for j in [0] for i in iter_test(ast.DictComp)} == {1: 1, 2: 2}
-+ assert list(i for j in [0] for i in iter_test(ast.GeneratorExp)) == [1, 2]
-+
- for i in iter_test(ast.For):
- assert i in (1, 2)
-
-
-From 6a6925e691681aa5bc05b42bf1f1f06adeb25722 Mon Sep 17 00:00:00 2001
-From: Frank Hoffmann <15r10nk-git@polarbit.de>
-Date: Sun, 15 Sep 2024 14:24:10 +0200
-Subject: [PATCH 2/2] fix: handle changed positions for __exit__ of ast.With
-
----
- executing/_position_node_finder.py | 50 +++++++++++++++++++
- ...3cd3a42b54914d66f7a67f8b2ade36f89ed761b.py | 3 ++
- 2 files changed, 53 insertions(+)
- create mode 100644 tests/small_samples/3e40f2921fbaf6ccbabb2fa5c3cd3a42b54914d66f7a67f8b2ade36f89ed761b.py
-
-diff --git a/executing/_position_node_finder.py b/executing/_position_node_finder.py
-index c923822..0f83441 100644
---- a/executing/_position_node_finder.py
-+++ b/executing/_position_node_finder.py
-@@ -257,6 +257,51 @@ def fix_result(
- # https://github.com/python/cpython/issues/123142
-
- return node.parent.parent
-+
-+ if sys.version_info >= (3, 12,6) and instruction.opname == "CALL":
-+ before = self.instruction_before(instruction)
-+ if (
-+ before is not None
-+ and before.opname == "LOAD_CONST"
-+ and before.positions == instruction.positions
-+ and isinstance(node.parent, ast.withitem)
-+ and node is node.parent.context_expr
-+ ):
-+ # node positions for with-statements have change
-+ # and is now equal to the expression which created the context-manager
-+ # https://github.com/python/cpython/pull/120763
-+
-+ # with context_manager:
-+ # ...
-+
-+ # but there is one problem to distinguish call-expressions from __exit__()
-+
-+ # with context_manager():
-+ # ...
-+
-+ # the call for __exit__
-+
-+ # 20 1:5 1:22 LOAD_CONST(None)
-+ # 22 1:5 1:22 LOAD_CONST(None)
-+ # 24 1:5 1:22 LOAD_CONST(None)
-+ # 26 1:5 1:22 CALL() # <-- same source range as context_manager()
-+
-+ # but we can use the fact that the previous load for None
-+ # has the same source range as the call, wich can not happen for normal calls
-+
-+ # we return the same ast.With statement at the and to preserve backward compatibility
-+
-+ return node.parent.parent
-+
-+ if (
-+ sys.version_info >= (3, 12,6)
-+ and instruction.opname == "BEFORE_WITH"
-+ and isinstance(node.parent, ast.withitem)
-+ and node is node.parent.context_expr
-+ ):
-+ # handle positions changes for __enter__
-+ return node.parent.parent
-+
- return node
-
- def known_issues(self, node: EnhancedAST, instruction: dis.Instruction) -> None:
-@@ -895,6 +940,11 @@ def node_match(node_type: Union[Type, Tuple[Type, ...]], **kwargs: Any) -> bool:
- def instruction(self, index: int) -> Optional[dis.Instruction]:
- return self.bc_dict.get(index,None)
-
-+ def instruction_before(
-+ self, instruction: dis.Instruction
-+ ) -> Optional[dis.Instruction]:
-+ return self.bc_dict.get(instruction.offset - 2, None)
-+
- def opname(self, index: int) -> str:
- i=self.instruction(index)
- if i is None:
-diff --git a/tests/small_samples/3e40f2921fbaf6ccbabb2fa5c3cd3a42b54914d66f7a67f8b2ade36f89ed761b.py b/tests/small_samples/3e40f2921fbaf6ccbabb2fa5c3cd3a42b54914d66f7a67f8b2ade36f89ed761b.py
-new file mode 100644
-index 0000000..bfffc14
---- /dev/null
-+++ b/tests/small_samples/3e40f2921fbaf6ccbabb2fa5c3cd3a42b54914d66f7a67f8b2ade36f89ed761b.py
-@@ -0,0 +1,3 @@
-+async def wait():
-+ async with something:
-+ pass
-\ No newline at end of file
diff --git a/dev-python/flask-caching/Manifest b/dev-python/flask-caching/Manifest
index ead2150b1364..4c9b3090d13b 100644
--- a/dev-python/flask-caching/Manifest
+++ b/dev-python/flask-caching/Manifest
@@ -1 +1,2 @@
DIST flask_caching-2.3.0.tar.gz 67668 BLAKE2B 13517a0741959ca72072e2baf71f3d87b61a678052f0c3ba657d247fb82ab8457f45d453e9730fdfcac1cb665822d78a9c69aef83c0c62d2b808021f42f9881b SHA512 40ed857cf0822267af7e2c138b3136ff6312b3b2ea627a97738792ea4f7649db20f2df31a7414c42cc245a66d34248b3a54681824cf23d800bdb0d453c02df49
+DIST flask_caching-2.3.1.tar.gz 67560 BLAKE2B e4bd5121b4a43a81a359fb839c886e499028f4144c8a529a56ec8700db3b4819ddf59680131bc277d001ece976a9623f462be22f5aacd9668019e85e4d13d380 SHA512 ec591131746ee15f6e451b38af93194eeede1ff191b78042eafdf4fc9ab91eec6347372312cd9be8a92880679446af0c98be546b23845a12ef602e9593d48955
diff --git a/dev-python/flask-caching/flask-caching-2.3.1.ebuild b/dev-python/flask-caching/flask-caching-2.3.1.ebuild
new file mode 100644
index 000000000000..24b773814198
--- /dev/null
+++ b/dev-python/flask-caching/flask-caching-2.3.1.ebuild
@@ -0,0 +1,43 @@
+# Copyright 2024-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_PN=Flask-Caching
+PYTHON_COMPAT=( python3_{10..13} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Adds caching support to Flask applications"
+HOMEPAGE="
+ https://github.com/pallets-eco/flask-caching/
+ https://pypi.org/project/Flask-Caching/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+RDEPEND="
+ >=dev-python/cachelib-0.9.0[${PYTHON_USEDEP}]
+ dev-python/flask[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/asgiref[${PYTHON_USEDEP}]
+ dev-python/pylibmc[sasl(-),${PYTHON_USEDEP}]
+ dev-python/redis[${PYTHON_USEDEP}]
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/pytest-xprocess[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ # fix check for obsolete package name
+ sed -i -e '/pytest_xprocess/d' tests/conftest.py || die
+}
diff --git a/dev-python/fonttools/fonttools-4.56.0.ebuild b/dev-python/fonttools/fonttools-4.56.0.ebuild
index 75f8b22c745b..0d9da863feba 100644
--- a/dev-python/fonttools/fonttools-4.56.0.ebuild
+++ b/dev-python/fonttools/fonttools-4.56.0.ebuild
@@ -5,7 +5,7 @@ EAPI=8
DISTUTILS_EXT=1
DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( pypy3 python3_{10..13} )
+PYTHON_COMPAT=( pypy3 pypy3_11 python3_{10..13} )
PYTHON_REQ_USE="xml(+)"
inherit distutils-r1 virtualx
@@ -22,7 +22,7 @@ SRC_URI="
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="+native-extensions"
RDEPEND="
diff --git a/dev-python/fs/fs-2.4.16.ebuild b/dev-python/fs/fs-2.4.16.ebuild
index 604904864879..2ba5a88e4499 100644
--- a/dev-python/fs/fs-2.4.16.ebuild
+++ b/dev-python/fs/fs-2.4.16.ebuild
@@ -1,10 +1,10 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( pypy3 python3_{10..13} )
+PYTHON_COMPAT=( pypy3 pypy3_11 python3_{10..13} )
inherit distutils-r1 optfeature pypi
diff --git a/dev-python/id/id-1.5.0.ebuild b/dev-python/id/id-1.5.0.ebuild
index 83ca2152d433..9f24c7cd7dfb 100644
--- a/dev-python/id/id-1.5.0.ebuild
+++ b/dev-python/id/id-1.5.0.ebuild
@@ -21,7 +21,7 @@ SRC_URI="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="amd64 arm arm64 ~loong ppc64 ~riscv ~sparc x86"
+KEYWORDS="amd64 arm arm64 ~loong ppc64 ~riscv sparc x86"
RDEPEND="
dev-python/requests[${PYTHON_USEDEP}]
diff --git a/dev-python/identify/Manifest b/dev-python/identify/Manifest
index db1a0037824e..e6acad00c5a1 100644
--- a/dev-python/identify/Manifest
+++ b/dev-python/identify/Manifest
@@ -1,2 +1,3 @@
DIST identify-2.6.6.gh.tar.gz 101889 BLAKE2B e6246bceed1aaf806e4d7984581214c9272508782cd35429b8d58779a0546b5dc1536d970d6a71bd7135afb73216896ffaee0ec627261f25907034081580018f SHA512 0312654b6cf20e59248656fe09d54292fafa4f1c41b85def6f828f986b4ef5fe9d275a9d90537f3129060a572106b79aad338ac52f9d0d4287a8a6db805fb18f
DIST identify-2.6.7.gh.tar.gz 101902 BLAKE2B 078426177c20ba9b6d8ce3771c982304af2935329ef4c0c09fa8cd0f8309987fe85f31f5c4bf05e231bab43065320f92797cbb19441e839b37729e95d81681da SHA512 9f43ce68e3767bfc45fc56509b9c7604c7a1947688f8305019bd551205820fb4f095ad48d7cc0d05caf90dd8ca43b2d3ef4bb1808938e04b7a44b3658734bdc4
+DIST identify-2.6.8.gh.tar.gz 101927 BLAKE2B 27ca9c41dade2bfb0710fa92936ec1a478bdad4e2a94af1b5df98234aeb4666758cc47820e199dfefe9274c8439240a1722880dce44a7d78c79bf010daf5fee3 SHA512 3d30615719b7770fc9eebf790ffb01cefbe71832bbc48be7052ce1f2c636bca5808e9b257e16145669dadb06e21a517802ee3bd99bb646a2f2f2ad3da00682af
diff --git a/dev-python/identify/identify-2.6.8.ebuild b/dev-python/identify/identify-2.6.8.ebuild
new file mode 100644
index 000000000000..c40a9ab3694b
--- /dev/null
+++ b/dev-python/identify/identify-2.6.8.ebuild
@@ -0,0 +1,29 @@
+# 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_{10..13} )
+
+inherit distutils-r1
+
+DESCRIPTION="File identification library for Python"
+HOMEPAGE="
+ https://github.com/pre-commit/identify/
+ https://pypi.org/project/identify/
+"
+SRC_URI="
+ https://github.com/pre-commit/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~x86"
+
+RDEPEND="
+ dev-python/ukkonen[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/lit/Manifest b/dev-python/lit/Manifest
index 9755f1e011a6..f14cc7e05032 100644
--- a/dev-python/lit/Manifest
+++ b/dev-python/lit/Manifest
@@ -13,4 +13,5 @@ DIST llvm-project-19.1.7.src.tar.xz.sig 438 BLAKE2B 4015140f4ba77de45039bdbdfbaf
DIST llvm-project-20.1.0-rc2.src.tar.xz 147160684 BLAKE2B 6adc1226f022272d78fb0ed361c190d369a2afc53bf868409fe8f4e092d5ffb9894c71870f072bb68162610782f48088468b4a49cdb1bc731d6689c791a5b5e3 SHA512 f303deaec8f25e1b122a7e85df192b6ea10c51472b78a3d14ad9d0b976a533cfbb9164aff0bc99e447e30938cf43363552c5493b4693e1f23291ea7a9b824bbb
DIST llvm-project-20.1.0-rc2.src.tar.xz.sig 566 BLAKE2B aa91f7be228e51b0f2234bb5e0df173e3ddc90b6db4350a9008c2f8ba53220da6eef0c69778aecac3caecf918a0c54a0d910177ffe7643ad7fc5624a97262b7f SHA512 e5563a8a79b5e9ef26d62dc6d4385c1c86d12a652b4b1e7fc9ce45a2ea66e5118112746a61b439823bf99d65aea82285eabf5e07714eec77e6e5cd02feab82ce
DIST llvm-project-2cd8207b26ea4269630feba661f68554d7ae3c15.tar.gz 227261597 BLAKE2B 51ce992b651fcf08b7fd520420040803b59f1260947953325400c50bec576c418b162d8ae2d2307e70b885b1185c302a97409bcfe48cdb14b8e1384f4e2dfa9e SHA512 a41749943508ea4a18b47c4e947917b5268544e64372c0c3347f9ab8172a2c229d8b1d813d1e842be1b98aedd624524857ed3bb23fe98ad5f36e7a71581abb4b
+DIST llvm-project-581599096e8a1a89ccd3e053a1209c69a9079083.tar.gz 227830555 BLAKE2B 28a04dd5ce96716d389fe049c4b877f55d6e5cad5c77d8867dd7e3a448213ef413e4f4d7d5f77b0702b26a8eb25f53e08d90e2a5a97eaa3f89245531d9f6626d SHA512 d775aea9bf71d60673e966a689ff6b933afecab2c133a1f64a158551ba9db049221148eab5087bab0ce0ff917456b85fb4ea4d7284886326f54617d167a385a5
DIST llvm-project-c30a7f459452d5766da244564bc1d5888346c364.tar.gz 227560986 BLAKE2B c1c833aa6d488530826d96db81ca8be2fcf842ccf5b10a65ff18269fdfa32fa2742fb0a547eb315c2a9ee383e1b6b6cce4a78136e1740e04d322c79fb6a66a86 SHA512 0b68d3462e5eac89f50cff5e64603758ab74c701ff2de88c8569dd45b7e702b5d13b26c2745615c0c355d46d13765f47e4d43e61cde735240c6f386c0090becb
diff --git a/dev-python/lit/lit-21.0.0_pre20250221.ebuild b/dev-python/lit/lit-21.0.0_pre20250221.ebuild
new file mode 100644
index 000000000000..3dfabbc0d46e
--- /dev/null
+++ b/dev-python/lit/lit-21.0.0_pre20250221.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_{10..13} )
+
+inherit distutils-r1 llvm.org
+
+DESCRIPTION="A stand-alone install of the LLVM suite testing tool"
+HOMEPAGE="https://llvm.org/"
+
+LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
+SLOT="0"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+# Tests require 'FileCheck' and 'not' utilities (from llvm)
+BDEPEND="
+ test? (
+ dev-python/psutil[${PYTHON_USEDEP}]
+ llvm-core/llvm
+ )
+"
+
+LLVM_COMPONENTS=( llvm/utils/lit )
+llvm.org_set_globals
+
+# TODO: move the manpage generation here (from llvm-core/llvm)
+
+src_prepare() {
+ # flaky test
+ # https://github.com/llvm/llvm-project/issues/72022
+ rm tests/progress-bar.py || die
+
+ cd "${WORKDIR}" || die
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local -x LIT_PRESERVES_TMP=1
+ local litflags=$(get_lit_flags)
+ ./lit.py ${litflags//;/ } tests || die
+}
diff --git a/dev-python/moto/Manifest b/dev-python/moto/Manifest
index 6048d6cb7c90..8cbe395b8b0a 100644
--- a/dev-python/moto/Manifest
+++ b/dev-python/moto/Manifest
@@ -1,3 +1,2 @@
DIST moto-4.2.14.tar.gz 4933741 BLAKE2B 4c50a808dc8f27cfbcd0ba234d268084ee9a32f36cb5d6af61aacc4ee79f7bf5cf1045147c4642472129eee37bef8bc2c1953d140260d39d7f333ae0f5e5cf95 SHA512 d4079118ed1d2eef9134575e33dc0ed749bff0293d753baa63a630dbb987914b9933445027abdc344bb93fa1d6e483baf8a337a444c9dd055dda50b095ff9937
-DIST moto-5.0.27.tar.gz 6461751 BLAKE2B 92d0f884527c3ccee044120c4e4ec7b9d927b86a41bef505290d21c858b7be1f25ce0daea54fb4a5bc16e0c39a22c8c21372cc3280ca94e65402715df310226e SHA512 e8b45c2b0a02e381a45184fdead89086961c7fb029d71b828340aad5b1713f66d8421b836b6bf943833a331d13f81b976444e2875ae781951f6295aa4544e440
DIST moto-5.0.28.tar.gz 6537950 BLAKE2B c9f81297d3336b28923f831afacf0b9be1b3e1f409384e049be710ead8e5d6354a4823089dcd4c2a7f0e453a14c6b3287b89b4a2597abb8984968423a6d53c62 SHA512 1c66279543324a726544e583d5091da7d47aec7dbbb4a2d565b6017e370cfd8c51d613fb56cb6d4279d4101426d88231fd6c70c59082e7b20acf4311278b41d2
diff --git a/dev-python/moto/moto-5.0.27.ebuild b/dev-python/moto/moto-5.0.27.ebuild
deleted file mode 100644
index 5247c0d1549d..000000000000
--- a/dev-python/moto/moto-5.0.27.ebuild
+++ /dev/null
@@ -1,132 +0,0 @@
-# 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_{10..13} )
-
-inherit distutils-r1 pypi toolchain-funcs
-
-DESCRIPTION="Mock library for boto"
-HOMEPAGE="
- https://github.com/getmoto/moto/
- https://pypi.org/project/moto/
-"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 arm64 ~riscv x86"
-
-RDEPEND="
- >=dev-python/aws-xray-sdk-0.93[${PYTHON_USEDEP}]
- dev-python/boto3[${PYTHON_USEDEP}]
- >=dev-python/botocore-1.14.0[${PYTHON_USEDEP}]
- >=dev-python/cfn-lint-0.40.0[${PYTHON_USEDEP}]
- >=dev-python/cryptography-35.0.0[${PYTHON_USEDEP}]
- dev-python/cookies[${PYTHON_USEDEP}]
- >=dev-python/docker-3.0.0[${PYTHON_USEDEP}]
- dev-python/flask[${PYTHON_USEDEP}]
- dev-python/flask-cors[${PYTHON_USEDEP}]
- >=dev-python/idna-2.5[${PYTHON_USEDEP}]
- >=dev-python/jinja2-2.10.1[${PYTHON_USEDEP}]
- dev-python/jsonpath-ng[${PYTHON_USEDEP}]
- dev-python/jsonschema[${PYTHON_USEDEP}]
- dev-python/more-itertools[${PYTHON_USEDEP}]
- >=dev-python/pyparsing-3.0.7[${PYTHON_USEDEP}]
- >=dev-python/openapi-spec-validator-0.5.0[${PYTHON_USEDEP}]
- dev-python/pyaml[${PYTHON_USEDEP}]
- >=dev-python/pyyaml-5.1[${PYTHON_USEDEP}]
- >=dev-python/python-dateutil-2.1[${PYTHON_USEDEP}]
- dev-python/python-dateutil[${PYTHON_USEDEP}]
- dev-python/python-jose[${PYTHON_USEDEP}]
- >=dev-python/responses-0.25.6[${PYTHON_USEDEP}]
- >=dev-python/requests-2.5[${PYTHON_USEDEP}]
- dev-python/sshpubkeys[${PYTHON_USEDEP}]
- dev-python/typing-extensions[${PYTHON_USEDEP}]
- dev-python/xmltodict[${PYTHON_USEDEP}]
- dev-python/werkzeug[${PYTHON_USEDEP}]
- dev-python/zipp[${PYTHON_USEDEP}]
-"
-BDEPEND="
- test? (
- dev-python/antlr4-python3-runtime[${PYTHON_USEDEP}]
- dev-python/freezegun[${PYTHON_USEDEP}]
- dev-python/pytest-rerunfailures[${PYTHON_USEDEP}]
- )
-"
-
-: "${EPYTEST_TIMEOUT:=180}"
-EPYTEST_XDIST=1
-distutils_enable_tests pytest
-
-python_test() {
- local EPYTEST_DESELECT=(
- # Needs network (or docker?) but not marked as such, bug #807031
- # TODO: report upstream
- tests/test_core/test_request_passthrough.py
- tests/test_core/test_responses_module.py::TestResponsesMockWithPassThru::test_aws_and_http_requests
- tests/test_core/test_responses_module.py::TestResponsesMockWithPassThru::test_http_requests
- # broken code? (local variable used referenced before definition)
- tests/test_appsync/test_appsync_schema.py
- # require py_partiql_parser
- tests/test_s3/test_s3_select.py
- tests/test_dynamodb/test_dynamodb_statements.py
- # require joserfc
- tests/test_apigateway/test_apigateway.py::test_update_authorizer_configuration
- tests/test_apigateway/test_apigateway.py::test_create_authorizer
- tests/test_apigateway/test_apigateway.py::test_delete_authorizer
- tests/test_cognitoidp/test_cognitoidp_exceptions.py::TestCognitoUserDeleter::test_authenticate_with_signed_out_user
- tests/test_cognitoidp/test_cognitoidp_exceptions.py::TestCognitoUserPoolDuplidateEmails::test_use_existing_email__when_email_is_
- tests/test_cognitoidp/test_cognitoidp_exceptions.py::TestCognitoUserPoolDuplidateEmails::test_use_existing_email__when_username_
- tests/test_cognitoidp/test_cognitoidp_replay.py::TestCreateUserPoolWithPredeterminedID::test_different_seed
- tests/test_cognitoidp/test_cognitoidp_replay.py::TestCreateUserPoolWithPredeterminedID::test_same_seed
- tests/test_cognitoidp/test_server.py::test_sign_up_user_without_authentication
- tests/test_cognitoidp/test_server.py::test_admin_create_user_without_authentication
- tests/test_cognitoidp/test_server.py::test_associate_software_token
- # TODO
- tests/test_dynamodb/test_dynamodb_import_table.py
- tests/test_firehose/test_firehose_put.py::test_put_record_http_destination
- tests/test_firehose/test_firehose_put.py::test_put_record_batch_http_destination
- tests/test_stepfunctions/parser/test_stepfunctions_dynamodb_integration.py::test_zero_retry
- # random crashes
- tests/test_stepfunctions/parser/test_stepfunctions_sns_integration.py
- tests/test_stepfunctions/parser/test_stepfunctions_sqs_integration.py
- tests/test_stepfunctions/test_stepfunctions.py
- )
- local EPYTEST_IGNORE=(
- # require joserfc
- tests/test_cognitoidp/test_cognitoidp.py
- )
-
- case ${EPYTHON} in
- python3.13)
- EPYTEST_DESELECT+=(
- # suddenly started crashing, *shrug*
- tests/test_xray/test_xray_client.py::test_xray_context_patched
- tests/test_xray/test_xray_client.py::test_xray_dynamo_request_id
- tests/test_xray/test_xray_client.py::test_xray_dynamo_request_id_with_context_mgr
- tests/test_xray/test_xray_client.py::test_xray_udp_emitter_patched
- )
- ;;
- esac
-
- if ! tc-has-64bit-time_t; then
- einfo "time_t is smaller than 64 bits, will skip broken tests"
- EPYTEST_DESELECT+=(
- tests/test_acm/test_acm.py::test_request_certificate_with_optional_arguments
- tests/test_s3/test_multiple_accounts_server.py::TestAccountIdResolution::test_with_custom_request_header
- tests/test_s3/test_server.py::test_s3_server_post_cors_multiple_origins
- )
- EPYTEST_IGNORE+=(
- tests/test_route53domains/test_route53domains_domain.py
- )
- fi
-
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- local -x TZ=UTC
-
- rm -rf moto || die
- epytest -m 'not network and not requires_docker' \
- -p rerunfailures --reruns=5
-}
diff --git a/dev-python/mpmath/mpmath-1.4.0_alpha4.ebuild b/dev-python/mpmath/mpmath-1.4.0_alpha4.ebuild
index b79e495398eb..23334f649c63 100644
--- a/dev-python/mpmath/mpmath-1.4.0_alpha4.ebuild
+++ b/dev-python/mpmath/mpmath-1.4.0_alpha4.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~amd64 ~arm arm64 ~hppa ~loong ~mips ppc ~ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+KEYWORDS="~amd64 ~arm arm64 ~hppa ~loong ~mips ppc ~ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
BDEPEND="
dev-python/setuptools-scm[${PYTHON_USEDEP}]
diff --git a/dev-python/mypy/Manifest b/dev-python/mypy/Manifest
index e3debd0d40bb..cc34eb08341c 100644
--- a/dev-python/mypy/Manifest
+++ b/dev-python/mypy/Manifest
@@ -1,2 +1 @@
-DIST mypy-1.14.1.gh.tar.gz 3231068 BLAKE2B b88ea11fd88acaa59001ec1c1665d6beccaecf834cf0064d0e3a94d93c0a7cc1269c24f1f8a6950d114606f292c934cddc3c708e0dbdb25b6f632c5e3e64a8d4 SHA512 ddbd1445fe680c3326a09aead85cf8c810cb71c42faf723910f31a7938f20b1ae55b6bd5a0e966b93a54ba14773cffcf0b85b65421442f11f3571ea1f6d4f709
DIST mypy-1.15.0.gh.tar.gz 3256122 BLAKE2B e2e5a047246a9898f3a7f406fa06bcd106fa0cfa776c3d2f785c7eec059f67405eaaee97ed40ecc161bb897e6baad1b5f2700cce07eaaadfd1330409b0e58185 SHA512 dac0c91749215f0ed2a29794665b26b047f9ab918ec387632c2e509308e2051aada6856dbdc7b001a4f3090c0e1b2b4f129f780b64c378997df4d78233065efa
diff --git a/dev-python/mypy/mypy-1.14.1-r1.ebuild b/dev-python/mypy/mypy-1.14.1-r1.ebuild
deleted file mode 100644
index d5cdeff3bfb9..000000000000
--- a/dev-python/mypy/mypy-1.14.1-r1.ebuild
+++ /dev/null
@@ -1,125 +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_{10..13} )
-
-inherit distutils-r1
-
-DESCRIPTION="Optional static typing for Python"
-HOMEPAGE="
- https://www.mypy-lang.org/
- https://github.com/python/mypy/
- https://pypi.org/project/mypy/
-"
-SRC_URI="
- https://github.com/python/mypy/archive/v${PV}.tar.gz
- -> ${P}.gh.tar.gz
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 arm arm64 ~loong ppc ppc64 ~riscv ~s390 sparc x86"
-IUSE="+native-extensions"
-
-# stubgen collides with this package: https://bugs.gentoo.org/585594
-RDEPEND="
- !dev-util/stubgen
- >=dev-python/psutil-4[${PYTHON_USEDEP}]
- >=dev-python/typing-extensions-4.6.0[${PYTHON_USEDEP}]
- >=dev-python/mypy-extensions-1.0.0[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '
- dev-python/tomli[${PYTHON_USEDEP}]
- ' 3.10)
-"
-BDEPEND="
- native-extensions? (
- ${RDEPEND}
- dev-python/types-psutil[${PYTHON_USEDEP}]
- dev-python/types-setuptools[${PYTHON_USEDEP}]
- )
- test? (
- >=dev-python/attrs-18.0[${PYTHON_USEDEP}]
- >=dev-python/filelock-3.3.0[${PYTHON_USEDEP}]
- >=dev-python/lxml-4.9.1[${PYTHON_USEDEP}]
- )
-"
-
-EPYTEST_XDIST=1
-distutils_enable_tests pytest
-
-# frustratingly, mypyc produces non-deterministic output. If ccache is enabled it will be a waste of time,
-# but simultaneously it might trash your system and fill up the cache with a giant wave of non-reproducible
-# test files (https://github.com/mypyc/mypyc/issues/1014)
-export CCACHE_DISABLE=1
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.14.0-no-werror.patch
-)
-
-src_prepare() {
- distutils-r1_src_prepare
-
- # don't force pytest-xdist, in case user asked for EPYTEST_JOBS=1
- sed -i -e '/addopts/s:-nauto::' pyproject.toml || die
-}
-
-python_compile() {
- local -x MYPY_USE_MYPYC=$(usex native-extensions 1 0)
- distutils-r1_python_compile
-}
-
-python_test() {
- local EPYTEST_DESELECT=(
- # the majority of them require Internet (via pip)
- mypy/test/testpep561.py
- # known broken with assertions enabled
- # https://github.com/python/mypy/issues/16043
- mypyc/test/test_run.py::TestRun::run-i64.test::testI64GlueMethodsAndInheritance
- mypyc/test/test_run.py::TestRun::run-floats.test::testFloatOps
- mypyc/test/test_run.py::TestRunStrictDunderTyping::run-floats.test::testFloatOps_dunder_typing
- # these assume that types-docutils are not installed
- mypy/test/testpythoneval.py::PythonEvaluationSuite::pythoneval.test::testIgnoreImportIfNoPython3StubAvailable
- mypy/test/testpythoneval.py::PythonEvaluationSuite::pythoneval.test::testNoPython3StubAvailable
- # TODO
- mypy/test/meta/test_parse_data.py
- mypy/test/meta/test_update_data.py
- )
- case ${EPYTHON} in
- python3.13)
- ;&
- python3.12)
- EPYTEST_DESELECT+=(
- # more assertions, sigh
- mypyc/test/test_run.py::TestRun::run-bools.test::testBoolOps
- mypyc/test/test_run.py::TestRun::run-i64.test::testI64BasicOps
- mypyc/test/test_run.py::TestRun::run-i64.test::testI64DefaultArgValues
- mypyc/test/test_run.py::TestRun::run-i64.test::testI64ErrorValuesAndUndefined
- )
- ;;
- esac
-
- # Some mypy/test/testcmdline.py::PythonCmdlineSuite tests
- # fail with high COLUMNS values
- local -x COLUMNS=80
-
- # The tests depend on having in-source compiled extensions if you want to
- # test those compiled extensions. Various crucial test dependencies aren't
- # installed. Even pyproject.toml is needed because that's where pytest args
- # are in. Hack them into the build directory and delete them afterwards.
- # See: https://github.com/python/mypy/issues/16143
- local -x MYPY_TEST_PREFIX="${S}"
- cd "${BUILD_DIR}/install$(python_get_sitedir)" || die
- cp -r "${S}"/{conftest.py,pyproject.toml} . || die
-
- local failed=
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- nonfatal epytest || failed=1
-
- rm conftest.py pyproject.toml || die
-
- [[ ${failed} ]] && die "epytest failed with ${EPYTHON}"
-}
diff --git a/dev-python/orjson/Manifest b/dev-python/orjson/Manifest
index fec3618e9654..d1ba0ec3a3b6 100644
--- a/dev-python/orjson/Manifest
+++ b/dev-python/orjson/Manifest
@@ -1,66 +1,37 @@
DIST associative-cache-2.0.0.crate 13960 BLAKE2B d0089d97ffd7bf1db65489501b53ad50e0b6070fe9a72c90fbefe3d7f49f723bcd831470a1195e9a3725bcd1ad48df879b52bde5e4efe08e95108de8509fdc77 SHA512 854f5130f286aaa76ffa2f4cbe27ca57c8220ec517c0d6fac46e5a505a3cb5fdc9ab60818db9f890b63ce2f44d243594d44747f7a87af9f304aaab3f4a4e8567
DIST bytecount-0.6.8.crate 14694 BLAKE2B f534fadb45ce25036313c0c4d54ecfd2091069d5402e02606da36d73696c74e3162990dfdbc95dca4424b498983bf04019234af6eb71e38ca28fb7da61d181fb SHA512 5984dbb71fe22371db00ca56675f409cefcf7c093f406ce1abc330a0b1535f30a43a520fb64d66c04a181a4f05d956300e35f77b43aceeb161eaf8a2c64df614
DIST castaway-0.2.3.crate 11509 BLAKE2B bbecba400bf98ef4158581f3b1673ca77dbec3ad754d3749f0e9342a47d1fa9f638c1388f0762413277b73251854ade26e08dd85b7d7133c73a5750d4dbf7d92 SHA512 2565a4e5709a25118462ac25b9f741e92456c81ddbf7c4e791d8c647f2ca5227b2f59ffac108f9d32c77cedc12219c517218c51a78b1d22a1baef1bf2c16e0a9
-DIST cc-1.1.31.crate 84637 BLAKE2B 80b95666f87f80f20efc53aacb132db32900132a58995411e95fdb043e65467ac3c84ac905d13206524d9666563486ab594a09df1fe86035ec3e5542f78a6f5e SHA512 fbc42db9e908d69fe2dac18605e057f3187ccca067ee0e9f0c271b6b9dd213f0bce1a1e32f073bc012d2ea756878929f506775076d453593a14accc5f9a159ea
DIST cc-1.2.1.crate 92731 BLAKE2B c9cb100964834692781ecc3f47972f83adaf27e019ca212f896b19a853521cf2084da213f2c2fc5c8a1bc794cc83fe9f81faf7751e1b065a3a2a08137cda0b61 SHA512 54bc5d85d48d678d33dc795aa6cc823a59ae6d17b4ec5708a1dd515e3495eabccdd949e9467e9bb3a29e44847a2d3ccd75055dfda241d8abbb16bfad650f2819
DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
-DIST compact_str-0.8.0.crate 70994 BLAKE2B 27ab4163d71915f9cfc160fdfa4ed049c98b06d0060def8c4bdd29e8ca37716a1c53877f70d1eb38260d44003e833c538b20bb4960f0b28a7becca5c9b29984e SHA512 5a236c501222b577fef7d7190882e20e85cc6deacf9d1f6a1d710893654b53a91c7d47373f0d10e9bfe138dbb2f4e99802deb2a92001bae7e130f6558ed9d1fd
DIST compact_str-0.8.1.crate 71371 BLAKE2B de7fd2b980a4b34b323010fe559a94e8b1aafa30456debc039aefcdaaefa48439353139a071e440b3bb136df166aabe096774bf3f6a7b91669cd5d80e4a24408 SHA512 146e2a6be6cf948981d51f9034f0aaa1a1563debef58ca7fd3110093b0f4333a9a6a3c5dc7cde25b936d8dfba72254bfacb7814f86167043431ded9c5797417a
DIST crunchy-0.2.2.crate 2995 BLAKE2B 74ddf8c5e0deb2ceab65c20a2743e1230739ac6aa3af60c9e867a7852270697a1278b7dee00df8949fc4268f9756a4a098df1211ab3b3e31a122652c3ba0a6fb SHA512 36dc0aebc41a3aac5f1b178a7e61b65bcd9bb5c8539b2024f79428200f7c62daa7098af55c6ab0765febd2f8969bd6c0ac8096f73cdc0958e5c4e4eb6a4f7025
DIST encoding_rs-0.8.35.crate 1381050 BLAKE2B 2db6797e4f226b3836c18496ed77f3fb113fbc075864fd264f23c4fec8396eb3a01c439985ba0586a4464ac4043ddd3acac80e0ecf897cb59569e5065ce2137c SHA512 4b55b53553c5cb6fe05ae81d1c6f3b0bab73ecd3d426b15c58b9de9ea8dd61617bf0bb2e6d3ae2514c7cb6e73019b1a083173d1423b3ece2d190770c597114c4
-DIST gimli-0.30.0.crate 277411 BLAKE2B e3d2b0f55a407f6ea64c36dd4042e3e3601d032c4feb9819c2c414f0203a860cd2181c4d6cf9590ec2c2d978998c2cde6e5d36dfae885abacf7a42d57e13f1af SHA512 f7ab35abb6e565d4cc717659ec6fbb21598c1d350052b60e3f7cf03e87ed3b588f0f2e44991960ec5cbc7992299cdf4cee88eda38dda456127374a758cfdcb35
DIST gimli-0.31.1.crate 279515 BLAKE2B c8924ce351af5b8f96ef757a189f7a9be14533c024d496c62037cd4eda790b3f6282cd3013ba82ecc83082acab1b60ea80b83e0fd5f8eeb381fd7f9df88ce0ee SHA512 b9c8c11547dc7420fe936b9f32a4f5ccf3bb68d1d9f39dedffd40d631360f6e032e719d858668826f1099b8a262e8096aa7ae1f6d7d3d7aaf47934d832715949
DIST half-2.4.1.crate 50892 BLAKE2B c275a9ec70d2fc0c50cb63421399202d31252b0dbf463798ed0a12a17493817c66b8933811d483b348f8f945cb05aab7cc2a4d952bd16009c3da4860202e28dc SHA512 0bce235583ca128723186e1fb50f636b519bf826c942f02c5b969db4117baa87c644665c541991c16d1f1dd97c7233c017a513d45075fc72c5d99ccc7c1ac193
-DIST itoa-1.0.11.crate 10563 BLAKE2B 94da07e0f7f2535d0b1491b3a3c64905274b315ffd35ec8e9a3e36e26cd7211733b462eefb5208963e388345f65be9694804c344a6132b2b595b0bc716c0b328 SHA512 7e22dffac34c9c9f432daef395e0ec710ed658164bc9cd9fc6445c9f984c912a10bac556214a026bcddbe27a3197b35b0c87d6709fd605062637d086b2d20311
-DIST itoa-1.0.13.crate 11188 BLAKE2B f9e61bff257763f1b395e8f8f93335be2e46d1c57be67ddc42af44053ebca2e7a35b26f6d109fb42af35ddbf608ab6960c62f1dd740aaaf0dda18ee2b44d09de SHA512 8d9104f57e6eef32ec7c1389177060cd0ecb628d48c8b202c7f46e29c8a6a2ac93f9fcaf00f903024d213998a88febeeaf70d15cdebc414517b94e76b29ac6a2
DIST itoa-1.0.14.crate 11210 BLAKE2B b2d33dc384757963eab3ae7d80bb672d828a549967986e3af8c70fe71a0ad46c4a278da2db4dfccef99e804e6cd4934067e97c0697a33ac3302cafbc46eeb416 SHA512 ea2d38df373652ddacccd11e610dfdad4e3ae7f0d476514e6ac58092733c817bd834e8cd88c3bc4178dd5a646ba628ae626195e0aa407e8534ae3c2a7b049987
DIST itoap-1.0.1.crate 83316 BLAKE2B db0d9f712155bfe4285c3d3debf314da2d64ffd127d6b9dd471074eb7e5dcda41f1e5b04bdad63e0fbd695043eff21956709ffdf2cdd7fc5b329d1d79ee69fc6 SHA512 ed15ba3e1ee1ef5f1658fbb47e8cba66e62acf05d8ac45340e15ace24c86e5adf072b52bfb90ebc5e90f31a9a8e91ada23d4322db9a87bb966922afdd4775840
-DIST jiff-0.1.14.crate 605138 BLAKE2B 130b0fff23f8d710378aed399ab20c84e3a69e5b05d21046c6f6eec4767006c2d9995a7327ead3d334b82a38d11111a5a5591f14fe52d4c7adc26135ee8b047e SHA512 3f1d403e4a6393bcb84b93d4aa0b876de83056fa7dd145b61da611b5436a7dd6ecd1d1681c2eec8c61406c9f4f5cca7cc3000391c9fbeac2f81d7666fdea0d0e
DIST jiff-0.1.21.crate 687373 BLAKE2B 1c4c48de3e04034df6e699c15957dfab16df211074d846029e7b24103d35555074c672a0f10822152ad6917ab4c6bd62431f3e2002df90e0d916889d6880a2ef SHA512 f78e3ef0023d8dfebd50f3651bfc1ebe5453d0f99d3a3581648dd2e3194253e8f864da4b8c1d1871516c71e92fe8f47f4cbdbde52db9cebc52d38be177b0b4e9
-DIST libc-0.2.161.crate 765389 BLAKE2B 4880efbc347e0b92faa893993f37c486a69afd1a3c741cfb9d3a2d3c87fd56e49788f8aeac17baca217f4ceee9180097386ef481f4e142942802f27983f8e6fa SHA512 264d7a872c10484b9cb19ee858c2ac44bf165297653fbc6220672bd2e0ba10913408130f21d370d2861eef529f9ecafece66515b47b4461d56e6b02f55ea2be8
-DIST libc-0.2.164.crate 769055 BLAKE2B cfb757ea04ec8ad6d6a0dff92cbedd626aa4932cd83d67d19ac51cc140f9aeb54b38b488796c4a0e722f7bceaf54c4807a32ec0560bae4840a82fc1c4a5151ab SHA512 614835ee7388c854cacdc179b5700b7de0c696ec0eebca2b997f1039157f737fa79e208832a46f2fa27fcedb6fe7a27faf26079f06ee0e679b6f35d4a5371e3f
DIST libc-0.2.169.crate 757901 BLAKE2B 1012cf93d8975aa20fc3f2332e253426ff66be6aed63ace5292cc8568ee419b0f1a4b5b39ddbb78d9c2dfd8d72eb0d068c98faa229ab55556da5e674429f0e97 SHA512 c4566330a7967efc211edf31a23647d1a33aa51fc25aa4e9337716748c8fd4be0ae63679220ff2cf6e892f37d03bc5264c55e8f082eb82574a6ec1fa8e5e45ce
DIST memchr-2.7.4.crate 96670 BLAKE2B da38114beca670467c3e1fbf4e415af6f22d52e3223715d52e181babb89b872b46511563985bcc16d7ff4e82f812c6e83ad904b0fe2501b14445119dfa8240e6 SHA512 8d0e8b9c30208897d4b1b920f1bdcccd0c2b75d92a06abe4a1b2407938768abb6487d63de56c6a80419798fe69517210643dfaf11f5f5540185f0eccf220adb2
-DIST no-panic-0.1.30.crate 11789 BLAKE2B 11c9978e79fc55a259f4a6b16dc5df9b46e722301970722f9ede1133f3907e0d6c474eda5071f619f52e578c9afafcb94a80c3aa67843f0360db9d70d41f8a7e SHA512 c357be0341e7008662a79b1f3c8b749f90074553002dfa5177089116f4cceaeb062c1a2953acc91d63079d95a70fe550f1f02f47a96d7b09858d60e72be26bb0
DIST once_cell-1.20.2.crate 33394 BLAKE2B 79dd394fcf1637adfef28b4159ec653c8b71d2bda0e0e36a940c04e3d87698f039dc30c97f26648ecf0d9742962f1f0a117568f7c705a8a3fc167085b0ca3e80 SHA512 bc6005bdab7a154c01e2203fb553a68695727475a9a882cf906d49c054ce886ad92cb491d380b6b9fe71a81b2fd690ce91c9a6cf8dfa8508470ac9acfc8a31c8
-DIST orjson-3.10.11.tar.gz 5444879 BLAKE2B bfa24e6f07fdc952dc9f80a28449fa9121c960cac52cd867796e1ce21344a5c00450bc652b28340c8a4c64f2e8f63699595528e924a019c0b46a8b0c4103eb41 SHA512 b7a960cd06c0176a194c7c9e9dd412c47000258fb79e2407182156e07a48bc02823118ac708c23f482bcb8f3b77dcdcfd95f61f408b45cbaabca8ed317ef63e4
-DIST orjson-3.10.12.tar.gz 5438647 BLAKE2B 88378c76f7b4aaefcc56b3963e60bc6fd8cf740ab683a15c735b8b1a9f69f0a9fb9924e2385c3234ca6f4b44c772f7b6ef359cfc1afc8982fc521db0e99b3100 SHA512 089420645ef4a54674436ebc4f49ba67fda4fff716c949e03a4af402fdd817decd066c508b18c19ac24b634e7173b37924ac1c2180679a92551884957d4b11ae
-DIST orjson-3.10.13.tar.gz 5438389 BLAKE2B 4845c232441ff87e323f661961537e4a9705a7f0191f364c31a62d0784b15c2bd230d6999985b84f2417043451616facd91bad63d84317ac4a12e71687b33713 SHA512 84ee3a42654e5576190dd115483db1e3a9a151b22de79b99b497c2e181adbd5e33a4aa77bb5f72394e0947887e657c5dc6380e852dddb4a5e95b47e72486b18c
-DIST orjson-3.10.14.tar.gz 5282116 BLAKE2B 01c7e3c024e96924bd630556445d0355c43dfaf20241a850c0cf92696dde07b856e54707642d67ea91e457fac7ff7a8ea801f32ce3f869bdccda57c9d75a16f5 SHA512 d186e95ac6750af9f2688744fe663e63973e06942fcbfc10deadc1d63a5ad59f437ea4e2485d1866bde6abcd59086fa5c1a0794d3ba975e693995d3ca58f0f76
DIST orjson-3.10.15.tar.gz 5282482 BLAKE2B 12ec9b9f5928ac3e9c62362bf7237edc3b68a1559912f7d75f54dcb8d415192c68e5f10d700cf647e9a8e1d7b32b8433fefdd4913c51080ed308b9a96aa5182e SHA512 e20fc9313e494719a1c2ebaeb0fedc45b5c58005dfb868f915b545995b8ca4e705f6bdc691f5df0d8705f393eee439576f82de89c35c0f3c1932a51eca3ef9b3
DIST portable-atomic-1.10.0.crate 174760 BLAKE2B 9a05d6162c95f5140709cbd005c1997449fb6373700e8ed3966e3379898e95f3cbdb90b387f1c7deb3f1eb33125378852a7168d0d22b433813f6c082112b0365 SHA512 fb47ab53fe240d5b0824dd068c6dda473d3e71ae6f5dfccaa17262a8b6de0e1dde05d83975e53bbfcf43f10ef5c634fc024f94613937927ae93f1adad1dadb19
DIST portable-atomic-util-0.2.4.crate 47043 BLAKE2B 6a8e122bb2b9eb8262e9eb790f336dbb602f6c086f8ac025740c043170360d5474af578b3842b06ec51535535de3f4d1b6753ec54a6871dd0396f5c1012b0bd4 SHA512 f2266e78576181123aaf68e7b5d3523a368fa8136d447bac68a08d65c7051dea677cea84491a1a03b9decb4704b2f9392574d68dda9427092a2ac92cfa0affe8
-DIST proc-macro2-1.0.89.crate 49446 BLAKE2B 844c021394e7a2551bc179592a6769d672360150abf92debcb9ac60a94a2e426c48c408f06aeb2128686f5f04d66dc12973714670c21a5063ee6b9f3bae4e671 SHA512 488ab38a04df1d0330309382a7e4f667238cbc9b4d513da6a8f5718f8a762f76cc122af67fefe8f4b021a286b3d23e3ec83d781fe6ac823042a6daf14d147e2f
DIST proc-macro2-1.0.92.crate 52353 BLAKE2B 9aa29fa6f1c56c0392a94a81b4c61953f4d185012cdca37e356817845535da79d7094bf43472ce63109ce479a2fd0cbef4d802afd61daf92c4db303bcac60e7e SHA512 e614f08acc0a7e97ef580479cf5b682378df1ca16f09bfb2296ebb3490a435229dea9d682c621c54ce57e8e1d3b7803eb8ff83c88bd02e07228dba6d02f14aee
-DIST quote-1.0.37.crate 28558 BLAKE2B a7d007a69e619f853af94333e1066bb767013312bd99f147b1b153611242bcfa9c76768b1ba47278589db309a9acd61a772c8ec3b567e48439bb9d831f9326d4 SHA512 c4ed21428c1f89cf22b85d80720a7869831a9c129d694617b0ce8c258278114ab98846f3f653abf736d1c86bc9224bbd695e9a7b06aa3adf292d02e1ef14cc05
DIST quote-1.0.38.crate 31252 BLAKE2B a3836efbe5c21dec70c684002b47b8fc7cef643c82ee903b537a48bc0707a28106c4b33d98e60ff81e04c7520f7404b1dc4d49446e8d91dded517e476c36e1c2 SHA512 530c47c5e6372b508bf5b2b88a138408a7afa5ef52c47280ed20eccf39f8e97dfc1e0a18c1bd5472efcdc49a7a1e69566333a0a1b4c0b4f0e11e6a7a85bfe8af
-DIST rustversion-1.0.18.crate 17794 BLAKE2B fa35445404b836214bdbaa3de8e43312b6d8f50eea32540f808a6255908d756bb1a5dcf49ca6268a1d214c535c2ee770e295c0e7d6430268142a190b31032421 SHA512 263d2cef02b6df4d38b35af7a9ee3a6a044f160f3cf7c6771528f23dea342232087f73f89e419ef7869db771e73c273c05b3dccfe9e29f707586b2059e820645
DIST rustversion-1.0.19.crate 20616 BLAKE2B 025944fe053ef928f26affb890ef6a563b0e63cf6acc0ce7bd4ff104541f819bbda48ebb59fd8a677e44ca1ea21f4a18c209adf2004c9ad79604dfbeca43b5fb SHA512 45b959aea8155ee47c51aa1d87c6c344b5f4b20199a2646ca30bdabe1c2458b014be91fe0c48c29c2261ad9e5de6df7eef7ddead1682e584d4a906c17984baab
DIST ryu-1.0.18.crate 47713 BLAKE2B 409cdf4b4e77685394018371e91ad6fdb175ac57e1df9f902871f13208515e5a2ab1daa226fc1e7291278e64448332845be4cc9409bce3b2f3daed409259e104 SHA512 a9b2beac778ec47e6be303148d7512ee681bd2361f6e4ac6db32c8b4baf86a8c5eb5b0d02eacd6131ae88c7b5105c57018c3050676e0b3dd1ed9c4d2fd650e84
-DIST serde-1.0.214.crate 78523 BLAKE2B c701f316a3204625d475668d2722991d75c8d9c573ae32e9175ccf99780fbe0c9c9d1dd0b4bac35f2cc91aca888c7f3dc41af2842dd833ab82776a38c2a2f6c0 SHA512 100eac65a39b9b9c32c1671d36fa9cf8aca84a2673e24c2521fdbdb3ed9f932c71548f3f1a26b1e73dd7c92a34ffa8ed1c76eb173fa20d6e85736cdf8dc9a8ee
-DIST serde-1.0.215.crate 78527 BLAKE2B ca8e1175839ca45a4d78a155f5943396211408a85e0840b065c52948188010653d68fc4fc7b63bf2c39a11a6988abb7f6f3c6d878ca1373596e0a5d62186e109 SHA512 3da13f1a74393f1fcb6d659b5e060a11ecae358f55cdf4a2fd05bfc863fea6f75d3140d3bc74902f8feba8cddf7dae71a3f4e4e78e78e1b08ed46b3e4900281f
DIST serde-1.0.217.crate 79019 BLAKE2B a0aacff795d34583365ddd469fa14c58a6cccf8afbb248210aaff3134c7ce6e34b3d03f437326d7c01b3e78f82a5d19c37ed9fa4372970d8b2793f2889288e1c SHA512 f97b3b54b9e99c9a027390405cc054c3072f49c92803a4ed5f5f69e76a179deda9d77993b645b3581437085912d881da88d0451b9e0da423c64033a23fdd8054
-DIST serde_derive-1.0.214.crate 56630 BLAKE2B c284561109e5d60e103f1bb421e4da48f35c5046aa52359177e286449cf8fe51a92f6295f5bec3dc4cd737025e8d0bc618436e2f7640873f66bc5b77bb4f450a SHA512 70bc0a31d344cfec8d30f2034beab25097ef76ab8d89947b21753f737759e5d4e60e5596e0c7994a7cc35993bae01148120f6cdf5239be25fb243056effa27f0
-DIST serde_derive-1.0.215.crate 57092 BLAKE2B f28bb66017599afdcd8d45c514b8e07854eb944c1dcf931e052a01ce421e0de6c20c13b3867da5922e2153e25ce88bf9fa27e2e68ddc9d212977f71fa0bd6352 SHA512 cae686bdf10c683149956ffe1c64fcf3e9b9bf0cd6e33b4ce7429d0ca35b9fdb55443693866c1202fa79348c6ea0f49ab3be3d5f857de4ae0818d2b4c8c67d9b
DIST serde_derive-1.0.217.crate 57749 BLAKE2B 63b4930122d80d64492ba2718630513012202e42bbaa74510729ee66a0e72b8a1ad123784b479697ba562db43868f4bddfdf5e94bb3d744cd68a547471ba40aa SHA512 31020f4533d04b31ae125580a3c5093fad36438d324e2d9b063923aa8c125c654102ae7fbc3b3df892bb41db6b321962a23e0a37950e080055d715d15b18af76
-DIST serde_json-1.0.132.crate 150549 BLAKE2B a49aef7737fad2e6f6ec79cb6da00c734e7de7ef16be321846d1f6229534b58e15ceb0f6306eeae6f85bf07431d82959c0a56ed1394d21a67b65c8c48e971f3f SHA512 9d157ce7d705fee8245569e7c577310782b69675a6e459f21904544b824a1ca5c9b445d17419fee438dfeb6fcc35343ba14e022043fffade0210b6d2c1b5795e
-DIST serde_json-1.0.133.crate 150739 BLAKE2B 7891eb5b8edcc7fd09ab1e15d3881ffdcb629aa39f2bd758c0505700a5f2dfabd85b1b66c3b094268bc1627b346e204c792f4ca61efa76c54ab9cd5744fb0ee2 SHA512 20e65ec87bff319897a141960d13deb5cadcf821209c1ee8799f1dc7f458ce432bc62c16df5bdada1c8d3cc01ff23b8125e8fa0a03545d4614f32efd687dc69f
DIST serde_json-1.0.135.crate 154499 BLAKE2B deeb22932145715d6a443b36b9b984b6ace1e254199db9586c48dcfdd270a3208ef127584431e19a826947df705de78f07e58d9126ee1c5ccd2bc73d1e779bd8 SHA512 e19c583aa4a55f1c3b9a4e49b8b5c6b66e91c893db06e52f33e87608be1ff0aa27996065157f45dd4d2c59b752259ae747b2d353fe7cd1d466f56cd8a97fe71d
DIST shlex-1.3.0.crate 18713 BLAKE2B 18800c364d3a628f1a3125097ea82fe6286550c2997235df0bf8483a3906aacabc81308cb239887d46ba2f457cc6f8acd5aca78316707eea5098cd5666aea67d SHA512 5c8cedbe666a14b8a0874defb9208146ce64579cde52ed483e4a794cac5dde6a24bf8d684404edff582f842e1fd4fa3fbeddbe074f191e4ec4aa517aa456fe8a
DIST simdutf8-0.1.5.crate 28488 BLAKE2B 1e0ac310d874a3c279c4d2d5369de12c2ec20050455b2102c0a10325383c0d2ebcf262ffa1bc1eabda14ca62508d4120538d7b353200122168a659ad4791d162 SHA512 139668c7232f533d3439986474da5036efa32d4e0d21fa72e1283e27dbd0670984283d91c238e445be61317426f67cdb8d3f13738b2fb657563f866c8b6d89d6
DIST smallvec-1.13.2.crate 35216 BLAKE2B 31a268aad595c06cdb078577a97b089dbea156a0df307a3e6aaaf4861bd9a680c5b11921da9dbdb1bcfe17d58c0cbede1ffe6bba3aef59b384fb1b9703c62d27 SHA512 a97c758b668e40ad9eb572e65feeae4954e09200a04ab92e26a13b48894381cd3a3d2571070c4b7a5e181182e1ede9688f990650342ec69ecfe1a264d234c679
DIST static_assertions-1.1.0.crate 18480 BLAKE2B 358dd5ac413d06f62da0388e2016c5fcb8ec68fd7dceb0dbbcb97665c032b7509b7e083c20701648b6a9174485f117c02682ae4bde7ef037e80a85cdf6a0c86e SHA512 46d0e35f77941dee6f60f574c130472248063dc38494c1c4f84f7c048244cc2a58a86fe17c0990e3f0f01406b75ed385a13d00058612b27cf0e867c8d31c92ee
-DIST syn-2.0.86.crate 276473 BLAKE2B be9de484d0b3ea6818cac64f195c893e39271fdc5eefe2b78fbe6c39f61a7960bfb254324deec6f1b0da2626c3d116ac50fe491427a967a00d20e4affd3e5c54 SHA512 1106de0b14981e4dcc1526d932764837cd2905ca2ca3f259a59e9f9992438f88dff49934bd99f3268055e920c1f226a8bbde0c779fbade7ed311a2d4e5230095
-DIST syn-2.0.89.crate 289852 BLAKE2B 4e2b06d2a0ea9b8970338ab61f8c5569cb7c10466dcf139576d0618c3690cfd23c98b66f0714c34839364dee72df6a6d8571f73dbf03ecc347fb1effb118fc2f SHA512 d172936f04a383b7b5e79dad328e70ea3c4faba4a88d0b6d186645413e8698434d30f53012cc9d3813f617c8bef75e95a2d064fdabae7867678abbed22bcd910
DIST syn-2.0.95.crate 297136 BLAKE2B 5f0ec2d11613e7c172ba25302e4303b09c8d81813735a1ac6d368c7aad5171198dd276365ddd2fa3fc9f3cedf4951cace0c56831c7cd40d71ecbdeed9a47886f SHA512 2c1ebc62893830c34815b29fd6788b3a3b80cfddd5e303fa438569262da1bacd9fe3b892881b544e022f10a4f0c2fa9df1569a73418ce003cc7c8cd8c7420035
-DIST target-lexicon-0.12.16.crate 26488 BLAKE2B e7950e4a302059a1bfc9bc15618a3c1b971a17cffae117a6e8f5f63a0d82fd2bd02680301d15338612d5426d349dd24cfee30ee787a15a7d3187f2a6825e69ce SHA512 092639957c4a0391560b6442b31c47159c04d12e971010f730a6ec9cb5389e4be903ef3d7daa06db95e64dc78b6970731fb647179ebaad2b12e9ed5e9b24da27
DIST target-lexicon-0.13.1.crate 27925 BLAKE2B 39317f01ad37184db6064e0f4c8450fc45b9f15739a1a422e675b078e0a655cc07a0bc10bbc0acddef3554172b66cebd3e48359404d37aff62d1da2798f4b303 SHA512 88103910a737bde18b1ab21c7f0b7ff7a3fb76499cbec445fbc81e24bfc4066de3d5a155c444bf71b35fd6c9422b1ee779ff297ca055b61f5997e8308fb6ff0f
-DIST unicode-ident-1.0.13.crate 43279 BLAKE2B b5e935020d1c9f3aa24f7d382f6b73d6510d654a61ce1c9c024e2e365bb817182e076139f370e822573531356fb78ff7499049b1f29aa1e2f4a2cc74a955b47b SHA512 5ba884f39debe9c8eb0b1d251ca713f7e2bc191d211707ed10cd81465487dbdca53914c19e131edfa1da15af132dc2c346260c3969c61e3747b63399ccb1cc51
DIST unicode-ident-1.0.14.crate 47547 BLAKE2B 30e0b6d7f3a967aaf5b9d91237008a60c3a8ded53bda901696e23cea3931dd71b01ddab866dca9e31e17c395d5f5a68f2a938655b693e894962568c2cff5ca15 SHA512 7c6dcd1724e8cfedc37546d1abd49088b633dad228097acc73d7b6cab255b223e830c541144e05a00388fd8ca8066f27c18792419cfa58ee9da4460a38d0bc0a
-DIST unwinding-0.2.2.crate 26818 BLAKE2B 14e918929cb6d7f2d0e1698ab425658353549d83a66733f05d172344a5b6b319c977576d48601ab5f363f5f7b552ec6049a4f291382885f295a1549c0b043ae0 SHA512 0fb87c31dcf607a01f6600fee2a4c87e8d2864603b71b060e3cfcc14f96ffd351e39e8217e8c8a39ef3e550dbe923befa5294367c64edf42bebb3df6878047dd
-DIST unwinding-0.2.4.crate 27931 BLAKE2B d12075b92a298203642a85ec776bd8a85c6ebe561c3042783b7e54288507791e79d11625f0673f1efcaffbf0868829c8758a5c62f2530ca15a3637920c70ae99 SHA512 9bd56197a4befbcc65b3ef926945b3efb37a6206556437435fd2fd97a447dbd8d2d5236afce05e21b015404e301d51e7a4a4bc573cc4ec64bf85dddae5c3ced6
DIST unwinding-0.2.5.crate 28025 BLAKE2B 48ec97462daa9d42f6f257daa4dbf72dfc40c58a04f154264892d4918cbde01faf50bff08c8400789b4147388c1fb3a958a1f323b09f0dc20cc3fe60c9a5c63b SHA512 67608b01fa7adde11510520d5136239732e0361e34c004bf89e3f8e29587adbbaed2e333d9c799169e97dcd2cbbc644189c9f3c294fa905d5eaf904a5bea7dd5
DIST uuid-1.11.0.crate 47683 BLAKE2B 37a601b0fe7ec57333613f8c18ada76bd784c43c8af7c252200a7c9c76b445b179931cdf727b5ddae3ffa3fa29c5a13507fb0f2bd604d306982843e042038314 SHA512 0cd1b95fc2247bf4e627de6abb41e332ebaf39e5720640e52b9f235f7a0e2d451e7a486efdabb616ce00e47832d21919611683d0e6a71c86a86f290940cfda32
DIST version_check-0.9.5.crate 15554 BLAKE2B 131e75cc287518831e142430e2a39b48e4275874f4473780d47a27552294097aa1cddb65c385583e1022478f940b495eb43c24a8b1617b8ac5a24af3340c0d72 SHA512 d11d5a2240ab0c67ea69db56561ce202201edeef9a8e5eda3d9ae7ab7bb5752d8f343fe7f6536d8383de8d55f9024efa84f66a0c21e69563b7a38c4a628014db
-DIST xxhash-rust-0.8.12.crate 21329 BLAKE2B e9596bb83cd0f0465c279deecaf4dd87aac05db1c8c7d3aed4f0689022c5a0522d976379fb3dcf6cfe1c18452c87890e95f3d17998c777d92f5cbe58119a20a9 SHA512 6fd17ec65be94b58f109b6aa9bb283e51092621e8af624f8c2c2c95558a3d0461d743cb8a65a0da5853ff7fd98273daec0dcc5b632440868524f99894beeff3d
DIST xxhash-rust-0.8.15.crate 21515 BLAKE2B 0d82ffaecfedc3001e4273c7cb3211e847c110334c0558099c02c2457ccc1f6381b5b1c9c13ec87236e23f4e5551e3cb09101bca75358481ed7ae8ecb83d4866 SHA512 80a73a93249cfa0043a743e883f078d9e4bbedc236dec239d9f89b6816715c614f212930fe8842f0598275d2676a0e406a1ab7101158c163f50b9d1d00265925
diff --git a/dev-python/orjson/orjson-3.10.11-r1.ebuild b/dev-python/orjson/orjson-3.10.11-r1.ebuild
deleted file mode 100644
index 1cbe81609b24..000000000000
--- a/dev-python/orjson/orjson-3.10.11-r1.ebuild
+++ /dev/null
@@ -1,89 +0,0 @@
-# Copyright 2023-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-DISTUTILS_USE_PEP517=maturin
-PYTHON_COMPAT=( python3_{10..13} )
-
-CRATES="
- associative-cache@2.0.0
- bytecount@0.6.8
- castaway@0.2.3
- cc@1.1.31
- cfg-if@1.0.0
- compact_str@0.8.0
- crunchy@0.2.2
- encoding_rs@0.8.35
- gimli@0.30.0
- half@2.4.1
- itoa@1.0.11
- itoap@1.0.1
- jiff@0.1.14
- libc@0.2.161
- memchr@2.7.4
- no-panic@0.1.30
- once_cell@1.20.2
- proc-macro2@1.0.89
- quote@1.0.37
- rustversion@1.0.18
- ryu@1.0.18
- serde@1.0.214
- serde_derive@1.0.214
- serde_json@1.0.132
- shlex@1.3.0
- simdutf8@0.1.5
- smallvec@1.13.2
- static_assertions@1.1.0
- syn@2.0.86
- target-lexicon@0.12.16
- unicode-ident@1.0.13
- unwinding@0.2.2
- uuid@1.11.0
- version_check@0.9.5
- xxhash-rust@0.8.12
-"
-
-RUST_MIN_VER="1.74.1"
-
-inherit cargo distutils-r1 pypi
-
-DESCRIPTION="Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy"
-HOMEPAGE="
- https://github.com/ijl/orjson/
- https://pypi.org/project/orjson/
-"
-SRC_URI+="
- ${CARGO_CRATE_URIS}
-"
-
-LICENSE="|| ( Apache-2.0 MIT )"
-# Dependent crate licenses
-LICENSE+="
- Apache-2.0-with-LLVM-exceptions BSD Boost-1.0 MIT Unicode-DFS-2016
-"
-SLOT="0"
-KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-
-BDEPEND="
- test? (
- dev-python/arrow[${PYTHON_USEDEP}]
- dev-python/psutil[${PYTHON_USEDEP}]
- dev-python/pytz[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '
- dev-python/numpy[${PYTHON_USEDEP}]
- ' 'python3*')
- )
-"
-
-QA_FLAGS_IGNORED=".*"
-
-distutils_enable_tests pytest
-
-export UNSAFE_PYO3_SKIP_VERSION_CHECK=1
-
-python_test() {
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- epytest
-}
diff --git a/dev-python/orjson/orjson-3.10.12.ebuild b/dev-python/orjson/orjson-3.10.12.ebuild
deleted file mode 100644
index ed277d4299a7..000000000000
--- a/dev-python/orjson/orjson-3.10.12.ebuild
+++ /dev/null
@@ -1,88 +0,0 @@
-# Copyright 2023-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-DISTUTILS_USE_PEP517=maturin
-PYTHON_COMPAT=( python3_{10..13} )
-
-CRATES="
- associative-cache@2.0.0
- bytecount@0.6.8
- castaway@0.2.3
- cc@1.2.1
- cfg-if@1.0.0
- compact_str@0.8.0
- crunchy@0.2.2
- encoding_rs@0.8.35
- gimli@0.31.1
- half@2.4.1
- itoa@1.0.13
- itoap@1.0.1
- jiff@0.1.14
- libc@0.2.164
- memchr@2.7.4
- once_cell@1.20.2
- proc-macro2@1.0.92
- quote@1.0.37
- rustversion@1.0.18
- ryu@1.0.18
- serde@1.0.215
- serde_derive@1.0.215
- serde_json@1.0.133
- shlex@1.3.0
- simdutf8@0.1.5
- smallvec@1.13.2
- static_assertions@1.1.0
- syn@2.0.89
- target-lexicon@0.12.16
- unicode-ident@1.0.14
- unwinding@0.2.4
- uuid@1.11.0
- version_check@0.9.5
- xxhash-rust@0.8.12
-"
-
-RUST_MIN_VER="1.74.1"
-
-inherit cargo distutils-r1 pypi
-
-DESCRIPTION="Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy"
-HOMEPAGE="
- https://github.com/ijl/orjson/
- https://pypi.org/project/orjson/
-"
-SRC_URI+="
- ${CARGO_CRATE_URIS}
-"
-
-LICENSE="|| ( Apache-2.0 MIT )"
-# Dependent crate licenses
-LICENSE+="
- Apache-2.0-with-LLVM-exceptions BSD Boost-1.0 MIT Unicode-3.0
-"
-SLOT="0"
-KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
-
-BDEPEND="
- test? (
- dev-python/arrow[${PYTHON_USEDEP}]
- dev-python/psutil[${PYTHON_USEDEP}]
- dev-python/pytz[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '
- dev-python/numpy[${PYTHON_USEDEP}]
- ' 'python3*')
- )
-"
-
-QA_FLAGS_IGNORED=".*"
-
-distutils_enable_tests pytest
-
-export UNSAFE_PYO3_SKIP_VERSION_CHECK=1
-
-python_test() {
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- epytest
-}
diff --git a/dev-python/orjson/orjson-3.10.13.ebuild b/dev-python/orjson/orjson-3.10.13.ebuild
deleted file mode 100644
index be0bc45574fa..000000000000
--- a/dev-python/orjson/orjson-3.10.13.ebuild
+++ /dev/null
@@ -1,89 +0,0 @@
-# Copyright 2023-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-DISTUTILS_USE_PEP517=maturin
-PYTHON_COMPAT=( python3_{10..13} )
-
-CRATES="
- associative-cache@2.0.0
- bytecount@0.6.8
- castaway@0.2.3
- cc@1.2.1
- cfg-if@1.0.0
- compact_str@0.8.0
- crunchy@0.2.2
- encoding_rs@0.8.35
- gimli@0.31.1
- half@2.4.1
- itoa@1.0.13
- itoap@1.0.1
- jiff@0.1.14
- libc@0.2.164
- memchr@2.7.4
- once_cell@1.20.2
- proc-macro2@1.0.92
- quote@1.0.37
- rustversion@1.0.18
- ryu@1.0.18
- serde@1.0.215
- serde_derive@1.0.215
- serde_json@1.0.133
- shlex@1.3.0
- simdutf8@0.1.5
- smallvec@1.13.2
- static_assertions@1.1.0
- syn@2.0.89
- target-lexicon@0.12.16
- unicode-ident@1.0.14
- unwinding@0.2.4
- uuid@1.11.0
- version_check@0.9.5
- xxhash-rust@0.8.12
-"
-
-RUST_MIN_VER="1.74.1"
-
-inherit cargo distutils-r1 pypi
-
-DESCRIPTION="Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy"
-HOMEPAGE="
- https://github.com/ijl/orjson/
- https://pypi.org/project/orjson/
-"
-SRC_URI+="
- ${CARGO_CRATE_URIS}
-"
-
-LICENSE="|| ( Apache-2.0 MIT )"
-# Dependent crate licenses
-LICENSE+="
- Apache-2.0-with-LLVM-exceptions BSD Boost-1.0 MIT Unicode-3.0
-"
-SLOT="0"
-KEYWORDS="amd64 arm arm64 ~loong ~mips ~ppc ppc64 ~riscv ~s390 ~sparc x86"
-
-BDEPEND="
- >=dev-util/maturin-1.7.8[${PYTHON_USEDEP}]
- test? (
- dev-python/arrow[${PYTHON_USEDEP}]
- dev-python/psutil[${PYTHON_USEDEP}]
- dev-python/pytz[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '
- dev-python/numpy[${PYTHON_USEDEP}]
- ' 'python3*')
- )
-"
-
-QA_FLAGS_IGNORED=".*"
-
-distutils_enable_tests pytest
-
-export UNSAFE_PYO3_SKIP_VERSION_CHECK=1
-
-python_test() {
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- epytest
-}
diff --git a/dev-python/orjson/orjson-3.10.14.ebuild b/dev-python/orjson/orjson-3.10.14.ebuild
deleted file mode 100644
index 98c4ae6e8926..000000000000
--- a/dev-python/orjson/orjson-3.10.14.ebuild
+++ /dev/null
@@ -1,91 +0,0 @@
-# Copyright 2023-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-DISTUTILS_USE_PEP517=maturin
-PYTHON_COMPAT=( python3_{10..13} )
-
-CRATES="
- associative-cache@2.0.0
- bytecount@0.6.8
- castaway@0.2.3
- cc@1.2.1
- cfg-if@1.0.0
- compact_str@0.8.1
- crunchy@0.2.2
- encoding_rs@0.8.35
- gimli@0.31.1
- half@2.4.1
- itoa@1.0.14
- itoap@1.0.1
- jiff@0.1.21
- libc@0.2.169
- memchr@2.7.4
- once_cell@1.20.2
- portable-atomic-util@0.2.4
- portable-atomic@1.10.0
- proc-macro2@1.0.92
- quote@1.0.38
- rustversion@1.0.19
- ryu@1.0.18
- serde@1.0.217
- serde_derive@1.0.217
- serde_json@1.0.135
- shlex@1.3.0
- simdutf8@0.1.5
- smallvec@1.13.2
- static_assertions@1.1.0
- syn@2.0.95
- target-lexicon@0.13.1
- unicode-ident@1.0.14
- unwinding@0.2.5
- uuid@1.11.0
- version_check@0.9.5
- xxhash-rust@0.8.15
-"
-
-RUST_MIN_VER="1.74.1"
-
-inherit cargo distutils-r1 pypi
-
-DESCRIPTION="Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy"
-HOMEPAGE="
- https://github.com/ijl/orjson/
- https://pypi.org/project/orjson/
-"
-SRC_URI+="
- ${CARGO_CRATE_URIS}
-"
-
-LICENSE="|| ( Apache-2.0 MIT )"
-# Dependent crate licenses
-LICENSE+="
- Apache-2.0-with-LLVM-exceptions BSD Boost-1.0 MIT Unicode-3.0
-"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86"
-
-BDEPEND="
- >=dev-util/maturin-1.7.8[${PYTHON_USEDEP}]
- test? (
- dev-python/arrow[${PYTHON_USEDEP}]
- dev-python/psutil[${PYTHON_USEDEP}]
- dev-python/pytz[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '
- dev-python/numpy[${PYTHON_USEDEP}]
- ' 'python3*')
- )
-"
-
-QA_FLAGS_IGNORED=".*"
-
-distutils_enable_tests pytest
-
-export UNSAFE_PYO3_SKIP_VERSION_CHECK=1
-
-python_test() {
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- epytest
-}
diff --git a/dev-python/pikepdf/pikepdf-9.5.2.ebuild b/dev-python/pikepdf/pikepdf-9.5.2.ebuild
index 76abd2f61e8c..04785a838218 100644
--- a/dev-python/pikepdf/pikepdf-9.5.2.ebuild
+++ b/dev-python/pikepdf/pikepdf-9.5.2.ebuild
@@ -5,7 +5,7 @@ EAPI=8
DISTUTILS_EXT=1
DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{10..13} pypy3 )
+PYTHON_COMPAT=( python3_{10..13} pypy3 pypy3_11 )
inherit distutils-r1 pypi
diff --git a/dev-python/psycopg/Manifest b/dev-python/psycopg/Manifest
index 1cc36e6d9a74..c7dc9481c62b 100644
--- a/dev-python/psycopg/Manifest
+++ b/dev-python/psycopg/Manifest
@@ -2,6 +2,7 @@ DIST psycopg-3.1.19.gh.tar.gz 507073 BLAKE2B c10e2ba83f4a3bb0646d86c0f1311ae43e3
DIST psycopg-3.2.2.gh.tar.gz 550226 BLAKE2B 2731190da5b044f16eb0f90fb5417244e46fc0906dde6ee9bd1ee4d91613f59ef1943da6662ad1f3db1487b8cc2b4ccb4e0a79ecc056a8f72c7e2b7b70e39abd SHA512 48686101c9d568003ffbf90cf07bc4496fb161f599b60a2b2df41ac120f338bee7edbeae3786071969d6bbb9acdbe868fa568b9cfa3b7a17dec2d47e5d54f002
DIST psycopg-3.2.3.gh.tar.gz 550802 BLAKE2B 1f748fc2dc915fd82b2bc557ae4263ecf1070d5ba08681cb6ae21570acf601b03a2bde7e4324cd506e0146c86db976b003c57e99cd1948a930c074f0674d6ba8 SHA512 cf543652cfd27cf1cad3b1e3b8b50802562cc49f8fbd9ae5bd85ffdf26e30dc470f1f3380261c8cad418945ade8dc4f199ebcba08968cb87fd0b6c241fd8040d
DIST psycopg-3.2.4.gh.tar.gz 555758 BLAKE2B 1b74f8a6ee91266fb6c6a13ee51fd7d18514b4ce662f911f83baba652bb9198cae21636f6f1dad6eae916cc2c22f2322629dea346e61ce94a1d94a80c8e8b5be SHA512 026f4a74011c37e594903931da629fa0150834db0916bc02a45aa31eb79fbbcd9a0b6b59809d4db389e298101646409097d99c4950981ddb43413a7488e4f1ff
+DIST psycopg-3.2.5.gh.tar.gz 558069 BLAKE2B 1913db4e399d9e44e392019471d3b7a5fbbff1da67a87961b084ca2fa34ddf2af3c862093077bfe04503d16187abff4ab62e33b1a3505b7a8cafa836bcf33ba3 SHA512 f4c62e462f6fba04f7b07bf500cbf5ee3e0ffa570c682f507aae0fc5ee88a1eec3f98da05c9a2c957d018f12f53a9567565f8b81914eb36ca92992fa2ccd8156
DIST psycopg2-2.9.10.tar.gz 385672 BLAKE2B 4a3ad64f406c427b785ffeb85f6520aa67ed04de2d1749eb22d8275146b71ba451f7c04c9ead401d6f7a273781492cd6a5a36beba68b36b1e5203ee75f7df503 SHA512 d0916f6a645b5e87f89f2463dc22fad78340a85fbff320d099bf429a42557f40d3a4eebdc670768469aef1e9fcee60123767bfe49e1186e8574f95bfd6f46900
DIST psycopg2-2.9.4.tar.gz 384017 BLAKE2B 4bc0afcc890c8a257c1ccd5c6e4e5301857a80f8b1428aa46c1473c9e18f5d2914a2e592c13336b06106217bb334d9b0321835bdd123f1627cbeb29dedf97bf7 SHA512 259088e42e0ab0d8a1a0ccf04f5e560f32c6179b4a0a0059e91bcf269baa8f4b0f1f949c332c640a2438c927a29b2c144078a861f8e18ba9c764da7c93c73b8d
DIST psycopg2-2.9.9.tar.gz 384926 BLAKE2B 8418fca1329703cedfc86be74d85cae5133a0604bb8a21fa43e5359a46626d38ef227d0cd8fbbeb497e2db517a469d7f3e86b74ef9163617a547e999073a6b4c SHA512 a691fd09762221e854861dedce37b05e5354e0701feea470a6d5046960056ef02a8c9ecfa751adeba485271ea7d5834643b7d3a3c3f3270087f5ed9c68509f5f
diff --git a/dev-python/psycopg/psycopg-3.2.5.ebuild b/dev-python/psycopg/psycopg-3.2.5.ebuild
new file mode 100644
index 000000000000..d5a124be5907
--- /dev/null
+++ b/dev-python/psycopg/psycopg-3.2.5.ebuild
@@ -0,0 +1,119 @@
+# 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=( pypy3 python3_{10..13} )
+
+inherit distutils-r1 flag-o-matic
+
+DESCRIPTION="PostgreSQL database adapter for Python"
+HOMEPAGE="
+ https://www.psycopg.org/psycopg3/
+ https://github.com/psycopg/psycopg/
+ https://pypi.org/project/psycopg/
+"
+SRC_URI="
+ https://github.com/psycopg/psycopg/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="LGPL-3+"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+IUSE="+native-extensions"
+
+DEPEND="
+ native-extensions? (
+ >=dev-db/postgresql-8.1:=
+ )
+ !native-extensions? (
+ >=dev-db/postgresql-8.1:*
+ )
+"
+RDEPEND="
+ ${DEPEND}
+ >=dev-python/typing-extensions-4.4[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ native-extensions? (
+ dev-python/cython[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/tomli[${PYTHON_USEDEP}]
+ ' 3.10)
+ )
+ test? (
+ >=dev-db/postgresql-8.1[server]
+ >=dev-python/anyio-4.0[${PYTHON_USEDEP}]
+ >=dev-python/dnspython-2.1[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_compile() {
+ # -Werror=strict-aliasing
+ # https://bugs.gentoo.org/935401
+ # https://github.com/psycopg/psycopg/issues/867
+ #
+ # Do not trust with LTO either.
+ append-flags -fno-strict-aliasing
+ filter-lto
+
+ # Python code + ctypes backend
+ cd psycopg || die
+ distutils-r1_python_compile
+
+ # optional C backend
+ if use native-extensions && [[ ${EPYTHON} != pypy3 ]]; then
+ local DISTUTILS_USE_PEP517=standalone
+ cd ../psycopg_c || die
+ distutils-r1_python_compile
+ fi
+ cd .. || die
+}
+
+src_test() {
+ rm -r psycopg{,_c} || die
+
+ initdb -D "${T}"/pgsql || die
+ # TODO: random port
+ pg_ctl -w -D "${T}"/pgsql start \
+ -o "-h '' -k '${T}'" || die
+ createdb -h "${T}" test || die
+
+ local -x PSYCOPG_TEST_DSN="host=${T} dbname=test"
+ distutils-r1_src_test
+
+ pg_ctl -w -D "${T}"/pgsql stop || die
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # tests for the psycopg_pool package
+ tests/pool
+ # some broken mypy magic
+ tests/test_module.py::test_version
+ tests/test_module.py::test_version_c
+ tests/test_typing.py
+ tests/crdb/test_typing.py
+ # TODO, relying on undefined ordering in Python?
+ tests/test_dns_srv.py::test_srv
+ )
+
+ local impls=( python )
+ if use native-extensions && [[ ${EPYTHON} != pypy3 ]]; then
+ impls+=( c )
+ fi
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ local -x PSYCOPG_IMPL
+ for PSYCOPG_IMPL in "${impls[@]}"; do
+ einfo "Testing with ${PSYCOPG_IMPL} implementation ..."
+ # leak and timing tests are fragile whereas slow tests are slow
+ epytest -p anyio -k "not leak" \
+ -m "not timing and not slow and not flakey"
+ done
+}
diff --git a/dev-python/pycotap/pycotap-1.3.1.ebuild b/dev-python/pycotap/pycotap-1.3.1.ebuild
index 28625820c01e..8b1d49b4b233 100644
--- a/dev-python/pycotap/pycotap-1.3.1.ebuild
+++ b/dev-python/pycotap/pycotap-1.3.1.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~loong ~riscv ~x86"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~riscv ~x86"
PATCHES=(
"${FILESDIR}"/pycotap-1.3.1-fix-python3.13-tests.patch
diff --git a/dev-python/pydantic/pydantic-2.10.6.ebuild b/dev-python/pydantic/pydantic-2.10.6.ebuild
index b9a8ac8466fd..8932669038dc 100644
--- a/dev-python/pydantic/pydantic-2.10.6.ebuild
+++ b/dev-python/pydantic/pydantic-2.10.6.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="amd64 arm arm64 ~loong ppc ppc64 ~riscv ~s390 ~sparc x86"
+KEYWORDS="amd64 arm arm64 ~loong ppc ppc64 ~riscv ~s390 sparc x86"
RDEPEND="
>=dev-python/annotated-types-0.6.0[${PYTHON_USEDEP}]
diff --git a/dev-python/pyopenssl/Manifest b/dev-python/pyopenssl/Manifest
index 3a9365cdb662..59de1cc87588 100644
--- a/dev-python/pyopenssl/Manifest
+++ b/dev-python/pyopenssl/Manifest
@@ -1,3 +1 @@
-DIST pyopenssl-24.2.1.tar.gz 184323 BLAKE2B 5d077508c45c56b1da886877fb41e18699f932933badb73b271ce6d55fbf985398f5a74187fe65fde79b60768cb1705daf805f6fb8570f66ad3cecf11ad9b1c3 SHA512 4d0cdf71a5ae785644bd466ef094592fbf4ab804de8d153c139a88d3ff9b8cc80d073f3d49d4dc73d8ebf97a867e1560a5308b998f7ef0ccc734dcc56697c831
-DIST pyopenssl-24.3.0.tar.gz 178944 BLAKE2B ba3117c3c1238ecc84dfdbc84beaeb47c2d12d9e7f2742f798816482954696fd61405884780726f902f7784407e47f129cc5c38f7cf4cd76df4511d215ea4e4c SHA512 ca46a56a5c97ac91d1cbe1cb8b4d9e6d84610785736e925a579560802c1dce6b1cd95c0fed5c25aa775be8a4ae514c5962a86f2db5ecab4506e67ba80ebebd44
DIST pyopenssl-25.0.0.tar.gz 179573 BLAKE2B e5c9c9e4daa590008163b2e67b7c318cf72a0c922b1db41bf8ef31a44aa59f98a7a594ce1b59a887d47ffb0257f1d11faa920d3bf7807a19e6ece819947e5614 SHA512 77f9f03610a4ddaf115d581b873e728a79ba0e8d762ddeffacb600b6bc4a50bde2edfc114aebe12b9e177f3d53c19fe0c2bf0a5821e609489b8640e23c324376
diff --git a/dev-python/pyopenssl/pyopenssl-24.2.1.ebuild b/dev-python/pyopenssl/pyopenssl-24.2.1.ebuild
deleted file mode 100644
index 718b1960ed5c..000000000000
--- a/dev-python/pyopenssl/pyopenssl-24.2.1.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYPI_PN=pyOpenSSL
-PYTHON_COMPAT=( python3_{10..13} pypy3 )
-PYTHON_REQ_USE="threads(+)"
-
-inherit distutils-r1 toolchain-funcs pypi
-
-DESCRIPTION="Python interface to the OpenSSL library"
-HOMEPAGE="
- https://www.pyopenssl.org/
- https://github.com/pyca/pyopenssl/
- https://pypi.org/project/pyOpenSSL/
-"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-
-RDEPEND="
- <dev-python/cryptography-44[${PYTHON_USEDEP}]
- >=dev-python/cryptography-41.0.5[${PYTHON_USEDEP}]
-"
-BDEPEND="
- test? (
- $(python_gen_cond_dep '
- dev-python/cffi[${PYTHON_USEDEP}]
- ' 'python*')
- dev-python/pretend[${PYTHON_USEDEP}]
- dev-python/pytest-rerunfailures[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_sphinx doc \
- dev-python/sphinx-rtd-theme
-distutils_enable_tests pytest
-
-src_test() {
- local -x TZ=UTC
- local EPYTEST_DESELECT=(
- tests/test_ssl.py::TestContext::test_set_default_verify_paths
- )
-
- if ! tc-has-64bit-time_t; then
- einfo "time_t is smaller than 64 bits, will skip broken tests"
- EPYTEST_DESELECT+=(
- tests/test_crypto.py::TestX509StoreContext::test_verify_with_time
- )
- fi
-
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- distutils-r1_src_test
-}
-
-python_test() {
- epytest -p rerunfailures
-}
diff --git a/dev-python/pyopenssl/pyopenssl-24.3.0.ebuild b/dev-python/pyopenssl/pyopenssl-24.3.0.ebuild
deleted file mode 100644
index 1bfeeec0d368..000000000000
--- a/dev-python/pyopenssl/pyopenssl-24.3.0.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYPI_PN=pyOpenSSL
-PYTHON_COMPAT=( python3_{10..13} pypy3 )
-PYTHON_REQ_USE="threads(+)"
-
-inherit distutils-r1 toolchain-funcs pypi
-
-DESCRIPTION="Python interface to the OpenSSL library"
-HOMEPAGE="
- https://www.pyopenssl.org/
- https://github.com/pyca/pyopenssl/
- https://pypi.org/project/pyOpenSSL/
-"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
-
-RDEPEND="
- <dev-python/cryptography-45[${PYTHON_USEDEP}]
- >=dev-python/cryptography-41.0.5[${PYTHON_USEDEP}]
-"
-BDEPEND="
- test? (
- $(python_gen_cond_dep '
- dev-python/cffi[${PYTHON_USEDEP}]
- ' 'python*')
- dev-python/pretend[${PYTHON_USEDEP}]
- dev-python/pytest-rerunfailures[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_sphinx doc \
- dev-python/sphinx-rtd-theme
-distutils_enable_tests pytest
-
-src_test() {
- local -x TZ=UTC
- local EPYTEST_DESELECT=(
- tests/test_ssl.py::TestContext::test_set_default_verify_paths
- )
-
- if ! tc-has-64bit-time_t; then
- einfo "time_t is smaller than 64 bits, will skip broken tests"
- EPYTEST_DESELECT+=(
- tests/test_crypto.py::TestX509StoreContext::test_verify_with_time
- )
- fi
-
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- distutils-r1_src_test
-}
-
-python_test() {
- epytest -p rerunfailures
-}
diff --git a/dev-python/pyopenssl/pyopenssl-25.0.0.ebuild b/dev-python/pyopenssl/pyopenssl-25.0.0.ebuild
index 709c38123015..8ef94db6a718 100644
--- a/dev-python/pyopenssl/pyopenssl-25.0.0.ebuild
+++ b/dev-python/pyopenssl/pyopenssl-25.0.0.ebuild
@@ -19,7 +19,7 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
+KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
RDEPEND="
<dev-python/cryptography-45[${PYTHON_USEDEP}]
diff --git a/dev-python/pyscard/Manifest b/dev-python/pyscard/Manifest
index 52ec108e08c7..7646a9e39a7b 100644
--- a/dev-python/pyscard/Manifest
+++ b/dev-python/pyscard/Manifest
@@ -1,2 +1 @@
-DIST pyscard-2.2.0.tar.gz 154847 BLAKE2B 4941ddb8b5ba38855eb69d61432241fc181e7fff7c181eb9d40ae03f0e4ce5818483d2ea35e25e92033f946e5f3e17aad297c02b3c90def91f79c24941bc80bf SHA512 91ceeab576345ff7f2e9d173399ab4d2ddebd26dab613fba33b7620253aea81645d6efdf0d365724a34cec8e9fd4f76cd43801d925a94e058ff797e5c0a41b73
DIST pyscard-2.2.1.tar.gz 156518 BLAKE2B b68dace8a9b4b6cdae20b23d6e7d8838e0ad64e229d5a3a5e4a8fc5c1edeb16a6d7bd162c57cfdd7d5e5c56c0370f121a71e498e463b42b509bc97dce10ef14c SHA512 7a09211743c56473e7c1d034acf4b08402b41462da36b35fe45617511dc9bc5fa704e0d1d5102277a44c4aee216e84b019b5cff188eda255b32de0c7517c58d3
diff --git a/dev-python/pyscard/pyscard-2.2.0.ebuild b/dev-python/pyscard/pyscard-2.2.0.ebuild
deleted file mode 100644
index 119e2093cc1b..000000000000
--- a/dev-python/pyscard/pyscard-2.2.0.ebuild
+++ /dev/null
@@ -1,41 +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_{10..13} )
-
-inherit distutils-r1 optfeature
-
-DESCRIPTION="Smart card support in python"
-HOMEPAGE="
- https://pyscard.sourceforge.io/
- https://github.com/LudovicRousseau/pyscard/
- https://pypi.org/project/pyscard/
-"
-SRC_URI="
- https://downloads.sourceforge.net/project/pyscard/pyscard/pyscard%20${PV}/${P}.tar.gz
-"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="amd64 arm arm64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86"
-
-DEPEND="
- sys-apps/pcsc-lite
-"
-RDEPEND="
- ${DEPEND}
-"
-BDEPEND="
- dev-lang/swig
-"
-
-distutils_enable_tests pytest
-
-pkg_postinst() {
- optfeature "Gui support" dev-python/wxpython
- optfeature "Support of remote readers with Pyro" dev-python/Pyro4
-}
diff --git a/dev-python/pytest-import-check/pytest-import-check-0.0.4.ebuild b/dev-python/pytest-import-check/pytest-import-check-0.0.4.ebuild
index e5fd39e903c8..a42bb9e5a9c8 100644
--- a/dev-python/pytest-import-check/pytest-import-check-0.0.4.ebuild
+++ b/dev-python/pytest-import-check/pytest-import-check-0.0.4.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
RDEPEND="
>=dev-python/pytest-8.1[${PYTHON_USEDEP}]
diff --git a/dev-python/python-lsp-server/Manifest b/dev-python/python-lsp-server/Manifest
index 5c9a16cd05c9..db33a0645864 100644
--- a/dev-python/python-lsp-server/Manifest
+++ b/dev-python/python-lsp-server/Manifest
@@ -1,3 +1 @@
-DIST python_lsp_server-1.12.0.tar.gz 114328 BLAKE2B 3c94642be615822058debda5cb9de07529e7d269938029d66ade7eb7db801e7db90ae724f449e1133a813967e94bcfc71247f0392db1c495af5fff89ae66bd03 SHA512 74cbd8012f5e027fb117105302ba92e142900e88565d7f95d2dad72f2624048fff3c2c85085b648bd1ff86f6f6eb679aa34d5f6d9ae54b80e96b6ed472785b32
-DIST python_lsp_server-1.12.1.tar.gz 115002 BLAKE2B 14d4b424fa0f36d0896d699505636934255ca0057257ba4fc447faf4058327e4e2afcffab3f7dc1e81a901c9c9070c4debc69f69a2c0745bec660bfaba1e58fe SHA512 6a457bd20c5d9113a64ddbbfaabc85c6129b3900bed298622e9fc344afa342eb3a91fd8c4aa795ace063d74369d4096327d464568b16f794257e07bbb1dca5a7
DIST python_lsp_server-1.12.2.tar.gz 115054 BLAKE2B 5ee67de14e029dc0550d9ac412ce042357938783ae00435db7147921fa4923dd7f0df9c882ce3c54b43f03c9ebec2230444174920141efc17d67c2afaf406f5d SHA512 5a24fa6a8928a36498f50aa026f84478a4193e0991a4b83cad04a7ec131ca50c0d6104feb88c34721cbeab4900e4709b2ba21013aa232a197ee81d13b78c7a0b
diff --git a/dev-python/python-lsp-server/files/python-lsp-server-1.12.0-jedi19-compat.patch b/dev-python/python-lsp-server/files/python-lsp-server-1.12.0-jedi19-compat.patch
deleted file mode 100644
index b5dd4c352dbb..000000000000
--- a/dev-python/python-lsp-server/files/python-lsp-server-1.12.0-jedi19-compat.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-https://github.com/python-lsp/python-lsp-server/pull/609
-diff --git a/test/plugins/test_completion.py b/test/plugins/test_completion.py
-index d1ca5ef8..3e768f06 100644
---- a/test/plugins/test_completion.py
-+++ b/test/plugins/test_completion.py
-@@ -179,9 +179,7 @@ def test_jedi_completion_with_fuzzy_enabled(config, workspace) -> None:
-
- assert items
-
-- expected = "commonprefix(m)"
-- if JEDI_VERSION == "0.18.0":
-- expected = "commonprefix(list)"
-+ expected = "isabs(s)"
- assert items[0]["label"] == expected
-
- # Test we don't throw with big character
diff --git a/dev-python/python-lsp-server/python-lsp-server-1.12.0-r1.ebuild b/dev-python/python-lsp-server/python-lsp-server-1.12.0-r1.ebuild
deleted file mode 100644
index 67e55de51a35..000000000000
--- a/dev-python/python-lsp-server/python-lsp-server-1.12.0-r1.ebuild
+++ /dev/null
@@ -1,95 +0,0 @@
-# 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_{10..13} )
-
-inherit distutils-r1 optfeature pypi
-
-DESCRIPTION="Python Language Server for the Language Server Protocol"
-HOMEPAGE="
- https://github.com/python-lsp/python-lsp-server/
- https://pypi.org/project/python-lsp-server/
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 arm64 x86"
-IUSE="all-plugins"
-
-PLUGIN_DEP="
- >=dev-python/autopep8-2.0.4[${PYTHON_USEDEP}]
- >=dev-python/flake8-7.1[${PYTHON_USEDEP}]
- >=dev-python/mccabe-0.7.0[${PYTHON_USEDEP}]
- >=dev-python/pycodestyle-2.12.0[${PYTHON_USEDEP}]
- >=dev-python/pyflakes-3.2.0[${PYTHON_USEDEP}]
- >=dev-python/pylint-3.1[${PYTHON_USEDEP}]
- >=dev-python/rope-1.11.0[${PYTHON_USEDEP}]
- >=dev-python/whatthepatch-1.0.2[${PYTHON_USEDEP}]
- >=dev-python/yapf-0.33.0[${PYTHON_USEDEP}]
-"
-RDEPEND="
- dev-python/docstring-to-markdown[${PYTHON_USEDEP}]
- >=dev-python/jedi-0.17.2[${PYTHON_USEDEP}]
- >=dev-python/python-lsp-jsonrpc-1.1.0[${PYTHON_USEDEP}]
- dev-python/pluggy[${PYTHON_USEDEP}]
- all-plugins? (
- ${PLUGIN_DEP}
- )
-"
-BDEPEND="
- test? (
- ${PLUGIN_DEP}
- dev-python/flaky[${PYTHON_USEDEP}]
- dev-python/matplotlib[${PYTHON_USEDEP}]
- dev-python/numpy[${PYTHON_USEDEP}]
- dev-python/pandas[${PYTHON_USEDEP}]
- dev-python/qtpy[gui,testlib,${PYTHON_USEDEP}]
- )
-"
-
-PATCHES=(
- # https://github.com/python-lsp/python-lsp-server/pull/609
- "${FILESDIR}/${PN}-1.12.0-jedi19-compat.patch"
-)
-
-# Note: xdist breaks some tests
-distutils_enable_tests pytest
-
-python_prepare_all() {
- # remove pytest-cov dep
- sed -i -e '/addopts =/d' pyproject.toml || die
- # unpin all the deps
- sed -i -e 's:,<[0-9.]*::' pyproject.toml || die
- distutils-r1_python_prepare_all
-}
-
-python_test() {
- local EPYTEST_DESELECT=(
- # broken by presence of pathlib2
- 'test/plugins/test_autoimport.py'
- # Requires pyqt5
- 'test/plugins/test_completion.py::test_pyqt_completion'
- )
- local EPYTEST_IGNORE=(
- # pydocstyle is archived upstream and broken with py3.12
- test/plugins/test_pydocstyle_lint.py
- )
-
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- epytest
-}
-
-pkg_postinst() {
- optfeature "Automatically format Python code to conform to the PEP 8 style guide" dev-python/autopep8
- optfeature "A wrapper around PyFlakes, pep8 & mccabe" dev-python/flake8
- optfeature "flake8 plugin: McCabe complexity checker" dev-python/mccabe
- optfeature "Python style guide checker (fka pep8)" dev-python/pycodestyle
- optfeature "Python docstring style checker" dev-python/pydocstyle
- optfeature "Passive checker for Python programs" dev-python/pyflakes
- optfeature "Python code static checker" dev-python/pylint
- optfeature "Python refactoring library" dev-python/rope
- optfeature "A formatter for Python files" dev-python/yapf
-}
diff --git a/dev-python/python-lsp-server/python-lsp-server-1.12.1.ebuild b/dev-python/python-lsp-server/python-lsp-server-1.12.1.ebuild
deleted file mode 100644
index 7b340b993f04..000000000000
--- a/dev-python/python-lsp-server/python-lsp-server-1.12.1.ebuild
+++ /dev/null
@@ -1,90 +0,0 @@
-# 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_{10..13} )
-
-inherit distutils-r1 optfeature pypi
-
-DESCRIPTION="Python Language Server for the Language Server Protocol"
-HOMEPAGE="
- https://github.com/python-lsp/python-lsp-server/
- https://pypi.org/project/python-lsp-server/
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="all-plugins"
-
-PLUGIN_DEP="
- >=dev-python/autopep8-2.0.4[${PYTHON_USEDEP}]
- >=dev-python/flake8-7.1[${PYTHON_USEDEP}]
- >=dev-python/mccabe-0.7.0[${PYTHON_USEDEP}]
- >=dev-python/pycodestyle-2.12.0[${PYTHON_USEDEP}]
- >=dev-python/pyflakes-3.2.0[${PYTHON_USEDEP}]
- >=dev-python/pylint-3.1[${PYTHON_USEDEP}]
- >=dev-python/rope-1.11.0[${PYTHON_USEDEP}]
- >=dev-python/whatthepatch-1.0.2[${PYTHON_USEDEP}]
- >=dev-python/yapf-0.33.0[${PYTHON_USEDEP}]
-"
-RDEPEND="
- dev-python/docstring-to-markdown[${PYTHON_USEDEP}]
- >=dev-python/jedi-0.17.2[${PYTHON_USEDEP}]
- >=dev-python/python-lsp-jsonrpc-1.1.0[${PYTHON_USEDEP}]
- dev-python/pluggy[${PYTHON_USEDEP}]
- all-plugins? (
- ${PLUGIN_DEP}
- )
-"
-BDEPEND="
- test? (
- ${PLUGIN_DEP}
- dev-python/flaky[${PYTHON_USEDEP}]
- dev-python/matplotlib[${PYTHON_USEDEP}]
- dev-python/numpy[${PYTHON_USEDEP}]
- dev-python/pandas[${PYTHON_USEDEP}]
- dev-python/qtpy[gui,testlib,${PYTHON_USEDEP}]
- )
-"
-
-# Note: xdist breaks some tests
-distutils_enable_tests pytest
-
-python_prepare_all() {
- # remove pytest-cov dep
- sed -i -e '/addopts =/d' pyproject.toml || die
- # unpin all the deps
- sed -i -e 's:,<[0-9.]*::' pyproject.toml || die
- distutils-r1_python_prepare_all
-}
-
-python_test() {
- local EPYTEST_DESELECT=(
- # broken by presence of pathlib2
- 'test/plugins/test_autoimport.py'
- # Requires pyqt5
- 'test/plugins/test_completion.py::test_pyqt_completion'
- )
- local EPYTEST_IGNORE=(
- # pydocstyle is archived upstream and broken with py3.12
- test/plugins/test_pydocstyle_lint.py
- )
-
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- epytest
-}
-
-pkg_postinst() {
- optfeature "Automatically format Python code to conform to the PEP 8 style guide" dev-python/autopep8
- optfeature "A wrapper around PyFlakes, pep8 & mccabe" dev-python/flake8
- optfeature "flake8 plugin: McCabe complexity checker" dev-python/mccabe
- optfeature "Python style guide checker (fka pep8)" dev-python/pycodestyle
- optfeature "Python docstring style checker" dev-python/pydocstyle
- optfeature "Passive checker for Python programs" dev-python/pyflakes
- optfeature "Python code static checker" dev-python/pylint
- optfeature "Python refactoring library" dev-python/rope
- optfeature "A formatter for Python files" dev-python/yapf
-}
diff --git a/dev-python/python-tests/python-tests-3.12.9.ebuild b/dev-python/python-tests/python-tests-3.12.9.ebuild
index 3f055d87d07c..19c1a967d71e 100644
--- a/dev-python/python-tests/python-tests-3.12.9.ebuild
+++ b/dev-python/python-tests/python-tests-3.12.9.ebuild
@@ -28,7 +28,7 @@ S="${WORKDIR}/${MY_P}/Lib"
LICENSE="PSF-2"
SLOT="${PYVER}"
-KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
+KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
RDEPEND="
diff --git a/dev-python/python-tests/python-tests-3.13.2.ebuild b/dev-python/python-tests/python-tests-3.13.2.ebuild
index 20c5db1ec140..00ea0f1d142b 100644
--- a/dev-python/python-tests/python-tests-3.13.2.ebuild
+++ b/dev-python/python-tests/python-tests-3.13.2.ebuild
@@ -28,7 +28,7 @@ S="${WORKDIR}/${MY_P}/Lib"
LICENSE="PSF-2"
SLOT="${PYVER}"
-KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
+KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
RDEPEND="
diff --git a/dev-python/pyzmq/pyzmq-26.2.1.ebuild b/dev-python/pyzmq/pyzmq-26.2.1.ebuild
index 1289177d39b8..1f1f63ff2224 100644
--- a/dev-python/pyzmq/pyzmq-26.2.1.ebuild
+++ b/dev-python/pyzmq/pyzmq-26.2.1.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 5566f3da2666..545994bc45d5 100644
--- a/dev-python/rapidfuzz/Manifest
+++ b/dev-python/rapidfuzz/Manifest
@@ -1,2 +1 @@
-DIST rapidfuzz-3.11.0.tar.gz 57983000 BLAKE2B 0de87fc6a392162b3ef908ed003f54b062d4a3a798cb6915c6ca1e4736ddf5666ae44bacb4351a4948e761ee08e278d5278f63f8c48ec41ef7870baaccbb4194 SHA512 5d8f00321b4314dbfd0409ba1533b35b337838b18e2efa37ef4ce8c406cea3f6fee3655a20d44a0007248ac58173cb60672324a553593a8b70dc5ecc17d8ac4e
DIST rapidfuzz-3.12.1.tar.gz 57907552 BLAKE2B 6a64f05e2a7275a43b827c027ea45728c7718542d769f7eff302ad991afec10559d560a01de1340e518a57528b8c954c642e99e385a5652b990e0aa91a33c335 SHA512 71b0de7ea5aafa30b3976a5424de57398ae9a116b9d36c15595d5998d803b553a3008f82903b74febd2520abcb2de07a58b00cd754263db6d5544ee64a5018eb
diff --git a/dev-python/rapidfuzz/rapidfuzz-3.11.0.ebuild b/dev-python/rapidfuzz/rapidfuzz-3.11.0.ebuild
deleted file mode 100644
index 4878f4912bbc..000000000000
--- a/dev-python/rapidfuzz/rapidfuzz-3.11.0.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=( pypy3 python3_{10..13} )
-
-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\.8\.0::' CMakeLists.txt || die
- # https://github.com/scikit-build/scikit-build-core/issues/912
- sed -i -e '/scikit-build-core/s:0\.10: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.12.1.ebuild b/dev-python/rapidfuzz/rapidfuzz-3.12.1.ebuild
index b20f9157ae5b..09d06acb2574 100644
--- a/dev-python/rapidfuzz/rapidfuzz-3.12.1.ebuild
+++ b/dev-python/rapidfuzz/rapidfuzz-3.12.1.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/rtslib-fb/rtslib-fb-2.2.2.ebuild b/dev-python/rtslib-fb/rtslib-fb-2.2.2.ebuild
index d9712594d29b..40ee168494d5 100644
--- a/dev-python/rtslib-fb/rtslib-fb-2.2.2.ebuild
+++ b/dev-python/rtslib-fb/rtslib-fb-2.2.2.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~alpha ~amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux"
+KEYWORDS="~alpha ~amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux"
RDEPEND="
dev-python/pyudev[${PYTHON_USEDEP}]
diff --git a/dev-python/setproctitle/Manifest b/dev-python/setproctitle/Manifest
index e157844ebdc0..ebd7f63a66dc 100644
--- a/dev-python/setproctitle/Manifest
+++ b/dev-python/setproctitle/Manifest
@@ -1 +1,2 @@
DIST setproctitle-1.3.4.tar.gz 26456 BLAKE2B c0be58c004c7a1834c0967ba4f90688aa668c3f6c8ab7c944891e7e4e78de65e14b829f8abf63c8490689d8cd6ab23f236ecfa7837fc4bbc28a45ef46dd3f24b SHA512 b1a8648a83648766eb9f88a15982568de6640692a39a1079455d8788996f73e313b879f567c82878450798b5755a8111a7965b3776e9238eebb59dfd09d41c4e
+DIST setproctitle-1.3.5.tar.gz 26737 BLAKE2B fccb12f651bdf8d8d585465ae56f7e37358692d8361fba77936513d19a395b196d15821ce4a902eba80f22fc84bc9ad919d730aebcbe53ded039b559238368dd SHA512 ab1dc0c22506d8c43b626e39fbad754aa0115faf592d011f84ae28dee31a3797fff61c236c80864eb2749a2e585c46678beb87c63334c55a53c31540e76eea3b
diff --git a/dev-python/setproctitle/setproctitle-1.3.5.ebuild b/dev-python/setproctitle/setproctitle-1.3.5.ebuild
new file mode 100644
index 000000000000..f4db60c71aa6
--- /dev/null
+++ b/dev-python/setproctitle/setproctitle-1.3.5.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# The package has a fallback implementation which is a noop but warns
+# if the extensions weren't built, so we always build them.
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..13} pypy3 pypy3_11 )
+
+inherit distutils-r1 flag-o-matic pypi
+
+DESCRIPTION="Allow customization of the process title"
+HOMEPAGE="
+ https://github.com/dvarrazzo/py-setproctitle/
+ https://pypi.org/project/setproctitle/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ # remove the override that makes extension builds non-fatal
+ sed -i -e '/cmdclass/d' setup.py || die
+}
+
+src_configure() {
+ # https://github.com/dvarrazzo/py-setproctitle/issues/145
+ append-cflags -std=gnu17
+
+ distutils-r1_src_configure
+}
diff --git a/dev-python/sqlalchemy/sqlalchemy-2.0.38.ebuild b/dev-python/sqlalchemy/sqlalchemy-2.0.38.ebuild
index f38512c4e16d..91d3b6a30ba5 100644
--- a/dev-python/sqlalchemy/sqlalchemy-2.0.38.ebuild
+++ b/dev-python/sqlalchemy/sqlalchemy-2.0.38.ebuild
@@ -20,7 +20,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
IUSE="examples +sqlite test"
RDEPEND="
diff --git a/dev-python/starlette/Manifest b/dev-python/starlette/Manifest
index e62d5d3fc0d5..26131b94db55 100644
--- a/dev-python/starlette/Manifest
+++ b/dev-python/starlette/Manifest
@@ -1 +1,2 @@
DIST starlette-0.45.3.gh.tar.gz 2574214 BLAKE2B e3a1c44288ba8d2da558417d14a2787a7c00c689298074b4ac9ce330d90e17181d98ad2ed85795bcea408ee2a64d287dec14ce5c7f9dfc79507562697b83511a SHA512 45d3726ce794a7572e4c816fa3eb1a8a9ad2c110757200b4f6e1aed0d502d2cc293e29c5b282d3451c9770ea067cfb684176755bf2d261fdb22de111ef8a1542
+DIST starlette-0.46.0.gh.tar.gz 2575846 BLAKE2B f71379bc9157a9ca6bf9b058a625c97219d8334967fc7f21d0d4efb13feea0088946e6802264aa9a042bf7e26414188c3560b6642f7b22d923381218fe326a05 SHA512 24d35d50bbdc1433b7203a3f74b43d2c303bdf4ed3b4a9ca5f0635c22a03ef35b34569fb99376ba3244520af2045209480152851c9d48172b1b1537424ae16fe
diff --git a/dev-python/starlette/starlette-0.46.0.ebuild b/dev-python/starlette/starlette-0.46.0.ebuild
new file mode 100644
index 000000000000..c9c7fb5ea4c2
--- /dev/null
+++ b/dev-python/starlette/starlette-0.46.0.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( pypy3 pypy3_11 python3_{10..13} )
+
+inherit distutils-r1
+
+MY_P=${P/_p/.post}
+DESCRIPTION="The little ASGI framework that shines"
+HOMEPAGE="
+ https://www.starlette.io/
+ https://github.com/encode/starlette/
+ https://pypi.org/project/starlette/
+"
+# no docs or tests in sdist, as of 0.27.0
+SRC_URI="
+ https://github.com/encode/starlette/archive/${PV/_p/.post}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ <dev-python/anyio-5[${PYTHON_USEDEP}]
+ >=dev-python/anyio-3.6.2[${PYTHON_USEDEP}]
+ <dev-python/httpx-0.29[${PYTHON_USEDEP}]
+ >=dev-python/httpx-0.22.0[${PYTHON_USEDEP}]
+ dev-python/itsdangerous[${PYTHON_USEDEP}]
+ dev-python/jinja2[${PYTHON_USEDEP}]
+ >=dev-python/python-multipart-0.0.18[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ >=dev-python/pytest-8[${PYTHON_USEDEP}]
+ dev-python/trio[${PYTHON_USEDEP}]
+ )
+"
+
+: ${EPYTEST_TIMEOUT:-180}
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_IGNORE=(
+ # Unpackaged 'databases' dependency
+ tests/test_database.py
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -p anyio
+}
diff --git a/dev-python/twine/twine-6.1.0.ebuild b/dev-python/twine/twine-6.1.0.ebuild
index 969824c35121..6b628130ff4b 100644
--- a/dev-python/twine/twine-6.1.0.ebuild
+++ b/dev-python/twine/twine-6.1.0.ebuild
@@ -21,7 +21,7 @@ SRC_URI="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="amd64 arm arm64 ~loong ppc64 ~riscv ~sparc x86"
+KEYWORDS="amd64 arm arm64 ~loong ppc64 ~riscv sparc x86"
RDEPEND="
>=dev-python/colorama-0.4.3[${PYTHON_USEDEP}]
diff --git a/dev-python/websockets/websockets-14.2.ebuild b/dev-python/websockets/websockets-14.2.ebuild
index f39bf198ad9b..78643a80cd87 100644
--- a/dev-python/websockets/websockets-14.2.ebuild
+++ b/dev-python/websockets/websockets-14.2.ebuild
@@ -24,7 +24,7 @@ SRC_URI="
LICENSE="BSD"
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="+native-extensions"
BDEPEND="
diff --git a/dev-python/wrapt/wrapt-1.17.2.ebuild b/dev-python/wrapt/wrapt-1.17.2.ebuild
index e9eee0423932..1f89908caa58 100644
--- a/dev-python/wrapt/wrapt-1.17.2.ebuild
+++ b/dev-python/wrapt/wrapt-1.17.2.ebuild
@@ -23,7 +23,7 @@ S=${WORKDIR}/${MY_P}
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~x64-macos"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos"
IUSE="+native-extensions"
distutils_enable_tests pytest
diff --git a/dev-python/xcffib/Manifest b/dev-python/xcffib/Manifest
index 9814c8d0840b..64119036636f 100644
--- a/dev-python/xcffib/Manifest
+++ b/dev-python/xcffib/Manifest
@@ -1,5 +1 @@
-DIST xcffib-1.5.0.tar.gz 89544 BLAKE2B cb3820a53eb7694078e5dbb175951b6dbdc445c06f397898e52319fd8a7633f2d8115f0d096a14b2b3de0c7b07918343d077705814574ff41de2bf06a12812c0 SHA512 aaa426b57d0d8dc45cb6a2036c862af6308fb5781667b8dba3f5ff399fe5e15912860d0bb696ac09f1efd4ffbbdaf7f555ef76039bd660f36f5c6179535b654f
-DIST xcffib-1.6.0.tar.gz 101378 BLAKE2B 75b4e64f125d0948fc438202b81d0808acd988d363216382f42611e7f821f4df2cecd9464edfc0e89cacd4237d82fc0d0276a357f5625dc03811b1f9c0951a0d SHA512 53fbde4a61f061a460d8a33c70ce4189c7ea5ff30777cee0017f42fcee9d7e2954d48906d764feabbb0506be96a40350579043e9cea04f9886ff1e8f35ed3f9c
-DIST xcffib-1.6.2.tar.gz 101368 BLAKE2B a4768fd7d5da875c04a45beccd8ad8bcdc2459dd9a5b3b19fe40813376262a025c04af80d75927c26c2fb26e1a5fefb29e0ff406aae206ac0edab546535e40cf SHA512 f3d3c751c2307025b2f3b3cb523a31fe4f0560af428e2705d06fc1ce7980d36a5568ad1e73c9acde065347210d754c0f30718cff28fb823f09c65025c0ecfc4a
-DIST xcffib-1.7.0.tar.gz 102415 BLAKE2B 8ce76e52cda54f1985659667601f9abd001e8f0373a399cbf327037a24142b22722ebf55efe0f292d906f06216149e1d3122fde3162f59f923783f319fd73420 SHA512 bb21e50690cb50ab32108552cc0ea9f7758a23541789b365b38a8c2c1d839cc8f468e6ba581f69b6235fd96782036ef5afcee4b555a4a721333e527db6c2b20c
DIST xcffib-1.7.1.tar.gz 101487 BLAKE2B e489e96305cc8b277ebc02389514c23522c54444dc05434d0ac669b3337446947f5d5b9db1bfbbc1e1d7f9d81de06a50d63c0e4c3a2fddc6b8e1a8fad3ad704b SHA512 59ef3adf29fd8e6c5636855aa56777cab84d92c18d8e93500df9e315f0ae53f5693561f571ee98dbea6d9eae9ce5708018e2d6c27dccb14e9eb0ca85668fd515
diff --git a/dev-python/xcffib/xcffib-1.5.0.ebuild b/dev-python/xcffib/xcffib-1.5.0.ebuild
deleted file mode 100644
index 55fd13d3df4b..000000000000
--- a/dev-python/xcffib/xcffib-1.5.0.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..13} pypy3 )
-DISTUTILS_USE_PEP517=setuptools
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="A drop in replacement for xpyb, an XCB python binding"
-HOMEPAGE="
- https://github.com/tych0/xcffib/
- https://pypi.org/project/xcffib/
-"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ppc ppc64 ~riscv ~s390 sparc x86"
-
-DEPEND="
- x11-libs/libxcb
-"
-RDEPEND="
- $(python_gen_cond_dep '
- >=dev-python/cffi-1.1:=[${PYTHON_USEDEP}]
- ' 'python*')
- ${DEPEND}
-"
-BDEPEND="
- test? (
- x11-base/xorg-server[xvfb]
- x11-apps/xeyes
- )
-"
-
-distutils_enable_tests pytest
-
-src_prepare() {
- # remove invalid cffi dependency
- # https://github.com/tych0/xcffib/pull/167
- sed -i -e '/dependencies/d' setup.py || die
-
- distutils-r1_src_prepare
-}
-
-python_test() {
- rm -rf xcffib || die
- epytest
-}
diff --git a/dev-python/xcffib/xcffib-1.6.0.ebuild b/dev-python/xcffib/xcffib-1.6.0.ebuild
deleted file mode 100644
index c4ee6e535384..000000000000
--- a/dev-python/xcffib/xcffib-1.6.0.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# 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_{10..13} pypy3 )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="A drop in replacement for xpyb, an XCB python binding"
-HOMEPAGE="
- https://github.com/tych0/xcffib/
- https://pypi.org/project/xcffib/
-"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-
-DEPEND="
- x11-libs/libxcb
-"
-RDEPEND="
- $(python_gen_cond_dep '
- >=dev-python/cffi-1.1:=[${PYTHON_USEDEP}]
- ' 'python*')
- ${DEPEND}
-"
-BDEPEND="
- test? (
- x11-base/xorg-server[xvfb]
- x11-apps/xeyes
- )
-"
-
-distutils_enable_tests pytest
-
-python_test() {
- rm -rf xcffib || die
- epytest
-}
diff --git a/dev-python/xcffib/xcffib-1.6.2.ebuild b/dev-python/xcffib/xcffib-1.6.2.ebuild
deleted file mode 100644
index b0bd2db2aa9b..000000000000
--- a/dev-python/xcffib/xcffib-1.6.2.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# 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_{10..13} pypy3 )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="A drop in replacement for xpyb, an XCB python binding"
-HOMEPAGE="
- https://github.com/tych0/xcffib/
- https://pypi.org/project/xcffib/
-"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ppc ppc64 ~riscv ~s390 ~sparc x86"
-
-DEPEND="
- x11-libs/libxcb
-"
-RDEPEND="
- $(python_gen_cond_dep '
- >=dev-python/cffi-1.1:=[${PYTHON_USEDEP}]
- ' 'python*')
- ${DEPEND}
-"
-BDEPEND="
- test? (
- x11-base/xorg-server[xvfb]
- x11-apps/xeyes
- )
-"
-
-distutils_enable_tests pytest
-
-python_test() {
- rm -rf xcffib || die
- epytest
-}
diff --git a/dev-python/xcffib/xcffib-1.7.0.ebuild b/dev-python/xcffib/xcffib-1.7.0.ebuild
deleted file mode 100644
index 943dced69962..000000000000
--- a/dev-python/xcffib/xcffib-1.7.0.ebuild
+++ /dev/null
@@ -1,43 +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_{10..13} pypy3 )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="A drop in replacement for xpyb, an XCB python binding"
-HOMEPAGE="
- https://github.com/tych0/xcffib/
- https://pypi.org/project/xcffib/
-"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-
-DEPEND="
- x11-libs/libxcb
-"
-RDEPEND="
- $(python_gen_cond_dep '
- >=dev-python/cffi-1.1:=[${PYTHON_USEDEP}]
- ' 'python*')
- ${DEPEND}
-"
-BDEPEND="
- test? (
- x11-base/xorg-server[xvfb]
- x11-apps/xeyes
- )
-"
-
-distutils_enable_tests pytest
-
-python_test() {
- rm -rf xcffib || die
- epytest
-}
diff --git a/dev-python/ytmusicapi/Manifest b/dev-python/ytmusicapi/Manifest
index 4de046dc5daf..ba79ab4f4ebf 100644
--- a/dev-python/ytmusicapi/Manifest
+++ b/dev-python/ytmusicapi/Manifest
@@ -1,2 +1 @@
DIST ytmusicapi-1.10.1.tar.gz 311622 BLAKE2B 02aa3176567c7394835a6182ef94c7ac625cff2265e245c04797b2d3e821c0083044e116a2a4950eb849f391746aef9fd7f8f038b2c3cee4f8f5f924fce25509 SHA512 ed4c4e2a615370c0179cb336ed56d840b052f0b3d9bd72b4734cb0ce6d77627761ded5341a5bd67a51197795c4539f2150d650732708f6cb7b8540bb4532db22
-DIST ytmusicapi-1.9.1.tar.gz 294717 BLAKE2B db290d1d229dfd0791c3d6e24c933b5743c68743cc7030a4344901e9b70300f3617f789a3cc50b57883e896e1c9f8daf6545230576f1a4453d414982f2a886b9 SHA512 0418d224b8ee0563d6f904a9cf429bd8d8d7c9ca9cb51e950a1177317d7d84612280e031d96d4c42c2b713768bbbae13e1ac8172437d093f5b143978979f6577
diff --git a/dev-python/ytmusicapi/ytmusicapi-1.9.1.ebuild b/dev-python/ytmusicapi/ytmusicapi-1.9.1.ebuild
deleted file mode 100644
index b8b19e3b23fb..000000000000
--- a/dev-python/ytmusicapi/ytmusicapi-1.9.1.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# 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_{11..13} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="Unofficial API for YouTube Music"
-HOMEPAGE="https://ytmusicapi.readthedocs.io/
- https://github.com/sigma67/ytmusicapi/"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~x86"
-RESTRICT="test"
-
-RDEPEND="
- dev-python/requests[${PYTHON_USEDEP}]
-"
-
-distutils_enable_sphinx docs/source dev-python/sphinx-rtd-theme