summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2025-06-09 07:00:06 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2025-06-09 07:00:06 +0000
commitd040dfeee4aeee655599ab9091f1fb756b21c23d (patch)
tree9d41a24bcf6a18d726ce739193e861d42a92e1a5 /dev-python
parent653793351c5886fac93c93c99705943c0c46b857 (diff)
downloadbaldeagleos-repo-d040dfeee4aeee655599ab9091f1fb756b21c23d.tar.gz
baldeagleos-repo-d040dfeee4aeee655599ab9091f1fb756b21c23d.tar.xz
baldeagleos-repo-d040dfeee4aeee655599ab9091f1fb756b21c23d.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/cmd2/Manifest1
-rw-r--r--dev-python/cmd2/cmd2-2.6.1.ebuild58
-rw-r--r--dev-python/crispy-bootstrap4/Manifest1
-rw-r--r--dev-python/crispy-bootstrap4/crispy-bootstrap4-2025.6.ebuild35
-rw-r--r--dev-python/crispy-bootstrap5/Manifest1
-rw-r--r--dev-python/crispy-bootstrap5/crispy-bootstrap5-2025.6.ebuild35
-rw-r--r--dev-python/dbus-python/dbus-python-1.4.0.ebuild2
-rw-r--r--dev-python/gst-python/files/gstreamer_compat__ge_pygobject-3.52.3.patch68
-rw-r--r--dev-python/gst-python/gst-python-1.22.11-r1.ebuild (renamed from dev-python/gst-python/gst-python-1.24.11.ebuild)5
-rw-r--r--dev-python/gst-python/gst-python-1.22.12-r1.ebuild (renamed from dev-python/gst-python/gst-python-1.22.12.ebuild)4
-rw-r--r--dev-python/gst-python/gst-python-1.24.10-r1.ebuild (renamed from dev-python/gst-python/gst-python-1.24.10.ebuild)6
-rw-r--r--dev-python/gst-python/gst-python-1.24.11-r1.ebuild (renamed from dev-python/gst-python/gst-python-1.22.11.ebuild)9
-rw-r--r--dev-python/hypothesis/Manifest1
-rw-r--r--dev-python/hypothesis/hypothesis-6.135.4.ebuild132
-rw-r--r--dev-python/langdetect/Manifest2
-rw-r--r--dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch13
-rw-r--r--dev-python/langdetect/langdetect-1.0.9.ebuild6
-rw-r--r--dev-python/langdetect/metadata.xml10
-rw-r--r--dev-python/mkdocs-git-authors-plugin/Manifest1
-rw-r--r--dev-python/mkdocs-git-authors-plugin/mkdocs-git-authors-plugin-0.9.6.ebuild55
-rw-r--r--dev-python/mpmath/files/mpmath-1.4.0_alpha5-valueerror.patch50
-rw-r--r--dev-python/mpmath/mpmath-1.4.0_alpha5-r1.ebuild64
-rw-r--r--dev-python/pygobject/Manifest4
-rw-r--r--dev-python/pygobject/files/Skip-test-detecting-cycle-among-base-classes-typeerr.patch21
-rw-r--r--dev-python/pygobject/files/Skip-test-using-dbus-in-sandbox.patch21
-rw-r--r--dev-python/pygobject/pygobject-3.48.2-r1.ebuild5
-rw-r--r--dev-python/pygobject/pygobject-3.50.0.ebuild5
-rw-r--r--dev-python/pygobject/pygobject-3.50.1.ebuild (renamed from dev-python/pygobject/pygobject-3.46.0-r1.ebuild)18
-rw-r--r--dev-python/pygobject/pygobject-3.52.3.ebuild102
-rw-r--r--dev-python/python-dbusmock/python-dbusmock-0.35.0.ebuild2
-rw-r--r--dev-python/scipy/Manifest1
-rw-r--r--dev-python/scipy/scipy-1.16.0_rc2.ebuild169
-rw-r--r--dev-python/simsimd/Manifest1
-rw-r--r--dev-python/simsimd/simsimd-6.4.9.ebuild64
-rw-r--r--dev-python/tree-sitter/tree-sitter-0.24.0.ebuild2
-rw-r--r--dev-python/zipp/Manifest1
-rw-r--r--dev-python/zipp/zipp-3.23.0.ebuild53
37 files changed, 976 insertions, 52 deletions
diff --git a/dev-python/cmd2/Manifest b/dev-python/cmd2/Manifest
index 5765aca2f97d..8b1ac1ba787f 100644
--- a/dev-python/cmd2/Manifest
+++ b/dev-python/cmd2/Manifest
@@ -1,2 +1,3 @@
DIST cmd2-2.5.11.tar.gz 883350 BLAKE2B 37fb197ff085016152bc33f243852afe71c5cca303bacf02bdee9e1cfa2fa56ad2714321f046b7e501cb1602208f7b8fadaa4454ee349d2c6b5dcf04c31c3df9 SHA512 acf3d339d33822827be85b23491b99c33556bbd1d67715450c19c8877f7b9565253a402e57afd95bf02bb5edf8ec09f9fe7c141e01d81010286a5cfabca27909
DIST cmd2-2.6.0.tar.gz 887304 BLAKE2B 5cf780cdf6da1338b09624ea353a19498a69cc9c92d97e4f10e903e7b6b0d80ab27ccda6f416a9bfd9bcfb49a9bc7ae2e015d345bad13bec5c7c8dca7b6dfc9b SHA512 b43af9f8de9fd89c27029438ecb7165a3e60260520939637dd4b426c833a45bdebb4ccb177a128119c56678862b3055da71ebe257c042a5cf66090b8eb0f9080
+DIST cmd2-2.6.1.tar.gz 888293 BLAKE2B 693495ac2ac63b06b56195ffa8ce2887a78b89d8219a9a2c094004aeb52d260a85e567382a9434418b66df8ec2fcff82bdf0ae56899e6812043e19646ade08b3 SHA512 241ce183d5802f8c11bd68362a025a75a611978acc3592e5ef752faf84fab2af24b8dedea894c1c998253159ccf5c68def779e3daf87cd01bb55f11de524527e
diff --git a/dev-python/cmd2/cmd2-2.6.1.ebuild b/dev-python/cmd2/cmd2-2.6.1.ebuild
new file mode 100644
index 000000000000..47fc9c2b609e
--- /dev/null
+++ b/dev-python/cmd2/cmd2-2.6.1.ebuild
@@ -0,0 +1,58 @@
+# 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..14} )
+
+inherit distutils-r1 optfeature virtualx pypi
+
+DESCRIPTION="Extra features for standard library's cmd module"
+HOMEPAGE="
+ https://github.com/python-cmd2/cmd2/
+ https://pypi.org/project/cmd2/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ >=dev-python/pyperclip-1.8[${PYTHON_USEDEP}]
+ >=dev-python/wcwidth-0.2.10[${PYTHON_USEDEP}]
+"
+# pyperclip uses clipboard backends in the following preference order:
+# pygtk, xclip, xsel, klipper, qtpy, pyqt5, pyqt4.
+# klipper is known to be broken in Xvfb, and therefore causes test
+# failures. to avoid them, we must ensure that one of the backends
+# preferred to it is available (i.e. xclip or xsel).
+BDEPEND="
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+ test? (
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ dev-python/pytest-rerunfailures[${PYTHON_USEDEP}]
+ || (
+ x11-misc/xclip
+ x11-misc/xsel
+ )
+ )
+"
+
+distutils_enable_tests pytest
+
+src_test() {
+ # tests rely on very specific text wrapping...
+ local -x COLUMNS=80
+ virtx distutils-r1_src_test
+}
+
+python_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ # TODO: tests_isolated?
+ epytest -o addopts= -p pytest_mock -p rerunfailures --reruns=5 tests || die
+}
+
+pkg_postinst() {
+ optfeature "IPython shell integration" dev-python/ipython
+}
diff --git a/dev-python/crispy-bootstrap4/Manifest b/dev-python/crispy-bootstrap4/Manifest
index 7c844f512aec..24f400a21925 100644
--- a/dev-python/crispy-bootstrap4/Manifest
+++ b/dev-python/crispy-bootstrap4/Manifest
@@ -1 +1,2 @@
DIST crispy-bootstrap4-2024.10.gh.tar.gz 32278 BLAKE2B 8104bc4964fa11df05a6b6e244e4c58cc678225afdedf4a72749cc74986d8b763c6fe32aba9376d2a4077ac765c06df4582fa796caee885e82156c81369dcf16 SHA512 4cd7cde7d987baa5f6806076fe7f991e450544427deee9b0e64a45acd94b2987352369a6d277b90e6c9ff19e35225a3b5bc219336725b67e4aa0c8280cd6ac12
+DIST crispy-bootstrap4-2025.6.gh.tar.gz 32715 BLAKE2B a239fba7c9d93d6455526d2dc577d6f1ce9bbe3d2ca5076d8376ad60bbaa1f56e7de103cd791ff9d16ffb4b81a4ff59a6fba8071f1098b1f1e10b7b7856cbb8b SHA512 10edf4d44931a593072c3089ec6eb82e1d42e37b4fcddbfa7c8313c868f880c9eff3d9b270f4bb31148285b9a88f9952348fe4485c76932300e2b788dd00cb91
diff --git a/dev-python/crispy-bootstrap4/crispy-bootstrap4-2025.6.ebuild b/dev-python/crispy-bootstrap4/crispy-bootstrap4-2025.6.ebuild
new file mode 100644
index 000000000000..3e1e65582990
--- /dev/null
+++ b/dev-python/crispy-bootstrap4/crispy-bootstrap4-2025.6.ebuild
@@ -0,0 +1,35 @@
+# Copyright 2023-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+inherit distutils-r1
+
+DESCRIPTION="Bootstrap4 template pack for django-crispy-forms"
+HOMEPAGE="
+ https://github.com/django-crispy-forms/crispy-bootstrap4/
+ https://pypi.org/project/crispy-bootstrap4/
+"
+SRC_URI="
+ https://github.com/django-crispy-forms/crispy-bootstrap4/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+RDEPEND="
+ >=dev-python/django-4.2[${PYTHON_USEDEP}]
+ >=dev-python/django-crispy-forms-2.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/pytest-django[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/crispy-bootstrap5/Manifest b/dev-python/crispy-bootstrap5/Manifest
index ee99a15fb6f4..1f57e6233991 100644
--- a/dev-python/crispy-bootstrap5/Manifest
+++ b/dev-python/crispy-bootstrap5/Manifest
@@ -1 +1,2 @@
DIST crispy-bootstrap5-2025.4.gh.tar.gz 36000 BLAKE2B d17c409c0c7d8797c92499d6198d92b051d5251fcd36bc77e77d32da71e679c650128012fd3b2e86575c66994365d828ac39610f6100e6853cdf8f5be278ccee SHA512 971ead38d3430284aa7665bca558ebd4ff5d29f4a979ab7e04736bab4c4d3a4c4c7ff8d25265ec9f2dcfd264d99cae497674e0ef32f284896d99660c93e5ac78
+DIST crispy-bootstrap5-2025.6.gh.tar.gz 36077 BLAKE2B 92bc299d9e17a3bc3c8d53f3b2cf6a9884bb140ea607a611af32ec5dc9503d66c24ebbbd08ae963c04582965edb6db9db99c516bd3e550c9414ebf4b285d7ee2 SHA512 675351035f13b1c9dff1095e294467c9d8669750f71fcbd965641da35db1d5742cc0a17a64be63af6f7b6747057d98b6fa067f1ac84ffa18ae4db2f9fd7222c6
diff --git a/dev-python/crispy-bootstrap5/crispy-bootstrap5-2025.6.ebuild b/dev-python/crispy-bootstrap5/crispy-bootstrap5-2025.6.ebuild
new file mode 100644
index 000000000000..3aa2f4d70883
--- /dev/null
+++ b/dev-python/crispy-bootstrap5/crispy-bootstrap5-2025.6.ebuild
@@ -0,0 +1,35 @@
+# Copyright 2023-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+inherit distutils-r1
+
+DESCRIPTION="Bootstrap5 template pack for django-crispy-forms"
+HOMEPAGE="
+ https://github.com/django-crispy-forms/crispy-bootstrap5/
+ https://pypi.org/project/crispy-bootstrap5/
+"
+SRC_URI="
+ https://github.com/django-crispy-forms/crispy-bootstrap5/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+RDEPEND="
+ >=dev-python/django-4.2[${PYTHON_USEDEP}]
+ >=dev-python/django-crispy-forms-2.3[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/pytest-django[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/dbus-python/dbus-python-1.4.0.ebuild b/dev-python/dbus-python/dbus-python-1.4.0.ebuild
index 63fd2f1fdc2f..299305c86ce0 100644
--- a/dev-python/dbus-python/dbus-python-1.4.0.ebuild
+++ b/dev-python/dbus-python/dbus-python-1.4.0.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+PYTHON_COMPAT=( python3_{11..14} )
PYTHON_REQ_USE="threads(+)"
inherit autotools python-r1
diff --git a/dev-python/gst-python/files/gstreamer_compat__ge_pygobject-3.52.3.patch b/dev-python/gst-python/files/gstreamer_compat__ge_pygobject-3.52.3.patch
new file mode 100644
index 000000000000..8096dd65c67e
--- /dev/null
+++ b/dev-python/gst-python/files/gstreamer_compat__ge_pygobject-3.52.3.patch
@@ -0,0 +1,68 @@
+From 0496a778bb85e0b263ed2fddfcf3dac7961fe4f5 Mon Sep 17 00:00:00 2001
+From: Matteo Bruni <matteo.bruni@gmail.com>
+Date: Thu, 20 Mar 2025 10:09:21 +0100
+Subject: [PATCH] gst-python: fix compatibility with PyGObject>=3.52.0
+
+PyGObject 3.52.0 moved OverridesProxyModule _introspection_module to __slots__,
+causing Segmentation Faults when accessing the field.
+Since _introspection_module is used to get Gst.Element but is never actually
+used afterward, we fix the issue by removing this part.
+
+Fixes #4314
+
+Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8685>
+---
+ .../gst-python/plugin/gstpythonplugin.c | 23 +------------------
+ 1 file changed, 1 insertion(+), 22 deletions(-)
+
+diff --git a/subprojects/gst-python/plugin/gstpythonplugin.c b/subprojects/gst-python/plugin/gstpythonplugin.c
+index ba2986f265d5..47442bb47e03 100644
+--- a/plugin/gstpythonplugin.c
++++ b/plugin/gstpythonplugin.c
+@@ -53,8 +53,6 @@ gstpy_module_symbol (gpointer handle, const char *name, gpointer * symbol)
+ }
+ #endif
+
+-void *_PyGstElement_Type;
+-
+ GST_DEBUG_CATEGORY_STATIC (pyplugindebug);
+ #define GST_CAT_DEFAULT pyplugindebug
+
+@@ -237,7 +235,7 @@ static gboolean
+ plugin_init (GstPlugin * plugin)
+ {
+ PyGILState_STATE state = 0;
+- PyObject *gi, *require_version, *args, *gst, *dict, *pyplugin;
++ PyObject *gi, *require_version, *args, *gst, *pyplugin;
+ gboolean we_initialized = FALSE;
+ gpointer has_python = NULL;
+ const gchar *override_path;
+@@ -333,25 +331,6 @@ plugin_init (GstPlugin * plugin)
+ }
+
+ if (we_initialized) {
+- PyObject *tmp;
+-
+- dict = PyModule_GetDict (gst);
+- if (!dict) {
+- g_critical ("gi.repository.Gst is no dict");
+- return FALSE;
+- }
+-
+- tmp =
+- PyObject_GetAttr (PyMapping_GetItemString (dict,
+- "_introspection_module"), PyUnicode_FromString ("__dict__"));
+-
+- _PyGstElement_Type = PyMapping_GetItemString (tmp, "Element");
+-
+- if (!_PyGstElement_Type) {
+- g_critical ("Could not get Gst.Element");
+- return FALSE;
+- }
+-
+ pyplugin = pygobject_new (G_OBJECT (plugin));
+ if (!pyplugin || PyModule_AddObject (gst, "__plugin__", pyplugin) != 0) {
+ g_critical ("Couldn't set __plugin__ attribute");
+--
+GitLab
+
diff --git a/dev-python/gst-python/gst-python-1.24.11.ebuild b/dev-python/gst-python/gst-python-1.22.11-r1.ebuild
index 7983111d4b45..98d14032b611 100644
--- a/dev-python/gst-python/gst-python-1.24.11.ebuild
+++ b/dev-python/gst-python/gst-python-1.22.11-r1.ebuild
@@ -20,6 +20,7 @@ RDEPEND="${PYTHON_DEPS}
>=media-libs/gstreamer-${PV}:1.0[introspection]
>=media-libs/gst-plugins-base-${PV}:1.0[introspection]
>=dev-python/pygobject-3.8:3[${PYTHON_USEDEP}]
+ <dev-python/pygobject-3.52:3
"
DEPEND="${RDEPEND}"
BDEPEND="
@@ -28,8 +29,8 @@ BDEPEND="
src_prepare() {
default
-
- # Avoid building & testing plugin - it must NOT be multi-python as gst-inspect will map in all libpython.so versions and crash or behave mysteriously.
+ # Avoid building & testing plugin - it must NOT be multi-python as gst-inspect will map in all libpython.so versions
+ # and crash or behave mysteriously.
# Python plugin support is of limited use (GIL gets in the way). If it's ever requested or needed, it should be a
# separate python-single-r1 media-plugins/gst-plugins-python package that only builds the plugin directory.
sed -e '/subdir.*plugin/d' -i meson.build || die
diff --git a/dev-python/gst-python/gst-python-1.22.12.ebuild b/dev-python/gst-python/gst-python-1.22.12-r1.ebuild
index 7983111d4b45..b34447d8c3b8 100644
--- a/dev-python/gst-python/gst-python-1.22.12.ebuild
+++ b/dev-python/gst-python/gst-python-1.22.12-r1.ebuild
@@ -20,6 +20,7 @@ RDEPEND="${PYTHON_DEPS}
>=media-libs/gstreamer-${PV}:1.0[introspection]
>=media-libs/gst-plugins-base-${PV}:1.0[introspection]
>=dev-python/pygobject-3.8:3[${PYTHON_USEDEP}]
+ <dev-python/pygobject-3.52:3
"
DEPEND="${RDEPEND}"
BDEPEND="
@@ -29,7 +30,8 @@ BDEPEND="
src_prepare() {
default
- # Avoid building & testing plugin - it must NOT be multi-python as gst-inspect will map in all libpython.so versions and crash or behave mysteriously.
+ # Avoid building & testing plugin - it must NOT be multi-python as gst-inspect will map in all libpython.so versions
+ # and crash or behave mysteriously.
# Python plugin support is of limited use (GIL gets in the way). If it's ever requested or needed, it should be a
# separate python-single-r1 media-plugins/gst-plugins-python package that only builds the plugin directory.
sed -e '/subdir.*plugin/d' -i meson.build || die
diff --git a/dev-python/gst-python/gst-python-1.24.10.ebuild b/dev-python/gst-python/gst-python-1.24.10-r1.ebuild
index 9066a07cf2e4..7e12847d4982 100644
--- a/dev-python/gst-python/gst-python-1.24.10.ebuild
+++ b/dev-python/gst-python/gst-python-1.24.10-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -20,6 +20,7 @@ RDEPEND="${PYTHON_DEPS}
>=media-libs/gstreamer-${PV}:1.0[introspection]
>=media-libs/gst-plugins-base-${PV}:1.0[introspection]
>=dev-python/pygobject-3.8:3[${PYTHON_USEDEP}]
+ <dev-python/pygobject-3.52:3
"
DEPEND="${RDEPEND}"
BDEPEND="
@@ -29,7 +30,8 @@ BDEPEND="
src_prepare() {
default
- # Avoid building & testing plugin - it must NOT be multi-python as gst-inspect will map in all libpython.so versions and crash or behave mysteriously.
+ # Avoid building & testing plugin - it must NOT be multi-python as gst-inspect will map in all libpython.so versions
+ # and crash or behave mysteriously.
# Python plugin support is of limited use (GIL gets in the way). If it's ever requested or needed, it should be a
# separate python-single-r1 media-plugins/gst-plugins-python package that only builds the plugin directory.
sed -e '/subdir.*plugin/d' -i meson.build || die
diff --git a/dev-python/gst-python/gst-python-1.22.11.ebuild b/dev-python/gst-python/gst-python-1.24.11-r1.ebuild
index 104543c88c4b..c28c581f8c9e 100644
--- a/dev-python/gst-python/gst-python-1.22.11.ebuild
+++ b/dev-python/gst-python/gst-python-1.24.11-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -26,10 +26,15 @@ BDEPEND="
virtual/pkgconfig
"
+PATCHES=(
+ "${FILESDIR}/gstreamer_compat__ge_pygobject-3.52.3.patch"
+)
+
src_prepare() {
default
- # Avoid building & testing plugin - it must NOT be multi-python as gst-inspect will map in all libpython.so versions and crash or behave mysteriously.
+ # Avoid building & testing plugin - it must NOT be multi-python as gst-inspect will map in all libpython.so versions
+ # and crash or behave mysteriously.
# Python plugin support is of limited use (GIL gets in the way). If it's ever requested or needed, it should be a
# separate python-single-r1 media-plugins/gst-plugins-python package that only builds the plugin directory.
sed -e '/subdir.*plugin/d' -i meson.build || die
diff --git a/dev-python/hypothesis/Manifest b/dev-python/hypothesis/Manifest
index 6ef0cfb062bb..0f2a4b5f9b2c 100644
--- a/dev-python/hypothesis/Manifest
+++ b/dev-python/hypothesis/Manifest
@@ -2,3 +2,4 @@ DIST hypothesis-6.131.24.gh.tar.gz 9554685 BLAKE2B 9f1216facfffb33ac084b036166c5
DIST hypothesis-6.131.32.gh.tar.gz 9562669 BLAKE2B 28e2f15db216bafc545a262e47c43aa7594c54d3066b08910de1695945de07508b5bef24fea9139736a7e429afa6232c75e3a8e0bb2eb349fb23eb7d318bd03d SHA512 f51cf27fa60756d28416699292b6a6dc4a5cd89bccc7acbd3de65fd83222907e57d7b601544b9965f1646979d6aa9220cd5ed2f44760507af362bb3806630706
DIST hypothesis-6.132.0.gh.tar.gz 9563870 BLAKE2B de088f7d632a8ada158f5c11b6eb8bce009b544b0cde1d4f1398b059956d17fc8fbad3abbc9033d4c9544ccbf13782c7e0ed63e366665f362c3b651490bca5f1 SHA512 b43e661610e2491abad4f20cbf455b45be995ee927106ef17a0ecfdd2090a64b0f2588e3a3466fd22304c20d0371ec0ed15505a8f57d32a3b4a44c2ef24fa203
DIST hypothesis-6.135.1.gh.tar.gz 9569007 BLAKE2B ceebfcbc7ae66c73251a5196f304a1a4e51cd3db27e7815db248ee014bbae7ca921c95a6962174f69c755c715a51b5fc041dbd11a2e0b6f7e2a97c669ae033e0 SHA512 be50f86dee60b5a6c8e8680652e6f76a30d4402e62346e7536a83dec2598cc320e56496e93363e8207f9086061c9e19ab7d4ea684405eb1ebeb3ef5f9dd29ecd
+DIST hypothesis-6.135.4.gh.tar.gz 9577155 BLAKE2B 8f282d9b24d33dd4ab5da9dd22253d107dd0784bac4ee705aad362c16e2179b1cb58409e080e2f12a8bd48b7083aa7127eb648b1304b3e0a346e7a213f287b7b SHA512 139b411ec80d6b59599939740c0ab8d03f31b937502facc77edde14cd276f0520c0c7172ec04fe4f7cdbd8e884e6ecd9ecdcff716fa4d6ea216229aed7b94840
diff --git a/dev-python/hypothesis/hypothesis-6.135.4.ebuild b/dev-python/hypothesis/hypothesis-6.135.4.ebuild
new file mode 100644
index 000000000000..c0455c265dbc
--- /dev/null
+++ b/dev-python/hypothesis/hypothesis-6.135.4.ebuild
@@ -0,0 +1,132 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+CLI_COMPAT=( python3_{11..13} )
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+PYTHON_REQ_USE="threads(+),sqlite"
+
+inherit distutils-r1 optfeature
+
+TAG=hypothesis-python-${PV}
+MY_P=hypothesis-${TAG}
+DESCRIPTION="A library for property based testing"
+HOMEPAGE="
+ https://github.com/HypothesisWorks/hypothesis/
+ https://pypi.org/project/hypothesis/
+"
+SRC_URI="
+ https://github.com/HypothesisWorks/hypothesis/archive/${TAG}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+S="${WORKDIR}/${MY_P}/hypothesis-python"
+
+LICENSE="MPL-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="cli"
+
+RDEPEND="
+ >=dev-python/attrs-22.2.0[${PYTHON_USEDEP}]
+ >=dev-python/sortedcontainers-2.1.0[${PYTHON_USEDEP}]
+ cli? (
+ $(python_gen_cond_dep '
+ dev-python/black[${PYTHON_USEDEP}]
+ dev-python/click[${PYTHON_USEDEP}]
+ ' "${CLI_COMPAT[@]}")
+ )
+"
+BDEPEND="
+ test? (
+ dev-python/pexpect[${PYTHON_USEDEP}]
+ >=dev-python/pytest-8[${PYTHON_USEDEP}]
+ dev-python/pytest-rerunfailures[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+python_test() {
+ # subtests are broken by warnings from random plugins
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ local -x PYTEST_PLUGINS=xdist.plugin,_hypothesis_pytestplugin
+ local -x HYPOTHESIS_NO_PLUGINS=1
+
+ # NB: paths need to be relative to pytest.ini,
+ # i.e. start with hypothesis-python/
+ local EPYTEST_DESELECT=(
+ # broken with >=pytest-8.4.0
+ # https://github.com/HypothesisWorks/hypothesis/issues/4432
+ hypothesis-python/tests/pytest/test_capture.py::test_healthcheck_traceback_is_hidden
+ hypothesis-python/tests/pytest/test_fixtures.py::test_given_fails_if_already_decorated_with_fixture
+ )
+
+ case ${EPYTHON} in
+ python3.13t)
+ EPYTEST_DESELECT+=(
+ # TODO: missing warning
+ 'hypothesis-python/tests/cover/test_random_module.py::test_passing_referenced_instance_within_function_scope_warns'
+ )
+ ;;
+ python3.14*)
+ EPYTEST_DESELECT+=(
+ 'hypothesis-python/tests/cover/test_compat.py::test_resolve_fwd_refs[Foo-Union]'
+ 'hypothesis-python/tests/cover/test_lookup.py::test_builds_suggests_from_type[Union]'
+ hypothesis-python/tests/cover/test_attrs_inference.py::test_attrs_inference_builds
+ hypothesis-python/tests/cover/test_lookup.py::test_bytestring_not_treated_as_generic_sequence
+ hypothesis-python/tests/cover/test_lookup.py::test_issue_4194_regression
+ hypothesis-python/tests/cover/test_lookup.py::test_resolves_forwardrefs_to_builtin_types
+ hypothesis-python/tests/cover/test_lookup.py::test_specialised_collection_types
+ hypothesis-python/tests/cover/test_lookup_py37.py::test_resolving_standard_collection_as_generic
+ hypothesis-python/tests/cover/test_lookup_py37.py::test_resolving_standard_container_as_generic
+ hypothesis-python/tests/cover/test_lookup_py37.py::test_resolving_standard_contextmanager_as_generic
+ hypothesis-python/tests/cover/test_lookup_py37.py::test_resolving_standard_iterable_as_generic
+ hypothesis-python/tests/cover/test_lookup_py37.py::test_resolving_standard_reversible_as_generic
+ hypothesis-python/tests/cover/test_lookup_py37.py::test_resolving_standard_sequence_as_generic
+ hypothesis-python/tests/cover/test_random_module.py::test_evil_prng_registration_nonsense
+ hypothesis-python/tests/cover/test_random_module.py::test_passing_referenced_instance_within_function_scope_warns
+ hypothesis-python/tests/cover/test_random_module.py::test_register_random_within_nested_function_scope
+ hypothesis-python/tests/cover/test_random_module.py::test_registering_a_Random_is_idempotent
+ hypothesis-python/tests/cover/test_type_lookup_forward_ref.py::test_bound_missing_dot_access_forward_ref
+ hypothesis-python/tests/cover/test_type_lookup_forward_ref.py::test_bound_missing_forward_ref
+ hypothesis-python/tests/cover/test_type_lookup_forward_ref.py::test_bound_type_checking_only_forward_ref_wrong_type
+ hypothesis-python/tests/cover/test_type_lookup_forward_ref.py::test_bound_type_cheking_only_forward_ref
+ )
+ ;;
+ esac
+
+ epytest -o filterwarnings= -p rerunfailures --reruns=5 \
+ tests/cover tests/pytest tests/quality
+}
+
+src_install() {
+ local HAD_CLI=
+
+ distutils-r1_src_install
+
+ if [[ ! ${HAD_CLI} ]]; then
+ rm -r "${ED}/usr/bin" || die
+ fi
+}
+
+python_install() {
+ distutils-r1_python_install
+ if use cli && has "${EPYTHON}" "${CLI_COMPAT[@]/_/.}"; then
+ HAD_CLI=1
+ else
+ rm -r "${D}$(python_get_scriptdir)" || die
+ fi
+}
+
+pkg_postinst() {
+ optfeature "datetime support" dev-python/pytz
+ optfeature "dateutil support" dev-python/python-dateutil
+ optfeature "numpy support" dev-python/numpy
+ optfeature "django support" dev-python/django dev-python/pytz
+ optfeature "pandas support" dev-python/pandas
+ optfeature "pytest support" dev-python/pytest
+}
diff --git a/dev-python/langdetect/Manifest b/dev-python/langdetect/Manifest
index a11d7c268c91..d12ab8aeaca8 100644
--- a/dev-python/langdetect/Manifest
+++ b/dev-python/langdetect/Manifest
@@ -1 +1,3 @@
DIST langdetect-1.0.9.tar.gz 981474 BLAKE2B ea8a9c3f16a2987c080742473bff4f2c1503f53fb3c2b40b0b1d6212bb6133ea22dce7864ffcfb8968c3a46b157d45cb3e2cf6f84bdbed0266cc716a853b032c SHA512 7558d674c47b080c79e43a00a25d2c7f77188cf60bea2cecb3bebb803d75e1aa42b43c74bd26ea1b541f4cb927421908882cbec01a91f0913984217e71ccc8db
+EBUILD langdetect-1.0.9.ebuild 494 BLAKE2B 9cd8a2a93a8d45bf51fe2324402b175d641762ea591fcb99459427f977a95eccffa6ca4777ca4df39814eea6eac62711567faa654456d32f79023a4685804504 SHA512 d973b85ba1a44389a4275f02a779a93a005f7c2e096467b94b072862e4984d5b42cf33f9821ac68aa5b85b12c98983a90b96049989d8c84497969174b6bb838e
+MISC metadata.xml 457 BLAKE2B 630128a3e982b6d60cc7b9f74c79fcb5ee47a71a02c73a50af9da8cedb6fad8e20a7f74b881e5b25c6483b92c9edbd56552cd38b2d9cbfa8b3eb4530facea969 SHA512 674f4f5cd809c6c77bc14e0f5687fa972bef14bdfa0b3343c5d66b7163eef1906eb87d060c8288732f825de71dce291ad0b841a5f2f0dd230f957b5687e45d45
diff --git a/dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch b/dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch
deleted file mode 100644
index 637368d2f237..000000000000
--- a/dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Fix "Package 'langdetect.profiles' is absent from the `packages` configuration."
-
---- a/setup.py
-+++ b/setup.py
-@@ -18,7 +18,7 @@ setup(
- author_email='michal.danilak@gmail.com',
- url='https://github.com/Mimino666/langdetect',
- keywords='language detection library',
-- packages=['langdetect', 'langdetect.utils', 'langdetect.tests'],
-+ packages=['langdetect', 'langdetect.utils', 'langdetect.tests', 'langdetect.profiles'],
- include_package_data=True,
- install_requires=['six'],
- license='MIT',
diff --git a/dev-python/langdetect/langdetect-1.0.9.ebuild b/dev-python/langdetect/langdetect-1.0.9.ebuild
index 99577c43fc3e..56733bbffc48 100644
--- a/dev-python/langdetect/langdetect-1.0.9.ebuild
+++ b/dev-python/langdetect/langdetect-1.0.9.ebuild
@@ -1,9 +1,9 @@
-# Copyright 2022-2024 Gentoo Authors
+# Copyright 2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
DISTUTILS_USE_PEP517=setuptools
inherit distutils-r1 pypi
@@ -19,6 +19,4 @@ KEYWORDS="~amd64"
RDEPEND="dev-python/six[${PYTHON_USEDEP}]"
-PATCHES=( "${FILESDIR}/${P}-explicit-config.patch" )
-
distutils_enable_tests unittest
diff --git a/dev-python/langdetect/metadata.xml b/dev-python/langdetect/metadata.xml
index c0f74ac187e2..020e07f2a3dd 100644
--- a/dev-python/langdetect/metadata.xml
+++ b/dev-python/langdetect/metadata.xml
@@ -2,9 +2,11 @@
<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <email>pastalian46@gmail.com</email>
- <name>Takuya Wakazono</name>
+ <email>marcin.deranek@slonko.net</email>
+ <name>Marcin Deranek</name>
</maintainer>
-
- <origin>gentoo-guru-overlay</origin>
+ <upstream>
+ <bugs-to>https://github.com/Mimino666/langdetect/issues</bugs-to>
+ </upstream>
+ <origin>slonko-overlay</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-python/mkdocs-git-authors-plugin/Manifest b/dev-python/mkdocs-git-authors-plugin/Manifest
index fdc3e939a2a1..1d80ccab8418 100644
--- a/dev-python/mkdocs-git-authors-plugin/Manifest
+++ b/dev-python/mkdocs-git-authors-plugin/Manifest
@@ -1 +1,2 @@
DIST mkdocs-git-authors-plugin-0.9.5.gh.tar.gz 93152 BLAKE2B 746fb1010b6631e2387a0207159aa88a11aa92d3866e8f2487b5dacddb1df0813b16e93287c3c42339e0f38c7d01986157e9e268450af325f2de2243de615db3 SHA512 f1e147dd15515f92641ab1e2eb858edb93c720af21a340eed6414ea3014ea1bac264478f0985fa6cc1014cadc3ac1e9c41f6744b2a4fac1fb83ceb47f7eacadf
+DIST mkdocs-git-authors-plugin-0.9.6.gh.tar.gz 93812 BLAKE2B c1054fee23337474f7d9f7b64d69e50b4589e9eddb6df7c47701d32483c30fd3f327ae4974b338928b72605399864c9f5142096319a09fc79dcc669fada0c56d SHA512 26ecb680508928d839a433076e734751e8eaf4bbd5d04829a1c731db27932ead4c47a33ca81121be5040dc19bd5541fa093fd783d0455b55b2f7c4b73b0c1fa3
diff --git a/dev-python/mkdocs-git-authors-plugin/mkdocs-git-authors-plugin-0.9.6.ebuild b/dev-python/mkdocs-git-authors-plugin/mkdocs-git-authors-plugin-0.9.6.ebuild
new file mode 100644
index 000000000000..16a593b2d0d5
--- /dev/null
+++ b/dev-python/mkdocs-git-authors-plugin/mkdocs-git-authors-plugin-0.9.6.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517="setuptools"
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+# Requires self to be installed to build docs
+# TODO: Do this a bit better
+DOCS_BUILDER="mkdocs"
+DOCS_DEPEND="
+ dev-python/regex
+ dev-python/mkdocs-material
+ dev-python/mkdocs-git-authors-plugin
+"
+DOCS_INITIALIZE_GIT=1
+
+inherit distutils-r1 docs
+
+DESCRIPTION="Mkdocs plugin to display git authors of a page"
+HOMEPAGE="
+ https://github.com/timvink/mkdocs-git-authors-plugin/
+ https://pypi.org/project/mkdocs-git-authors-plugin/
+"
+SRC_URI="https://github.com/timvink/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+
+# Tests are broken outside of upstream git repo
+RESTRICT="test"
+
+RDEPEND="
+ dev-python/gitpython[${PYTHON_USEDEP}]
+ >=dev-python/mkdocs-1.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/click[${PYTHON_USEDEP}]
+ dev-python/mkdocs-material[${PYTHON_USEDEP}]
+ dev-python/mkdocs-git-revision-date-localized-plugin[${PYTHON_USEDEP}]
+ dev-vcs/git
+ )
+"
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ # mkdocs-git-authors tests need git repo
+ use test && initialize_git_repo
+
+ distutils-r1_python_prepare_all
+}
diff --git a/dev-python/mpmath/files/mpmath-1.4.0_alpha5-valueerror.patch b/dev-python/mpmath/files/mpmath-1.4.0_alpha5-valueerror.patch
new file mode 100644
index 000000000000..fc3ebefb7680
--- /dev/null
+++ b/dev-python/mpmath/files/mpmath-1.4.0_alpha5-valueerror.patch
@@ -0,0 +1,50 @@
+From 9ad6a13925922711ca004686194daf8f110feaea Mon Sep 17 00:00:00 2001
+From: Sergey B Kirpichev <skirpichev@gmail.com>
+Date: Mon, 9 Jun 2025 05:07:00 +0300
+Subject: [PATCH] Fix from_man_exp to correctly reject non-integral mantissa
+
+This partially reverts 25506567
+---
+ mpmath/ctx_mp_python.py | 2 +-
+ mpmath/libmp/libmpf.py | 7 +++++--
+ mpmath/tests/test_basic_ops.py | 5 +++++
+ 3 files changed, 11 insertions(+), 3 deletions(-)
+
+diff --git a/mpmath/ctx_mp_python.py b/mpmath/ctx_mp_python.py
+index d9e9f64f..72b81278 100644
+--- a/mpmath/ctx_mp_python.py
++++ b/mpmath/ctx_mp_python.py
+@@ -64,7 +64,7 @@ def __new__(cls, val=fzero, **kwargs):
+ if len(val) == 4:
+ val = val[0], MPZ(val[1]), *val[2:]
+ elif len(val) == 2:
+- v._mpf_ = from_man_exp(MPZ(val[0]), val[1], prec, rounding)
++ v._mpf_ = from_man_exp(val[0], val[1], prec, rounding)
+ return v
+ else:
+ raise ValueError
+diff --git a/mpmath/libmp/libmpf.py b/mpmath/libmp/libmpf.py
+index af61879e..266ee394 100644
+--- a/mpmath/libmp/libmpf.py
++++ b/mpmath/libmp/libmpf.py
+@@ -8,7 +8,7 @@
+ import sys
+ import warnings
+
+-from .backend import BACKEND, MPZ, MPZ_FIVE, MPZ_ONE, MPZ_ZERO, gmpy
++from .backend import BACKEND, MPZ, MPZ_FIVE, MPZ_ONE, MPZ_ZERO, gmpy, int_types
+ from .libintmath import (bctable, bin_to_radix, isqrt, numeral, sqrtrem,
+ stddigits, trailtable)
+
+@@ -204,7 +204,10 @@ def normalize(sign, man, exp, bc, prec, rnd):
+ def from_man_exp(man, exp, prec=0, rnd=round_fast):
+ """Create raw mpf from (man, exp) pair. The mantissa may be signed.
+ If no precision is specified, the mantissa is stored exactly."""
+- man = MPZ(man)
++ if isinstance(man, int_types):
++ man = MPZ(man)
++ else:
++ raise TypeError("man expected to be an integer")
+ sign = 0
+ if man < 0:
+ sign = 1
diff --git a/dev-python/mpmath/mpmath-1.4.0_alpha5-r1.ebuild b/dev-python/mpmath/mpmath-1.4.0_alpha5-r1.ebuild
new file mode 100644
index 000000000000..55c1384489af
--- /dev/null
+++ b/dev-python/mpmath/mpmath-1.4.0_alpha5-r1.ebuild
@@ -0,0 +1,64 @@
+# 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 optfeature pypi
+
+DESCRIPTION="Python library for arbitrary-precision floating-point arithmetic"
+HOMEPAGE="
+ https://mpmath.org/
+ https://github.com/mpmath/mpmath/
+ https://pypi.org/project/mpmath/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+IUSE="test-full"
+
+BDEPEND="
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+ test? (
+ dev-python/hypothesis[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ dev-python/pexpect[${PYTHON_USEDEP}]
+ dev-python/pytest-rerunfailures[${PYTHON_USEDEP}]
+ dev-python/pytest-timeout[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/gmpy2[${PYTHON_USEDEP}]
+ ' 'python3*')
+ test-full? (
+ dev-python/matplotlib[${PYTHON_USEDEP}]
+ )
+ )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+PATCHES=(
+ # https://github.com/aleaxit/gmpy/pull/566
+ # https://github.com/mpmath/mpmath/pull/969/commits/9ad6a13925922711ca004686194daf8f110feaea
+ "${FILESDIR}/${P}-valueerror.patch"
+)
+
+python_test() {
+ local EPYTEST_DESELECT=()
+
+ # CLI crashes otherwise, sigh (not a regression)
+ # https://github.com/mpmath/mpmath/issues/907
+ > "${HOME}/.python_history" || die
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -p rerunfailures --reruns=5 -p timeout
+}
+
+pkg_postinst() {
+ optfeature "gmp support" dev-python/gmpy2
+ optfeature "matplotlib support" dev-python/matplotlib
+}
diff --git a/dev-python/pygobject/Manifest b/dev-python/pygobject/Manifest
index 6433a5e2908d..d865e5cf53a6 100644
--- a/dev-python/pygobject/Manifest
+++ b/dev-python/pygobject/Manifest
@@ -1,3 +1,5 @@
-DIST pygobject-3.46.0.tar.xz 561552 BLAKE2B 6b8c9b4bf6df819c09b7bd2ea6dcb0e7c24ed7f171487b774469bd2c4694df9d4473dbde05273afc7a370f2b1f352d60347aa221bdd674a4aa8a54123d5e54cd SHA512 48293c193ba5aece38d99f45d325d0329ac33e88442bf00848fe818a7c838977b8d2cf50a404c30e8852ccc0b4a44dfda07751d51acc21f740aa2ab6aa3ce661
DIST pygobject-3.48.2.tar.xz 556244 BLAKE2B 6ac7a42752d65668f228aa9823a4e256b030bc84683857e5470bc373eaaf383904d18399379b4a7d0989644e2b0825d63cc8b3f927b97608a209f888bf8cb276 SHA512 11619f73be5894fae82b261779f33390d1aec51b02bcf285c58f3c76ee46dfc1b3f435e4662176fde5ca899aee5afc453f8f0ba28e15e15330a52354cf737d45
DIST pygobject-3.50.0.tar.xz 929848 BLAKE2B 1f3d27f055132e82c7aff2f4aa664d1dec57096027a4ceaf9c7245d0e05627d4ba5a8cb7396d35cec4ccf86db9cfedcf9f18a200252fffd00340888e95909c09 SHA512 59edec92b29f3101e4f1afd83a37f4d490e8d833e0dbba9ae8c30891541767e3738bb748ed939b2baef1041eec88f192188d38a82712f1ebc089005b4d6f03a9
+DIST pygobject-3.52.3.tar.gz 1235825 BLAKE2B f9d95ff9e12b6d6fb5c36d1528ff4ef45e6799316ac21b0f79364dc438bf4e0e6670489f23e0ca4325fc21d16cc2d96fe6aff61f71b8bfe768df2c487717e6df SHA512 06085df458076120017ace7a029ac6c00757ae1882a2a50041aadd7f4c2a329a0fb4d18dde02a481c1f4d3acecbc9d8f473f4ae23fbbfc4f885f75bbc7847f24
+DIST pygobject-3.52.3_0a8b2c56331a31d7f7096faaa1c1c26467b51c15_pythoncapi-compat.gh.tar.gz 50124 BLAKE2B 67bb1e60d10d72b146ae2f8ca0113939916fa67a3c71c3658343ff3742315768471e50c0254a3f9488031297d6697dbb0e8541bfe72e8b0754ede09fb9d65da8 SHA512 3fff69f471e28b47bbb537d31d182180631090c00aaf45931aad128f4cb700cdfd519ce560610b7e57132ad7d172b8f2bc4cd16cf748f218dafdadd15fc48718
+DIST pygobject-3.50.1.tar.gz 1081846 BLAKE2B 7c6fd07e913f64d925838efc6fa0603fef2298779bee15c2c2b2325dd39942ac4856e71846077b6c89e2b05508d66ce606430433257bbb9d6388a4613436615f SHA512 5708756cbc8e2b697442953a7f3d391ace98f1b7811cb905b0d80185f020bf32a775d70c49d1620a9733e83a6862314f2a72fa1b77cb26a01e84b3bff72e068e
diff --git a/dev-python/pygobject/files/Skip-test-detecting-cycle-among-base-classes-typeerr.patch b/dev-python/pygobject/files/Skip-test-detecting-cycle-among-base-classes-typeerr.patch
new file mode 100644
index 000000000000..cbadef48300d
--- /dev/null
+++ b/dev-python/pygobject/files/Skip-test-detecting-cycle-among-base-classes-typeerr.patch
@@ -0,0 +1,21 @@
+From 26aa63716d32f90bd67250df4a1234237d18bbad Mon Sep 17 00:00:00 2001
+From: Lukas Schmelting <lschmelting@posteo.com>
+Date: Tue, 27 May 2025 23:47:39 +0200
+Subject: [PATCH 2/2] Skip test detecting cycle among base classes typeerror
+
+Signed-off-by: Lukas Schmelting <lschmelting@posteo.com>
+---
+ tests/test_gi.py | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/tests/test_gi.py b/tests/test_gi.py
+index 9ab4882..8aeb609 100644
+--- a/tests/test_gi.py
++++ b/tests/test_gi.py
+@@ -2860,2 +2860,3 @@ class TestMRO(unittest.TestCase):
+
++ @pytest.mark.skip(reason="TypeError: Cycle among base classes")
+ def test_interface_collision(self):
+--
+2.49.0
+
diff --git a/dev-python/pygobject/files/Skip-test-using-dbus-in-sandbox.patch b/dev-python/pygobject/files/Skip-test-using-dbus-in-sandbox.patch
new file mode 100644
index 000000000000..405b3f6a9acb
--- /dev/null
+++ b/dev-python/pygobject/files/Skip-test-using-dbus-in-sandbox.patch
@@ -0,0 +1,21 @@
+From 5f57664aca65b5bd433b0a016da92bb74ca378d1 Mon Sep 17 00:00:00 2001
+From: Lukas Schmelting <lschmelting@posteo.com>
+Date: Tue, 27 May 2025 23:46:51 +0200
+Subject: [PATCH 1/2] Skip test using dbus in sandbox
+
+Signed-off-by: Lukas Schmelting <lschmelting@posteo.com>
+---
+ tests/test_gdbus.py | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/tests/test_gdbus.py b/tests/test_gdbus.py
+index 8fe3952..d5e9d79 100644
+--- a/tests/test_gdbus.py
++++ b/tests/test_gdbus.py
+@@ -138,2 +138,3 @@ class TestGDBusClient(unittest.TestCase):
+
++ @pytest.mark.skip(reason="Use of dbus in sandbox")
+ def test_python_calls_sync(self):
+--
+2.49.0
+
diff --git a/dev-python/pygobject/pygobject-3.48.2-r1.ebuild b/dev-python/pygobject/pygobject-3.48.2-r1.ebuild
index a193649614df..dc0a2c6df878 100644
--- a/dev-python/pygobject/pygobject-3.48.2-r1.ebuild
+++ b/dev-python/pygobject/pygobject-3.48.2-r1.ebuild
@@ -10,10 +10,7 @@ PYTHON_COMPAT=( python3_{9,10,11,12,13} )
inherit gnome.org meson virtualx xdg distutils-r1
DESCRIPTION="Python bindings for GObject Introspection"
-HOMEPAGE="
- https://pygobject.gnome.org/
- https://gitlab.gnome.org/GNOME/pygobject/
-"
+HOMEPAGE="https://pygobject.gnome.org"
LICENSE="LGPL-2.1+"
SLOT="3"
diff --git a/dev-python/pygobject/pygobject-3.50.0.ebuild b/dev-python/pygobject/pygobject-3.50.0.ebuild
index f98d734d6016..530a1abb604f 100644
--- a/dev-python/pygobject/pygobject-3.50.0.ebuild
+++ b/dev-python/pygobject/pygobject-3.50.0.ebuild
@@ -11,10 +11,7 @@ PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
inherit gnome.org meson virtualx xdg distutils-r1
DESCRIPTION="Python bindings for GObject Introspection"
-HOMEPAGE="
- https://pygobject.gnome.org/
- https://gitlab.gnome.org/GNOME/pygobject/
-"
+HOMEPAGE="https://pygobject.gnome.org"
LICENSE="LGPL-2.1+"
SLOT="3"
diff --git a/dev-python/pygobject/pygobject-3.46.0-r1.ebuild b/dev-python/pygobject/pygobject-3.50.1.ebuild
index d66c8d445256..66e358a39b84 100644
--- a/dev-python/pygobject/pygobject-3.46.0-r1.ebuild
+++ b/dev-python/pygobject/pygobject-3.50.1.ebuild
@@ -5,20 +5,19 @@ EAPI=8
DISTUTILS_EXT=1
DISTUTILS_USE_PEP517=no
-PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+GNOME_TARBALL_SUFFIX="gz"
+# py3.14: https://gitlab.gnome.org/GNOME/pygobject/-/issues/694
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
inherit gnome.org meson virtualx xdg distutils-r1
DESCRIPTION="Python bindings for GObject Introspection"
-HOMEPAGE="
- https://pygobject.readthedocs.io/
- https://gitlab.gnome.org/GNOME/pygobject/
-"
+HOMEPAGE="https://pygobject.gnome.org"
LICENSE="LGPL-2.1+"
SLOT="3"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-IUSE="+cairo examples test"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="+cairo test"
RESTRICT="!test? ( test )"
RDEPEND="
@@ -73,8 +72,3 @@ python_install() {
meson_src_install
python_optimize
}
-
-python_install_all() {
- distutils-r1_python_install_all
- use examples && dodoc -r examples
-}
diff --git a/dev-python/pygobject/pygobject-3.52.3.ebuild b/dev-python/pygobject/pygobject-3.52.3.ebuild
new file mode 100644
index 000000000000..01386cbfc209
--- /dev/null
+++ b/dev-python/pygobject/pygobject-3.52.3.ebuild
@@ -0,0 +1,102 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=no
+GNOME_TARBALL_SUFFIX="gz"
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+
+inherit gnome.org meson virtualx xdg distutils-r1
+
+DESCRIPTION="Python bindings for GObject Introspection"
+HOMEPAGE="
+ https://pygobject.gnome.org/
+ https://gitlab.gnome.org/GNOME/pygobject/
+"
+COMMIT=0a8b2c56331a31d7f7096faaa1c1c26467b51c15
+SRC_URI+="
+ https://github.com/python/pythoncapi-compat/archive/${COMMIT}.tar.gz -> \
+ ${P}_${COMMIT}_pythoncapi-compat.gh.tar.gz
+"
+LICENSE="LGPL-2.1+"
+SLOT="3"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="+cairo test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-libs/glib-2.80:2
+ >=dev-libs/gobject-introspection-1.84:=
+ dev-libs/libffi:=
+ cairo? (
+ >=dev-python/pycairo-1.16.0[${PYTHON_USEDEP}]
+ x11-libs/cairo[glib]
+ )
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ >=app-accessibility/at-spi2-core-2.46.0[introspection]
+ dev-python/pytest[${PYTHON_USEDEP}]
+ x11-libs/gdk-pixbuf:2[introspection,jpeg]
+ x11-libs/gtk+:3[introspection]
+ x11-libs/pango[introspection]
+ )
+"
+BDEPEND="
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ "${FILESDIR}/Skip-test-using-dbus-in-sandbox.patch"
+ "${FILESDIR}/Skip-test-detecting-cycle-among-base-classes-typeerr.patch"
+)
+
+src_unpack() {
+ default
+ unpack "${P}_${COMMIT}_pythoncapi-compat.gh.tar.gz"
+}
+
+src_prepare() {
+ default
+ find "${S}/subprojects/pythoncapi-compat" -mindepth 1 ! -name meson.build -exec rm -vrf {} + || die
+ mv -v "${WORKDIR}/pythoncapi-compat-${COMMIT}"/* "${S}/subprojects/pythoncapi-compat" || die
+}
+
+python_configure() {
+ local emesonargs=(
+ $(meson_feature cairo pycairo)
+ $(meson_use test tests)
+ -Dpython="${EPYTHON}"
+ )
+ meson_src_configure
+}
+
+python_compile() {
+ meson_src_compile
+}
+
+src_test() {
+ virtx distutils-r1_src_test
+}
+
+python_test() {
+ local -x GIO_USE_VFS="local" # prevents odd issues with deleting ${T}/.gvfs
+ local -x GIO_USE_VOLUME_MONITOR="unix" # prevent udisks-related failures in chroots, bug #449484
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ local -x XDG_CACHE_HOME="${T}/${EPYTHON}"
+
+ if [[ ${EPYTHON} == python3.14* ]] ; then
+ # https://gitlab.gnome.org/GNOME/pygobject/-/issues/694
+ local -x PYTEST_ADDOPTS="-k 'not (ref_count or has_two_refs)'"
+ fi
+
+ meson_src_test --timeout-multiplier 3 || die "test for ${EPYTHON}"
+}
+
+python_install() {
+ meson_src_install
+ python_optimize
+}
diff --git a/dev-python/python-dbusmock/python-dbusmock-0.35.0.ebuild b/dev-python/python-dbusmock/python-dbusmock-0.35.0.ebuild
index 69a7470204d0..d712074a5224 100644
--- a/dev-python/python-dbusmock/python-dbusmock-0.35.0.ebuild
+++ b/dev-python/python-dbusmock/python-dbusmock-0.35.0.ebuild
@@ -4,7 +4,7 @@
EAPI=8
DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+PYTHON_COMPAT=( python3_{11..14} )
PYTHON_REQ_USE="xml(+)"
inherit distutils-r1 pypi
diff --git a/dev-python/scipy/Manifest b/dev-python/scipy/Manifest
index 74dcf01a4d78..8ea59ebdfc0f 100644
--- a/dev-python/scipy/Manifest
+++ b/dev-python/scipy/Manifest
@@ -1,5 +1,6 @@
DIST scipy-1.15.2.tar.gz 59417316 BLAKE2B 7ae748a58b6a7fb2674dc6627c3d6f4f28694283bf19ca9973fcf5796ccb0e2e35bb7cd8fbfbefa21cb832b771e563f478bc09ded61d989ea47625e7ac35e1bd SHA512 e772aa040622ef457478e08eb41471af33784cafc2022f091a30563f6abed067cdbae424a5ae86f9dab8c1adc67276794b67cb7cb7c7963ca55a38529df63834
DIST scipy-1.15.3.tar.gz 59419214 BLAKE2B 526e6182e4991e52fea69452b7894b203d31089ee1f8640ef1bff8f1fa57c31a7179a1ab82325689f3b0a7b907c34adb64b80e640780c99e166f6999adbb1524 SHA512 009de94a64c9361b261788ef3577d636a20ca23ff5c8f12f5e19a4ba4d6177ef7ade0cf1a5ee740bd1c6d740193d70b314d1abd83ab65fcb5d5cf2d2ba06bfb1
DIST scipy-1.16.0rc1.tar.gz 30582387 BLAKE2B cc356de35aa7a821c3e363997ab014765df800ab8229c34b04d42088221391199b0726ff3d6cc09b5698aa1970d451a4f79993bb684f2f62d3c38a2a28e34149 SHA512 31c9fe5da1de08ebd7773040c2ac6de5d1d62daf4e52d95b78eacba93e0fcfcc91e97b672796d3084d2b48dc6718ba7e8b08daa91407b88449df727db349bf3f
+DIST scipy-1.16.0rc2.tar.gz 30582415 BLAKE2B ae9e6884367a1c82fa499eadc84e58589787eb1b933a809644ec9de73f22319eed0ad60557471f2897e09b16ecb12ee240ae01192a3337dda0149997f928bf7a SHA512 d1f55424d76cc84cfaf8f97960cb85fe943345003eb85cdb3a0db65bc3cceffd046f3cc9208712423cea2aeafd48985b3098044c5c34a357b713b4b47300c153
DIST scipy-html-1.15.2.zip 68568078 BLAKE2B 270f1d89bbcb707616f7af0e1bd90909c1f33d647cf55e42dbf27128ecd90f619f0d579d8897eb04851b6327df1682236c5fd9c4c948b1fd99b083145681a202 SHA512 48e09d3678547775c6c86b82cdb4ef5e7eed7722c6ba8d53170384c3a9380b2bb29fc467b5ee66ae2ec1a621930c8bf20adfc8db3a75546a6ba8e9906df03426
DIST scipy-html-1.15.3.zip 68590525 BLAKE2B f6473e273843e3eb2aa791be1b885a11ac2b77accdf00ea2d7bc78dc59228dede66259ff4d2ac616ceeb3152a80a8036226622240d963a8bce51dc0143b6aea4 SHA512 df59c2a53dc9c8a64631a2c9906762de046b9beefd759e0810afdcbb00e4da8800e83902d49fa81d791bccb0ed190e00f0ea4948b855e97ad9b5d7a0984d4eec
diff --git a/dev-python/scipy/scipy-1.16.0_rc2.ebuild b/dev-python/scipy/scipy-1.16.0_rc2.ebuild
new file mode 100644
index 000000000000..b7923c17d30d
--- /dev/null
+++ b/dev-python/scipy/scipy-1.16.0_rc2.ebuild
@@ -0,0 +1,169 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+FORTRAN_NEEDED=fortran
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=meson-python
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+PYTHON_REQ_USE="threads(+)"
+
+inherit flag-o-matic fortran-2 distutils-r1
+
+DESCRIPTION="Scientific algorithms library for Python"
+HOMEPAGE="
+ https://scipy.org/
+ https://github.com/scipy/scipy/
+ https://pypi.org/project/scipy/
+"
+
+if [[ ${PV} == *9999* ]] ; then
+ inherit git-r3
+
+ # Need submodules, so git for now.
+ EGIT_REPO_URI="https://github.com/scipy/scipy"
+ EGIT_BRANCH="maintenance/$(ver_cut 1-2).x"
+ EGIT_SUBMODULES=( '*' )
+else
+ inherit pypi
+
+ # Upstream is often behind with doc updates
+ DOC_PV=1.15.3
+
+ SRC_URI+="
+ doc? (
+ https://docs.scipy.org/doc/${PN}-${DOC_PV}/${PN}-html-${DOC_PV}.zip
+ )"
+
+ if [[ ${PV} != *rc* ]] ; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ fi
+fi
+
+LICENSE="BSD LGPL-2"
+SLOT="0"
+IUSE="doc +fortran test-rust"
+
+# pythran is needed in both BDEPEND (for /usr/bin/pythran) and in DEPEND
+# to actually compile code generated by pythran (headers and such needed).
+#
+# umfpack is technically optional but it's preferred to have it available.
+DEPEND="
+ dev-libs/boost:=
+ >=dev-python/numpy-1.23.5:=[lapack,${PYTHON_USEDEP}]
+ ~media-libs/qhull-2020.2:=
+ sci-libs/arpack:=
+ sci-libs/umfpack
+ virtual/cblas
+ >=virtual/lapack-3.8
+"
+RDEPEND="
+ ${DEPEND}
+ dev-python/pillow[${PYTHON_USEDEP}]
+"
+DEPEND+="
+ fortran? (
+ >=dev-python/pythran-0.16.0[${PYTHON_USEDEP}]
+ )
+"
+BDEPEND="
+ dev-lang/swig
+ >=dev-python/cython-3.0.8[${PYTHON_USEDEP}]
+ >=dev-python/meson-python-0.15.0[${PYTHON_USEDEP}]
+ >=dev-python/pybind11-2.13.2[${PYTHON_USEDEP}]
+ >=dev-build/meson-1.1.0
+ !kernel_Darwin? ( dev-util/patchelf )
+ virtual/pkgconfig
+ doc? ( app-arch/unzip )
+ fortran? (
+ >=dev-python/pythran-0.16.0[${PYTHON_USEDEP}]
+ )
+ test? (
+ >=dev-python/hypothesis-6.30[${PYTHON_USEDEP}]
+ )
+ test-rust? (
+ dev-python/pooch[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+src_unpack() {
+ default
+
+ if use doc; then
+ unzip -qo "${DISTDIR}"/${PN}-html-${DOC_PV}.zip -d html || die
+ fi
+}
+
+python_configure_all() {
+ DISTUTILS_ARGS=(
+ -Dblas=blas
+ -Dlapack=lapack
+ -Duse-pythran=$(usex fortran true false)
+ # note: recheck on version bumps, upstream is planning
+ # to allow more
+ '-Duse-system-libraries=boost.math,qhull'
+ )
+
+ # https://bugs.gentoo.org/932721
+ has_version '>=dev-python/numpy-2.0.0' && filter-lto
+}
+
+python_test() {
+ cd "${BUILD_DIR}/install$(python_get_sitedir)" || die
+
+ local EPYTEST_DESELECT=(
+ # Network
+ scipy/datasets/tests/test_data.py::TestDatasets::test_existence_all
+ scipy/datasets/tests/test_data.py::TestDatasets::test_ascent
+ scipy/datasets/tests/test_data.py::TestDatasets::test_face
+ scipy/datasets/tests/test_data.py::TestDatasets::test_electrocardiogram
+
+ # Crashes with assertion, not a regression
+ # https://github.com/scipy/scipy/issues/19321
+ scipy/signal/tests/test_signaltools.py::test_lfilter_bad_object
+
+ # Awfully slow tests
+ scipy/interpolate/tests/test_bsplines.py::TestBatch::test_batch
+ scipy/linalg/tests/test_basic.py::TestLstsq::test_random_complex_exact
+ scipy/sparse/linalg/_eigen/tests/test_svds.py::test_small_sigma_sparse
+
+ # TODO: minor precision errors
+ 'scipy/linalg/tests/test_batch.py::TestBatch::test_solve[float32-bdim2]'
+ 'scipy/linalg/tests/test_batch.py::TestBatch::test_lu_solve[float32-bdim2]'
+
+ # Crashes, probably too big
+ 'scipy/interpolate/tests/test_fitpack2.py::TestRectBivariateSpline::test_spline_large_2d_maxit'
+ )
+ local EPYTEST_IGNORE=()
+
+ if ! has_version -b "dev-python/pooch[${PYTHON_USEDEP}]" ; then
+ EPYTEST_IGNORE+=(
+ scipy/datasets/tests/test_data.py
+ )
+ fi
+
+ case ${EPYTHON} in
+ pypy3*)
+ EPYTEST_DESELECT+=(
+ # TODO
+ scipy/special/tests/test_data.py::test_boost
+ scipy/_lib/tests/test_ccallback.py::test_callbacks
+ )
+ ;;
+ esac
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ # avoid other stuff being multithreaded when using xdist
+ local -x PYTHON_CPU_COUNT=1
+ epytest scipy
+}
+
+python_install_all() {
+ use doc && local HTML_DOCS=( "${WORKDIR}"/html/. )
+
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/simsimd/Manifest b/dev-python/simsimd/Manifest
index e2e30cdf5ba8..4c2072e6760a 100644
--- a/dev-python/simsimd/Manifest
+++ b/dev-python/simsimd/Manifest
@@ -1 +1,2 @@
DIST SimSIMD-6.4.7.gh.tar.gz 221008 BLAKE2B 074c6d466a3b091fdba61d5896dc88adda516e90218940106a139249c70a27f51538a44fafe68159aba81e0c2b4662741d596e3258ad6a0147b69eef4e160b90 SHA512 73caaf4aa4b9de338d3f7205c60c6c2476ebf692d58ba9ae29797ab70c556fbf4e2acc111e5c48abc948addec3911e526bc77fe89a0624f7c02487d61da20f6b
+DIST SimSIMD-6.4.9.gh.tar.gz 221231 BLAKE2B 088ed41affc07c51818999688fe12c37f97de5bfe2401b25fe92f76c013fd88e1648d9a4e04db6c1e05a79cd21ea0b2d3ac36ac1626f1bd9236cb997448bbd4f SHA512 c08656215c4c909de2446f94e42ddb3b1d965656f58c6f4c17245c12d1b7134ab0d61318918c61ed9c3270d8108004ae0ac0502e3da6f6ba66ed0ab37aeaaa8a
diff --git a/dev-python/simsimd/simsimd-6.4.9.ebuild b/dev-python/simsimd/simsimd-6.4.9.ebuild
new file mode 100644
index 000000000000..da7be6bc1b94
--- /dev/null
+++ b/dev-python/simsimd/simsimd-6.4.9.ebuild
@@ -0,0 +1,64 @@
+# Copyright 2024-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+
+inherit distutils-r1 toolchain-funcs
+
+MY_P=SimSIMD-${PV}
+DESCRIPTION="Fastest SIMD-Accelerated Vector Similarity Functions for x86 and Arm"
+HOMEPAGE="
+ https://github.com/ashvardanian/SimSIMD/
+ https://pypi.org/project/simsimd/
+"
+# no sdist, as of 4.3.1
+# https://github.com/ashvardanian/SimSIMD/issues/113
+SRC_URI="
+ https://github.com/ashvardanian/SimSIMD/archive/v${PV}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="openmp"
+
+BDEPEND="
+ test? (
+ dev-python/pytest-repeat[${PYTHON_USEDEP}]
+ dev-python/tabulate[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+pkg_pretend() {
+ if [[ ${MERGE_TYPE} != binary ]] && use openmp; then
+ tc-check-openmp
+ fi
+}
+
+pkg_setup() {
+ if [[ ${MERGE_TYPE} != binary ]] && use openmp; then
+ tc-check-openmp
+ fi
+}
+
+src_prepare() {
+ sed -i -e '/-O3/d' setup.py || die
+ if ! use openmp; then
+ sed -i -e '/-fopenmp/d' setup.py || die
+ fi
+
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -p repeat scripts/test.py
+}
diff --git a/dev-python/tree-sitter/tree-sitter-0.24.0.ebuild b/dev-python/tree-sitter/tree-sitter-0.24.0.ebuild
index 11aab4e76031..47e29d03baf5 100644
--- a/dev-python/tree-sitter/tree-sitter-0.24.0.ebuild
+++ b/dev-python/tree-sitter/tree-sitter-0.24.0.ebuild
@@ -22,7 +22,7 @@ S=${WORKDIR}/py-${P}
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"
# setuptools is needed for distutils import
DEPEND=">=dev-libs/tree-sitter-0.25.0:="
diff --git a/dev-python/zipp/Manifest b/dev-python/zipp/Manifest
index aff50c4409cf..d2b34976ba0a 100644
--- a/dev-python/zipp/Manifest
+++ b/dev-python/zipp/Manifest
@@ -1,2 +1,3 @@
DIST zipp-3.21.0.tar.gz 24545 BLAKE2B 3a21098768c54efb1bcb049f25a7b04a16d5f02eacc6e2107dfbc358ec3e595478b407e78fa0d831f5a8f2dadd92287812bc1259db925859aeedc1174378ab2d SHA512 f57489283d979dbeb3234f66f5b6b298876209ba79cf0d7a2562f0ce4747a87fd1494d26a35734c6729620d1edfa3bf8f56769de2ae9576ac9cff074caa39331
DIST zipp-3.22.0.tar.gz 25257 BLAKE2B b4a6b67b428b696724354b3fcca57b6ecd7a4e65543016e3fbfe7def09fc6125245492edcd37d909c33869118017ec7875f18ef9befe459ead809629c17dae5a SHA512 fcdf53f5058a1036b5a637343d40528373147e480694f85b94d2ca030545169e8bc2271bbd2ad5779eb14841d5dd2630a829192b3ffcefddff956e81d44622a9
+DIST zipp-3.23.0.tar.gz 25547 BLAKE2B 834a046e1a618691c51149d9d70041221c4b9ef7bc4507e558fdd54a29b1c9b483e2c2a8ad4490617109741d139c61a20d8c062997883ac5da334c416e2d6641 SHA512 c2c8515fef329ba111399d394ba0039c63d825c1b264c1c26e0b44a98197a327280c577ae926529a261a352e579f8e5348ea1ee71757eab03817a97580b5491a
diff --git a/dev-python/zipp/zipp-3.23.0.ebuild b/dev-python/zipp/zipp-3.23.0.ebuild
new file mode 100644
index 000000000000..4f3f288a8e38
--- /dev/null
+++ b/dev-python/zipp/zipp-3.23.0.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# please keep this ebuild at EAPI 8 -- sys-apps/portage dep
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Backport of pathlib-compatible object wrapper for zip files"
+HOMEPAGE="
+ https://github.com/jaraco/zipp/
+ https://pypi.org/project/zipp/
+"
+
+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"
+
+# big_o is only used in test_complexity, that we ignore
+BDEPEND="
+ test? (
+ dev-python/jaraco-functools[${PYTHON_USEDEP}]
+ dev-python/jaraco-itertools[${PYTHON_USEDEP}]
+ dev-python/jaraco-test[${PYTHON_USEDEP}]
+ dev-python/more-itertools[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+EPYTEST_IGNORE=(
+ # performance tests are flaky by design
+ tests/test_complexity.py
+)
+
+src_configure() {
+ grep -q 'build-backend = "setuptools' pyproject.toml ||
+ die "Upstream changed build-backend, recheck"
+ # write a custom pyproject.toml to ease setuptools bootstrap
+ cat > pyproject.toml <<-EOF || die
+ [build-system]
+ requires = ["flit_core >=3.2,<4"]
+ build-backend = "flit_core.buildapi"
+
+ [project]
+ name = "zipp"
+ version = "${PV}"
+ description = "Backport of pathlib-compatible object wrapper for zip files"
+ EOF
+}