summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2025-05-11 06:59:09 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2025-05-11 06:59:09 +0000
commitbcb42b6d8524e860c5ba24dc09c897cd89ca4a35 (patch)
tree01e615b5810ce103da32e5eaa356ca994319b04d /dev-python
parent03038b30c85963a154098a63076d2cda0cc79e9f (diff)
downloadbaldeagleos-repo-bcb42b6d8524e860c5ba24dc09c897cd89ca4a35.tar.gz
baldeagleos-repo-bcb42b6d8524e860c5ba24dc09c897cd89ca4a35.tar.xz
baldeagleos-repo-bcb42b6d8524e860c5ba24dc09c897cd89ca4a35.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/aiohttp/aiohttp-3.11.18.ebuild2
-rw-r--r--dev-python/astroid/Manifest1
-rw-r--r--dev-python/astroid/astroid-3.3.10.ebuild97
-rw-r--r--dev-python/black/black-25.1.0.ebuild6
-rw-r--r--dev-python/btrfs/btrfs-15.ebuild2
-rw-r--r--dev-python/click/Manifest1
-rw-r--r--dev-python/click/click-8.2.0.ebuild38
-rw-r--r--dev-python/distlib/distlib-0.3.9.ebuild2
-rw-r--r--dev-python/dogpile-cache/Manifest1
-rw-r--r--dev-python/dogpile-cache/dogpile-cache-1.3.4.ebuild35
-rw-r--r--dev-python/dogpile-cache/dogpile-cache-1.4.0.ebuild2
-rw-r--r--dev-python/exceptiongroup/Manifest1
-rw-r--r--dev-python/exceptiongroup/exceptiongroup-1.3.0.ebuild32
-rw-r--r--dev-python/fonttools/Manifest1
-rw-r--r--dev-python/fonttools/fonttools-4.58.0.ebuild99
-rw-r--r--dev-python/greenlet/greenlet-3.2.1.ebuild2
-rw-r--r--dev-python/jaraco-itertools/Manifest1
-rw-r--r--dev-python/jaraco-itertools/jaraco-itertools-6.4.3.ebuild30
-rw-r--r--dev-python/jc/Manifest1
-rw-r--r--dev-python/jc/jc-1.25.5.ebuild37
-rw-r--r--dev-python/mkdocs-material/Manifest1
-rw-r--r--dev-python/mkdocs-material/mkdocs-material-9.6.13.ebuild71
-rw-r--r--dev-python/moto/moto-5.1.4.ebuild2
-rw-r--r--dev-python/multidict/multidict-6.4.3.ebuild2
-rw-r--r--dev-python/numpy/numpy-2.2.5.ebuild2
-rw-r--r--dev-python/pexpect/files/pexpect-4.9.0-py314.patch107
-rw-r--r--dev-python/pexpect/pexpect-4.9.0.ebuild2
-rw-r--r--dev-python/pipdeptree/pipdeptree-2.26.1.ebuild2
-rw-r--r--dev-python/pivy/pivy-0.6.10.ebuild2
-rw-r--r--dev-python/pycares/pycares-4.6.1.ebuild2
-rw-r--r--dev-python/pychromecast/pychromecast-14.0.7.ebuild2
-rw-r--r--dev-python/pygit2/pygit2-1.18.0.ebuild2
-rw-r--r--dev-python/pyglet/pyglet-2.1.5.ebuild2
-rw-r--r--dev-python/pyicu/pyicu-2.15.2.ebuild2
-rw-r--r--dev-python/pyscard/pyscard-2.2.2.ebuild2
-rw-r--r--dev-python/symengine/symengine-0.14.1.ebuild2
-rw-r--r--dev-python/tifffile/Manifest1
-rw-r--r--dev-python/tifffile/tifffile-2025.5.10.ebuild47
-rw-r--r--dev-python/txredisapi/Manifest1
-rw-r--r--dev-python/txredisapi/txredisapi-1.4.10.ebuild84
-rw-r--r--dev-python/txredisapi/txredisapi-1.4.11.ebuild2
-rw-r--r--dev-python/xcffib/xcffib-1.8.0.ebuild2
42 files changed, 588 insertions, 145 deletions
diff --git a/dev-python/aiohttp/aiohttp-3.11.18.ebuild b/dev-python/aiohttp/aiohttp-3.11.18.ebuild
index b0fa55b11278..abe491d94407 100644
--- a/dev-python/aiohttp/aiohttp-3.11.18.ebuild
+++ b/dev-python/aiohttp/aiohttp-3.11.18.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 arm arm64 ~hppa ~loong ~mips ppc ~ppc64 ~riscv ~s390 ~sparc x86"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ~mips ppc ~ppc64 ~riscv ~s390 ~sparc x86"
IUSE="+native-extensions test-rust"
DEPEND="
diff --git a/dev-python/astroid/Manifest b/dev-python/astroid/Manifest
index a5a59dc2ac25..7a909bfb0c34 100644
--- a/dev-python/astroid/Manifest
+++ b/dev-python/astroid/Manifest
@@ -1 +1,2 @@
+DIST astroid-3.3.10.gh.tar.gz 467911 BLAKE2B da2e62ff056298bd0dc7aed3a9ab5af25968a2343a5339d409a2d03f0043cbe6024e1440332c797f3645db4b836f54b1a7ea2dbd09f3d49ee765a19d0bd0d15c SHA512 bec58f47f26a56f3700a6f10add2b90c018a2127b35036e1e4fc1d6c41fb35b67362195c506affba9ddf8ea120993e17adb562b799f1ee45622c79def4547e84
DIST astroid-3.3.9.gh.tar.gz 467796 BLAKE2B 6bca213d71de9599cb9102d4aa7f48f7df2b050875e9e566202e9ee700fd309064453a1b4df10d930abb1b4b32b9085ca1a6a569c68ab56c811d1fc51e3cba68 SHA512 c868f2b0da0c52cf827dd5c9e228f814fe307592eb9378968773d336ff412cd8186c826bd4b61e1329ef31e4efd9489d691d3db8a23d09b925354b2973cce943
diff --git a/dev-python/astroid/astroid-3.3.10.ebuild b/dev-python/astroid/astroid-3.3.10.ebuild
new file mode 100644
index 000000000000..50d7fc7551ec
--- /dev/null
+++ b/dev-python/astroid/astroid-3.3.10.ebuild
@@ -0,0 +1,97 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Abstract Syntax Tree for logilab packages"
+HOMEPAGE="
+ https://github.com/pylint-dev/astroid/
+ https://pypi.org/project/astroid/
+"
+SRC_URI="
+ https://github.com/pylint-dev/astroid/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+# dev-python/regex isn't available for pypy
+BDEPEND="
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+ test? (
+ dev-python/attrs[${PYTHON_USEDEP}]
+ >=dev-python/numpy-1.17.0[${PYTHON_USEDEP}]
+ dev-python/python-dateutil[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/regex[${PYTHON_USEDEP}]
+ ' 'python*')
+ )
+"
+
+distutils_enable_tests pytest
+
+export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ # https://bugs.gentoo.org/951713
+ sed -i -e '/license-files.*Keep in sync/d' pyproject.toml || die
+}
+
+python_test() {
+ local EPYTEST_IGNORE=()
+ local EPYTEST_DESELECT=(
+ # no clue why they're broken
+ tests/test_modutils.py::GetModulePartTest::test_known_values_get_builtin_module_part
+ tests/test_regrtest.py::NonRegressionTests::test_numpy_distutils
+ # pydantic-2?
+ tests/brain/test_dataclasses.py::test_pydantic_field
+ # requires urllib3 with bundled six (skipped with urllib3>=2)
+ tests/test_modutils.py::test_file_info_from_modpath__SixMetaPathImporter
+ # hangs
+ tests/test_nodes.py::AsStringTest::test_recursion_error_trapped
+ # TODO
+ tests/test_builder.py::BuilderTest::test_data_build_error_filename
+ # numpy-2 (https://github.com/pylint-dev/astroid/issues/2442)
+ tests/brain/numpy/test_core_einsumfunc.py::test_numpy_function_calls_inferred_as_ndarray
+ tests/brain/numpy/test_core_fromnumeric.py::BrainNumpyCoreFromNumericTest::test_numpy_function_calls_inferred_as_ndarray
+ tests/brain/numpy/test_core_multiarray.py::BrainNumpyCoreMultiarrayTest::test_numpy_function_calls_inferred_as_ndarray
+ tests/brain/numpy/test_core_numerictypes.py::NumpyBrainCoreNumericTypesTest::test_datetime_astype_return
+ tests/brain/numpy/test_core_numerictypes.py::NumpyBrainCoreNumericTypesTest::test_generic_types_are_subscriptables
+ tests/brain/numpy/test_core_umath.py::NumpyBrainCoreUmathTest::test_numpy_core_umath_functions_return_type
+ tests/brain/numpy/test_core_umath.py::NumpyBrainCoreUmathTest::test_numpy_core_umath_functions_return_type_tuple
+ )
+
+ if ! has_version "dev-python/mypy[${PYTHON_USEDEP}]"; then
+ EPYTEST_IGNORE+=(
+ tests/test_raw_building.py
+ )
+ fi
+
+ case ${EPYTHON} in
+ pypy3)
+ EPYTEST_DESELECT+=(
+ tests/test_transforms.py::TestTransforms::test_transform_aborted_if_recursion_limited
+ )
+ ;;
+ python3.13)
+ EPYTEST_DESELECT+=(
+ # changes in py3.13.0b4
+ # https://github.com/pylint-dev/astroid/issues/2478
+ tests/test_nodes.py::AsStringTest::test_f_strings
+ tests/test_nodes_lineno.py::TestLinenoColOffset::test_end_lineno_string
+ )
+ ;;
+ esac
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
diff --git a/dev-python/black/black-25.1.0.ebuild b/dev-python/black/black-25.1.0.ebuild
index a8bbdde2d5bf..86c3cbc3703d 100644
--- a/dev-python/black/black-25.1.0.ebuild
+++ b/dev-python/black/black-25.1.0.ebuild
@@ -38,10 +38,8 @@ BDEPEND="
dev-python/aiohttp-cors[${PYTHON_USEDEP}]
dev-python/colorama[${PYTHON_USEDEP}]
dev-python/parameterized[${PYTHON_USEDEP}]
- dev-python/pytest-forked[${PYTHON_USEDEP}]
)
"
-
distutils_enable_tests pytest
python_test() {
@@ -58,9 +56,7 @@ python_test() {
esac
local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- # pytest-forked to workaround fd leakage in blackd
- # https://github.com/psf/black/issues/4504
- epytest -p pytest_forked --forked
+ epytest
}
pkg_postinst() {
diff --git a/dev-python/btrfs/btrfs-15.ebuild b/dev-python/btrfs/btrfs-15.ebuild
index 5bd6e1327ae3..50b261688a14 100644
--- a/dev-python/btrfs/btrfs-15.ebuild
+++ b/dev-python/btrfs/btrfs-15.ebuild
@@ -22,7 +22,7 @@ S=${WORKDIR}/${MY_P}
LICENSE="LGPL-3"
SLOT="0"
-KEYWORDS="~amd64"
+KEYWORDS="amd64"
IUSE="examples"
python_install_all() {
diff --git a/dev-python/click/Manifest b/dev-python/click/Manifest
index a4f66063471c..d3103ceb41da 100644
--- a/dev-python/click/Manifest
+++ b/dev-python/click/Manifest
@@ -1 +1,2 @@
DIST click-8.1.8.gh.tar.gz 342860 BLAKE2B f55518e66473c43e78d5127d7a4467cce5a7e25c84dae2f740e9cfa1682213e5c243ff4da90768a25374921b5d2d482525b6975818f5383ebcde77f298c9694d SHA512 f9f501210d202026a8449df1eef570f5399887a3efda9499d4a4180bbe96bc232809929bf80f9a65037583e84dfa8af3f0c348353c41121c815a9ead2c58d3aa
+DIST click-8.2.0.gh.tar.gz 349577 BLAKE2B 202b867151db653447f3ac26dcfe2871f3513b656851911aabb131d4ab35a50d3ab48ea7ec4e0db76fe0f39f153c3280cbd12a2b0f5bc9041596eeade826e1cb SHA512 0046970e99d2cce2ae40322ea6606cc8af241b5ee50f61830984b10a0ae20c107d0c56c049bf7d8c5bdebd98ef36c0d018e8a649551aabc8fb91554bd438101a
diff --git a/dev-python/click/click-8.2.0.ebuild b/dev-python/click/click-8.2.0.ebuild
new file mode 100644
index 000000000000..2220a24b0c38
--- /dev/null
+++ b/dev-python/click/click-8.2.0.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="A Python package for creating beautiful command line interfaces"
+HOMEPAGE="
+ https://palletsprojects.com/p/click/
+ https://github.com/pallets/click/
+ https://pypi.org/project/click/
+"
+SRC_URI="
+ https://github.com/pallets/${PN}/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+IUSE="examples"
+
+distutils_enable_sphinx docs \
+ '>=dev-python/docutils-0.14' \
+ dev-python/pallets-sphinx-themes \
+ dev-python/sphinxcontrib-log-cabinet \
+ dev-python/sphinx-issues \
+ dev-python/sphinx-tabs
+distutils_enable_tests pytest
+
+python_install_all() {
+ use examples && dodoc -r examples
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/distlib/distlib-0.3.9.ebuild b/dev-python/distlib/distlib-0.3.9.ebuild
index 5a190a15fe84..8fac91ce12ae 100644
--- a/dev-python/distlib/distlib-0.3.9.ebuild
+++ b/dev-python/distlib/distlib-0.3.9.ebuild
@@ -52,7 +52,7 @@ python_test() {
# disable system-site-packages -- distlib has no deps, and is very
# fragile to packages actually installed on the system
sed -i -e '/system-site-packages/s:true:false:' \
- "${BUILD_DIR}/install${EPREFIX}/usr/bin/pyvenv.cfg" || die
+ "${BUILD_DIR}/install${EPREFIX}/usr/pyvenv.cfg" || die
"${EPYTHON}" tests/test_all.py -v -x ||
die "Tests failed with ${EPYTHON}"
diff --git a/dev-python/dogpile-cache/Manifest b/dev-python/dogpile-cache/Manifest
index 74944e82afbd..b0ff7745ad2a 100644
--- a/dev-python/dogpile-cache/Manifest
+++ b/dev-python/dogpile-cache/Manifest
@@ -1,2 +1 @@
-DIST dogpile_cache-1.3.4.tar.gz 933234 BLAKE2B da5de35a87dc7b308326616378f1153f46da79c28bf89fbe488b74f08604a4fab52c0720b6ba016217ae054413fbe9696c3523c3e6387bb55800c401e482454a SHA512 3b22a640b53002697ba5b0bc0cde21cd44c707a51a86cf56b4538b6913b47d73c7d5a50f6f93d80b9e90bbc28be52db746da6f4e9becf0f4415da1ddbf20f9ff
DIST dogpile_cache-1.4.0.tar.gz 937468 BLAKE2B 3e1b79a1a304a48f67ca89d02ff5cd69ccb48d4c6b0bc232f253c63ce094fc61608a9e9e0a7216bc8cdb7a1eea22d561e1f57632d5aee3a202d927c6863229bd SHA512 65ba9df054ac1d5f4e263277bff8ccb3a202b7b7f7007c4fa0ad80517ffc1000b4a06819aa00c9f6be4d7dcddea1762153377825b81b9ff1159598510e2b2242
diff --git a/dev-python/dogpile-cache/dogpile-cache-1.3.4.ebuild b/dev-python/dogpile-cache/dogpile-cache-1.3.4.ebuild
deleted file mode 100644
index 367c8e38ba12..000000000000
--- a/dev-python/dogpile-cache/dogpile-cache-1.3.4.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYPI_PN=${PN/-/.}
-PYTHON_COMPAT=( python3_{9,10,11,12,13} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="A locking API for expiring values while a single thread generates a new value"
-HOMEPAGE="
- https://github.com/sqlalchemy/dogpile.cache/
- https://pypi.org/project/dogpile.cache/
-"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ~riscv x86"
-
-RDEPEND="
- >=dev-python/decorator-4.0.0[${PYTHON_USEDEP}]
- >=dev-python/stevedore-3.0.0[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '
- >=dev-python/typing-extensions-4.0.1[${PYTHON_USEDEP}]
- ' 3.10)
-"
-BDEPEND="
- test? (
- dev-python/mako[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
diff --git a/dev-python/dogpile-cache/dogpile-cache-1.4.0.ebuild b/dev-python/dogpile-cache/dogpile-cache-1.4.0.ebuild
index a25e2d9a3d78..367c8e38ba12 100644
--- a/dev-python/dogpile-cache/dogpile-cache-1.4.0.ebuild
+++ b/dev-python/dogpile-cache/dogpile-cache-1.4.0.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+KEYWORDS="amd64 ~arm arm64 ~riscv x86"
RDEPEND="
>=dev-python/decorator-4.0.0[${PYTHON_USEDEP}]
diff --git a/dev-python/exceptiongroup/Manifest b/dev-python/exceptiongroup/Manifest
index 0d225ce1a0c7..f6594f642742 100644
--- a/dev-python/exceptiongroup/Manifest
+++ b/dev-python/exceptiongroup/Manifest
@@ -1 +1,2 @@
DIST exceptiongroup-1.2.2.tar.gz 28883 BLAKE2B 713a1dcce6575eb8513fc5016b5ef5c11cafeb910f96ab556916da4c109be228cabc078551244d04acb9521ae7af65e1d93a02d7f40fa985760421138f7ccb73 SHA512 dedee1401577d1047a99078552cf24346c55f1e9a281845f327d8ace30b22659877743ce1c8b60fa605988abcac14432138020e9d1c109df911f86993cbe2082
+DIST exceptiongroup-1.3.0.tar.gz 29749 BLAKE2B 42b449f2de3b42433c96b939e256dfb1d609fcb478724e3b715aebbb46697c9ae99ad08012a2b7a1c23e1e479f315ff8643e0f13bd87d4c369eb2ddf4f388fca SHA512 b8cbdaf7e7199240b931ca37676a2d5c3465e6ed09efcc23fe660c9fd911d5dde092fb66dfa70ec82dc49404e669bbdb5c55b2b26ef816c189e54797b6225833
diff --git a/dev-python/exceptiongroup/exceptiongroup-1.3.0.ebuild b/dev-python/exceptiongroup/exceptiongroup-1.3.0.ebuild
new file mode 100644
index 000000000000..815d0d19800c
--- /dev/null
+++ b/dev-python/exceptiongroup/exceptiongroup-1.3.0.ebuild
@@ -0,0 +1,32 @@
+# Copyright 2022-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit_scm
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Backport of PEP 654 (exception groups)"
+HOMEPAGE="
+ https://github.com/agronholm/exceptiongroup/
+ https://pypi.org/project/exceptiongroup/
+"
+
+LICENSE="MIT PSF-2.4"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ $(python_gen_cond_dep '
+ >=dev-python/typing-extensions-4.6.0[${PYTHON_USEDEP}]
+ ' 3.11 3.12)
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
diff --git a/dev-python/fonttools/Manifest b/dev-python/fonttools/Manifest
index 3ee61fa2e902..42ccadbbc9c7 100644
--- a/dev-python/fonttools/Manifest
+++ b/dev-python/fonttools/Manifest
@@ -1,2 +1,3 @@
DIST fonttools-4.56.0.gh.tar.gz 3900744 BLAKE2B f75ad562092cadbf2a844fedf47e1b054769227d1fd3e553f62f3f664f07a57df2dda410850b00e1a1aa7d322fb14401255f11570a3f0456b443ae96e484f2d6 SHA512 e1d668b299dcf26d578d1fd7b6830ab6a97f97545024060eda1acb625910a3a430e34ce04c6739db724e974422043d59629ab7380812a72b4a219ab0dbec35a3
DIST fonttools-4.57.0.gh.tar.gz 3932468 BLAKE2B 7bfcf6aa3b5cffbba7cdabe14a580dc40677a1d80a2d69750925d7e06c1885df9cd586a228c0d06707acdc9870e92241cce373f0eb27f93a4f887ba14631470c SHA512 7e3ef7149b8e6af5953a827e0a078390e67b919ba9752a03672d876f6de3d0d395b2e061c0f87e5d9298c13c74a1f0162d99151c364dfab487eec2ab9adced75
+DIST fonttools-4.58.0.gh.tar.gz 3955467 BLAKE2B 0094284f90685a4e8051c84374325413269ab0207f0ecc25d3129776a226de05a82adcbf1812cc3f18b8950b49f310f7a96295812a33c8e3fecd6aa48d768efb SHA512 8d32cffb2a83b0fb2eda89a8352b7e235595c8d159adb4075941da46c3715701c1d12d0f5e0fe663c587f5c888658ab1d7b2a54cb857355848627a1c25acd0ae
diff --git a/dev-python/fonttools/fonttools-4.58.0.ebuild b/dev-python/fonttools/fonttools-4.58.0.ebuild
new file mode 100644
index 000000000000..3653213263ff
--- /dev/null
+++ b/dev-python/fonttools/fonttools-4.58.0.ebuild
@@ -0,0 +1,99 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+PYTHON_REQ_USE="xml(+)"
+
+inherit distutils-r1 virtualx
+
+DESCRIPTION="Library for manipulating TrueType, OpenType, AFM and Type1 fonts"
+HOMEPAGE="
+ https://github.com/fonttools/fonttools/
+ https://pypi.org/project/fonttools/
+"
+SRC_URI="
+ https://github.com/fonttools/fonttools/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="+native-extensions"
+
+RDEPEND="
+ >=dev-python/fs-2.4.9[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ native-extensions? (
+ $(python_gen_cond_dep '
+ dev-python/cython[${PYTHON_USEDEP}]
+ ' 'python*')
+ )
+ test? (
+ dev-python/brotlicffi[${PYTHON_USEDEP}]
+ dev-python/munkres[${PYTHON_USEDEP}]
+ dev-python/pytest-rerunfailures[${PYTHON_USEDEP}]
+ app-arch/zopfli
+ )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ # When dev-python/pytest-shutil is installed, we get weird import errors.
+ # This is due to incomplete nesting in the Tests/ tree:
+ #
+ # Tests/feaLib/__init__.py
+ # Tests/ufoLib/__init__.py
+ # Tests/svgLib/path/__init__.py
+ # Tests/otlLib/__init__.py
+ # Tests/varLib/__init__.py
+ #
+ # This tree requires an __init__.py in Tests/svgLib/ too, bug #701148.
+ touch Tests/svgLib/__init__.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_compile() {
+ local -x FONTTOOLS_WITH_CYTHON=$(usex native-extensions)
+ [[ ${EPYTHON} == pypy3 ]] && FONTTOOLS_WITH_CYTHON=0
+ distutils-r1_python_compile
+}
+
+src_test() {
+ # virtualx used when matplotlib is installed causing plot module tests to run
+ virtx distutils-r1_src_test
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # flaky test
+ Tests/ttLib/woff2_test.py::WOFF2ReaderTest::test_get_normal_tables
+ )
+
+ if [[ ${EPYTHON} == pypy3 ]] &&
+ has_version "dev-python/pyxattr[${PYTHON_USEDEP}]" &&
+ {
+ has_version "<dev-python/pypy3_10-exe-7.3.13_p2" ||
+ has_version "<dev-python/pypy3_10-exe-bin-7.3.13_p2"
+ }
+ then
+ EPYTEST_DESELECT+=(
+ # affected by a bug in PyPy/pyxattr
+ # https://github.com/iustin/pyxattr/issues/41
+ Tests/t1Lib/t1Lib_test.py::ReadWriteTest::test_read_with_path
+ )
+ fi
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ nonfatal epytest \
+ -p rerunfailures --reruns=5 \
+ Tests fontTools || die -n "Tests failed with ${EPYTHON}"
+}
diff --git a/dev-python/greenlet/greenlet-3.2.1.ebuild b/dev-python/greenlet/greenlet-3.2.1.ebuild
index e07437446149..ba57e8091eba 100644
--- a/dev-python/greenlet/greenlet-3.2.1.ebuild
+++ b/dev-python/greenlet/greenlet-3.2.1.ebuild
@@ -19,7 +19,7 @@ HOMEPAGE="
LICENSE="MIT PSF-2"
SLOT="0"
-KEYWORDS="~alpha ~amd64 arm arm64 -hppa ~m68k ~ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~x64-macos"
+KEYWORDS="~alpha amd64 arm arm64 -hppa ~m68k ~ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~x64-macos"
IUSE="test"
RESTRICT="!test? ( test )"
diff --git a/dev-python/jaraco-itertools/Manifest b/dev-python/jaraco-itertools/Manifest
index a7ff64bd8d05..7fd8216e37ce 100644
--- a/dev-python/jaraco-itertools/Manifest
+++ b/dev-python/jaraco-itertools/Manifest
@@ -1 +1,2 @@
DIST jaraco_itertools-6.4.2.tar.gz 19524 BLAKE2B 59e6deb02aeb03072fe0265ff4a418dc0a94f0dbe0874804cefdd6298e4b91d8b3171c355b95c657d4fc80fd53aa36b17ed419c779cab14e83f428d4d6944f8b SHA512 b98e53e9e8ef3d0c8fde73084cfeceee073d266b1060370ddb380c392073b5d4e88adb3207635ce453767dd8c39a4970283d599b61871085e4cf8972d9313aa1
+DIST jaraco_itertools-6.4.3.tar.gz 19680 BLAKE2B ac65bba9ee752ce76c343393719925a565422cd921769a2678a79fb3cb1a34bc0dbcd342904aa17463a7061a71285d89d6fa1773780e62fd54365833233119bb SHA512 13954ede9b59ee62edac9778a18894c05e102e6119b11d3b784ed3fd77ad4530c93826f202465b013fbaa9cbb63d8aab3311850813773176d33832d513670e96
diff --git a/dev-python/jaraco-itertools/jaraco-itertools-6.4.3.ebuild b/dev-python/jaraco-itertools/jaraco-itertools-6.4.3.ebuild
new file mode 100644
index 000000000000..e0ebccfd8969
--- /dev/null
+++ b/dev-python/jaraco-itertools/jaraco-itertools-6.4.3.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_PN=${PN/-/.}
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Tools for working with iterables. Complements itertools and more_itertools"
+HOMEPAGE="
+ https://github.com/jaraco/jaraco.itertools/
+ https://pypi.org/project/jaraco.itertools/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+
+RDEPEND="
+ dev-python/inflect[${PYTHON_USEDEP}]
+ >=dev-python/more-itertools-4.0.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ >=dev-python/setuptools-scm-1.15.0[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/jc/Manifest b/dev-python/jc/Manifest
index 8c49d005de82..b58e5e38fd58 100644
--- a/dev-python/jc/Manifest
+++ b/dev-python/jc/Manifest
@@ -1 +1,2 @@
DIST jc-1.25.4.gh.tar.gz 14205065 BLAKE2B 06a9daad33a20a78544e8dcd4878aa608a9e3117dc79ec2adde825375b78f357ef4ae2273b34b4e68b43f8a99e5a0762a97f3e4165d8ea3623474c992732a74d SHA512 db9ef448662072c28c83a05abc86688b228dfc8d85c3eaa3fea53996d2c120b229bb91071db77b0512de6a924b056c09119afab827aad7dd3edd7dd7eb74abd1
+DIST jc-1.25.5.gh.tar.gz 14216987 BLAKE2B 8e831abdcc9dd7188bb3f397deb6563dcc5dafc05a944f0083ac220c1c081cc61fbed306616872aaa553dbf972243776c29487955a0634a039b14b3579377c5f SHA512 37a20d38281c151a16b6be8ed160aa1f00d0c1415e6351132c184ba84edff266df045b1f38baf1c5d1d0589e172d65aae237126f5984847e7e06b774767c5bce
diff --git a/dev-python/jc/jc-1.25.5.ebuild b/dev-python/jc/jc-1.25.5.ebuild
new file mode 100644
index 000000000000..f4600a757c0a
--- /dev/null
+++ b/dev-python/jc/jc-1.25.5.ebuild
@@ -0,0 +1,37 @@
+# Copyright 2022-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+inherit distutils-r1
+
+DESCRIPTION="Converts the output of popular command-line tools and file-types to JSON"
+HOMEPAGE="
+ https://github.com/kellyjonbrazil/jc/
+ https://pypi.org/project/jc/
+"
+# no tests in sdist, as of 1.23.2
+SRC_URI="
+ https://github.com/kellyjonbrazil/jc/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc64"
+
+RDEPEND="
+ dev-python/pygments[${PYTHON_USEDEP}]
+ dev-python/ruamel-yaml[${PYTHON_USEDEP}]
+ dev-python/xmltodict[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests unittest
+
+python_test() {
+ local -x TZ=America/Los_Angeles
+ eunittest
+}
diff --git a/dev-python/mkdocs-material/Manifest b/dev-python/mkdocs-material/Manifest
index 09ae4126e9a6..63fc6a8a8e24 100644
--- a/dev-python/mkdocs-material/Manifest
+++ b/dev-python/mkdocs-material/Manifest
@@ -1 +1,2 @@
DIST mkdocs-material-9.6.12.gh.tar.gz 14819122 BLAKE2B 9e420351d4eb103e0f5d6a0e8d1fee74c15da95958aec9c44ebc9beccfd586a6454568d8fb70d106521e0678fbbe794a107c1b0107f2f4276888c6595460495e SHA512 6953a06646ae301180fbe7e30d7c64563c89cf984c5f62c44edceb36b923e66ea7c5d9d7dcf7442a23fcb3efad860c67175d8ac147ae594055568b310ffb2c7f
+DIST mkdocs-material-9.6.13.gh.tar.gz 14819165 BLAKE2B 05b0a08877b7baa8d5d2235df3ae797359953c2daf8d85b6c4fd31e12b996506cedcbfacd74e2f0d9aa0f6ccee336b5a14482d8c90951c02c1eec30cc5be2620 SHA512 ff7d0cbaa597bbf8e9ff727587c00a6d3a757d791365eba99b42c701f8481a97d1efbe2c3ac5071dab006d4bbcbecd462b475288e1ecb696e5db2fdab1d1625d
diff --git a/dev-python/mkdocs-material/mkdocs-material-9.6.13.ebuild b/dev-python/mkdocs-material/mkdocs-material-9.6.13.ebuild
new file mode 100644
index 000000000000..7faef3c81d56
--- /dev/null
+++ b/dev-python/mkdocs-material/mkdocs-material-9.6.13.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+
+DOCS_BUILDER="mkdocs"
+DOCS_DEPEND="
+ dev-python/mkdocs-material-extensions
+ dev-python/mkdocs-minify-plugin
+ dev-python/mkdocs-redirects
+"
+
+inherit distutils-r1 docs
+
+DESCRIPTION="A Material Design theme for MkDocs"
+HOMEPAGE="
+ https://github.com/squidfunk/mkdocs-material/
+ https://pypi.org/project/mkdocs-material/
+"
+SRC_URI="
+ https://github.com/squidfunk/${PN}/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="social"
+
+RDEPEND="
+ >=dev-python/babel-2.10.3[${PYTHON_USEDEP}]
+ >=dev-python/colorama-0.4[${PYTHON_USEDEP}]
+ >=dev-python/jinja2-3.0.2[${PYTHON_USEDEP}]
+ >=dev-python/lxml-4.6[${PYTHON_USEDEP}]
+ >=dev-python/markdown-3.2[${PYTHON_USEDEP}]
+ >=dev-python/mkdocs-1.5.3[${PYTHON_USEDEP}]
+ >=dev-python/paginate-0.5.6[${PYTHON_USEDEP}]
+ >=dev-python/pygments-2.16[${PYTHON_USEDEP}]
+ >=dev-python/pymdown-extensions-10.2[${PYTHON_USEDEP}]
+ >=dev-python/readtime-2.0[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ >=dev-python/regex-2022.4.24[${PYTHON_USEDEP}]
+ ' 'python*')
+ >=dev-python/requests-2.26[${PYTHON_USEDEP}]
+ social? (
+ >=dev-python/pillow-10.2[${PYTHON_USEDEP}]
+ >=media-gfx/cairosvg-2.5[${PYTHON_USEDEP}]
+ )
+"
+BDEPEND="
+ >=dev-python/trove-classifiers-2023.10.18[${PYTHON_USEDEP}]
+"
+# mkdocs-material-extensions depends on mkdocs-material creating a circular dep
+PDEPEND="
+ >=dev-python/mkdocs-material-extensions-1.2[${PYTHON_USEDEP}]
+"
+
+PATCHES=(
+ # simplify pyproject to remove extra deps for metadata
+ "${FILESDIR}/${PN}-8.5.7-simplify-build.patch"
+ # import backrefs only when used (i.e. never)
+ "${FILESDIR}/${PN}-9.6.7-backrefs.patch"
+)
+
+src_prepare() {
+ echo "__version__ = '${PV}'" > gentoo_version.py || die
+ distutils-r1_src_prepare
+}
diff --git a/dev-python/moto/moto-5.1.4.ebuild b/dev-python/moto/moto-5.1.4.ebuild
index 6264ee2ccbca..6d0f75664fe5 100644
--- a/dev-python/moto/moto-5.1.4.ebuild
+++ b/dev-python/moto/moto-5.1.4.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 arm64 ~riscv ~x86"
+KEYWORDS="amd64 arm64 ~riscv ~x86"
RDEPEND="
>=dev-python/aws-xray-sdk-0.93[${PYTHON_USEDEP}]
diff --git a/dev-python/multidict/multidict-6.4.3.ebuild b/dev-python/multidict/multidict-6.4.3.ebuild
index a28f04f7be1d..d36789b94915 100644
--- a/dev-python/multidict/multidict-6.4.3.ebuild
+++ b/dev-python/multidict/multidict-6.4.3.ebuild
@@ -21,7 +21,7 @@ SRC_URI="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos"
IUSE="+native-extensions"
RDEPEND="
diff --git a/dev-python/numpy/numpy-2.2.5.ebuild b/dev-python/numpy/numpy-2.2.5.ebuild
index 001e74421abd..c309abf21a62 100644
--- a/dev-python/numpy/numpy-2.2.5.ebuild
+++ b/dev-python/numpy/numpy-2.2.5.ebuild
@@ -20,7 +20,7 @@ HOMEPAGE="
LICENSE="BSD"
SLOT="0/2"
-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"
# +lapack because the internal fallbacks are pretty slow. Building without blas
# is barely supported anyway, see bug #914358.
IUSE="big-endian +lapack"
diff --git a/dev-python/pexpect/files/pexpect-4.9.0-py314.patch b/dev-python/pexpect/files/pexpect-4.9.0-py314.patch
new file mode 100644
index 000000000000..a7d1f8f83593
--- /dev/null
+++ b/dev-python/pexpect/files/pexpect-4.9.0-py314.patch
@@ -0,0 +1,107 @@
+https://github.com/pexpect/pexpect/commit/456bc10d94b57e254568e7ea9a8b3cffb856ebff
+
+From 456bc10d94b57e254568e7ea9a8b3cffb856ebff Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= <miro@hroncok.cz>
+Date: Fri, 22 Nov 2024 16:41:55 +0100
+Subject: [PATCH] Tests: Avoid the multiprocessing forkserver method
+
+Fixes https://github.com/pexpect/pexpect/issues/807
+---
+ tests/test_expect.py | 12 ++++++++++--
+ tests/test_socket.py | 24 ++++++++++++++++--------
+ 2 files changed, 26 insertions(+), 10 deletions(-)
+
+diff --git a/tests/test_expect.py b/tests/test_expect.py
+index c16e0551..fb1e30e2 100755
+--- a/tests/test_expect.py
++++ b/tests/test_expect.py
+@@ -33,6 +33,14 @@
+
+ PY3 = bool(sys.version_info.major >= 3)
+
++# Python 3.14 changed the non-macOS POSIX default to forkserver
++# but the code in this module does not work with it
++# See https://github.com/python/cpython/issues/125714
++if multiprocessing.get_start_method() == 'forkserver':
++ mp_context = multiprocessing.get_context(method='fork')
++else:
++ mp_context = multiprocessing.get_context()
++
+ # Many of these test cases blindly assume that sequential directory
+ # listings of the /bin directory will yield the same results.
+ # This may not be true, but seems adequate for testing now.
+@@ -682,7 +690,7 @@ def test_stdin_closed(self):
+ '''
+ Ensure pexpect continues to operate even when stdin is closed
+ '''
+- class Closed_stdin_proc(multiprocessing.Process):
++ class Closed_stdin_proc(mp_context.Process):
+ def run(self):
+ sys.__stdin__.close()
+ cat = pexpect.spawn('cat')
+@@ -698,7 +706,7 @@ def test_stdin_stdout_closed(self):
+ '''
+ Ensure pexpect continues to operate even when stdin and stdout is closed
+ '''
+- class Closed_stdin_stdout_proc(multiprocessing.Process):
++ class Closed_stdin_stdout_proc(mp_context.Process):
+ def run(self):
+ sys.__stdin__.close()
+ sys.__stdout__.close()
+diff --git a/tests/test_socket.py b/tests/test_socket.py
+index b801b00a..6521d368 100644
+--- a/tests/test_socket.py
++++ b/tests/test_socket.py
+@@ -29,6 +29,14 @@
+ import time
+ import errno
+
++# Python 3.14 changed the non-macOS POSIX default to forkserver
++# but the code in this module does not work with it
++# See https://github.com/python/cpython/issues/125714
++if multiprocessing.get_start_method() == 'forkserver':
++ mp_context = multiprocessing.get_context(method='fork')
++else:
++ mp_context = multiprocessing.get_context()
++
+
+ class SocketServerError(Exception):
+ pass
+@@ -83,8 +91,8 @@ def setUp(self):
+ self.prompt3 = b'Press X to exit:'
+ self.enter = b'\r\n'
+ self.exit = b'X\r\n'
+- self.server_up = multiprocessing.Event()
+- self.server_process = multiprocessing.Process(target=self.socket_server, args=(self.server_up,))
++ self.server_up = mp_context.Event()
++ self.server_process = mp_context.Process(target=self.socket_server, args=(self.server_up,))
+ self.server_process.daemon = True
+ self.server_process.start()
+ counter = 0
+@@ -189,9 +197,9 @@ def test_timeout(self):
+ session.expect(b'Bogus response')
+
+ def test_interrupt(self):
+- timed_out = multiprocessing.Event()
+- all_read = multiprocessing.Event()
+- test_proc = multiprocessing.Process(target=self.socket_fn, args=(timed_out, all_read))
++ timed_out = mp_context.Event()
++ all_read = mp_context.Event()
++ test_proc = mp_context.Process(target=self.socket_fn, args=(timed_out, all_read))
+ test_proc.daemon = True
+ test_proc.start()
+ while not all_read.is_set():
+@@ -203,9 +211,9 @@ def test_interrupt(self):
+ self.assertEqual(test_proc.exitcode, errno.ETIMEDOUT)
+
+ def test_multiple_interrupts(self):
+- timed_out = multiprocessing.Event()
+- all_read = multiprocessing.Event()
+- test_proc = multiprocessing.Process(target=self.socket_fn, args=(timed_out, all_read))
++ timed_out = mp_context.Event()
++ all_read = mp_context.Event()
++ test_proc = mp_context.Process(target=self.socket_fn, args=(timed_out, all_read))
+ test_proc.daemon = True
+ test_proc.start()
+ while not all_read.is_set():
+
diff --git a/dev-python/pexpect/pexpect-4.9.0.ebuild b/dev-python/pexpect/pexpect-4.9.0.ebuild
index 9fcbc6b945d3..4c6fa32b4607 100644
--- a/dev-python/pexpect/pexpect-4.9.0.ebuild
+++ b/dev-python/pexpect/pexpect-4.9.0.ebuild
@@ -32,6 +32,8 @@ distutils_enable_sphinx doc \
PATCHES=(
# https://github.com/pexpect/pexpect/pull/794
"${FILESDIR}/${P}-py313.patch"
+ # https://github.com/pexpect/pexpect/pull/808
+ "${FILESDIR}/${P}-py314.patch"
)
src_test() {
diff --git a/dev-python/pipdeptree/pipdeptree-2.26.1.ebuild b/dev-python/pipdeptree/pipdeptree-2.26.1.ebuild
index 845a8e9afaf0..339a84d887c8 100644
--- a/dev-python/pipdeptree/pipdeptree-2.26.1.ebuild
+++ b/dev-python/pipdeptree/pipdeptree-2.26.1.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~riscv"
+KEYWORDS="amd64 ~arm64 ~riscv"
RDEPEND="
>=dev-python/packaging-23.1[${PYTHON_USEDEP}]
diff --git a/dev-python/pivy/pivy-0.6.10.ebuild b/dev-python/pivy/pivy-0.6.10.ebuild
index 4bcbd293f0bd..4d6c459e86cd 100644
--- a/dev-python/pivy/pivy-0.6.10.ebuild
+++ b/dev-python/pivy/pivy-0.6.10.ebuild
@@ -19,7 +19,7 @@ else
SRC_URI="
https://github.com/coin3d/pivy/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz
"
- KEYWORDS="~amd64 x86"
+ KEYWORDS="amd64 x86"
fi
LICENSE="ISC"
diff --git a/dev-python/pycares/pycares-4.6.1.ebuild b/dev-python/pycares/pycares-4.6.1.ebuild
index c524c3ae2ec0..abe91f2d50b3 100644
--- a/dev-python/pycares/pycares-4.6.1.ebuild
+++ b/dev-python/pycares/pycares-4.6.1.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~loong ~mips ppc ~ppc64 ~riscv ~s390 ~sparc x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ~ppc64 ~riscv ~s390 ~sparc x86"
IUSE="test"
# Tests fail with network-sandbox, since they try to resolve google.com
PROPERTIES="test_network"
diff --git a/dev-python/pychromecast/pychromecast-14.0.7.ebuild b/dev-python/pychromecast/pychromecast-14.0.7.ebuild
index 17f47a084216..40ed19efcf94 100644
--- a/dev-python/pychromecast/pychromecast-14.0.7.ebuild
+++ b/dev-python/pychromecast/pychromecast-14.0.7.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 x86"
RDEPEND="
>=dev-python/casttube-0.2.0[${PYTHON_USEDEP}]
diff --git a/dev-python/pygit2/pygit2-1.18.0.ebuild b/dev-python/pygit2/pygit2-1.18.0.ebuild
index e4a1b35ef3aa..cecbfe5eb681 100644
--- a/dev-python/pygit2/pygit2-1.18.0.ebuild
+++ b/dev-python/pygit2/pygit2-1.18.0.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="GPL-2-with-linking-exception"
SLOT="0"
-KEYWORDS="~amd64 ~loong ~riscv x86"
+KEYWORDS="amd64 ~loong ~riscv x86"
DEPEND="
<dev-libs/libgit2-1.10:=
diff --git a/dev-python/pyglet/pyglet-2.1.5.ebuild b/dev-python/pyglet/pyglet-2.1.5.ebuild
index fad828fb72c5..b6f49260b849 100644
--- a/dev-python/pyglet/pyglet-2.1.5.ebuild
+++ b/dev-python/pyglet/pyglet-2.1.5.ebuild
@@ -23,7 +23,7 @@ S=${WORKDIR}/${MY_P}
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~amd64 ~arm arm64 ~loong ~ppc64 ~riscv x86 ~amd64-linux ~x86-linux"
+KEYWORDS="amd64 ~arm arm64 ~loong ~ppc64 ~riscv x86 ~amd64-linux ~x86-linux"
IUSE="examples image +sound"
RDEPEND="
diff --git a/dev-python/pyicu/pyicu-2.15.2.ebuild b/dev-python/pyicu/pyicu-2.15.2.ebuild
index 7024933ecf36..e0c037dad534 100644
--- a/dev-python/pyicu/pyicu-2.15.2.ebuild
+++ b/dev-python/pyicu/pyicu-2.15.2.ebuild
@@ -22,7 +22,7 @@ S=${WORKDIR}/${MY_P}
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv x86 ~arm64-macos ~x64-macos"
+KEYWORDS="amd64 ~arm64 ~ppc64 ~riscv x86 ~arm64-macos ~x64-macos"
DEPEND="
dev-libs/icu:=
diff --git a/dev-python/pyscard/pyscard-2.2.2.ebuild b/dev-python/pyscard/pyscard-2.2.2.ebuild
index 70dcb65a0e68..495cd1bc81ec 100644
--- a/dev-python/pyscard/pyscard-2.2.2.ebuild
+++ b/dev-python/pyscard/pyscard-2.2.2.ebuild
@@ -21,7 +21,7 @@ SRC_URI="
LICENSE="LGPL-2.1"
SLOT="0"
-KEYWORDS="~amd64 arm arm64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86"
+KEYWORDS="amd64 arm arm64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86"
DEPEND="
sys-apps/pcsc-lite
diff --git a/dev-python/symengine/symengine-0.14.1.ebuild b/dev-python/symengine/symengine-0.14.1.ebuild
index 697ed229aab8..f57a1f1b90b9 100644
--- a/dev-python/symengine/symengine-0.14.1.ebuild
+++ b/dev-python/symengine/symengine-0.14.1.ebuild
@@ -23,7 +23,7 @@ S=${WORKDIR}/${MY_P}
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~arm arm64 ~loong ~ppc64 ~riscv ~x86"
+KEYWORDS="amd64 ~arm arm64 ~loong ~ppc64 ~riscv ~x86"
BDEPEND="
dev-build/cmake
diff --git a/dev-python/tifffile/Manifest b/dev-python/tifffile/Manifest
index e19160c111cd..2542fb692cf2 100644
--- a/dev-python/tifffile/Manifest
+++ b/dev-python/tifffile/Manifest
@@ -1 +1,2 @@
DIST tifffile-2025.3.30.gh.tar.gz 354935 BLAKE2B f388a2db46c53aef7855f57e2e1ee04583c17b9fc5a7ce565ae5b3a2a921f80e1bfd48d03662baed9cfc8504919977748625b72c6b6ba6cc40fb9269d6be4404 SHA512 facc58da99ae0d877f0ed4ae5e7392a8e500cb7ff18fd821095af31911315f5c1c89ffe1a91d17ab24d52c714cac97ef16d59a6673953882279333f5c87bc02f
+DIST tifffile-2025.5.10.gh.tar.gz 354939 BLAKE2B 421f30a95286bed985794b35d94aca1ab2c892d08c23cbb8fb6f494500e2c444e03bd3ee1a049f7d50e5d02f2ef8375c056f03405af0863fe407231b34e7a119 SHA512 edeb7367970c8218009a715c3552b28f9cbde8265727835b1eebca1756fa3c902153756adba11be7e096c9e8fa2b88bbbbdc72ad5dd4e4a06379d58ab586d3dd
diff --git a/dev-python/tifffile/tifffile-2025.5.10.ebuild b/dev-python/tifffile/tifffile-2025.5.10.ebuild
new file mode 100644
index 000000000000..7e61f5160c1b
--- /dev/null
+++ b/dev-python/tifffile/tifffile-2025.5.10.ebuild
@@ -0,0 +1,47 @@
+# Copyright 2021-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+inherit distutils-r1
+
+DESCRIPTION="Read and write TIFF files"
+HOMEPAGE="
+ https://pypi.org/project/tifffile/
+ https://github.com/cgohlke/tifffile/
+ https://www.cgohlke.com/
+"
+SRC_URI="
+ https://github.com/cgohlke/tifffile/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+RDEPEND="
+ >=dev-python/numpy-1.19.2[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/defusedxml[${PYTHON_USEDEP}]
+ >=dev-python/fsspec-2021.5.0[${PYTHON_USEDEP}]
+ dev-python/lxml[${PYTHON_USEDEP}]
+ dev-python/xarray[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+python_test() {
+ local -x SKIP_LARGE=1
+ local -x SKIP_HTTP=1
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
diff --git a/dev-python/txredisapi/Manifest b/dev-python/txredisapi/Manifest
index 5de738309958..75aaeca46434 100644
--- a/dev-python/txredisapi/Manifest
+++ b/dev-python/txredisapi/Manifest
@@ -1,2 +1 @@
-DIST txredisapi-1.4.10.gh.tar.gz 54536 BLAKE2B d1224a95516323bfe3cf57b66612cea6b5fe7a4bd9aba0d2202f19575e1607209dc018ad6f754530ba07f09e89f38238f7ae3213898a33f317dc347722e055d7 SHA512 f0ba61c48807de90ec1dde5100b735f7fe0fb8168895d99ee77cbbfe741bae77e0495bf60f719d6cda65d6403c011c9bb15e6057e717afc4051cfdd7e514ddf9
DIST txredisapi-1.4.11.gh.tar.gz 54559 BLAKE2B acc18f1db84043869ac1e52393654219f20c72e1492773015e4eac2ffc6289d3267852e3cf928e87218bae79118610df488cfe7f543ba7e531f90e96fc3dc79d SHA512 f48f9f702136b7b37d9841692f32cf917ec9577cb52b76240e27723b2e53e7a70ecdc4d28ccd7daa22e7ab61214edc4d58856f6c4c17e35939166ad0a553491e
diff --git a/dev-python/txredisapi/txredisapi-1.4.10.ebuild b/dev-python/txredisapi/txredisapi-1.4.10.ebuild
deleted file mode 100644
index eaf5623e4ff5..000000000000
--- a/dev-python/txredisapi/txredisapi-1.4.10.ebuild
+++ /dev/null
@@ -1,84 +0,0 @@
-# Copyright 2023-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{9,10,11,12,13} )
-inherit distutils-r1 optfeature
-
-DESCRIPTION="Non-blocking redis client for python"
-HOMEPAGE="
- https://github.com/IlyaSkriblovsky/txredisapi/
- https://pypi.org/project/txredisapi/
-"
-# Github is used because PyPI archive does not contain tests,
-# see https://github.com/IlyaSkriblovsky/txredisapi/issues/149
-SRC_URI="
- https://github.com/IlyaSkriblovsky/${PN}/archive/refs/tags/${PV}.tar.gz
- -> ${P}.gh.tar.gz
-"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ~arm64 ~ppc64"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- dev-python/six[${PYTHON_USEDEP}]
- dev-python/twisted[${PYTHON_USEDEP},ssl(-)]
-"
-BDEPEND="
- test? (
- <dev-db/redis-7.2
- dev-python/hiredis[${PYTHON_USEDEP}]
- dev-python/mock[${PYTHON_USEDEP}]
- )
-"
-
-src_prepare() {
- sed -i "/redis_sock =/s:/tmp:${T}:" tests/test_unix_connection.py || die
-
- distutils-r1_src_prepare
-}
-
-python_test() {
- # paralellized tests with -j parameter fail
- "${EPYTHON}" -m twisted.trial tests || die "tests failed with ${EPYTHON}"
-}
-
-src_test() {
- local redis_pid="${T}"/redis.pid
- local redis_port=6379
-
- if has_version ">=dev-db/redis-7"; then
- local extra_conf="
- enable-debug-command yes
- enable-module-command yes
- "
- fi
-
- # Spawn Redis itself for testing purposes
- einfo "Spawning Redis"
- einfo "NOTE: Port ${redis_port} must be free"
- "${EPREFIX}"/usr/sbin/redis-server - <<- EOF || die "Unable to start redis server"
- daemonize yes
- pidfile ${redis_pid}
- port ${redis_port}
- bind 127.0.0.1 ::1
- unixsocket ${T}/redis.sock
- unixsocketperm 700
- ${extra_conf}
- EOF
-
- # Run the tests
- distutils-r1_src_test
-
- # Clean up afterwards
- kill "$(<"${redis_pid}")" || die
-}
-
-pkg_postinst() {
- optfeature "Use hiredis protocol parser" dev-python/hiredis
-}
diff --git a/dev-python/txredisapi/txredisapi-1.4.11.ebuild b/dev-python/txredisapi/txredisapi-1.4.11.ebuild
index b054b52f1028..7f3571cb3223 100644
--- a/dev-python/txredisapi/txredisapi-1.4.11.ebuild
+++ b/dev-python/txredisapi/txredisapi-1.4.11.ebuild
@@ -21,7 +21,7 @@ SRC_URI="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~ppc64"
+KEYWORDS="amd64 ~arm64 ~ppc64"
IUSE="test"
RESTRICT="!test? ( test )"
diff --git a/dev-python/xcffib/xcffib-1.8.0.ebuild b/dev-python/xcffib/xcffib-1.8.0.ebuild
index 055ccdc41e03..d47297daf46c 100644
--- a/dev-python/xcffib/xcffib-1.8.0.ebuild
+++ b/dev-python/xcffib/xcffib-1.8.0.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~loong ~m68k ppc ~ppc64 ~riscv ~s390 ~sparc x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ppc ~ppc64 ~riscv ~s390 ~sparc x86"
DEPEND="
x11-libs/libxcb