diff options
| author | Liguros - Gitlab CI/CD [develop] <gitlab@liguros.net> | 2025-06-09 07:00:06 +0000 |
|---|---|---|
| committer | Liguros - Gitlab CI/CD [develop] <gitlab@liguros.net> | 2025-06-09 07:00:06 +0000 |
| commit | d040dfeee4aeee655599ab9091f1fb756b21c23d (patch) | |
| tree | 9d41a24bcf6a18d726ce739193e861d42a92e1a5 /dev-python | |
| parent | 653793351c5886fac93c93c99705943c0c46b857 (diff) | |
| download | baldeagleos-repo-d040dfeee4aeee655599ab9091f1fb756b21c23d.tar.gz baldeagleos-repo-d040dfeee4aeee655599ab9091f1fb756b21c23d.tar.xz baldeagleos-repo-d040dfeee4aeee655599ab9091f1fb756b21c23d.zip | |
Adding metadata
Diffstat (limited to 'dev-python')
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 +} |
