summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2024-07-22 17:56:04 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2024-07-22 17:56:04 +0000
commit7a0e8531efb990611394ecb436e5da2b8947ddf6 (patch)
treed33f01ef3d7e9e41ee338de5b598102578e8a3cb /dev-python
parent7128f8f8c3ad117ad2fc308b09c574c21086d3e1 (diff)
downloadbaldeagleos-repo-7a0e8531efb990611394ecb436e5da2b8947ddf6.tar.gz
baldeagleos-repo-7a0e8531efb990611394ecb436e5da2b8947ddf6.tar.xz
baldeagleos-repo-7a0e8531efb990611394ecb436e5da2b8947ddf6.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/Nuitka/Manifest4
-rw-r--r--dev-python/Nuitka/Nuitka-2.3.11.ebuild52
-rw-r--r--dev-python/Nuitka/Nuitka-2.3.9.ebuild52
-rw-r--r--dev-python/Nuitka/Nuitka-2.4.1.ebuild (renamed from dev-python/Nuitka/Nuitka-2.3.10.ebuild)0
-rw-r--r--dev-python/aiostream/Manifest1
-rw-r--r--dev-python/aiostream/aiostream-0.6.2.ebuild40
-rw-r--r--dev-python/astroid/Manifest1
-rw-r--r--dev-python/astroid/astroid-3.2.4.ebuild94
-rw-r--r--dev-python/dep-logic/Manifest1
-rw-r--r--dev-python/dep-logic/dep-logic-0.4.4.ebuild25
-rw-r--r--dev-python/ensurepip-setuptools/Manifest1
-rw-r--r--dev-python/ensurepip-setuptools/ensurepip-setuptools-71.1.0.ebuild24
-rw-r--r--dev-python/gmpy/Manifest1
-rw-r--r--dev-python/gmpy/gmpy-2.2.1.ebuild45
-rw-r--r--dev-python/miniupnpc/miniupnpc-2.2.8-r1.ebuild52
-rw-r--r--dev-python/numpy/Manifest2
-rw-r--r--dev-python/numpy/files/numpy-2.0.0_rc2-gcc14.patch23
-rw-r--r--dev-python/numpy/numpy-2.0.1.ebuild (renamed from dev-python/numpy/numpy-2.0.0_rc2-r1.ebuild)17
-rw-r--r--dev-python/peewee/peewee-3.17.6.ebuild2
-rw-r--r--dev-python/prometheus-client/prometheus-client-0.20.0.ebuild10
-rw-r--r--dev-python/pycpio/pycpio-9999.ebuild2
-rw-r--r--dev-python/pygobject/pygobject-3.48.2.ebuild80
-rw-r--r--dev-python/pylint/Manifest1
-rw-r--r--dev-python/pylint/pylint-3.2.6.ebuild93
-rw-r--r--dev-python/pymountboot/pymountboot-0.2.3-r2.ebuild33
-rw-r--r--dev-python/pyopenssl/Manifest2
-rw-r--r--dev-python/pyopenssl/pyopenssl-24.2.1.ebuild (renamed from dev-python/pyopenssl/pyopenssl-24.0.0.ebuild)3
-rw-r--r--dev-python/pypdf/Manifest1
-rw-r--r--dev-python/pypdf/pypdf-4.3.1.ebuild67
-rw-r--r--dev-python/pytest-httpserver/Manifest1
-rw-r--r--dev-python/pytest-httpserver/pytest-httpserver-1.0.12.ebuild39
-rw-r--r--dev-python/pytest-import-check/pytest-import-check-0.0.4.ebuild2
-rw-r--r--dev-python/setuptools/Manifest1
-rw-r--r--dev-python/setuptools/setuptools-71.1.0.ebuild124
-rw-r--r--dev-python/sphinx-gallery/Manifest1
-rw-r--r--dev-python/sphinx-gallery/sphinx-gallery-0.17.0.ebuild51
-rw-r--r--dev-python/tifffile/Manifest2
-rw-r--r--dev-python/tifffile/tifffile-2024.7.21.ebuild (renamed from dev-python/tifffile/tifffile-2024.6.18.ebuild)0
-rw-r--r--dev-python/zenlib/Manifest1
-rw-r--r--dev-python/zenlib/zenlib-2.2.0.ebuild16
-rw-r--r--dev-python/zenlib/zenlib-9999.ebuild15
41 files changed, 760 insertions, 222 deletions
diff --git a/dev-python/Nuitka/Manifest b/dev-python/Nuitka/Manifest
index 43e8b1ed1e9e..9489d200ad4c 100644
--- a/dev-python/Nuitka/Manifest
+++ b/dev-python/Nuitka/Manifest
@@ -1,4 +1,2 @@
-DIST Nuitka-2.3.10.tar.gz 3702002 BLAKE2B 6aa0a890d1db4f245686c87152855ff23c71726d34025bcd41fe9fb639ff78002396f7400aafbee59249b1a06238fd5384bdfb48e5b961580020cd7f02ce4e4d SHA512 757c332afe2099fdc4708ea83776657d669811d2215360bcdbd4b6d2765fabca81a533d8bf7122c570318d3363cb2a3b1f511f4b6fa28abbc6a3d046fb7ff23d
-DIST Nuitka-2.3.11.tar.gz 3701661 BLAKE2B c318bf839ad334c49eb145ecd7074e9c36f982af13a10cc8226ce0aeddea5b6cd69be9a3279a1e0da9f83934e3cc0f6d02d1c5f469839d6e6be05d056c8e2a68 SHA512 4165a922e79027cc71b7ecf175c5e85a071e6661613d9dc95ba553d4d167b979726094c025af513e7e62eb0553f206b31408d233ffd74f1256d163c31d127e16
-DIST Nuitka-2.3.9.tar.gz 3701334 BLAKE2B 8e86496330ddcbab61a875c173bcaa8acee74b4942efe7e0947c2e2536605bd8ba7eab59533766a0d308c446a577456ed398c703d71b58e9d53bba8fcc484c00 SHA512 6039580292d3cbb3adb2ad504c996f83beaa583336cbdcfae92c8310ffaabd8b9510451c2ceffb6a4c26f82e8e9c112468670eb8b5cdaae96ed152f3f9337272
+DIST Nuitka-2.4.1.tar.gz 3717378 BLAKE2B bcbfb41bd2fad4a72a7d6aa8122b28ab3f35cdb815f92a5cb9037443533f1689c1efdbb84feba7f63441fc86e9f4432fdff8167008d916fb18c8206dff5f7013 SHA512 48f8ae2701ccdf5353c4c15c1bbc99166427515a90518eb99d2063d39705d11ed37eaa4238a77054a42ee45a1408a39fb008b58ac9817821e2ec2c00f4cc7916
DIST Nuitka-2.4.tar.gz 3718936 BLAKE2B 385a2bb2bbaa971277d7812f53d5a141a9643b0886e46e90fc3f5f8e3cb991801414ce6215a075ffe7998a99a65d534d2af16f9c4adc6c48fd8dee428461563a SHA512 c622434f48bea3d651c4720f8d22f23ec1ba680f9b58c66772a229ca1dc671a6c702d34503d4f16588008300e8e7e32a73dd51b56da1de8edbb33fde62be6053
diff --git a/dev-python/Nuitka/Nuitka-2.3.11.ebuild b/dev-python/Nuitka/Nuitka-2.3.11.ebuild
deleted file mode 100644
index 35ccf652e8e3..000000000000
--- a/dev-python/Nuitka/Nuitka-2.3.11.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYPI_NO_NORMALIZE=1
-PYTHON_COMPAT=( python3_{8,9,10,11,12} )
-
-inherit distutils-r1 flag-o-matic optfeature pypi
-
-DESCRIPTION="Python to native compiler"
-HOMEPAGE="
- https://nuitka.net/
- https://github.com/Nuitka/Nuitka/
- https://pypi.org/project/Nuitka/
-"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~loong ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- dev-build/scons[${PYTHON_USEDEP}]
-"
-BDEPEND="
- ${RDEPEND}
- test? ( dev-util/ccache )
-"
-
-distutils-r1_src_prepare() {
- # remove vendored version of SCons that is Python2 only
- # this should be removed when upstream removes support for Python2
- rm -vR "nuitka/build/inline_copy/lib/scons-2.3.2/SCons" || die
- eapply_user
-}
-
-python_install() {
- distutils-r1_python_install
- doman doc/nuitka.1 doc/nuitka-run.1
-}
-
-python_test() {
- append-ldflags -Wl,--no-warn-search-mismatch
- ./tests/basics/run_all.py search || die
-}
-
-pkg_postinst() {
- optfeature "support for stand-alone executables" dev-util/patchelf
-}
diff --git a/dev-python/Nuitka/Nuitka-2.3.9.ebuild b/dev-python/Nuitka/Nuitka-2.3.9.ebuild
deleted file mode 100644
index 35ccf652e8e3..000000000000
--- a/dev-python/Nuitka/Nuitka-2.3.9.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYPI_NO_NORMALIZE=1
-PYTHON_COMPAT=( python3_{8,9,10,11,12} )
-
-inherit distutils-r1 flag-o-matic optfeature pypi
-
-DESCRIPTION="Python to native compiler"
-HOMEPAGE="
- https://nuitka.net/
- https://github.com/Nuitka/Nuitka/
- https://pypi.org/project/Nuitka/
-"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~loong ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- dev-build/scons[${PYTHON_USEDEP}]
-"
-BDEPEND="
- ${RDEPEND}
- test? ( dev-util/ccache )
-"
-
-distutils-r1_src_prepare() {
- # remove vendored version of SCons that is Python2 only
- # this should be removed when upstream removes support for Python2
- rm -vR "nuitka/build/inline_copy/lib/scons-2.3.2/SCons" || die
- eapply_user
-}
-
-python_install() {
- distutils-r1_python_install
- doman doc/nuitka.1 doc/nuitka-run.1
-}
-
-python_test() {
- append-ldflags -Wl,--no-warn-search-mismatch
- ./tests/basics/run_all.py search || die
-}
-
-pkg_postinst() {
- optfeature "support for stand-alone executables" dev-util/patchelf
-}
diff --git a/dev-python/Nuitka/Nuitka-2.3.10.ebuild b/dev-python/Nuitka/Nuitka-2.4.1.ebuild
index 35ccf652e8e3..35ccf652e8e3 100644
--- a/dev-python/Nuitka/Nuitka-2.3.10.ebuild
+++ b/dev-python/Nuitka/Nuitka-2.4.1.ebuild
diff --git a/dev-python/aiostream/Manifest b/dev-python/aiostream/Manifest
index 2b15d6e44bd6..4e37f0f98e04 100644
--- a/dev-python/aiostream/Manifest
+++ b/dev-python/aiostream/Manifest
@@ -1 +1,2 @@
DIST aiostream-0.6.1.gh.tar.gz 45466 BLAKE2B 848594d9ae191e32553dbff25ffa5926a2fd069bdc36d202f861603495ed5b33e04c4d6ae04704ca3f1d3525b73bf4f83455acc74fcfa831991c8c1ea504fe65 SHA512 0e7a87196ee7749247a6554a9347f2d8a46474db58e3793a8ac2c76b92b61e8ec7d372a05c692fcb600e81be502745ec1e7320e9dba75f50ebeff2a1ffdc35bd
+DIST aiostream-0.6.2.gh.tar.gz 46427 BLAKE2B fa77ccc17bff587419775785200b3640038e62b7af4187abb58f321641b524e9254a3adea7020491f4fbdab8b2f36c80eb0f430e50ff15c4f311007ad5fabce2 SHA512 572ec5281122653e2b3d3927ba6206b2c4ed975fcf64cf43aae62aed154e479902cd7ef0be274d89727cd64324dcb99389cd4cb5984a8ca646e3c43836f9f2e8
diff --git a/dev-python/aiostream/aiostream-0.6.2.ebuild b/dev-python/aiostream/aiostream-0.6.2.ebuild
new file mode 100644
index 000000000000..b349d7a18e84
--- /dev/null
+++ b/dev-python/aiostream/aiostream-0.6.2.ebuild
@@ -0,0 +1,40 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Generator-based operators for asynchronous iteration"
+HOMEPAGE="
+ https://pypi.org/project/aiostream/
+ https://github.com/vxgmichel/aiostream/
+"
+SRC_URI="
+ https://github.com/vxgmichel/aiostream/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+
+RDEPEND="
+ dev-python/typing-extensions[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ sed -i -e 's:--cov aiostream::' \
+ pyproject.toml || die
+ distutils-r1_src_prepare
+}
diff --git a/dev-python/astroid/Manifest b/dev-python/astroid/Manifest
index 2aca34179a42..5f88a510735e 100644
--- a/dev-python/astroid/Manifest
+++ b/dev-python/astroid/Manifest
@@ -1,2 +1,3 @@
DIST astroid-3.2.2.gh.tar.gz 465306 BLAKE2B f5bda1377eb825f4166804473eab592d07c6353295dca01517c3facf783ec71f281a27f6344699097784dde7315f794a62cbfae86879b2bbe446fb1191d40995 SHA512 1330f557664b5066309879b8bf05e29102000a6e08c63d94a7e7033f1e2295a3a9c3114f3587b9867f71b49e11428036438e4f22352498494f914f7c9f60d4ea
DIST astroid-3.2.3.gh.tar.gz 465447 BLAKE2B d41d206e3b362316ba71f109729fb26ff6b4f63719a0337f78545ce58fabaaa73a3ee62ff6bffa9c4a2f10e6e10718bdc17a38ecc319bce443695a60628ac315 SHA512 d9e8b85401598c0ffd3a27c37c4133bc9bba8436cdeb3dadc9a2337ebbf731c062451cdc5c9cf72a768ecf98253051ac012cfdb08084009a9c4a9043acfeabbc
+DIST astroid-3.2.4.gh.tar.gz 465788 BLAKE2B 745a860b7bacb45cb86e9b232fe3a37cdac40cb471b00832a7dd7da4c3374760749cebe8c8688748e750cc3639554515a7a9e24f5f4d2ebac10af2c906fa04a9 SHA512 e48289794f67cf53bb8a2dcf357c1e892140a0a625c2e19601cf5ad579aaa33a94f0e052915fa6e854bc0a2e626f41b2d13773aa2b2af2412efeb33d030ed2b6
diff --git a/dev-python/astroid/astroid-3.2.4.ebuild b/dev-python/astroid/astroid-3.2.4.ebuild
new file mode 100644
index 000000000000..929dc27577d2
--- /dev/null
+++ b/dev-python/astroid/astroid-3.2.4.ebuild
@@ -0,0 +1,94 @@
+# 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_{8,9,10,11,12} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Abstract Syntax Tree for logilab packages"
+HOMEPAGE="
+ https://github.com/pylint-dev/astroid/
+ https://pypi.org/project/astroid/
+"
+SRC_URI="
+ https://github.com/pylint-dev/astroid/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+# Version specified in pyproject.toml
+RDEPEND="
+ $(python_gen_cond_dep '
+ >=dev-python/typing-extensions-4.0.0[${PYTHON_USEDEP}]
+ ' 3.10)
+"
+# dev-python/regex isn't available for pypy
+BDEPEND="
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+ test? (
+ dev-python/attrs[${PYTHON_USEDEP}]
+ >=dev-python/numpy-1.17.0[${PYTHON_USEDEP}]
+ dev-python/python-dateutil[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/regex[${PYTHON_USEDEP}]
+ ' 'python*')
+ )
+"
+
+distutils_enable_tests pytest
+
+export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
+
+PATCHES=(
+ # https://github.com/pylint-dev/astroid/pull/2424 (rebased)
+ "${FILESDIR}/${PN}-3.2.2-py313.patch"
+)
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # no clue why they're broken
+ tests/test_modutils.py::GetModulePartTest::test_known_values_get_builtin_module_part
+ tests/test_regrtest.py::NonRegressionTests::test_numpy_distutils
+ # pydantic-2?
+ tests/brain/test_dataclasses.py::test_pydantic_field
+ # requires urllib3 with bundled six (skipped with urllib3>=2)
+ tests/test_modutils.py::test_file_info_from_modpath__SixMetaPathImporter
+ # hangs
+ tests/test_nodes.py::AsStringTest::test_recursion_error_trapped
+ # TODO
+ tests/test_builder.py::BuilderTest::test_data_build_error_filename
+ # numpy-2 (https://github.com/pylint-dev/astroid/issues/2442)
+ tests/brain/numpy/test_core_einsumfunc.py::test_numpy_function_calls_inferred_as_ndarray
+ tests/brain/numpy/test_core_fromnumeric.py::BrainNumpyCoreFromNumericTest::test_numpy_function_calls_inferred_as_ndarray
+ tests/brain/numpy/test_core_multiarray.py::BrainNumpyCoreMultiarrayTest::test_numpy_function_calls_inferred_as_ndarray
+ tests/brain/numpy/test_core_numerictypes.py::NumpyBrainCoreNumericTypesTest::test_datetime_astype_return
+ tests/brain/numpy/test_core_numerictypes.py::NumpyBrainCoreNumericTypesTest::test_generic_types_are_subscriptables
+ tests/brain/numpy/test_core_umath.py::NumpyBrainCoreUmathTest::test_numpy_core_umath_functions_return_type
+ tests/brain/numpy/test_core_umath.py::NumpyBrainCoreUmathTest::test_numpy_core_umath_functions_return_type_tuple
+ )
+
+ case ${EPYTHON} in
+ pypy3)
+ EPYTEST_DESELECT+=(
+ tests/test_transforms.py::TestTransforms::test_transform_aborted_if_recursion_limited
+ )
+ ;;
+ python3.13)
+ EPYTEST_DESELECT+=(
+ # changes in py3.13.0b4
+ # https://github.com/pylint-dev/astroid/issues/2478
+ tests/test_nodes.py::AsStringTest::test_f_strings
+ tests/test_nodes_lineno.py::TestLinenoColOffset::test_end_lineno_string
+ )
+ ;;
+ esac
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
diff --git a/dev-python/dep-logic/Manifest b/dev-python/dep-logic/Manifest
index a7ac5aa4d018..3b725a41bdfe 100644
--- a/dev-python/dep-logic/Manifest
+++ b/dev-python/dep-logic/Manifest
@@ -1,2 +1,3 @@
DIST dep_logic-0.4.2.tar.gz 34743 BLAKE2B e3d520f935034c5dacf3dbe123eacb2adb45a3b6d6e13c23d3c21c9d36af56093f504660c621ba586335930963243298d5284b41a29247fb9904bff13da7c724 SHA512 7a522e74cf6537ff644e785489c9a17108910d42769abfbc31dcdffde1d36e79c0cc76c98cd289982877296aab451a6963ee039dd258be67e0e82d2c81fd219b
DIST dep_logic-0.4.3.tar.gz 34793 BLAKE2B abbaa23d39d258b10912844cb28ca279efe7475e419f8c7be7a1119ed636d60bed851ae7fe47cf04f2caa391d933f8a2c5d404db6e8a8c7cf55224224b6a228c SHA512 4800e9cbd9f2479ebb2a2052361f385b68b1ec5ea3f308378dbef199e61a0443c0e28e4f4f7df8a444a4bd50edd25c7168428812543edc0bb0209d2fc5e0dfac
+DIST dep_logic-0.4.4.tar.gz 34883 BLAKE2B e28bf4cf3b4f3ff02af53d99bd9007ee5774c4e64d01386c9a736414420da6799f3f681c2f7934e9002ecff3ff87186ff9ec78bf5a18d225cfa32b0d31477468 SHA512 b22ac38a75d52f497cddc96ca2d571f036e0c3abde81b023f6348af4a606c966170e7609a4364425a410172f3e911b053d09aeb3fd0b124d7cb9b32b691e8bb1
diff --git a/dev-python/dep-logic/dep-logic-0.4.4.ebuild b/dev-python/dep-logic/dep-logic-0.4.4.ebuild
new file mode 100644
index 000000000000..0be9fa5f44dd
--- /dev/null
+++ b/dev-python/dep-logic/dep-logic-0.4.4.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=( python3_{8,9,10,11,12} pypy3 )
+
+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/ensurepip-setuptools/Manifest b/dev-python/ensurepip-setuptools/Manifest
index 220cc3e3e212..c7c0f4f9245e 100644
--- a/dev-python/ensurepip-setuptools/Manifest
+++ b/dev-python/ensurepip-setuptools/Manifest
@@ -1,3 +1,4 @@
DIST setuptools-70.2.0-py3-none-any.whl 930834 BLAKE2B 7ef99e6c7c47fd306c4a136504a1d3285faa046da6a4b0be15ec66a2a2eccbe34f203bed794f0a9114ae6970aea163207d22bd4bf5aedf44a92cc2abcac3d881 SHA512 ed6b5199a795c776d653f02e665e560da27e515cf334a2afbbf7f7cb7eb9cd738ca685a2b52d43d68ce6f63486d8da5baa216e58af95e5fad03c6dd95d3d901a
DIST setuptools-70.3.0-py3-none-any.whl 931070 BLAKE2B 92c424f7efc52f42bb4e04f3ddcc57eb079e2db3cb2af1a142520f656c05895ed5bde816e37f05d96d4c431fb888bf09d576956313667a029b6f8de9afc867b4 SHA512 085d39ef4426aa5f097fbc484595becc16e61ca23fc7da4d2a8bba540a3b82e789e390b176c7151bdc67d01735cce22b1562cdb2e31273225a2d3e275851a4ad
DIST setuptools-71.0.4-py3-none-any.whl 2341127 BLAKE2B 6312511c9981ff41e0f8a7eb3da511c9bf35b52af9fb7cbd826d3fecf342008911d8b13a6a0747a1f3d0a8189fcf701d82b03b7b62c73774845d35dc38fb8743 SHA512 a5909a1bbc46924ac8ee89322ed35fbf5562397fc46f5d20d12f6d63dbd94355c4c9718c07597b6d50c7fe46a771b96c2c25f1f2f53d6ff17c4d7cbd9e6bcb09
+DIST setuptools-71.1.0-py3-none-any.whl 2341722 BLAKE2B 5d2aa4205b91f619a5c6e9596d9ac77aaef4759a98d4a2ee1cd706b01febadf2b94cc891f92640da185ac565d315b141c66f628a213fa199a3ab282250250d34 SHA512 3c2a49f5a3953b525885635bbd93a503e6bc378914da2a2ff658b5800b27848e91ee268d652176c7034f55b8937db10d7e68f3d4d315ca03124ee3054f58e36c
diff --git a/dev-python/ensurepip-setuptools/ensurepip-setuptools-71.1.0.ebuild b/dev-python/ensurepip-setuptools/ensurepip-setuptools-71.1.0.ebuild
new file mode 100644
index 000000000000..97aca4a61872
--- /dev/null
+++ b/dev-python/ensurepip-setuptools/ensurepip-setuptools-71.1.0.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit pypi
+
+DESCRIPTION="Shared setuptools wheel for ensurepip Python module"
+HOMEPAGE="https://pypi.org/project/setuptools/"
+SRC_URI="$(pypi_wheel_url "${PN#ensurepip-}")"
+S=${DISTDIR}
+
+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"
+
+RDEPEND="
+ !<dev-python/ensurepip-wheels-100
+"
+
+src_install() {
+ insinto /usr/lib/python/ensurepip
+ doins "${A}"
+}
diff --git a/dev-python/gmpy/Manifest b/dev-python/gmpy/Manifest
index 8009f10c3fe2..188c6db696fa 100644
--- a/dev-python/gmpy/Manifest
+++ b/dev-python/gmpy/Manifest
@@ -2,3 +2,4 @@ DIST gmpy-2.1.5-cache.patch 19769 BLAKE2B 72d61ea00fda608ae92c5319828cb5c0003a69
DIST gmpy-2.1.5-py3.12.patch.gz 1817 BLAKE2B cbea3a9c662d52c5bfddb82ab5e920474a52c1dd715b3b9fecf55e5ee097297168ddb7961b6156e4c1f902e911890c77252d119c3651f345f01cad144ed44127 SHA512 26195e8e9a87147a05fd07fa325f262c2004fcba2b8857dbc87ca7a1e9e5e64b4a47d35be77edc263829e5df1db6a0acda6904307d01529eba832feb4f0f3f71
DIST gmpy2-2.1.5.tar.gz 261709 BLAKE2B 50958868866fadc49c97534780fa491fadfaaea902f3fd4bd51f4e76a94602a6d030a1ee6685aac742e25b5fbe4865e1419307f7215c8fb553b166761d63607a SHA512 92e16359ee1df63faaeae4a3cbefe8cdbbc576d8eda377f08d59f12b70dfe9337a299686e85d1efee6c2f5b41fc4583643fecc68ea38a500c7f876c56fc169e7
DIST gmpy2-2.2.0.tar.gz 233943 BLAKE2B e25f47fe25896df7e2ac7dce0eb8bdbe39bb6e12a07c600483bed534332b07f27bb70b23ae7801212df3c1a6c7731fba2f92f8215c618ea0fcc86d175abfc439 SHA512 402d7fc3c320e6d4742b3bd4dd3bf24c70192c1196f522def067f1b1d583c4b60d7497f95ba71691bafbccbe1e0fad8f0d2ec6fee455b9521bdc303510744188
+DIST gmpy2-2.2.1.tar.gz 234228 BLAKE2B 80188c6abd30ee5b5ebc4d233d3d97dd78be7f9d21d0649429e87b23d3e6d8b5b9269c792d481f24bd3b43d28e012bdd64ee6bb5d0137e3ac759742c845186c1 SHA512 2a3dc011295a373e10455e1f133aa3063cff24cdac0151cee9f29ce5855c3e44c3e3aab61bf13c11c9df1147b9183c6c387db1cb4dcb270b9dce1a9cb521f5dc
diff --git a/dev-python/gmpy/gmpy-2.2.1.ebuild b/dev-python/gmpy/gmpy-2.2.1.ebuild
new file mode 100644
index 000000000000..37f7b473993b
--- /dev/null
+++ b/dev-python/gmpy/gmpy-2.2.1.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYPI_PN="gmpy2"
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Python bindings for GMP, MPC, MPFR and MPIR libraries"
+HOMEPAGE="
+ https://github.com/aleaxit/gmpy/
+ https://pypi.org/project/gmpy2/
+"
+
+LICENSE="LGPL-3+"
+SLOT="2"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+
+DEPEND="
+ >=dev-libs/mpc-1.0.2:=
+ >=dev-libs/mpfr-3.1.2:=
+ dev-libs/gmp:0=
+"
+RDEPEND="
+ ${DEPEND}
+"
+BDEPEND="
+ test? (
+ dev-python/hypothesis[${PYTHON_USEDEP}]
+ dev-python/mpmath[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ rm -rf gmpy2 || die
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
diff --git a/dev-python/miniupnpc/miniupnpc-2.2.8-r1.ebuild b/dev-python/miniupnpc/miniupnpc-2.2.8-r1.ebuild
new file mode 100644
index 000000000000..b6ec2e83d2e5
--- /dev/null
+++ b/dev-python/miniupnpc/miniupnpc-2.2.8-r1.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-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=( python3_{8,9,10,11,12} pypy3 )
+
+inherit distutils-r1 verify-sig
+
+MY_P=${P/python-}
+DESCRIPTION="Python bindings for UPnP client library"
+HOMEPAGE="
+ http://miniupnp.free.fr/
+ https://miniupnp.tuxfamily.org/
+ https://github.com/miniupnp/miniupnp/
+"
+SRC_URI="
+ https://miniupnp.tuxfamily.org/files/${MY_P}.tar.gz
+ verify-sig? (
+ https://miniupnp.tuxfamily.org/files/${MY_P}.tar.gz.sig
+ )
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+
+DEPEND="
+ >=net-libs/miniupnpc-${PV}:0=
+"
+RDEPEND="
+ ${DEPEND}
+"
+BDEPEND="
+ verify-sig? ( sec-keys/openpgp-keys-miniupnp )
+"
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/miniupnp.asc
+
+PATCHES=(
+ "${FILESDIR}"/miniupnpc-2.2.3-shared-lib.patch
+)
+
+# DOCS are installed by net-libs/miniupnpc.
+DOCS=()
+
+# Example test command:
+# python -c 'import miniupnpc; u = miniupnpc.UPnP(); u.discover(); u.selectigd(); print(u.externalipaddress())'
+distutils_enable_tests import-check
diff --git a/dev-python/numpy/Manifest b/dev-python/numpy/Manifest
index 0e5f535e1a09..81f1ba9d45e6 100644
--- a/dev-python/numpy/Manifest
+++ b/dev-python/numpy/Manifest
@@ -1,3 +1,3 @@
DIST numpy-1.26.4.tar.gz 15786129 BLAKE2B ee759d3a857111bc494d5e989a7b005375d942b2a89cda69be4a3bd7c6cb195003fd2a8a0535f1858d8977ff688b0ec36360dcba9c3160206eedce5e28f191ef SHA512 f7121ab4099fa0686f9c095d456baa4a5869d651d7b7a06385f885f329cf08f11024b5df5e7b4ee705970062a8102ec4f709512eabbfd5c9fccce4ef83b9c208
DIST numpy-2.0.0.tar.gz 18326228 BLAKE2B e3d1084b79e0e55cd9087bb34dc116e6c9d6ab14a416a07f727b9f5d5a9db236ecf74a53b7e758d078781c5e565e5557912962f2ddbfff7251ec5b231fabe01d SHA512 cd5612ce2db4be87afa8479c508c256c9ff7f1b15a6b010eb06ba962759cc26552b512ec82711680bab1ebedeb06dfc8d7bff9cec63c94efacaadd719448b287
-DIST numpy-2.0.0rc2.tar.gz 18323588 BLAKE2B e2d5d03594d0cba360d4e85207818d15a0761f37cc3fb366f8f9f8bdd97743fe0cf0d09a34319c8b6af29b2bc1fc32a7f5be30a5fa2bdebffe455baff05caf7e SHA512 f86b27264c5274823aa11cbedf17c08f81f9acd05430bf40cccbbe8dcff523410629795ca5927d7f8e6c152272b274d777b64f547d23f50d11ae9fd656fd773d
+DIST numpy-2.0.1.tar.gz 18872007 BLAKE2B dd1d4658466057892f10cdc29a764b324dbf5ef800b8e9781ce7131935d12ddefbc9fa691021cc06a7efd5ec5874113e6f1d5616eb1a7a833c0f63a0e7a5e534 SHA512 4f638c17b44317b0000000b729726a5a4e9519af11d254b0e2daf32c6ff0cfdd56723a9cbee67c9145088f429f1f0cce79240f968211c2fb5ac08378e86dccfe
diff --git a/dev-python/numpy/files/numpy-2.0.0_rc2-gcc14.patch b/dev-python/numpy/files/numpy-2.0.0_rc2-gcc14.patch
deleted file mode 100644
index f3ed3727520d..000000000000
--- a/dev-python/numpy/files/numpy-2.0.0_rc2-gcc14.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-From f3bc38235bf39a630035920e29f2f883cae5fffe Mon Sep 17 00:00:00 2001
-From: Matti Picus <matti.picus@gmail.com>
-Date: Sun, 26 May 2024 11:25:43 +0300
-Subject: [PATCH 1/3] BUG: cast missing in PyPy-specific f2py code
-
----
- numpy/f2py/cb_rules.py | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/numpy/f2py/cb_rules.py b/numpy/f2py/cb_rules.py
-index 721e075b6c73..faf8dd401301 100644
---- a/numpy/f2py/cb_rules.py
-+++ b/numpy/f2py/cb_rules.py
-@@ -122,7 +122,7 @@
- #setdims#
- #ifdef PYPY_VERSION
- #define CAPI_ARGLIST_SETITEM(idx, value) PyList_SetItem((PyObject *)capi_arglist_list, idx, value)
-- capi_arglist_list = PySequence_List(capi_arglist);
-+ capi_arglist_list = PySequence_List((PyObject *)capi_arglist);
- if (capi_arglist_list == NULL) goto capi_fail;
- #else
- #define CAPI_ARGLIST_SETITEM(idx, value) PyTuple_SetItem((PyObject *)capi_arglist, idx, value)
-
diff --git a/dev-python/numpy/numpy-2.0.0_rc2-r1.ebuild b/dev-python/numpy/numpy-2.0.1.ebuild
index 5412e3cb9160..1d06e3af61d1 100644
--- a/dev-python/numpy/numpy-2.0.0_rc2-r1.ebuild
+++ b/dev-python/numpy/numpy-2.0.1.ebuild
@@ -52,11 +52,6 @@ EPYTEST_XDIST=1
distutils_enable_tests pytest
python_prepare_all() {
- local PATCHES=(
- # https://github.com/numpy/numpy/pull/26534
- "${FILESDIR}/${P}-gcc14.patch"
- )
-
# bug #922457
filter-lto
# https://github.com/numpy/numpy/issues/25004
@@ -93,7 +88,7 @@ python_test() {
'core/tests/test_multiarray.py::TestDot::test_huge_vectordot[complex128]'
)
- if use arm && [[ $(uname -m || echo "unknown") == "armv8l" ]] ; then
+ if [[ $(uname -m) == armv8l ]]; then
# Degenerate case of arm32 chroot on arm64, bug #774108
EPYTEST_DESELECT+=(
core/tests/test_cpu_features.py::Test_ARM_Features::test_features
@@ -105,6 +100,16 @@ python_test() {
EPYTEST_DESELECT+=(
_core/tests/test_nditer.py::test_iter_refcount
_core/tests/test_limited_api.py::test_limited_api
+ f2py/tests/test_f2py2e.py::test_gh22819_cli
+ )
+ ;&
+ python3.12)
+ EPYTEST_DESELECT+=(
+ # flaky
+ f2py/tests/test_crackfortran.py
+ f2py/tests/test_data.py::TestData::test_crackedlines
+ f2py/tests/test_data.py::TestDataF77::test_crackedlines
+ f2py/tests/test_f2py2e.py::test_gen_pyf
)
;;
esac
diff --git a/dev-python/peewee/peewee-3.17.6.ebuild b/dev-python/peewee/peewee-3.17.6.ebuild
index 1e02588fa109..021da004cc93 100644
--- a/dev-python/peewee/peewee-3.17.6.ebuild
+++ b/dev-python/peewee/peewee-3.17.6.ebuild
@@ -37,6 +37,7 @@ BDEPEND="
test? (
dev-db/postgresql
dev-python/psycopg:0[${PYTHON_USEDEP}]
+ sys-libs/timezone-data
)
"
@@ -62,6 +63,7 @@ src_test() {
initdb -D "${T}"/pgsql || die
pg_ctl -w -D "${T}"/pgsql start -o "-h '' -k '${T}'" || die
createdb -h "${T}" peewee_test || die
+ psql -h "${T}" peewee_test -c 'create extension hstore;' || die
local -x PEEWEE_PSQL_HOST="${T}"
distutils-r1_src_test
diff --git a/dev-python/prometheus-client/prometheus-client-0.20.0.ebuild b/dev-python/prometheus-client/prometheus-client-0.20.0.ebuild
index e66ad60e742d..e8ad1798dc6c 100644
--- a/dev-python/prometheus-client/prometheus-client-0.20.0.ebuild
+++ b/dev-python/prometheus-client/prometheus-client-0.20.0.ebuild
@@ -23,3 +23,13 @@ RDEPEND="
"
distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_IGNORE=(
+ # optional tests, broken with >=dev-python/asgiref-3.8
+ tests/test_asgi.py
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
diff --git a/dev-python/pycpio/pycpio-9999.ebuild b/dev-python/pycpio/pycpio-9999.ebuild
index 783dffb95352..38618b577c96 100644
--- a/dev-python/pycpio/pycpio-9999.ebuild
+++ b/dev-python/pycpio/pycpio-9999.ebuild
@@ -14,4 +14,4 @@ EGIT_REPO_URI="https://github.com/desultory/${PN}"
LICENSE="GPL-2"
SLOT="0"
-RDEPEND=">=dev-python/zenlib-2.1.2[${PYTHON_USEDEP}]"
+RDEPEND=">=dev-python/zenlib-9999[${PYTHON_USEDEP}]"
diff --git a/dev-python/pygobject/pygobject-3.48.2.ebuild b/dev-python/pygobject/pygobject-3.48.2.ebuild
deleted file mode 100644
index c59af12a2281..000000000000
--- a/dev-python/pygobject/pygobject-3.48.2.ebuild
+++ /dev/null
@@ -1,80 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-DISTUTILS_USE_PEP517=no
-PYTHON_COMPAT=( python3_{8,9,10,11,12} 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/
-"
-
-LICENSE="LGPL-2.1+"
-SLOT="3"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-IUSE="+cairo examples test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- >=dev-libs/glib-2.64:2
- >=dev-libs/gobject-introspection-1.64:=
- 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
-"
-
-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}"
- meson_src_test --timeout-multiplier 3 || die "test failed for ${EPYTHON}"
-}
-
-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/pylint/Manifest b/dev-python/pylint/Manifest
index 8c38342880fc..a300c7086894 100644
--- a/dev-python/pylint/Manifest
+++ b/dev-python/pylint/Manifest
@@ -1 +1,2 @@
DIST pylint-3.2.5.gh.tar.gz 1446535 BLAKE2B fdc88c7873868b1cb689158d014c51a14be9200715ad2f870cc7f8703e1e29881d04092c5e49fd043d54b31258b25d0c0f40cb81cd50c0603835a67197b29d85 SHA512 bba78776ae2610456ecfecffd9571712c13c38006de19d569aaf11bdeee978e1ad33b09ce64288fb2ebccd76d76a788a8db39209cf3f9963d8a38a43605bcbaa
+DIST pylint-3.2.6.gh.tar.gz 1447684 BLAKE2B 22ec600b327b405dfdd7a9ffe94b20faeed6cca92dbfff8e96baa6bebe5c049b90da55f16e84e53d4a22fdbcb5a8caf7719038935522235ccf3364fe2492c16c SHA512 ba7e87f3eaca088b88cec35ae8d1dbd15ec2167a615638b1fe7c1abb711d54742e5fb2d2c9c2836294c464b98ec32d53efaf5afb170d4cb73dacf966dddca62c
diff --git a/dev-python/pylint/pylint-3.2.6.ebuild b/dev-python/pylint/pylint-3.2.6.ebuild
new file mode 100644
index 000000000000..3646923d16e0
--- /dev/null
+++ b/dev-python/pylint/pylint-3.2.6.ebuild
@@ -0,0 +1,93 @@
+# 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_{8,9,10,11,12} pypy3 )
+PYTHON_REQ_USE="threads(+)"
+
+inherit distutils-r1
+
+MY_P=${P/_beta/b}
+DESCRIPTION="Python code static checker"
+HOMEPAGE="
+ https://pypi.org/project/pylint/
+ https://github.com/pylint-dev/pylint/
+"
+SRC_URI="
+ https://github.com/pylint-dev/pylint/archive/v${PV/_beta/b}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="examples"
+
+RDEPEND="
+ <dev-python/astroid-3.3[${PYTHON_USEDEP}]
+ >=dev-python/astroid-3.2.4[${PYTHON_USEDEP}]
+ >=dev-python/dill-0.3.7[${PYTHON_USEDEP}]
+ >=dev-python/isort-4.2.5[${PYTHON_USEDEP}]
+ <dev-python/isort-6[${PYTHON_USEDEP}]
+ >=dev-python/mccabe-0.6[${PYTHON_USEDEP}]
+ <dev-python/mccabe-0.8[${PYTHON_USEDEP}]
+ >=dev-python/platformdirs-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/tomlkit-0.10.1[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ >=dev-python/tomli-1.1.0[${PYTHON_USEDEP}]
+ ' 3.10)
+"
+BDEPEND="
+ test? (
+ $(python_gen_cond_dep '
+ >=dev-python/GitPython-3[${PYTHON_USEDEP}]
+ ' 'python*' )
+ <dev-python/pytest-8[${PYTHON_USEDEP}]
+ dev-python/pytest-timeout[${PYTHON_USEDEP}]
+ dev-python/typing-extensions[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # TODO
+ 'tests/test_functional.py::test_functional[dataclass_with_field]'
+ 'tests/test_functional.py::test_functional[no_name_in_module]'
+ 'tests/test_functional.py::test_functional[recursion_error_3159]'
+ 'tests/test_functional.py::test_functional[shadowed_import]'
+ 'tests/test_functional.py::test_functional[use_yield_from]'
+ 'tests/test_functional.py::test_functional[wrong_import_order]'
+ )
+ local EPYTEST_IGNORE=(
+ # No need to run the benchmarks
+ tests/benchmark/test_baseline_benchmarks.py
+ )
+
+ if ! has_version "dev-python/GitPython[${PYTHON_USEDEP}]"; then
+ EPYTEST_IGNORE+=(
+ tests/profile/test_profile_against_externals.py
+ tests/testutils/_primer/test_package_to_lint.py
+ tests/testutils/_primer/test_primer.py
+ )
+ fi
+
+ rm -rf pylint || die
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -p timeout
+}
+
+python_install_all() {
+ if use examples ; then
+ docompress -x "/usr/share/doc/${PF}/examples"
+ docinto examples
+ dodoc -r examples/.
+ fi
+
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/pymountboot/pymountboot-0.2.3-r2.ebuild b/dev-python/pymountboot/pymountboot-0.2.3-r2.ebuild
new file mode 100644
index 000000000000..3323903ed387
--- /dev/null
+++ b/dev-python/pymountboot/pymountboot-0.2.3-r2.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-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=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Python extension module to (re)mount /boot"
+HOMEPAGE="https://github.com/projg2/pymountboot/"
+SRC_URI="
+ https://github.com/projg2/pymountboot/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~riscv ~sparc ~x86"
+
+DEPEND="
+ >=sys-apps/util-linux-2.20
+"
+RDEPEND="
+ ${DEPEND}
+"
+BDEPEND="
+ virtual/pkgconfig
+"
+
+distutils_enable_tests import-check
diff --git a/dev-python/pyopenssl/Manifest b/dev-python/pyopenssl/Manifest
index 59bb1bcc43ab..8c515e3c8ef9 100644
--- a/dev-python/pyopenssl/Manifest
+++ b/dev-python/pyopenssl/Manifest
@@ -1,2 +1,2 @@
-DIST pyOpenSSL-24.0.0.tar.gz 183238 BLAKE2B 93c75bd323ceb65945fa57a586403c2166b949ce0d4d158b94dc6c40b49373f63e38b0a2cdf2478ab8f6d5d12feeb261324fa13f06040f91b92fffce408d1071 SHA512 32503eeb8b03d9f7dc580c9a2fbbc009a1498b444d17751253bccf8344897408e6d99043dae01385d00bd56fa5aa7d486a43fdc81b1d14cc59fa372c9e58c4e8
+DIST 24.2.1.tar.gz 178572 BLAKE2B daf502d53c75fb16a6e22e6ad6f2e1eb4fa12724d71573b99918990e8a6f58340b892384c80a21a8b2c0a9f38d57b2c4a87a4b8dacd3d0002777a2fe49c37513 SHA512 9527a0c3140c3284b84e2aa126cd5c691d06b276902f74c87f60e24cb321edce4ddb0b44a2651f5ad9998580225583e32f06a65f52ce6f0f947ad8cf538cd339
DIST pyOpenSSL-24.1.0.tar.gz 179671 BLAKE2B d49139e9604e854427005adb17cbc8926fa4e10390b36446f9c95dbe81802bb8b97c2e6f1ea8f91dfd74733631292c88536c4f9772647e6d4b449b4d01ed6355 SHA512 acb07025f085d2fe9338e5ce5f65937001b1a8376c41ac532e9b0548668ce05c844e3e28c58efad812a034becf8e24aa9504165ff6af4c3b085cf463fa4d2fb6
diff --git a/dev-python/pyopenssl/pyopenssl-24.0.0.ebuild b/dev-python/pyopenssl/pyopenssl-24.2.1.ebuild
index 96c8a62fde9e..811730123e1a 100644
--- a/dev-python/pyopenssl/pyopenssl-24.0.0.ebuild
+++ b/dev-python/pyopenssl/pyopenssl-24.2.1.ebuild
@@ -9,7 +9,7 @@ PYTHON_REQ_USE="threads(+)"
PYPI_NO_NORMALIZE=1
PYPI_PN=pyOpenSSL
-inherit distutils-r1 toolchain-funcs pypi
+inherit distutils-r1 toolchain-funcs
DESCRIPTION="Python interface to the OpenSSL library"
HOMEPAGE="
@@ -17,6 +17,7 @@ HOMEPAGE="
https://github.com/pyca/pyopenssl/
https://pypi.org/project/pyOpenSSL/
"
+SRC_URI="https://github.com/pyca/pyopenssl/archive/refs/tags/24.2.1.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
diff --git a/dev-python/pypdf/Manifest b/dev-python/pypdf/Manifest
index 0ae163f55757..66ba293d16e0 100644
--- a/dev-python/pypdf/Manifest
+++ b/dev-python/pypdf/Manifest
@@ -1,3 +1,4 @@
DIST pypdf-4.2.0.gh.tar.gz 8009612 BLAKE2B a21108679a6dd5d9bc16aaf4a9c1beaaab875f0a8f974722d6d318635eecee82bc37c7c4c175816079ce9604f8b88f07f31458b08994833a25ee18bc46cbc294 SHA512 99fe599a81ae7e115ee6fca82ffabaff613ee49756a7e937de32a4d59b5731effe5cc3a076d92423b2299896a6ecab41ab5096aea6836fec79ba637e2c7b7620
DIST pypdf-4.3.0.gh.tar.gz 8015836 BLAKE2B 691e729050e7e6d052d8f4ccf1698b2cd6685c007026036b98c321bf9cd007abf8830ffe5281bdabab1b57afb6e6015e631e8e62104d144de98ed270f8ba992e SHA512 ba0cb8815d889742e2f0155e9b296b483e29c22ef2ecff3779c05baae3132900827f1b6f9a155bf4a2ae2f442727ae0fe310e322d0211cb43ee821cd8f6d411c
+DIST pypdf-4.3.1.gh.tar.gz 8016393 BLAKE2B 1ff64b79dda008c92670188e174940137da5af721e169e3a45f4784aa5fdd41f9b679701009f9fa59ac31a401786cece8315d72bd7942ca5af8b05e4ed4564be SHA512 17e1b127efe744a0ff2e9733295effcbab8e497d65cae3cb821646df1c0178991771910f0ef0b4f72525d980d840bfdc4290a05ea191669887f2122ec3521825
DIST pypdf-sample-files-8c405ece5eff12396a34a1fae3276132002e1753.gh.tar.gz 11748093 BLAKE2B c5989200893b28a3c2062bb024a5cfc6f3389dc259ec129857979fa43469e1274559612b4d555499e2c7e16cf34be07825229932bf4d147fa6d7324d043e97d5 SHA512 c9771129b7668a2fd1fa79bb859ae9213f3d60341cf1b9937ff0eaab0de9bf4c35adcb7b896e93329038dc0f3809a0c697c523f8fe41b43030b0b029a88058e3
diff --git a/dev-python/pypdf/pypdf-4.3.1.ebuild b/dev-python/pypdf/pypdf-4.3.1.ebuild
new file mode 100644
index 000000000000..656b4069fadd
--- /dev/null
+++ b/dev-python/pypdf/pypdf-4.3.1.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1
+
+SAMPLE_COMMIT=8c405ece5eff12396a34a1fae3276132002e1753
+DESCRIPTION="Python library to work with PDF files"
+HOMEPAGE="
+ https://pypi.org/project/pypdf/
+ https://github.com/py-pdf/pypdf/
+"
+SRC_URI="
+ https://github.com/py-pdf/pypdf/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+ test? (
+ https://github.com/py-pdf/sample-files/archive/${SAMPLE_COMMIT}.tar.gz
+ -> ${PN}-sample-files-${SAMPLE_COMMIT}.gh.tar.gz
+ )
+"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+
+RDEPEND="
+ $(python_gen_cond_dep '
+ >=dev-python/typing-extensions-4.0[${PYTHON_USEDEP}]
+ ' 3.10)
+"
+BDEPEND="
+ test? (
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ >=dev-python/pillow-8.0.0[jpeg,jpeg2k,tiff,zlib,${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_unpack() {
+ default
+ if use test; then
+ mv "sample-files-${SAMPLE_COMMIT}"/* "${S}"/sample-files/ || die
+ fi
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ tests/test_reader.py::test_decode_permissions
+ tests/test_workflows.py::test_text_extraction_layout_mode
+ # rely on -Werror
+ tests/test_utils.py::test_deprecate_no_replacement
+ tests/test_workflows.py::test_orientations
+ tests/test_writer.py::test_remove_image_per_type
+ tests/test_generic.py::test_name_object
+ # Internet
+ tests/test_generic.py::test_calling_indirect_objects
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -o addopts= -m "not enable_socket"
+}
diff --git a/dev-python/pytest-httpserver/Manifest b/dev-python/pytest-httpserver/Manifest
index 99d11c0ae59d..c02cf9663032 100644
--- a/dev-python/pytest-httpserver/Manifest
+++ b/dev-python/pytest-httpserver/Manifest
@@ -1,2 +1,3 @@
DIST pytest_httpserver-1.0.10.tar.gz 60446 BLAKE2B 99d1db58f7b6fab78b687db0fc2448cbd9a3132b999e4d0ca1c8533ec2afebc717b9c28a16635260fb305aaafb832f591d28752ba3930473312a677dfaffd0be SHA512 f8636ccf757f687666a5336db66ac061ea6205979c7bbf8c9a2534282d8559453a7470318c07384aa755282c12e63537cce2ab9e9f3b2fbcda0e649ed2a45f92
DIST pytest_httpserver-1.0.11.tar.gz 66742 BLAKE2B 641c566b2ae349bf02f9a457c488ac6820cbeabbf430d12d84ba02b09382947aa60b61a6a1578b260d160b3e8d01c37745dfd2e90bdb6aea40f546a8103b367f SHA512 3d3055bc48bbe523fddbf9e9ba3495c3141a6dcd4f8b2cf9c19f11d1e6f4a93eebe64bb920ea5bd3bc0d30f4469ecb9a8beca35fc844ca2c62f6868edcb570ee
+DIST pytest_httpserver-1.0.12.tar.gz 66948 BLAKE2B b50871038b1c313db76c456e86bfe82046bcb8207cb72126db18bde5dea4e3cabb6740a19d27eba672967078f60978c1b20946bf502837e0859d957d0318afeb SHA512 fd3d290b23137d0c2893672611e7087e86ed47ccda865779304d177ac2ef6e0068321eb42f42ec89db859fb66910ad68399d3a4aefde250bd207ab9ff4666e3e
diff --git a/dev-python/pytest-httpserver/pytest-httpserver-1.0.12.ebuild b/dev-python/pytest-httpserver/pytest-httpserver-1.0.12.ebuild
new file mode 100644
index 000000000000..6d111605c24d
--- /dev/null
+++ b/dev-python/pytest-httpserver/pytest-httpserver-1.0.12.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="HTTP server for pytest to test HTTP clients"
+HOMEPAGE="
+ https://github.com/csernazs/pytest-httpserver/
+ https://pypi.org/project/pytest_httpserver/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ dev-python/werkzeug[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/requests[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_IGNORE=(
+ # tests from building release artifacts
+ tests/test_release.py
+ )
+
+ epytest -p no:localserver
+}
diff --git a/dev-python/pytest-import-check/pytest-import-check-0.0.4.ebuild b/dev-python/pytest-import-check/pytest-import-check-0.0.4.ebuild
index 95854c0ddf95..7173ee71217d 100644
--- a/dev-python/pytest-import-check/pytest-import-check-0.0.4.ebuild
+++ b/dev-python/pytest-import-check/pytest-import-check-0.0.4.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+KEYWORDS="~amd64 ~arm ~arm64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
RDEPEND="
>=dev-python/pytest-8.1[${PYTHON_USEDEP}]
diff --git a/dev-python/setuptools/Manifest b/dev-python/setuptools/Manifest
index 81c1e152e207..c101218e81c9 100644
--- a/dev-python/setuptools/Manifest
+++ b/dev-python/setuptools/Manifest
@@ -1,3 +1,4 @@
DIST setuptools-70.2.0.tar.gz 2332711 BLAKE2B d552e3c7fb8bad3829b6c210827af2a3993afa7c534502d08cb7f87df846f9939b75ce181217c673be7a0c71e81ede437b5f44cf9a42ff13133a9f922e426c1d SHA512 a2b0aaf57d012326475ee7637e65ebbc3b1a09b338850e8b0c6a0f169c49651f934c813d6d347ba1ff04894a4d8341bb5fedbea35d45dbc19f317587bbb35094
DIST setuptools-70.3.0.tar.gz 2333112 BLAKE2B cffe583c1440e2c6ed049fc0c3da70d6b3f43710cec8eeba9b96906d7d3113c0156ac0398f12355e2c0eeeb73dc351e56eea117361c83a4819e255f2b44d01da SHA512 9f330bd9867631da69ee0886551033a6e8ef3cf52cfe38aad9fcd359cbfc2e0d7ee8c85382b29f8d52568c674893dc07f2b2a896afe5154e6140bb3209ee50a0
DIST setuptools-71.0.4.tar.gz 2421868 BLAKE2B 29c63bedd87dd4c79ef86d20b6ab4297ae434a59d412813d0ef136c6239b8c77c7ec81b8384319a0e18617d0f8417da3c28d9f8ece40f4509949611c575c35a2 SHA512 efd1996e2720244b8bb385682258be4b2cd67d18b0910aa3f32c23907fad998144ff47455fb8866298e2b879b714624d09efefdcf1bf1d55047ecd3d1e36548e
+DIST setuptools-71.1.0.tar.gz 2422233 BLAKE2B b98bc2155cdf5acabd52c942a8b7908dbb48b39a3abbf065e42b089e22c3bba27aeee3492c5ecfc1de8b4bdba3c97259cfc609a31cdc11cdaf23f9a2dbab8685 SHA512 2cb817d3dee790ab1e71739b3980361c6dface44fa9c027a92aa3f96e758c034b0330de5eae48365dfa17933fe050f8418cff23fea192b3c616789215e411c1a
diff --git a/dev-python/setuptools/setuptools-71.1.0.ebuild b/dev-python/setuptools/setuptools-71.1.0.ebuild
new file mode 100644
index 000000000000..a6e9a718aab0
--- /dev/null
+++ b/dev-python/setuptools/setuptools-71.1.0.ebuild
@@ -0,0 +1,124 @@
+# 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
+
+# please bump dev-python/ensurepip-setuptools along with this package!
+
+DISTUTILS_USE_PEP517=standalone
+PYTHON_TESTED=( python3_{8,9,10,11,12} pypy3 )
+PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" )
+PYTHON_REQ_USE="xml(+)"
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Collection of extensions to Distutils"
+HOMEPAGE="
+ https://github.com/pypa/setuptools/
+ https://pypi.org/project/setuptools/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ !!<dev-python/setuptools-rust-1.8.0
+ >=dev-python/jaraco-text-3.7.0-r1[${PYTHON_USEDEP}]
+ >=dev-python/more-itertools-8.12.0-r1[${PYTHON_USEDEP}]
+ >=dev-python/ordered-set-4.0.2-r1[${PYTHON_USEDEP}]
+ >=dev-python/packaging-24[${PYTHON_USEDEP}]
+ >=dev-python/platformdirs-2.6.2-r1[${PYTHON_USEDEP}]
+ >=dev-python/wheel-0.37.1-r1[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ >=dev-python/tomli-2.0.1[${PYTHON_USEDEP}]
+ ' 3.10)
+"
+BDEPEND="
+ ${RDEPEND}
+ test? (
+ $(python_gen_cond_dep '
+ >=dev-python/build-1.0.3[${PYTHON_USEDEP}]
+ >=dev-python/ini2toml-0.14[${PYTHON_USEDEP}]
+ >=dev-python/filelock-3.4.0[${PYTHON_USEDEP}]
+ >=dev-python/jaraco-envs-2.2[${PYTHON_USEDEP}]
+ >=dev-python/jaraco-path-3.2.0[${PYTHON_USEDEP}]
+ dev-python/jaraco-test[${PYTHON_USEDEP}]
+ dev-python/pip[${PYTHON_USEDEP}]
+ dev-python/pip-run[${PYTHON_USEDEP}]
+ dev-python/pyproject-hooks[${PYTHON_USEDEP}]
+ dev-python/pytest[${PYTHON_USEDEP}]
+ >=dev-python/pytest-home-0.5[${PYTHON_USEDEP}]
+ dev-python/pytest-subprocess[${PYTHON_USEDEP}]
+ dev-python/pytest-timeout[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ >=dev-python/tomli-w-1.0.0[${PYTHON_USEDEP}]
+ >=dev-python/virtualenv-20[${PYTHON_USEDEP}]
+ ' "${PYTHON_TESTED[@]}")
+ )
+"
+# setuptools-scm is here because installing plugins apparently breaks stuff at
+# runtime, so let's pull it early. See bug #663324.
+#
+# trove-classifiers are optionally used in validation, if they are
+# installed. Since we really oughtn't block them, let's always enforce
+# the newest version for the time being to avoid errors.
+# https://github.com/pypa/setuptools/issues/4459
+PDEPEND="
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+ >=dev-python/trove-classifiers-2024.7.2[${PYTHON_USEDEP}]
+"
+
+src_prepare() {
+ local PATCHES=(
+ # TODO: remove this when we're 100% PEP517 mode
+ "${FILESDIR}/setuptools-62.4.0-py-compile.patch"
+ )
+
+ distutils-r1_src_prepare
+
+ # breaks tests
+ sed -i -e '/--import-mode/d' pytest.ini || die
+
+ # remove bundled dependencies
+ rm -r */_vendor setuptools/_distutils/_vendor || die
+
+ find -name '*.py' -exec sed \
+ -e 's:from [.]_vendor[.]:from :' \
+ -i {} + || die
+}
+
+python_test() {
+ if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then
+ return
+ fi
+
+ local EPYTEST_DESELECT=(
+ # network
+ setuptools/tests/test_build_meta.py::test_legacy_editable_install
+ setuptools/tests/test_distutils_adoption.py
+ setuptools/tests/test_editable_install.py
+ setuptools/tests/test_virtualenv.py::test_no_missing_dependencies
+ setuptools/tests/test_virtualenv.py::test_test_command_install_requirements
+ # TODO
+ setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_basic
+ setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_ignore_errors
+ # expects bundled deps in virtualenv
+ setuptools/tests/config/test_apply_pyprojecttoml.py::TestMeta::test_example_file_in_sdist
+ setuptools/tests/config/test_apply_pyprojecttoml.py::TestMeta::test_example_file_not_in_wheel
+ # fails if python-xlib is installed
+ setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_allow_hosts
+ # TODO, probably some random package
+ setuptools/tests/config/test_setupcfg.py::TestOptions::test_cmdclass
+ # broken by unbundling
+ setuptools/tests/test_setuptools.py::test_wheel_includes_vendored_metadata
+ )
+
+ local EPYTEST_XDIST=1
+ local -x PRE_BUILT_SETUPTOOLS_WHEEL=${DISTUTILS_WHEEL_PATH}
+ epytest -o tmp_path_retention_policy=all \
+ -m "not uses_network" setuptools
+}
diff --git a/dev-python/sphinx-gallery/Manifest b/dev-python/sphinx-gallery/Manifest
index 3a1c4c5b08a6..692043ce408f 100644
--- a/dev-python/sphinx-gallery/Manifest
+++ b/dev-python/sphinx-gallery/Manifest
@@ -1 +1,2 @@
DIST sphinx_gallery-0.16.0.tar.gz 432247 BLAKE2B 130800616a29be2daedb77404f79ca8d1543ecd391f45f8f19cbcf46ce742d02725d9b087be337d11496021b5c486c6c24b35f22b2c7d4cb575cb2c217d328db SHA512 b45e9141d64b1e277d75f501f2cc40979942953cd8412716e5af64917a3b9adc0a746fbd6249c3636c3db222c1e438ee7f9a9ad93f57b2f05f9ec80a562796c3
+DIST sphinx_gallery-0.17.0.tar.gz 461588 BLAKE2B 2f95724b184a2fe6359cf90c5200cebb80da8bd47160eb801069a396ddc6d889bd84a088899c2e0b461e81a6bf31ebbcebd4b555b83a3a5eebd11e48048ca2a3 SHA512 969bedefdb9231fd9fd92f1a8eb4488dbf6c8b68175e6869d0e893f1a6674bbf7b6e2b0281e54b929a3b2ca1d2928f75f00cb307100391656b6ebd62e8046b7a
diff --git a/dev-python/sphinx-gallery/sphinx-gallery-0.17.0.ebuild b/dev-python/sphinx-gallery/sphinx-gallery-0.17.0.ebuild
new file mode 100644
index 000000000000..754a5d4076c1
--- /dev/null
+++ b/dev-python/sphinx-gallery/sphinx-gallery-0.17.0.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_{8,9,10,11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Sphinx extension to automatically generate an examples gallery"
+HOMEPAGE="
+ https://github.com/sphinx-gallery/sphinx-gallery/
+ https://sphinx-gallery.github.io/
+ https://pypi.org/project/sphinx-gallery/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ dev-python/matplotlib[${PYTHON_USEDEP}]
+ dev-python/pillow[${PYTHON_USEDEP}]
+ >=dev-python/sphinx-5[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+ test? (
+ dev-python/joblib[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # Internet
+ sphinx_gallery/tests/test_docs_resolv.py::test_embed_code_links_get_data
+ sphinx_gallery/tests/test_full.py::test_run_sphinx
+ sphinx_gallery/tests/test_full.py::test_embed_links_and_styles
+ # require jupyterlite_sphinx
+ sphinx_gallery/tests/test_full.py
+ sphinx_gallery/tests/test_full_noexec.py
+ sphinx_gallery/tests/test_gen_gallery.py::test_create_jupyterlite_contents
+ sphinx_gallery/tests/test_gen_gallery.py::test_create_jupyterlite_contents_non_default_contents
+ sphinx_gallery/tests/test_gen_gallery.py::test_create_jupyterlite_contents_with_jupyterlite_disabled_via_config
+ )
+
+ epytest -o addopts=
+}
diff --git a/dev-python/tifffile/Manifest b/dev-python/tifffile/Manifest
index 21e232e75ec4..1ec6af26e5cb 100644
--- a/dev-python/tifffile/Manifest
+++ b/dev-python/tifffile/Manifest
@@ -1,2 +1,2 @@
-DIST tifffile-2024.6.18.gh.tar.gz 349752 BLAKE2B 35f11d963e93e6b1f6b5e4a026dd0f1aed1bf03a2a5e9caab7649ce95c00cdd99988aaa864c549555a8244ec8bfc8d8d900386aa7b9f853fd5aca7b8bece8eb4 SHA512 fdbb5b2b335743f0aef01d5a8f0b577eb24fb1b89d29e20c1971124bdb58f61aab4e3471b6f91e686010c8ca1d5786527357b123c2d801c16d423927315b8c94
DIST tifffile-2024.7.2.gh.tar.gz 349770 BLAKE2B c722f23857310826568f54bffa4f071c8018c6d17ee810dad423f6e9ad80ee99f888bf9282e8cc53d710ba5052c69136e8385aa7ac7e9052346fa766cfdc1747 SHA512 11efbda0f20428fbff4863f52425021de9303be8ad76051c7daf5921f1282a88655872c98dcb2530ea354b1f2833509b3b98b82d035dc8bbae4a4d2da0ef8d47
+DIST tifffile-2024.7.21.gh.tar.gz 350351 BLAKE2B 665060211809e51ef38f233d300524e1af79f02c966c3409269280fd6b383022d3b2a87b6c581f7703d31f93b279f77779dc63d2bffbd2f95dd55f954f7f8bc4 SHA512 5d41d389e7ba706bf2fa6ed224878a2af4aa4ba98c9ec4f3b975e32019e894869bbdd8615619dfd7910a9600f05703f14371981be281e9f9144cb240e4be26c0
diff --git a/dev-python/tifffile/tifffile-2024.6.18.ebuild b/dev-python/tifffile/tifffile-2024.7.21.ebuild
index 1f53f5beadd7..1f53f5beadd7 100644
--- a/dev-python/tifffile/tifffile-2024.6.18.ebuild
+++ b/dev-python/tifffile/tifffile-2024.7.21.ebuild
diff --git a/dev-python/zenlib/Manifest b/dev-python/zenlib/Manifest
index e41725b9cd43..026eb6c288e7 100644
--- a/dev-python/zenlib/Manifest
+++ b/dev-python/zenlib/Manifest
@@ -1 +1,2 @@
DIST zenlib-2.1.2.tar.gz 17293 BLAKE2B 3d5067b9796f31d28d0ca04c842b4ef1807e0557a77c5b6ec5798cfa2aa04ee5e7eafa3549df6add4228e7c3014ca33eb1584c0aee6db9c0acc882f170972b36 SHA512 a0a53ed63a3efe83dc8f49fd512685b82ed383494f404072a47734c02a1955e0a4c9a6c9df48503419c82cb7479783669b6de8deef174a597ab73cad61da5c3e
+DIST zenlib-2.2.0.tar.gz 17727 BLAKE2B 073bbaa252ab000a30602e0a603a8293b8c3a322374ad4172758a6c95d52483b03cc84d4b72aa868168bde03796defb3efca85682ca8f7b7fce6243d8112198f SHA512 4b324e1b56d757536a80d4d5fe31d4087ee8e1a0aa1ff8a19a43252033ea6e5115c55c5c6d69bcae8594bc36c84625b75df2ce93a2f49f7b885179aa05b45d80
diff --git a/dev-python/zenlib/zenlib-2.2.0.ebuild b/dev-python/zenlib/zenlib-2.2.0.ebuild
new file mode 100644
index 000000000000..a16dfbf995bf
--- /dev/null
+++ b/dev-python/zenlib/zenlib-2.2.0.ebuild
@@ -0,0 +1,16 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+inherit distutils-r1
+
+DESCRIPTION="Useful python decorators and utilities"
+HOMEPAGE="https://github.com/desultory/zenlib"
+SRC_URI="https://github.com/desultory/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
diff --git a/dev-python/zenlib/zenlib-9999.ebuild b/dev-python/zenlib/zenlib-9999.ebuild
new file mode 100644
index 000000000000..7e648b7dbe2c
--- /dev/null
+++ b/dev-python/zenlib/zenlib-9999.ebuild
@@ -0,0 +1,15 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+inherit distutils-r1 git-r3
+
+DESCRIPTION="Useful python decorators and utilities"
+HOMEPAGE="https://github.com/desultory/zenlib"
+EGIT_REPO_URI="https://github.com/desultory/zenlib.git"
+
+LICENSE="GPL-2"
+SLOT="0"