summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRepository mirror & CI <repomirrorci@gentoo.org>2024-09-11 18:51:00 +0000
committerRepository mirror & CI <repomirrorci@gentoo.org>2024-09-11 18:51:00 +0000
commit70116634151e35d37578761a1b0f4da11f0a7bf6 (patch)
treebe4d72d92618b8096e1d93abdad4a3b68c7a217a
parent2024-09-11 18:36:07 UTC (diff)
parentmedia-gfx/fotema: Bump to 1.14.1 (diff)
downloadgentoo-70116634151e35d37578761a1b0f4da11f0a7bf6.tar.gz
gentoo-70116634151e35d37578761a1b0f4da11f0a7bf6.tar.bz2
gentoo-70116634151e35d37578761a1b0f4da11f0a7bf6.zip
Merge updates from master
-rw-r--r--dev-python/cattrs/Manifest1
-rw-r--r--dev-python/cattrs/cattrs-24.1.1.ebuild106
-rw-r--r--dev-python/configshell-fb/Manifest1
-rw-r--r--dev-python/configshell-fb/configshell-fb-2.0.0.ebuild30
-rw-r--r--dev-python/dep-logic/Manifest1
-rw-r--r--dev-python/dep-logic/dep-logic-0.4.6.ebuild25
-rw-r--r--dev-python/importlib-metadata/Manifest1
-rw-r--r--dev-python/importlib-metadata/importlib-metadata-8.5.0.ebuild51
-rw-r--r--dev-python/kombu/Manifest2
-rw-r--r--dev-python/kombu/files/kombu-5.3.7-py313.patch28
-rw-r--r--dev-python/kombu/kombu-5.4.1.ebuild (renamed from dev-python/kombu/kombu-5.3.7.ebuild)5
-rw-r--r--dev-python/python-openstackclient/Manifest1
-rw-r--r--dev-python/python-openstackclient/python-openstackclient-7.1.0.ebuild61
-rw-r--r--dev-python/pytz/Manifest1
-rw-r--r--dev-python/pytz/pytz-2024.2.ebuild51
-rw-r--r--dev-python/scikit-build-core/Manifest1
-rw-r--r--dev-python/scikit-build-core/scikit-build-core-0.10.6.ebuild62
-rw-r--r--dev-python/scikit-learn/Manifest1
-rw-r--r--dev-python/scikit-learn/scikit-learn-1.5.2.ebuild74
-rw-r--r--dev-python/simsimd/Manifest1
-rw-r--r--dev-python/simsimd/simsimd-5.1.3.ebuild63
-rw-r--r--dev-python/vdirsyncer/Manifest1
-rw-r--r--dev-python/vdirsyncer/vdirsyncer-0.19.3.ebuild74
-rw-r--r--dev-python/watchdog/watchdog-4.0.2.ebuild2
-rw-r--r--dev-util/cppcheck/cppcheck-2.14.2.ebuild2
-rw-r--r--media-gfx/fotema/Manifest3
-rw-r--r--media-gfx/fotema/fotema-1.10.0-r1.ebuild86
-rw-r--r--media-gfx/fotema/fotema-1.14.1.ebuild (renamed from media-gfx/fotema/fotema-1.13.0.ebuild)0
28 files changed, 611 insertions, 124 deletions
diff --git a/dev-python/cattrs/Manifest b/dev-python/cattrs/Manifest
index 773c0f2a9dad..ff8bd6eb8828 100644
--- a/dev-python/cattrs/Manifest
+++ b/dev-python/cattrs/Manifest
@@ -1,3 +1,4 @@
DIST cattrs-23.2.3.gh.tar.gz 612120 BLAKE2B a227cc50cb23a76931562f17444fcfb4a5532cac74f80b478a8abb6d113cbb0a06c471c3ca7ee256f74640486464762f4a13387ccfc1cd144cfd1a9bfecddd8e SHA512 76a75ea0893bb1549dd5178436c4823ae5b918c16f0d8195203c48e894438ec792cee77698d783f7e43c07445c46a6041a309c3d3bbcadcff95d9c4079e3d622
DIST cattrs-24.1.0.gh.tar.gz 428347 BLAKE2B 21bb94de02b6fce1c456e0d66dbd38defdd1171d4eb815e92ddc9777b12a108e099a5ce0dce4e51c1175cc1771d517ae0d201ac7ff537fbddf2329dce6f88f51 SHA512 879fd9edef39ad325237439915aa2d92c346c9896d463a4c3835335c3b9fb8bc572834a7d7731ccf6b805e59dec481cfdfed50ae8d4899fa31118b6ac6926c1a
+DIST cattrs-24.1.1.gh.tar.gz 428539 BLAKE2B f0fe5afc56bc49da62942b553ea752c0fdffb6670a19eba5810826e81f066f1d4a08684509c682ae9b43601f8d2f4e18dd4e55f62a7316a10870625ee7d9ecaa SHA512 bc141a30976b022931289f37f9630ced7f309ddce7a42abf7114b49c6eef26bfe861fa239dc4df7524549b35cc8a7765ca265ad9d516f59f42c32f30733dd77f
DIST cattrs-6290cacdb7f9d195b4f96ce0ab036c8eebf35d94.gh.tar.gz 426769 BLAKE2B 61851be04434e55d627aac6fd73d72d9d4d8a150bedb6110f4b99068dd58ed29fd23ff083c595eb508b144546d8e4d1e926831dc51985775773ab86a86d98815 SHA512 f1034ae0c57a0618c6568ebac0696928e125121431e965c0ceeda82070a21b448630e3188cc03a8d7a44447126a4a2623b8604ef856a89268e1c0802761d89b9
diff --git a/dev-python/cattrs/cattrs-24.1.1.ebuild b/dev-python/cattrs/cattrs-24.1.1.ebuild
new file mode 100644
index 000000000000..f517b1a20aca
--- /dev/null
+++ b/dev-python/cattrs/cattrs-24.1.1.ebuild
@@ -0,0 +1,106 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( pypy3 python3_{10..13} )
+
+inherit distutils-r1
+
+DESCRIPTION="Composable complex class support for attrs and dataclasses"
+HOMEPAGE="
+ https://pypi.org/project/cattrs/
+ https://github.com/python-attrs/cattrs/
+"
+SRC_URI="
+ https://github.com/python-attrs/cattrs/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="test-rust"
+
+RDEPEND="
+ >=dev-python/attrs-20.1.0[${PYTHON_USEDEP}]
+ >=dev-python/typing-extensions-4.1.0[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/exceptiongroup[${PYTHON_USEDEP}]
+ ' 3.10)
+"
+BDEPEND="
+ dev-python/hatch-vcs[${PYTHON_USEDEP}]
+ test? (
+ >=dev-python/cbor2-5.4.6[${PYTHON_USEDEP}]
+ >=dev-python/hypothesis-6.54.5[${PYTHON_USEDEP}]
+ >=dev-python/immutables-0.18[${PYTHON_USEDEP}]
+ >=dev-python/msgpack-1.0.2[${PYTHON_USEDEP}]
+ >=dev-python/pymongo-4.2.0[${PYTHON_USEDEP}]
+ >=dev-python/pyyaml-6.0[${PYTHON_USEDEP}]
+ >=dev-python/tomlkit-0.11.4[${PYTHON_USEDEP}]
+ >=dev-python/ujson-5.4.0[${PYTHON_USEDEP}]
+ test-rust? (
+ $(python_gen_cond_dep '
+ >=dev-python/orjson-3.5.2[${PYTHON_USEDEP}]
+ ' 'python*')
+ )
+ )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+PATCHES=(
+ # https://github.com/python-attrs/cattrs/pull/543
+ "${FILESDIR}/${PN}-23.2.4_pre20240627-py313.patch"
+)
+
+export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
+
+python_test() {
+ local EPYTEST_IGNORE=(
+ # requires msgspec
+ tests/preconf/test_msgspec_cpython.py
+ )
+ local EPYTEST_DESELECT=(
+ # these require msgspec
+ tests/test_preconf.py::test_msgspec_json_unstruct_collection_overrides
+ tests/test_preconf.py::test_msgspec_json_unions
+ tests/test_preconf.py::test_msgspec_json_converter
+
+ # tests need updating for attrs-24*
+ # https://github.com/python-attrs/cattrs/issues/575
+ tests/test_baseconverter.py
+ tests/test_converter.py
+ tests/test_gen_dict.py::test_individual_overrides
+ tests/test_gen_dict.py::test_nodefs_generated_unstructuring_cl
+ tests/test_gen_dict.py::test_unmodified_generated_structuring
+ tests/test_structure_attrs.py::test_structure_simple_from_dict_default
+ )
+
+ if ! has_version "dev-python/orjson[${PYTHON_USEDEP}]"; then
+ EPYTEST_DESELECT+=(
+ tests/test_preconf.py::test_orjson
+ tests/test_preconf.py::test_orjson_converter
+ tests/test_preconf.py::test_orjson_converter_unstruct_collection_overrides
+ )
+ fi
+
+ case ${EPYTHON} in
+ python3.13)
+ EPYTEST_DESELECT+=(
+ tests/preconf/test_pyyaml.py::test_pyyaml
+ tests/preconf/test_pyyaml.py::test_pyyaml_converter
+ tests/test_converter.py::test_simple_roundtrip
+ tests/test_gen_dict.py::test_unmodified_generated_structuring
+ tests/test_generics.py::test_unstructure_deeply_nested_generics_list
+ tests/test_unstructure_collections.py::test_collection_unstructure_override_mapping
+ )
+ ;;
+ esac
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -o addopts= tests
+}
diff --git a/dev-python/configshell-fb/Manifest b/dev-python/configshell-fb/Manifest
index 4b2c0a5102ae..884a0b6777aa 100644
--- a/dev-python/configshell-fb/Manifest
+++ b/dev-python/configshell-fb/Manifest
@@ -1 +1,2 @@
DIST configshell-fb-1.1.30.gh.tar.gz 33179 BLAKE2B 8664ec42727fb9bd41600c2844b9b59423c21040e6efc201f40b54abf6d788fa5237d38e2795d0d19706303d99e7ea859b399fd5f122cb04effc643a33b264ac SHA512 b3189130ac047fe28ea987391591b7886f7234864d455a8423d1d65b02a514511e2a32dce1429a6b71cedbc0b7cb6e6e10f29d240b746d222c285f0baa6b46b0
+DIST configshell_fb-2.0.0.tar.gz 33794 BLAKE2B 7bb46a19b58107c7e4d0f7a4dde9520cdd31b85238ad7579f85c30f855c7fb90736470419e7f6882bbeed89d9d55091b92f7a3f1e4bbff5e5a9eae813c148756 SHA512 3e0c0c3fda661cd09d80cd07e32cc942aa804fde49c00cfed5234671b1005f8126264c39a72aec466b3b9324366faa83828eee74f8b541d6f8bc628548d31a9e
diff --git a/dev-python/configshell-fb/configshell-fb-2.0.0.ebuild b/dev-python/configshell-fb/configshell-fb-2.0.0.ebuild
new file mode 100644
index 000000000000..dc77fba66ca9
--- /dev/null
+++ b/dev-python/configshell-fb/configshell-fb-2.0.0.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( python3_{10..13} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A Python library for building configuration shells"
+HOMEPAGE="
+ https://github.com/open-iscsi/configshell-fb/
+ https://pypi.org/project/configshell-fb/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/pyparsing-2.4.7[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/hatch-vcs[${PYTHON_USEDEP}]
+"
+
+python_test() {
+ "${EPYTHON}" examples/myshell || die "Test failed with ${EPYTHON}"
+}
diff --git a/dev-python/dep-logic/Manifest b/dev-python/dep-logic/Manifest
index 97110f45058d..1ecae4cbf8fc 100644
--- a/dev-python/dep-logic/Manifest
+++ b/dev-python/dep-logic/Manifest
@@ -1,2 +1,3 @@
DIST dep_logic-0.4.4.tar.gz 34883 BLAKE2B e28bf4cf3b4f3ff02af53d99bd9007ee5774c4e64d01386c9a736414420da6799f3f681c2f7934e9002ecff3ff87186ff9ec78bf5a18d225cfa32b0d31477468 SHA512 b22ac38a75d52f497cddc96ca2d571f036e0c3abde81b023f6348af4a606c966170e7609a4364425a410172f3e911b053d09aeb3fd0b124d7cb9b32b691e8bb1
DIST dep_logic-0.4.5.tar.gz 34903 BLAKE2B b9f26fb62e89540ccaa9501770aa20e37121110c3bf200bfa91ebf63f4adca9af81febe5d7ca5e1e322ff038d099310b8ed55229637eb9c15e4d790fcd7d1aca SHA512 a98e2fbf9a72f6e055374f101356ddaed36560e175b674cd0e304daf06dd008e91d80684bb8e290a018ee466088b4faecc4790db2a304b218733c8013a02f59c
+DIST dep_logic-0.4.6.tar.gz 35010 BLAKE2B 180d977bcd3ffb6b0c47c4260318f5cc7457644d97352e0c7b6906a249e80ad3a1f3a5c9558cba4d10e6352babfdd1b0b3ee2ae2d3cd25cd2796ab3bc130ad8d SHA512 668b00661af185d558929f1cb0d2c281c9af112ead23866359683fe505f25a512c4acb5f6aaa0d7a855f1c5b3c6c16b8d969de043cfceeab196304b0a8452e18
diff --git a/dev-python/dep-logic/dep-logic-0.4.6.ebuild b/dev-python/dep-logic/dep-logic-0.4.6.ebuild
new file mode 100644
index 000000000000..cf3afe5c232e
--- /dev/null
+++ b/dev-python/dep-logic/dep-logic-0.4.6.ebuild
@@ -0,0 +1,25 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=pdm-backend
+PYTHON_COMPAT=( pypy3 python3_{10..13} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Python dependency specifications supporting logical operations"
+HOMEPAGE="
+ https://github.com/pdm-project/dep-logic/
+ https://pypi.org/project/dep-logic/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+
+RDEPEND="
+ >=dev-python/packaging-22[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/importlib-metadata/Manifest b/dev-python/importlib-metadata/Manifest
index f668f724c340..16872b0761f3 100644
--- a/dev-python/importlib-metadata/Manifest
+++ b/dev-python/importlib-metadata/Manifest
@@ -1,2 +1,3 @@
DIST importlib_metadata-7.1.0.tar.gz 52120 BLAKE2B a43a1f0724b3197f51c055d36d31700d67b3bcae849fd648c7cd1ac158a410fdf05a27f2c7003a30e566f86ec5dcbf7cf386ebe4e0ed0a1ce2e89e280ab9e1d3 SHA512 e75db6da03c251acc690ceef6ab2b668acfcf5499032cff370a574b31a5fd7afcbf9756bc20e44e6e649767c1609c7ebb40203aa6406ec5341f27fba886d208e
DIST importlib_metadata-8.4.0.tar.gz 54320 BLAKE2B fc8912dd432e05c5ad82428f47b6265588d6b20c364321bea5ffb1653f2f9d6b2aff3d35b399d1d8237d328414bc77697bd4dcbd56611f39fd002779328c78b6 SHA512 97d904225f478bf9877a62e2d1a43dc88e2d9d74ac4488ddbdd2371066b08429d11e10a5a9bb484a93e86a01f13404b57e0350726c1c13c6cb1b2424970da2be
+DIST importlib_metadata-8.5.0.tar.gz 55304 BLAKE2B 801d7edaed5a42ef5c871830286e698620cd06cde43178c1ab65a5d35f6055fdd2a02b0f14bada94704a13a6708ea3091e634548e534df2df92d942c83192c3b SHA512 86ceb3ff408705565628b71a740a9e9123eee4b49e2ad029b9ee204548a78257dfefe9756194ce660939806f75983dd4b858dacd642b40fddc4188e699ef4e19
diff --git a/dev-python/importlib-metadata/importlib-metadata-8.5.0.ebuild b/dev-python/importlib-metadata/importlib-metadata-8.5.0.ebuild
new file mode 100644
index 000000000000..8eddbf7d33bb
--- /dev/null
+++ b/dev-python/importlib-metadata/importlib-metadata-8.5.0.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2024 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
+# NB: this package extends beyond built-in importlib stuff in py3.8+
+# new entry_point API not yet included in cpython release
+PYTHON_COMPAT=( pypy3 python3_{10..13} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Read metadata from Python packages"
+HOMEPAGE="
+ https://github.com/python/importlib_metadata/
+ https://pypi.org/project/importlib-metadata/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+RDEPEND="
+ >=dev-python/zipp-3.20[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ >=dev-python/jaraco-test-5.4[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ dev-python/pyfakefs[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests unittest
+
+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 = "importlib_metadata"
+ version = "${PV}"
+ description = "Read metadata from Python packages"
+ EOF
+}
diff --git a/dev-python/kombu/Manifest b/dev-python/kombu/Manifest
index 049e1bcdbdc7..63d610e6477c 100644
--- a/dev-python/kombu/Manifest
+++ b/dev-python/kombu/Manifest
@@ -1,2 +1,2 @@
-DIST kombu-5.3.7.tar.gz 439344 BLAKE2B 9443cb7d9d03ca7ed49b1e2c5a413e5d5633ccaf8cb2b8545b4bd0a7a7699f7fc773f735e6b26abf582502f1dbf11b088c612d749f09cab99950e145e8ee82e0 SHA512 48104d61a7c38a211ec378f90aade09d682a99d4f8b3d18b4bce49b51c80be794ab4b012d2974893fbc630a37c52dad10fb57f8335238b3002a64e025a148ee2
DIST kombu-5.4.0.tar.gz 442120 BLAKE2B 138fc4287f98179166973da019cb5d2536ec2daeb995e1ec94972c95dd3d42c33d97e4e0ed79eedda75e5668c789f463bc115638d8774bcee7018821de9ca3a5 SHA512 fd9b47018a6bb95067486858ee90c052dc497ae4625884521c37b0b18a226de52bee84599b7f7e4aa9ee956e1c648a2672e8c6dda4deaf493b20ffe30fca13bb
+DIST kombu-5.4.1.tar.gz 442786 BLAKE2B b9772bd3a2ebabc4424b029ef72b7378dc2c4f4b0f6002732e5466910589d2c056317bc49ee7c9b3bc8dd02a820614eaf75dfcdebdade84d58fe919b5d11126a SHA512 e0ccab1037e840f11bbdd1f7055df4b25e09c5a00716b1b6b1d754fe7e73b21cc1f85062cb544321eb87bf3eb294837373496e1dca6266c9bc27ed68f7e2c1d8
diff --git a/dev-python/kombu/files/kombu-5.3.7-py313.patch b/dev-python/kombu/files/kombu-5.3.7-py313.patch
deleted file mode 100644
index 7a359db0e022..000000000000
--- a/dev-python/kombu/files/kombu-5.3.7-py313.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From d26e891025f55ecbdc577fcbd4bc1f19c9e020d9 Mon Sep 17 00:00:00 2001
-From: Roman Inflianskas <rominf@pm.me>
-Date: Fri, 5 Jul 2024 21:44:58 +0300
-Subject: [PATCH] Add support for Python 3.13
-
-Fixes https://github.com/celery/kombu/issues/2051.
----
- .github/workflows/ci.yaml | 16 ++++++++++++++--
- kombu/transport/redis.py | 2 +-
- requirements/extras/confluentkafka.txt | 2 +-
- requirements/extras/zstd.txt | 2 +-
- t/unit/transport/test_redis.py | 15 ++++++++++-----
- tox.ini | 18 ++++++++++--------
- 6 files changed, 37 insertions(+), 18 deletions(-)
-
-diff --git a/kombu/transport/redis.py b/kombu/transport/redis.py
-index 515d6f7d7..29909dbe5 100644
---- a/kombu/transport/redis.py
-+++ b/kombu/transport/redis.py
-@@ -89,7 +89,7 @@
-
-
- logger = get_logger('kombu.transport.redis')
--crit, warn = logger.critical, logger.warn
-+crit, warn = logger.critical, logger.warning
-
- DEFAULT_PORT = 6379
- DEFAULT_DB = 0
diff --git a/dev-python/kombu/kombu-5.3.7.ebuild b/dev-python/kombu/kombu-5.4.1.ebuild
index 8d4a9966b9e7..5b95ce34649e 100644
--- a/dev-python/kombu/kombu-5.3.7.ebuild
+++ b/dev-python/kombu/kombu-5.4.1.ebuild
@@ -45,11 +45,6 @@ distutils_enable_tests pytest
distutils_enable_sphinx docs \
dev-python/sphinx-celery
-PATCHES=(
- # https://github.com/celery/kombu/pull/2052
- "${FILESDIR}/${P}-py313.patch"
-)
-
python_test() {
local EPYTEST_DESELECT=(
# TODO
diff --git a/dev-python/python-openstackclient/Manifest b/dev-python/python-openstackclient/Manifest
index 825b7e9ed330..a10662b27b00 100644
--- a/dev-python/python-openstackclient/Manifest
+++ b/dev-python/python-openstackclient/Manifest
@@ -1,3 +1,4 @@
DIST python-openstackclient-6.6.0.tar.gz 917251 BLAKE2B 9f11b357bdeede556e106a21b2c7bbd86804251612cd676525a8817b693733dfe72388213cfa16517b3b75725702090fa3e728ec6986dcda196aa1e8aac9fd0a SHA512 7b073263fe9d905b3c10b2a4dcfa7156c9cd5ae453d792e1dcf3be278de0abc25c931388c8cabff6b11b61174acf79c87951028626af1e1b9f0dd09f38b7900a
DIST python-openstackclient-6.6.1.tar.gz 917516 BLAKE2B da771630628444d02b6937d6138e83416f982d70c57211c90d648bff000692de3acc1594268e9dd8b9521165508c063dbaba3e740c6fef874645af0b9fc89248 SHA512 e59d2fbf1bb5b4e9080aa7b81c110876c444052b3e57037a520995b273712b2a30f56f25937c524fe62889c49f72c5a3cc14e83ebc77886cae23c3e23a071158
DIST python-openstackclient-7.0.0.tar.gz 946254 BLAKE2B 4120797686453671ae47a0ce57856ec8424da7a38df3f478b1fb455a4af9dbdee6365dc9efbe750e8062f87f9a8fa218ed04de75bdc97af5cee763e31338199f SHA512 9e541b33abf5b3fad6f05782f1c16377b497b099a227490d9405da5140f11a73abba75c9a7021df7d129a4653316b742e16b4c049ef1f26b961d35a281618ebc
+DIST python-openstackclient-7.1.0.tar.gz 946758 BLAKE2B 459a926d27fbbe7a9ffd72e49721559bee537afa44ba032ab0c9ed3875036dbff621d028c29449ef93708da40bfc09829ed0528b08a3f6c080201f31c5d95192 SHA512 7d1b006756446dbf96bf2cdcb17a46dffac1c27fd3cb73168c731f6e90f5ef157e36448ce6d788c37472b0d335989318ec64864f700250d5a0468f3d116b5055
diff --git a/dev-python/python-openstackclient/python-openstackclient-7.1.0.ebuild b/dev-python/python-openstackclient/python-openstackclient-7.1.0.ebuild
new file mode 100644
index 000000000000..5b00c3719889
--- /dev/null
+++ b/dev-python/python-openstackclient/python-openstackclient-7.1.0.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+PYTHON_COMPAT=( python3_{10..11} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A client for the OpenStack APIs"
+HOMEPAGE="
+ https://opendev.org/openstack/python-openstackclient/
+ https://github.com/openstack/python-openstackclient/
+ https://pypi.org/project/python-openstackclient/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
+
+RDEPEND="
+ >dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
+ >=dev-python/cliff-3.5.0[${PYTHON_USEDEP}]
+ >=dev-python/cryptography-2.7[${PYTHON_USEDEP}]
+ >=dev-python/openstacksdk-3.3.0[${PYTHON_USEDEP}]
+ >=dev-python/osc-lib-2.3.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
+ >=dev-python/python-keystoneclient-3.22.0[${PYTHON_USEDEP}]
+ >=dev-python/python-cinderclient-3.3.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.27.0[${PYTHON_USEDEP}]
+ >=dev-python/stevedore-2.0.1[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ >dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
+ test? (
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-mock-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/tempest-17.1.0[${PYTHON_USEDEP}]
+ >=dev-python/wrapt-1.7.0[${PYTHON_USEDEP}]
+ >=dev-python/ddt-1.0.1[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests unittest
+
+src_prepare() {
+ # Depends on a specific runner
+ sed -e 's/test_command_has_logger/_&/' \
+ -i openstackclient/tests/unit/common/test_command.py || die
+
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ # functional tests require cloud instance access
+ eunittest -b openstackclient/tests/unit
+}
diff --git a/dev-python/pytz/Manifest b/dev-python/pytz/Manifest
index 6bc7f0a173bf..74ae7e39f041 100644
--- a/dev-python/pytz/Manifest
+++ b/dev-python/pytz/Manifest
@@ -1 +1,2 @@
DIST pytz-2024.1.tar.gz 316214 BLAKE2B 1047e11c41d3abeb10cdf55021c8702fbbb0c0dbcafc63c8c044ecf73dda2ac9344fc66e0a239302a0fd12856bbb3a7d49745eae671fac35db9c83fa502e7cf8 SHA512 cc1e4c9b34c62791cea277a0ce188d975e62135cb15bccfb49dc1a9366c7697ead9c67956846699f18b90db4c66e6c5fe1a91a524d01ae821c0eaa613550ea74
+DIST pytz-2024.2.tar.gz 319692 BLAKE2B 631e87978eddee62c7189515b019038b44d8600e3aad51afcb7c6ffb70d6cdf44942fb8c2ff63bf179be0d42e1337cd1b723c809c5711d86f7e370404e3f8a86 SHA512 140a34f51044188420ac3bfbaa5ece91ea0fe4faf7a247c01312265b63b4aa8d2b389219234e173eca0343d0463aef9d6472ee803915ead989594896567c593e
diff --git a/dev-python/pytz/pytz-2024.2.ebuild b/dev-python/pytz/pytz-2024.2.ebuild
new file mode 100644
index 000000000000..07ae54157e80
--- /dev/null
+++ b/dev-python/pytz/pytz-2024.2.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..13} pypy3 )
+PYTHON_REQ_USE="threads(+)"
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="World timezone definitions for Python"
+HOMEPAGE="
+ https://pythonhosted.org/pytz/
+ https://github.com/stub42/pytz/
+ https://pypi.org/project/pytz/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ || (
+ >=sys-libs/timezone-data-2023b
+ sys-libs/glibc[vanilla]
+ )
+"
+BDEPEND="
+ test? (
+ ${RDEPEND}
+ )
+"
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ # unbundle timezone-data
+ rm -r pytz/zoneinfo || die
+ # remove hardcoded list of all timezones but leave subjective set
+ # of "common timezones"
+ sed -i -e '/^_all_timezones_unchecked/,/^all_timezones_set/d' pytz/__init__.py || die
+ eapply "${FILESDIR}"/pytz-2023.2-system-tzinfo.patch
+}
+
+python_test() {
+ "${EPYTHON}" pytz/tests/test_tzinfo.py -v ||
+ die "Tests fail with ${EPYTHON}"
+}
diff --git a/dev-python/scikit-build-core/Manifest b/dev-python/scikit-build-core/Manifest
index 68c4141aef2c..1f307d869836 100644
--- a/dev-python/scikit-build-core/Manifest
+++ b/dev-python/scikit-build-core/Manifest
@@ -1,4 +1,5 @@
DIST scikit_build_core-0.10.4.tar.gz 252954 BLAKE2B 5d6bf7c7a462a80ee78b1c93a27b7f63443f1acf9bac8918d48882d644de4f11d3532e8afd542a06b24605120d18ab8e094ce9f3997ffd3f8047dcedb97712f9 SHA512 6858a7716f081fc5d40da7b974568855571f7cbc5e8eafdab2547bb6d2abc5445e682d7d7b1f6157e38ecbaad676b90fe1a2b152dcb89331f646180ecb3c6c26
DIST scikit_build_core-0.10.5.tar.gz 253285 BLAKE2B 6bbd5a92987fcbf9880df902784c9ee1a53d3f58b935b0c43ceb9bb8be0c32878845dd4c35fd03569fdc74d053866ff5e93b8eb96b058623fb357351a16919ec SHA512 283a50b4ff99e9c99fd92f0198231d0c8b68dcfc47ca5a782d7d604d9a313225f9f4e3dbc9490d9cd04f4d66cb79a4f793fb416763717474e83a3fea356b9bac
+DIST scikit_build_core-0.10.6.tar.gz 254624 BLAKE2B da23ecf36e16f2d8f1b4daeb41c3cd7ca5af1cd0a4eff324765920a53410b9a6d5c7456247dd310b67ac0fc9a96547f1aa6f019e7d7527b603184a9199c863d2 SHA512 e3ee9aff752d2531c3bc44f8288a4619637e89d4a0edea3aef012153ba31af9a86929437e9d11b1d1a6d85a60a9a4da34cc347c203b80cca3caee05fb3e832da
DIST scikit_build_core-0.9.10.tar.gz 230104 BLAKE2B e3c4605b4b33260d8deac2cedb7bbb20a08729a36214b13c6071fe9b12f9bddc882c18da0e1ee14d7f1b4845ca0dd02b1c2d5c30c43b96a420c35a8b5cbd2d5e SHA512 0e1cb649f9965f4b13093432a2e36ea9be532ba3b7447c36f898284571dcbcf266b7012a445b464ac9129ec2b91e4155016be1fbab52fc2a979e440b0ea73cac
DIST scikit_build_core-0.9.8.tar.gz 229845 BLAKE2B 419d8891dd3f95bee7f8f7dcc1addb94d2698f8ff392eef19a67e851f57b58d09b9878705d0e8d728d3c6f2b316d538c76471164781fcd1fb5d02dfbfd9d7a85 SHA512 f1206715eef1bdeccddc5987cae4f455522c4ef4dbca305ad7d3772c61f5615c5742b109c5527a5ad5e25a2348abff69ea5ae7153ac18c43cca63783872aa3d5
diff --git a/dev-python/scikit-build-core/scikit-build-core-0.10.6.ebuild b/dev-python/scikit-build-core/scikit-build-core-0.10.6.ebuild
new file mode 100644
index 000000000000..49c374cbe912
--- /dev/null
+++ b/dev-python/scikit-build-core/scikit-build-core-0.10.6.ebuild
@@ -0,0 +1,62 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( pypy3 python3_{10..13} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Build backend for CMake based projects"
+HOMEPAGE="
+ https://github.com/scikit-build/scikit-build-core/
+ https://pypi.org/project/scikit-build-core/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+# we always want [pyproject] extra
+RDEPEND="
+ app-alternatives/ninja
+ dev-build/cmake
+ >=dev-python/packaging-21.3[${PYTHON_USEDEP}]
+ >=dev-python/pathspec-0.10.1[${PYTHON_USEDEP}]
+ >=dev-python/pyproject-metadata-0.5[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/exceptiongroup[${PYTHON_USEDEP}]
+ >=dev-python/tomli-1.2.2[${PYTHON_USEDEP}]
+ ' 3.10)
+"
+BDEPEND="
+ dev-python/hatch-vcs[${PYTHON_USEDEP}]
+ test? (
+ dev-python/build[${PYTHON_USEDEP}]
+ >=dev-python/cattrs-22.2.0[${PYTHON_USEDEP}]
+ dev-python/fastjsonschema[${PYTHON_USEDEP}]
+ dev-python/pybind11[${PYTHON_USEDEP}]
+ >=dev-python/pytest-subprocess-1.5[${PYTHON_USEDEP}]
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ dev-python/virtualenv[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local _EPYTEST_DESELECT=(
+ # TODO / we don't package validate_pyproject anyway
+ tests/test_schema.py::test_compare_schemas
+ # setuptools now respects PEP 625
+ tests/test_setuptools_pep517.py::test_pep517_sdist
+ )
+ local EPYTEST_IGNORE=(
+ # needs unpackaged validate_pyproject
+ tests/test_schema.py
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -p pytest-subprocess -m "not isolated and not network"
+}
diff --git a/dev-python/scikit-learn/Manifest b/dev-python/scikit-learn/Manifest
index c5d0c26e1a8b..e49bdf20e2a3 100644
--- a/dev-python/scikit-learn/Manifest
+++ b/dev-python/scikit-learn/Manifest
@@ -1 +1,2 @@
DIST scikit-learn-1.5.1.gh.tar.gz 6944196 BLAKE2B 65ed2016e1caf12e9a347e133b6b3be29b234de7ee8e374859a7235da3ede67a1b4c37a253b62ceb85a1ae3a1e6bc5afea2a0f07f4a7c81f59965614bde52b8c SHA512 f04c988490436d46d8210e68e41969af689810eff3e57098694768d3ccb7c4b919aecb13f36af1534745e56785fbf55c3dc3614497765d5b2f7c5e7e8dfbae05
+DIST scikit-learn-1.5.2.gh.tar.gz 6982418 BLAKE2B f1fdc37cdbc7625f5240b565b37b8213e1f6a21cb04886efaa2f9dad598eaa3c9bf567000cb51bcb78057172131ab3534134bb7382ed0b1df5037919d45fd65e SHA512 ed014858a9dd75765b761df03782048035228f012773d70ca3355d049d096707286b8b3d0139b88268266e8f0a6b4d430968495a87636975d094b161b9f0d712
diff --git a/dev-python/scikit-learn/scikit-learn-1.5.2.ebuild b/dev-python/scikit-learn/scikit-learn-1.5.2.ebuild
new file mode 100644
index 000000000000..5b97f0b548d5
--- /dev/null
+++ b/dev-python/scikit-learn/scikit-learn-1.5.2.ebuild
@@ -0,0 +1,74 @@
+# Copyright 2020-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=meson-python
+PYTHON_COMPAT=( python3_{10..13} )
+
+inherit distutils-r1
+
+DESCRIPTION="Machine learning library for Python"
+HOMEPAGE="
+ https://scikit-learn.org/stable/
+ https://github.com/scikit-learn/scikit-learn/
+ https://pypi.org/project/scikit-learn/
+"
+SRC_URI="
+ https://github.com/scikit-learn/scikit-learn/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86 ~arm64-macos ~x64-macos"
+IUSE="examples"
+
+DEPEND="
+ virtual/blas:=
+ virtual/cblas:=
+ >=dev-python/numpy-1.19.5:=[${PYTHON_USEDEP}]
+"
+RDEPEND="
+ ${DEPEND}
+ >=dev-python/joblib-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/scipy-1.6.0[${PYTHON_USEDEP}]
+ >=dev-python/threadpoolctl-3.1.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ >=dev-python/pythran-0.14.0[${PYTHON_USEDEP}]
+ >=dev-python/cython-3.0.10[${PYTHON_USEDEP}]
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+# For some reason this wants to use urllib to fetch things from the internet
+# distutils_enable_sphinx doc \
+# dev-python/matplotlib \
+# dev-python/memory-profiler \
+# dev-python/numpydoc \
+# dev-python/pandas \
+# dev-python/pillow \
+# dev-python/seaborn \
+# dev-python/sphinx-gallery \
+# dev-python/sphinx-prompt \
+# dev-python/scikit-image
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # TODO: floating-point problems
+ gaussian_process/kernels.py::sklearn.gaussian_process.kernels.ExpSineSquared
+ )
+
+ rm -rf sklearn || die
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest --pyargs sklearn
+}
+
+python_install_all() {
+ find "${S}" -name \*LICENSE.txt -delete || die
+ distutils-r1_python_install_all
+ use examples && dodoc -r examples
+}
diff --git a/dev-python/simsimd/Manifest b/dev-python/simsimd/Manifest
index 2507102801c4..fbdeaea386de 100644
--- a/dev-python/simsimd/Manifest
+++ b/dev-python/simsimd/Manifest
@@ -1 +1,2 @@
DIST SimSIMD-5.0.1.gh.tar.gz 120754 BLAKE2B 35094cf15aad8f2325706a604eb7036e3edc18828c2341d9921b76077d7d7de9028177277ea32a144fa7edd98ee2b83d83506e632f95889c2290102c9638df9e SHA512 0dde560764e4d267e7b3387e8c7e24a44da02362f651b9ea48d44f91908135d107080c8b7db2fb3578f5ebfa67082694eb2907d82ceef841271f0debf42f1a8a
+DIST SimSIMD-5.1.3.gh.tar.gz 149123 BLAKE2B 1ac5d4245486a45ab73efe58733c22b9928beca09117d9c7a30ff920f595d7d5a315caa4e71ca951651462c77b794c7157add4783bede40c63d8ca1783365912 SHA512 707ce791c4e5cf866a690f6003ae64a052dfecb26c103d84dbe6fb43e35364b1d1fcf7a49dd1445063e471d06c760a432847c45476767b26b7ca11bcc4c555b0
diff --git a/dev-python/simsimd/simsimd-5.1.3.ebuild b/dev-python/simsimd/simsimd-5.1.3.ebuild
new file mode 100644
index 000000000000..944fe4d547ec
--- /dev/null
+++ b/dev-python/simsimd/simsimd-5.1.3.ebuild
@@ -0,0 +1,63 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( pypy3 python3_{10..12} )
+
+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}]
+ )
+"
+
+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 python/test.py
+}
diff --git a/dev-python/vdirsyncer/Manifest b/dev-python/vdirsyncer/Manifest
index fdd656fe9063..d0f158740393 100644
--- a/dev-python/vdirsyncer/Manifest
+++ b/dev-python/vdirsyncer/Manifest
@@ -1 +1,2 @@
DIST vdirsyncer-0.19.2.tar.gz 123389 BLAKE2B 35cf5e52f669307c7bc545404135bfb5ded3ca6a1b151735ddacd73835054a2e0ab518201ad206929ca845c2a2828c025a918bba54b739db3fa0a8e4e9f5de33 SHA512 056c58011d0a054a8cc215e9eabc706dfffb7d38deab5ae47311565b3bdb6de7a4772e97a0a50cdce33c82b09d559f1ec9cf9c84746553badf1d25791c7e08ce
+DIST vdirsyncer-0.19.3.tar.gz 125478 BLAKE2B ead135f6906a869c1bd0956723d8ed42740c27aa100afec172a98b8f639f5ccf2240c40054d4a3f1b73d37d429b00f743831b074bdc2aa5daa630be6eb672dd4 SHA512 8651282302ad62b2bb6f7655429492dcff959cedc25e932d2e72deb2bb54406c6b5333fecdb14ae8c08ba3c20602856e8466198e24caee298fc9a08545fd3751
diff --git a/dev-python/vdirsyncer/vdirsyncer-0.19.3.ebuild b/dev-python/vdirsyncer/vdirsyncer-0.19.3.ebuild
new file mode 100644
index 000000000000..ca3933ff6329
--- /dev/null
+++ b/dev-python/vdirsyncer/vdirsyncer-0.19.3.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..13} )
+PYTHON_REQ_USE="sqlite"
+
+inherit distutils-r1 pypi systemd
+
+DESCRIPTION="Synchronize calendars and contacts"
+HOMEPAGE="
+ https://github.com/pimutils/vdirsyncer/
+ https://pypi.org/project/vdirsyncer/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+
+RDEPEND="
+ >=dev-python/click-5.0[${PYTHON_USEDEP}]
+ >=dev-python/click-log-0.3.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.20.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-toolbelt-0.4.0[${PYTHON_USEDEP}]
+ >=dev-python/atomicwrites-0.1.7[${PYTHON_USEDEP}]
+ >=dev-python/aiohttp-3.8.0[${PYTHON_USEDEP}]
+ >=dev-python/aiostream-0.4.3[${PYTHON_USEDEP}]
+ dev-python/aiohttp-oauthlib[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+ test? (
+ dev-python/hypothesis[${PYTHON_USEDEP}]
+ dev-python/pytest-httpserver[${PYTHON_USEDEP}]
+ dev-python/trustme[${PYTHON_USEDEP}]
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/aioresponses[${PYTHON_USEDEP}]
+ )
+"
+
+DOCS=( AUTHORS.rst CHANGELOG.rst CONTRIBUTING.rst README.rst config.example )
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ # unpin deps
+ sed -i -e 's:, *<[0-9.]*::' setup.py || die
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ # skip tests needing servers running
+ local -x DAV_SERVER=skip
+ local -x REMOTESTORAGE_SERVER=skip
+ # pytest dies hard if the envvars do not have any value...
+ local -x CI=false
+ local -x DETERMINISTIC_TESTS=false
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+
+ local EPYTEST_DESELECT=(
+ # Internet
+ tests/system/utils/test_main.py::test_request_ssl
+ )
+
+ epytest -o addopts= -p asyncio
+}
+
+src_install() {
+ distutils-r1_src_install
+
+ systemd_douserunit contrib/vdirsyncer.{service,timer}
+}
diff --git a/dev-python/watchdog/watchdog-4.0.2.ebuild b/dev-python/watchdog/watchdog-4.0.2.ebuild
index 5138b7114efb..ef2d65a5fa4d 100644
--- a/dev-python/watchdog/watchdog-4.0.2.ebuild
+++ b/dev-python/watchdog/watchdog-4.0.2.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ppc ~ppc64 ~riscv ~s390 sparc x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ppc ppc64 ~riscv ~s390 sparc x86"
RDEPEND="
dev-python/pyyaml[${PYTHON_USEDEP}]
diff --git a/dev-util/cppcheck/cppcheck-2.14.2.ebuild b/dev-util/cppcheck/cppcheck-2.14.2.ebuild
index 75e296a70059..efdc1693e60a 100644
--- a/dev-util/cppcheck/cppcheck-2.14.2.ebuild
+++ b/dev-util/cppcheck/cppcheck-2.14.2.ebuild
@@ -12,7 +12,7 @@ SRC_URI="https://github.com/danmar/cppcheck/archive/refs/tags/${PV}.tar.gz -> ${
LICENSE="GPL-3+"
SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ~loong ~ppc64 ~riscv x86"
+KEYWORDS="amd64 ~arm arm64 ~loong ppc64 ~riscv x86"
IUSE="charts gui qt6 htmlreport pcre test"
REQUIRED_USE="
${PYTHON_REQUIRED_USE}
diff --git a/media-gfx/fotema/Manifest b/media-gfx/fotema/Manifest
index 9eed07e4c129..825d8b234043 100644
--- a/media-gfx/fotema/Manifest
+++ b/media-gfx/fotema/Manifest
@@ -1,3 +1,2 @@
-DIST fotema-1.10.0.tar.xz 78681568 BLAKE2B 8956415b4e605b6c4cac12e8cd3d3179bace74ea0b5bc17bbede1d3ccc87c321cca09e6d42794c2568e2840c80333df54174d37f70368732e75657ee28d54e37 SHA512 28e1780a34f6bb655a7add708088ec4b6e42207f55055dd1011c6da9b5ea52407040cb5d02c4dff5d2ec2531ec94d02191d02ed1d29cebe64ff8a8e85f9cd0d7
-DIST fotema-1.13.0.tar.xz 78737380 BLAKE2B df1144a8bcb0fff573989e0178cf3a8304b8bb15c1847b0093b8bda507d82aef5ddaa49788aeb1e7431232b4afe6d10ff44c791ab577fa5dd5dd9b4e9d7528e8 SHA512 fb371c2fd3a31558a74a28d9bd06d5107a8bbd8c48c8dbbe672c687545258e0b6f27de8296543554d8e849ca16b99e7d328afb52c1ee30955284380b7b99eca4
DIST fotema-1.14.0.tar.xz 78584796 BLAKE2B c7a53e07fd8ccbd6ba48d595fd280e428ce334908c7b00a4fb5021d92b69c17836ede51656d4a5ab2473fc8220a4b3cbfe25cbdf6da58bc4b7ba7bfbe6ed35dd SHA512 44ff2dd4d3d8268a3f9795f3c37651173a077a7ff831def8e968f658a75786755f7129bed565da674306194084519240b1aa4d378431c36689578f175a054df1
+DIST fotema-1.14.1.tar.xz 78613740 BLAKE2B d945e6be4ef8db99e3c380a75dd6328bcd3a94f885f75bd11db4f164a11f0d541c07d198087aed80a8df637945ca9abc9a98d4c240b0faafe4726d7a82eaef3a SHA512 f80650ccc7401b743e9f6f1b6623f99e5c78df8da44b1608ef1ebfaaf7028858d78a6ca574a712ff2ec1760d4fe0535a365925068be88858eb230ea820803eb2
diff --git a/media-gfx/fotema/fotema-1.10.0-r1.ebuild b/media-gfx/fotema/fotema-1.10.0-r1.ebuild
deleted file mode 100644
index 5bf1f9cab059..000000000000
--- a/media-gfx/fotema/fotema-1.10.0-r1.ebuild
+++ /dev/null
@@ -1,86 +0,0 @@
-# Copyright 2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit cargo gnome2-utils meson xdg-utils
-
-DESCRIPTION="Photo gallery for Linux"
-HOMEPAGE="https://github.com/blissd/fotema"
-SRC_URI="
- https://github.com/blissd/fotema/releases/download/v${PV}/${P}.tar.xz
-"
-
-# see LICENSES/
-LICENSE="
- CC-BY-2.0 CC-BY-4.0 CC-BY-NC-SA-4.0 CC-BY-SA-4.0 CC0-1.0
- FDL-1.3+ GPL-3+ MIT
-"
-SLOT="0"
-KEYWORDS="~amd64"
-
-DEPEND="
- >=dev-libs/glib-2.66:2
- >=gui-libs/gtk-4.0.0:4
-"
-# indirect deps via crates
-DEPEND+="
- dev-libs/openssl:=
- gui-libs/libadwaita
- media-libs/fontconfig
- media-libs/graphene
- media-libs/lcms:2
- media-libs/libshumate:=
- media-libs/opencv:=[contribdnn]
- media-video/ffmpeg:=
- sci-libs/onnx
- sys-libs/libseccomp
- x11-libs/cairo
- x11-libs/gdk-pixbuf:2
- x11-libs/pango
-"
-RDEPEND="
- ${DEPEND}
- media-libs/glycin-loaders
-"
-BDEPEND="
- dev-libs/glib:2
-"
-
-ECARGO_VENDOR=${S}/vendor
-
-QA_FLAGS_IGNORED="/usr/bin/fotema"
-
-src_prepare() {
- default
- sed -i -e "/i18ndir =/s:'i18n':'share' / 'fotema' / &:" meson.build || die
-}
-
-src_configure() {
- cat >> "${ECARGO_HOME}/config.toml" <<-EOF || die
-
- [source."git+https://github.com/blissd/rust-faces.git?branch=patch"]
- git = "https://github.com/blissd/rust-faces.git"
- branch = "patch"
- replace-with = "gentoo"
- EOF
-
- local emesonargs=(
- -Dprofile=$(usex debug development default)
- )
-
- meson_src_configure
- ln -s "${CARGO_HOME}" "${BUILD_DIR}/cargo-home" || die
-
- export ORT_STRATEGY=system
-}
-
-pkg_postinst() {
- gnome2_schemas_update
- xdg_icon_cache_update
-}
-
-pkg_postrm() {
- gnome2_schemas_update
- xdg_icon_cache_update
-}
diff --git a/media-gfx/fotema/fotema-1.13.0.ebuild b/media-gfx/fotema/fotema-1.14.1.ebuild
index d4bc59161fe6..d4bc59161fe6 100644
--- a/media-gfx/fotema/fotema-1.13.0.ebuild
+++ b/media-gfx/fotema/fotema-1.14.1.ebuild