summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2024-02-28 08:16:05 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2024-02-28 08:16:05 +0000
commit27256d3bdbadf370ac9827c3de12d9e59e003351 (patch)
treec1c2235b03b63b59d987270db2d9fa8fe3bfda48 /dev-python
parentbe5f8773c2d9f02bad28029e5076464b21338e79 (diff)
downloadbaldeagleos-repo-27256d3bdbadf370ac9827c3de12d9e59e003351.tar.gz
baldeagleos-repo-27256d3bdbadf370ac9827c3de12d9e59e003351.tar.xz
baldeagleos-repo-27256d3bdbadf370ac9827c3de12d9e59e003351.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/Faker/Faker-23.3.0.ebuild40
-rw-r--r--dev-python/Faker/Manifest1
-rw-r--r--dev-python/Nuitka/Manifest1
-rw-r--r--dev-python/Nuitka/Nuitka-2.0.5.ebuild52
-rw-r--r--dev-python/apispec/Manifest1
-rw-r--r--dev-python/apispec/apispec-6.5.0.ebuild46
-rw-r--r--dev-python/boto3/Manifest2
-rw-r--r--dev-python/boto3/boto3-1.34.50.ebuild58
-rw-r--r--dev-python/boto3/boto3-1.34.51.ebuild58
-rw-r--r--dev-python/botocore/Manifest2
-rw-r--r--dev-python/botocore/botocore-1.34.50.ebuild67
-rw-r--r--dev-python/botocore/botocore-1.34.51.ebuild67
-rw-r--r--dev-python/cachetools/Manifest1
-rw-r--r--dev-python/cachetools/cachetools-5.3.3.ebuild21
-rw-r--r--dev-python/cfn-lint/Manifest1
-rw-r--r--dev-python/cfn-lint/cfn-lint-0.85.3.ebuild65
-rw-r--r--dev-python/coverage/coverage-7.4.1.ebuild2
-rw-r--r--dev-python/crispy-bootstrap4/Manifest1
-rw-r--r--dev-python/crispy-bootstrap4/crispy-bootstrap4-2024.1.ebuild35
-rw-r--r--dev-python/cython/cython-0.29.37.1-r1.ebuild97
-rw-r--r--dev-python/cython/cython-3.0.8-r1.ebuild87
-rw-r--r--dev-python/cython/files/cython-0.29.37.1-no-warn-ptr-types.patch14
-rw-r--r--dev-python/cython/files/cython-3.0.8-no-warn-ptr-types.patch14
-rw-r--r--dev-python/email-validator/Manifest1
-rw-r--r--dev-python/email-validator/email-validator-2.1.1.ebuild31
-rw-r--r--dev-python/html2text/Manifest1
-rw-r--r--dev-python/html2text/html2text-2024.2.26.ebuild29
-rw-r--r--dev-python/hypothesis/Manifest1
-rw-r--r--dev-python/hypothesis/hypothesis-6.98.13.ebuild90
-rw-r--r--dev-python/ipykernel/Manifest1
-rw-r--r--dev-python/ipykernel/ipykernel-6.29.3.ebuild79
-rw-r--r--dev-python/jupyterlab/Manifest1
-rw-r--r--dev-python/jupyterlab/jupyterlab-4.0.13.ebuild77
-rw-r--r--dev-python/keyring/Manifest1
-rw-r--r--dev-python/keyring/keyring-24.3.1.ebuild46
-rw-r--r--dev-python/langdetect/Manifest2
-rw-r--r--dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch13
-rw-r--r--dev-python/langdetect/langdetect-1.0.9.ebuild4
-rw-r--r--dev-python/langdetect/metadata.xml10
-rw-r--r--dev-python/leechcorepyc/Manifest1
-rw-r--r--dev-python/leechcorepyc/leechcorepyc-2.17.0.ebuild41
-rw-r--r--dev-python/marshmallow/Manifest1
-rw-r--r--dev-python/marshmallow/marshmallow-3.21.0.ebuild36
-rw-r--r--dev-python/mkdocs-htmlproofer-plugin/Manifest1
-rw-r--r--dev-python/mkdocs-htmlproofer-plugin/mkdocs-htmlproofer-plugin-1.1.0.ebuild33
-rw-r--r--dev-python/mkdocstrings/Manifest1
-rw-r--r--dev-python/mkdocstrings/mkdocstrings-0.24.1.ebuild62
-rw-r--r--dev-python/numexpr/numexpr-2.9.0.ebuild2
-rw-r--r--dev-python/poetry/Manifest1
-rw-r--r--dev-python/poetry/poetry-1.8.1.ebuild96
-rw-r--r--dev-python/pydantic/Manifest1
-rw-r--r--dev-python/pydantic/pydantic-2.6.3.ebuild57
-rw-r--r--dev-python/pyside6/pyside6-6.6.2-r1.ebuild (renamed from dev-python/pyside6/pyside6-6.6.2.ebuild)1
-rw-r--r--dev-python/pytest-testinfra/pytest-testinfra-10.0.0.ebuild3
-rw-r--r--dev-python/pytest-testinfra/pytest-testinfra-10.1.0.ebuild3
-rw-r--r--dev-python/readme-renderer/Manifest1
-rw-r--r--dev-python/readme-renderer/readme-renderer-43.0.ebuild34
-rw-r--r--dev-python/sentry-sdk/Manifest1
-rw-r--r--dev-python/sentry-sdk/sentry-sdk-1.40.6.ebuild153
-rw-r--r--dev-python/spyder-kernels/Manifest1
-rw-r--r--dev-python/spyder-kernels/spyder-kernels-2.5.1.ebuild55
-rw-r--r--dev-python/sqlglot/Manifest1
-rw-r--r--dev-python/sqlglot/sqlglot-22.0.1.ebuild121
-rw-r--r--dev-python/tekore/Manifest1
-rw-r--r--dev-python/tekore/tekore-5.4.0.ebuild52
-rw-r--r--dev-python/thriftpy2/Manifest1
-rw-r--r--dev-python/thriftpy2/thriftpy2-0.4.19.ebuild44
-rw-r--r--dev-python/tomlkit/Manifest1
-rw-r--r--dev-python/tomlkit/tomlkit-0.12.4.ebuild43
-rw-r--r--dev-python/trimesh/Manifest1
-rw-r--r--dev-python/trimesh/trimesh-4.1.6.ebuild68
-rw-r--r--dev-python/types-docutils/Manifest1
-rw-r--r--dev-python/types-docutils/types-docutils-0.20.0.20240227.ebuild17
73 files changed, 2037 insertions, 19 deletions
diff --git a/dev-python/Faker/Faker-23.3.0.ebuild b/dev-python/Faker/Faker-23.3.0.ebuild
new file mode 100644
index 000000000000..b726995539a4
--- /dev/null
+++ b/dev-python/Faker/Faker-23.3.0.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
+PYPI_NO_NORMALIZE=1
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A Python package that generates fake data for you"
+HOMEPAGE="
+ https://github.com/joke2k/faker/
+ https://pypi.org/project/Faker/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/python-dateutil-2.4.2[${PYTHON_USEDEP}]
+ !dev-ruby/faker
+"
+BDEPEND="
+ test? (
+ dev-python/freezegun[${PYTHON_USEDEP}]
+ dev-python/pillow[${PYTHON_USEDEP},tiff]
+ dev-python/validators[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ local -x PYTEST_PLUGINS=faker.contrib.pytest.plugin
+ epytest
+}
diff --git a/dev-python/Faker/Manifest b/dev-python/Faker/Manifest
index 15ca7b4ae1da..f16e17455e5a 100644
--- a/dev-python/Faker/Manifest
+++ b/dev-python/Faker/Manifest
@@ -1,2 +1,3 @@
DIST Faker-22.7.0.tar.gz 1705221 BLAKE2B 9c41a053de75ca238399140531e7d37148ffa358f3ead37cc1aeb32bab74f096689bdcd160372419aed3a541f1aa367e891735e68d384e1c559634e2630e9659 SHA512 38cf655acf23568f0e1b275475461a9272e500c60330d7fc6a0b0db2977d4ea5762bf07cbc24ebe30fcb771cd90579611addce513b80166dbe70554b297c2109
DIST Faker-23.2.1.tar.gz 1708603 BLAKE2B 94759727bb7feb520d51c3a52e50e01bad164cc3f262620d9f106f4746e68b298447d678dba7a5af9a80d0fdd7d9981f57ca50e27ab10671caec52c34e0442ee SHA512 1fefc84bed97e012c4e07117d62a6e0970e1be9d1c2b6f09db497b0d5ba66a2b2b0f3ba806926621d59dc0753a8b8c9caacefa15fbb23c755f110c5ef908975d
+DIST Faker-23.3.0.tar.gz 1716346 BLAKE2B 21be02c45fdaeed398ce157b9874985791dff67784b60198323ffae8f8c3a3e82932ebc152893aed40efb5d73e1e775c52b364c62411b59e48ce3d897971ba92 SHA512 2bdcf86adae1eeee257ee24df140894451d13854afdde8794d08072b9b572e48fcacb74597f64da9f069e914db0f27c8f4e74d746a25bbee8421310749468b82
diff --git a/dev-python/Nuitka/Manifest b/dev-python/Nuitka/Manifest
index edb41840f81c..e6002862e945 100644
--- a/dev-python/Nuitka/Manifest
+++ b/dev-python/Nuitka/Manifest
@@ -1 +1,2 @@
DIST Nuitka-2.0.4.tar.gz 3932819 BLAKE2B 2e54e70848df30cc9f62e27ced44b356a4e817b9a21c8e8ec67a7432131cdc7d2f7bef9d3d1c26b47f34c906c2c6d7b84c10561515198b68fb3b63ed7de88fbf SHA512 b3ff3975ff3aeb1809e71bd8e8835a0d922ba26355e1e099d918df77a48976b625a3d47e0d0f99134292aee5dabaf34803448762b268aabad9cf1952440a64db
+DIST Nuitka-2.0.5.tar.gz 3932974 BLAKE2B 780a826774e480d5337fa541e58e841f3aa8b1f003ad1662bf614c967ebc612bd8214e3f58822c6c0583e813ca9c3492f863f48fa97927dbb7809e95d1379675 SHA512 4e4e4b5899a35bb0ce135b5141382b2a90a935f0ca43ab9cc44c9b3b3485684be2e2acbc1a050b343a4668eec17942a850a94eea1fbd8d46a2aa4586471e1224
diff --git a/dev-python/Nuitka/Nuitka-2.0.5.ebuild b/dev-python/Nuitka/Nuitka-2.0.5.ebuild
new file mode 100644
index 000000000000..35ccf652e8e3
--- /dev/null
+++ b/dev-python/Nuitka/Nuitka-2.0.5.ebuild
@@ -0,0 +1,52 @@
+# 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/apispec/Manifest b/dev-python/apispec/Manifest
index 8ae10e222b30..d6a408a526be 100644
--- a/dev-python/apispec/Manifest
+++ b/dev-python/apispec/Manifest
@@ -1 +1,2 @@
DIST apispec-6.4.0.tar.gz 79114 BLAKE2B 998b153a3d80c45247148210a929a0713d930560a4219dc0da0791e02480ff2a99a74d0b8bc2c170534f7d9e4e05a5fa231fa1d0eaf9359191e7ea6f37e5caf3 SHA512 2b9ceb99945c2e40e00af9f1626d0bd45cdb853fea1b75c58ef312b42b10d521405138c3bc788a33bf38eb31fc9220ed8e9a23c6a3c8980fc5549688d999dcdf
+DIST apispec-6.5.0.tar.gz 76109 BLAKE2B 63cf1fe60a828e3612d211214c07eb250accbab62760e76af48e30871f0bfbb6a3d80efe6373549da43a3b3e5ccacc80f61de48a236ad0391e210d9033e87c9f SHA512 1102bd0c00b8b7018c1ad88fe2b4531fbfcfc83fca73aa63e9b7965c0775634f40fb59c061ec901b804c79e69df43f5b33c7b64129a1684a4f8b0b6228f1b1de
diff --git a/dev-python/apispec/apispec-6.5.0.ebuild b/dev-python/apispec/apispec-6.5.0.ebuild
new file mode 100644
index 000000000000..0d1a12079720
--- /dev/null
+++ b/dev-python/apispec/apispec-6.5.0.ebuild
@@ -0,0 +1,46 @@
+# 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 pypi
+
+DESCRIPTION="A pluggable API specification generator"
+HOMEPAGE="
+ https://github.com/marshmallow-code/apispec/
+ https://pypi.org/project/apispec/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+RDEPEND="
+ >=dev-python/packaging-21.3[${PYTHON_USEDEP}]
+ >=dev-python/pyyaml-3.10[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/bottle[${PYTHON_USEDEP}]
+ >=dev-python/marshmallow-3.18.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+distutils_enable_sphinx docs \
+ dev-python/sphinx-issues \
+ dev-python/sphinx-rtd-theme
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # requires unpackaged prance
+ tests/test_ext_marshmallow_openapi.py::test_openapi_tools_validate_v2
+ tests/test_ext_marshmallow_openapi.py::test_openapi_tools_validate_v3
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest
index 1764a4e6e1b5..1799d0db5a4d 100644
--- a/dev-python/boto3/Manifest
+++ b/dev-python/boto3/Manifest
@@ -1,3 +1,5 @@
DIST boto3-1.34.39.gh.tar.gz 773491 BLAKE2B 69256649eb3bc5a856adffe4fb1e0e3f1e14e9a8ff557a9c4a4a8009bc0b8483555e9350f98656d3088c271152db199201c2739e4860fbc0c63810e19a13eca4 SHA512 88fb84a97c072f3e1719116d10dae2a8a840f495aa89f42f13fb105209d0d098390cbdbc443811ae78a684735fa571dbe66bf10c0e53718e783a17de36a18197
DIST boto3-1.34.44.gh.tar.gz 775883 BLAKE2B 97648819e48af3bbdec76ca47f5532cf9f0a99845f90515cbc7bec02bd5cc04ed5cc842b55cd589a8fb1cd8852edf4d12d3e8a23320e23fd4c5920854ef588d3 SHA512 310689dd7fc3a08c3a8ed6e223381870f028ee07354f74654abafc893f8230fee82bcd136c9e04a675a06bad496458f6778e6d571e75f6541130b3e06cdf324a
DIST boto3-1.34.49.gh.tar.gz 777028 BLAKE2B 3f78be7cffeca8dec5c7e1b8fcb2e4081e8d5b6f85becea5deeebd8de3d8c038db5c5e827831c829e3943860a10144e7dd565136c6dfad4f39540a7eaa2bacda SHA512 dbd9fdb33f0d29d8ba4ef8b6bdb5bf5b9585306e6a0e1fffeea42d38fad503555763361c5b14991d58303f7e1edc481e026ba195638044efc476a25bd467675e
+DIST boto3-1.34.50.gh.tar.gz 777341 BLAKE2B 58649a5dd449f6c4c8151c1943bafd701afa78acfb93f85d69dae523034b4a60c446ef6d7425b867c637adac187e0eb076e9ead64c3141cdf6266fd17c4d7052 SHA512 6ee238a91ea9fb691f1ec8593c892f3285738cbce71430f913fd3659944bdafbd9c6efac419efe43136bb1e415351cb9239a8758972161d22aabe428fc3662d6
+DIST boto3-1.34.51.gh.tar.gz 777437 BLAKE2B f39d180cda6958307524ff26b8015fe50a5c41d6c0ef6858363b60c086a48b18263024d2801afa5ffa8838915de7789cd1d5d949892acc3b018e8191eeb06e8b SHA512 f524c9e0d7d91eb6dd40cc017b04cbc46593ef2c16eae3da7018e5bbaab0213d7defde5d3958c83122cf5e6895a896f74e1401f0d0227d0240066f52cfbbe64d
diff --git a/dev-python/boto3/boto3-1.34.50.ebuild b/dev-python/boto3/boto3-1.34.50.ebuild
new file mode 100644
index 000000000000..c6201d2c5818
--- /dev/null
+++ b/dev-python/boto3/boto3-1.34.50.ebuild
@@ -0,0 +1,58 @@
+# 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
+
+DESCRIPTION="The AWS SDK for Python"
+HOMEPAGE="
+ https://github.com/boto/boto3/
+ https://pypi.org/project/boto3/
+"
+SRC_URI="
+ https://github.com/boto/boto3/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ >=dev-python/botocore-${PV}[${PYTHON_USEDEP}]
+ >=dev-python/jmespath-0.7.1[${PYTHON_USEDEP}]
+ >=dev-python/s3transfer-0.10.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/mock[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ # don't lock versions to narrow ranges
+ sed -e '/botocore/ d' \
+ -e '/jmespath/ d' \
+ -e '/s3transfer/ d' \
+ -i setup.py || die
+
+ # do not rely on bundled deps in botocore (sic!)
+ find -name '*.py' -exec sed -i \
+ -e 's:from botocore[.]vendored import:import:' \
+ -e 's:from botocore[.]vendored[.]:from :' \
+ {} + || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest tests/{functional,unit}
+}
diff --git a/dev-python/boto3/boto3-1.34.51.ebuild b/dev-python/boto3/boto3-1.34.51.ebuild
new file mode 100644
index 000000000000..c6201d2c5818
--- /dev/null
+++ b/dev-python/boto3/boto3-1.34.51.ebuild
@@ -0,0 +1,58 @@
+# 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
+
+DESCRIPTION="The AWS SDK for Python"
+HOMEPAGE="
+ https://github.com/boto/boto3/
+ https://pypi.org/project/boto3/
+"
+SRC_URI="
+ https://github.com/boto/boto3/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ >=dev-python/botocore-${PV}[${PYTHON_USEDEP}]
+ >=dev-python/jmespath-0.7.1[${PYTHON_USEDEP}]
+ >=dev-python/s3transfer-0.10.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/mock[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ # don't lock versions to narrow ranges
+ sed -e '/botocore/ d' \
+ -e '/jmespath/ d' \
+ -e '/s3transfer/ d' \
+ -i setup.py || die
+
+ # do not rely on bundled deps in botocore (sic!)
+ find -name '*.py' -exec sed -i \
+ -e 's:from botocore[.]vendored import:import:' \
+ -e 's:from botocore[.]vendored[.]:from :' \
+ {} + || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest tests/{functional,unit}
+}
diff --git a/dev-python/botocore/Manifest b/dev-python/botocore/Manifest
index 063de97d3468..8c3a0f9a68c2 100644
--- a/dev-python/botocore/Manifest
+++ b/dev-python/botocore/Manifest
@@ -1,3 +1,5 @@
DIST botocore-1.34.39.gh.tar.gz 12697404 BLAKE2B d8670c591c06cf5b02562adb234225dde1da6a805d40f314ea7e88b8dc532dc9cb3bff80255aff8798137584a8038b3747e5dc428fd0dc20def923c9a9953a5d SHA512 e5091955cbaa838365664458e71e77ecc4649e12995735a367ea007bdf5e10b41e4009afa8c3832f88a6c49888091b7d668834f1e5edbd64298d88c4eb8f3f1c
DIST botocore-1.34.44.gh.tar.gz 12716767 BLAKE2B 335d59ae57ae5a5a1bdb44c3e196dff18cb24dd4a4d3beb59e7b8e887d5cc56f0716b2e4fead0c9a4c96978d661308fb0f1e045300e7af69c94ed799bb25a2ef SHA512 12893173c0123711f496448e661bb8e463fcc29ac95c500fe427e2dcf9810659b92de1d38ec3192e1e20a92ca01a5315733f34d0ffe61f2c9b69763e427ee96f
DIST botocore-1.34.49.gh.tar.gz 12729109 BLAKE2B 8029fd3530f8c29e7375eaf369944ada9977a1e445eec3151f2babcd6a6480e8c9a8109f31687b588c50691dca62e635beafbcca71f3a6961d23937fa7e613d0 SHA512 8722a965658c55b35880c65b0b4b8d466691752de4b7654657fe583e4dec36f09910f8298f29099cd035e3acf0622734597e4269d2a4e71eecfc3a7fcf6825bc
+DIST botocore-1.34.50.gh.tar.gz 12731553 BLAKE2B 9f014ae935ba3cf0cfb52c68ae674f08394012919dae15220c7faaf79e77478dca9f810d552da11b0374f2e5d9bb4026a241c6755aa54a5b4ba4b5b9f26adc65 SHA512 53115fa3b7473dd46f2c31d203e048c00404b171a3a658cc06cb63db61f9be77a44c62a026980e71e108e6bb98a7c74288501b877dfcf7293fdc31c54e1c2613
+DIST botocore-1.34.51.gh.tar.gz 12732148 BLAKE2B 57df6b5825cc07b1179ca67b935c5bea270810377e1f62d9094dd318301140e3cde68551e9501331c825b46e17d267fa0aa30e92251d03039e72f53005f8ddb4 SHA512 8c09e99363f27ec840d392e3cfd2bf7cce42d79ad5e66d3eb77a5ddc5fd3d00070a3faaf602130d9fab0e86aee475cb8a33154de19e9c1458011cd0d6aeecebe
diff --git a/dev-python/botocore/botocore-1.34.50.ebuild b/dev-python/botocore/botocore-1.34.50.ebuild
new file mode 100644
index 000000000000..857224b496b7
--- /dev/null
+++ b/dev-python/botocore/botocore-1.34.50.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=setuptools
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Low-level, data-driven core of boto 3"
+HOMEPAGE="
+ https://github.com/boto/botocore/
+ https://pypi.org/project/botocore/
+"
+SRC_URI="
+ https://github.com/boto/botocore/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ <dev-python/jmespath-2[${PYTHON_USEDEP}]
+ dev-python/python-dateutil[${PYTHON_USEDEP}]
+ >=dev-python/urllib3-1.25.4[${PYTHON_USEDEP}]
+"
+# unbundled packages
+RDEPEND+="
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/jsonschema[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+src_prepare() {
+ # unpin deps
+ sed -i -e "s:>=.*':':" setup.py || die
+
+ # unbundle deps
+ rm -r botocore/vendored || die
+ find -name '*.py' -exec sed -i \
+ -e 's:from botocore[.]vendored import:import:' \
+ -e 's:from botocore[.]vendored[.]:from :' \
+ {} + || die
+
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # rely on bundled six
+ tests/functional/test_six_imports.py::test_no_bare_six_imports
+ tests/functional/test_six_threading.py::test_six_thread_safety
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest tests/{functional,unit}
+}
diff --git a/dev-python/botocore/botocore-1.34.51.ebuild b/dev-python/botocore/botocore-1.34.51.ebuild
new file mode 100644
index 000000000000..857224b496b7
--- /dev/null
+++ b/dev-python/botocore/botocore-1.34.51.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=setuptools
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Low-level, data-driven core of boto 3"
+HOMEPAGE="
+ https://github.com/boto/botocore/
+ https://pypi.org/project/botocore/
+"
+SRC_URI="
+ https://github.com/boto/botocore/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ <dev-python/jmespath-2[${PYTHON_USEDEP}]
+ dev-python/python-dateutil[${PYTHON_USEDEP}]
+ >=dev-python/urllib3-1.25.4[${PYTHON_USEDEP}]
+"
+# unbundled packages
+RDEPEND+="
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/jsonschema[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+src_prepare() {
+ # unpin deps
+ sed -i -e "s:>=.*':':" setup.py || die
+
+ # unbundle deps
+ rm -r botocore/vendored || die
+ find -name '*.py' -exec sed -i \
+ -e 's:from botocore[.]vendored import:import:' \
+ -e 's:from botocore[.]vendored[.]:from :' \
+ {} + || die
+
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # rely on bundled six
+ tests/functional/test_six_imports.py::test_no_bare_six_imports
+ tests/functional/test_six_threading.py::test_six_thread_safety
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest tests/{functional,unit}
+}
diff --git a/dev-python/cachetools/Manifest b/dev-python/cachetools/Manifest
index d9166f0c9297..7662512af85d 100644
--- a/dev-python/cachetools/Manifest
+++ b/dev-python/cachetools/Manifest
@@ -1 +1,2 @@
DIST cachetools-5.3.2.tar.gz 26510 BLAKE2B c3cf15b69d7d6950c3a78d6ef4dbff317206bf08aa504081a545523244cfee8ca4013b0227bf7525ad7b82022b55e5f67633587d006e21e6b6b8ca9af151bf6c SHA512 1a6e32acefdd6165b3348dc32df300c5d3cd5bcff23c5f8eae5d7b6bc40a9aab7b5d6dee4bf23ebb49dea9a434570e854e24325028680a581f2b359d16e5d836
+DIST cachetools-5.3.3.tar.gz 26522 BLAKE2B 56eb1ab02fa50a7980d977d9a136c4c43b4981308c1c9fd5b2de596ce5fc79b2e3fbdefdade594fa3aa632eb5b26742f2afb7359dc87705d27389a8312247095 SHA512 ece7b1e54839aa8cae65a6164dc8dce6b1553c72ead551e1ae1d8a5e5ee937b952773504dc0d63c423521adfd20d6839bb3ea066dcbc6ab296649bd4ab8f7d83
diff --git a/dev-python/cachetools/cachetools-5.3.3.ebuild b/dev-python/cachetools/cachetools-5.3.3.ebuild
new file mode 100644
index 000000000000..14db04873cc7
--- /dev/null
+++ b/dev-python/cachetools/cachetools-5.3.3.ebuild
@@ -0,0 +1,21 @@
+# 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 pypi
+
+DESCRIPTION="Extensible memoizing collections and decorators"
+HOMEPAGE="
+ https://github.com/tkem/cachetools/
+ https://pypi.org/project/cachetools/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+distutils_enable_tests pytest
diff --git a/dev-python/cfn-lint/Manifest b/dev-python/cfn-lint/Manifest
index feafdac6e96d..029a6396f9ed 100644
--- a/dev-python/cfn-lint/Manifest
+++ b/dev-python/cfn-lint/Manifest
@@ -1,2 +1,3 @@
DIST cfn-lint-0.85.1.tar.gz 3875240 BLAKE2B 40ea81dcb938648c7bd772e8e4ad751281488048a9718a0bedef299eb32f0b9776ad4529a1cb724f7e7cc41d249c8555c8f72eddb146d940e227a6dd90e0b04c SHA512 4936facb73fa32745fe3915accee00c82135263fd6f05ae08d6540b97f53d13047631cbc39c580985c1f574f3cb6bb9b91c2805b6503ba20499cd997dfcbf677
DIST cfn-lint-0.85.2.tar.gz 3887432 BLAKE2B 3ae9f84d977c576b8051226b73960c97d568c5cfe4aab2030b753abd6e25b39ff2d7f2265e1edca17339ca35658808d00805ce95d3f155b395e3ed3cd84c0bdd SHA512 7c28a8f9771cb38087d30425340b95fbec637c7345cdd2c6ae2f6dc6f550cfe0b3f4cc53a60625767b40850bbf29859370cf89185bdd2a1de59a64aa43c598c3
+DIST cfn-lint-0.85.3.tar.gz 3878852 BLAKE2B 4eb804c67b3cdd9686df930b7c9cc565f296a9ed99872b0d6f470c469de61d3ef321a98265c0975b32bfd2866dd66f82d2266dff77d90d31914946cafe5ce1dc SHA512 5f758664a1497b1d5260c6737e203d86ad0cd08a44067b9fdb2c4150cfafc2f96fb025322aa8573d08d6ee44254987fc7f52d6ed336944e9e2a89fc174d8db6c
diff --git a/dev-python/cfn-lint/cfn-lint-0.85.3.ebuild b/dev-python/cfn-lint/cfn-lint-0.85.3.ebuild
new file mode 100644
index 000000000000..b481ebbe366c
--- /dev/null
+++ b/dev-python/cfn-lint/cfn-lint-0.85.3.ebuild
@@ -0,0 +1,65 @@
+# 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 pypi
+
+DESCRIPTION="CloudFormation Linter"
+HOMEPAGE="
+ https://github.com/aws-cloudformation/cfn-lint/
+ https://pypi.org/project/cfn-lint/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+
+RDEPEND="
+ >=dev-python/aws-sam-translator-1.85.0[${PYTHON_USEDEP}]
+ dev-python/jsonpatch[${PYTHON_USEDEP}]
+ >=dev-python/jschema-to-python-1.2.3[${PYTHON_USEDEP}]
+ <dev-python/jsonschema-5[${PYTHON_USEDEP}]
+ >=dev-python/jsonschema-3.0[${PYTHON_USEDEP}]
+ dev-python/junit-xml[${PYTHON_USEDEP}]
+ <dev-python/networkx-4[${PYTHON_USEDEP}]
+ >dev-python/pyyaml-5.4[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.15.0[${PYTHON_USEDEP}]
+ >=dev-python/regex-2021.7.1[${PYTHON_USEDEP}]
+ >=dev-python/sarif-om-1.0.4[${PYTHON_USEDEP}]
+ >=dev-python/sympy-1.0.0[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ # unpin the deps
+ sed -e 's:~=[0-9.]*::' -i setup.py || die
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # TODO
+ test/unit/module/test_template.py::TestTemplate::test_build_graph
+ # requires git repo
+ test/unit/module/maintenance/test_update_documentation.py::TestUpdateDocumentation::test_update_docs
+ # Internet
+ test/unit/module/formatters/test_formatters.py::TestFormatters::test_sarif_formatter
+ test/unit/module/maintenance/test_update_resource_specs.py::TestUpdateResourceSpecs::test_update_resource_specs_python_3
+ # TODO: it looks as if AWS_DEFAULT_REGION didn't work
+ test/unit/module/core/test_run_cli.py::TestCli::test_bad_config
+ test/unit/module/core/test_run_cli.py::TestCli::test_override_parameters
+ test/unit/module/core/test_run_cli.py::TestCli::test_positional_template_parameters
+ test/unit/module/core/test_run_cli.py::TestCli::test_template_config
+ )
+
+ # from tox.ini
+ local -x AWS_DEFAULT_REGION=us-east-1
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
diff --git a/dev-python/coverage/coverage-7.4.1.ebuild b/dev-python/coverage/coverage-7.4.1.ebuild
index c11f8d9b123c..20df16b0cbc1 100644
--- a/dev-python/coverage/coverage-7.4.1.ebuild
+++ b/dev-python/coverage/coverage-7.4.1.ebuild
@@ -19,7 +19,7 @@ HOMEPAGE="
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos"
RDEPEND="
$(python_gen_cond_dep '
diff --git a/dev-python/crispy-bootstrap4/Manifest b/dev-python/crispy-bootstrap4/Manifest
index 93eb3e0186a0..834baab14ce7 100644
--- a/dev-python/crispy-bootstrap4/Manifest
+++ b/dev-python/crispy-bootstrap4/Manifest
@@ -1 +1,2 @@
DIST crispy-bootstrap4-2023.1.gh.tar.gz 31707 BLAKE2B 0a3c4c1b86ba9701365f1fcfb90811e1f6793fb9f374a510410c460bc62a48e06b72a75330f0efd3a06e51380f457eea66f236488774c3ee6bf758510136f08b SHA512 fbbc8c6e0f4351b50b0fa3a4d2faefb0775906c995f42cf9ccd9688d4780e05877a9a53f065ad92785d135a560064809f429dbcebe9f257f65f063d9539973e8
+DIST crispy-bootstrap4-2024.1.gh.tar.gz 31818 BLAKE2B 5778544067c7c23971a410bb52556a267fed9109bee4b5a4cd7e72c9bde0888e6744c2e12aa079c92217c0b6bc0ef2709de2eae127fe92ccc92ca1acb5015aa6 SHA512 c4c4e02117a2b3cf24c9111579c20f1454c5feb8c485c954e48436354e82d0a26e34b54212fb642d010a7c370236028119e5193fdb43ff2053cabae56a01a7c2
diff --git a/dev-python/crispy-bootstrap4/crispy-bootstrap4-2024.1.ebuild b/dev-python/crispy-bootstrap4/crispy-bootstrap4-2024.1.ebuild
new file mode 100644
index 000000000000..603166fccbdf
--- /dev/null
+++ b/dev-python/crispy-bootstrap4/crispy-bootstrap4-2024.1.ebuild
@@ -0,0 +1,35 @@
+# 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="Bootstrap4 template pack for django-crispy-forms"
+HOMEPAGE="
+ https://github.com/django-crispy-forms/crispy-bootstrap4/
+ https://pypi.org/project/crispy-bootstrap4/
+"
+SRC_URI="
+ https://github.com/django-crispy-forms/crispy-bootstrap4/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ >=dev-python/django-4.2[${PYTHON_USEDEP}]
+ >=dev-python/django-crispy-forms-2.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/pytest-django[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/cython/cython-0.29.37.1-r1.ebuild b/dev-python/cython/cython-0.29.37.1-r1.ebuild
new file mode 100644
index 000000000000..c664a0402c3e
--- /dev/null
+++ b/dev-python/cython/cython-0.29.37.1-r1.ebuild
@@ -0,0 +1,97 @@
+# 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_TESTED=( python3_{8,9,10,11,12} )
+# 3.12 not tested yet for https://github.com/cython/cython/issues/5285.
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+PYTHON_REQ_USE="threads(+)"
+
+inherit distutils-r1 multiprocessing toolchain-funcs elisp-common
+
+DESCRIPTION="A Python to C compiler"
+HOMEPAGE="
+ https://cython.org/
+ https://github.com/cython/cython/
+ https://pypi.org/project/Cython/
+"
+SRC_URI="
+ https://github.com/cython/cython/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+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 ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="emacs test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ emacs? ( >=app-editors/emacs-23.1:* )
+"
+BDEPEND="
+ ${RDEPEND}
+ test? (
+ $(python_gen_cond_dep '
+ dev-python/numpy[${PYTHON_USEDEP}]
+ ' "${PYTHON_TESTED[@]}")
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-0.29.22-spawn-multiprocessing.patch"
+ "${FILESDIR}/${PN}-0.29.23-test_exceptions-py310.patch"
+ "${FILESDIR}/${PN}-0.29.23-pythran-parallel-install.patch"
+ # workaround for https://bugs.gentoo.org/918983
+ # https://github.com/cython/cython/issues/2747
+ "${FILESDIR}/${PN}-0.29.37.1-no-warn-ptr-types.patch"
+)
+
+SITEFILE=50cython-gentoo.el
+
+distutils_enable_sphinx docs
+
+python_compile() {
+ # Python gets confused when it is in sys.path before build.
+ local -x PYTHONPATH=
+
+ distutils-r1_python_compile
+}
+
+python_compile_all() {
+ use emacs && elisp-compile Tools/cython-mode.el
+}
+
+python_test() {
+ if ! has "${EPYTHON/./_}" "${PYTHON_TESTED[@]}"; then
+ einfo "Skipping tests on ${EPYTHON} (xfail)"
+ return
+ fi
+
+ tc-export CC
+ # https://github.com/cython/cython/issues/1911
+ local -x CFLAGS="${CFLAGS} -fno-strict-overflow"
+ "${PYTHON}" runtests.py -vv -j "$(makeopts_jobs)" --work-dir "${BUILD_DIR}"/tests ||
+ die "Tests fail with ${EPYTHON}"
+}
+
+python_install_all() {
+ local DOCS=( CHANGES.rst README.rst ToDo.txt USAGE.txt )
+ distutils-r1_python_install_all
+
+ if use emacs; then
+ elisp-install ${PN} Tools/cython-mode.*
+ elisp-site-file-install "${FILESDIR}/${SITEFILE}"
+ fi
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}
diff --git a/dev-python/cython/cython-3.0.8-r1.ebuild b/dev-python/cython/cython-3.0.8-r1.ebuild
new file mode 100644
index 000000000000..7c7e3c6ba58a
--- /dev/null
+++ b/dev-python/cython/cython-3.0.8-r1.ebuild
@@ -0,0 +1,87 @@
+# 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_TESTED=( python3_{8,9,10,11,12} )
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+PYTHON_REQ_USE="threads(+)"
+
+inherit distutils-r1 multiprocessing toolchain-funcs
+
+MY_P=${P/_rc/rc}
+DESCRIPTION="A Python to C compiler"
+HOMEPAGE="
+ https://cython.org/
+ https://github.com/cython/cython/
+ https://pypi.org/project/Cython/
+"
+SRC_URI="
+ https://github.com/cython/cython/archive/${PV/_rc/rc}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+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 ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ ${RDEPEND}
+ test? (
+ $(python_gen_cond_dep '
+ dev-python/numpy[${PYTHON_USEDEP}]
+ ' "${PYTHON_TESTED[@]}")
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-0.29.22-spawn-multiprocessing.patch"
+ "${FILESDIR}/${PN}-0.29.23-test_exceptions-py310.patch"
+ "${FILESDIR}/${PN}-0.29.23-pythran-parallel-install.patch"
+ # workaround for https://bugs.gentoo.org/918983
+ # https://github.com/cython/cython/issues/2747
+ "${FILESDIR}/${PN}-3.0.8-no-warn-ptr-types.patch"
+)
+
+distutils_enable_sphinx docs \
+ dev-python/jinja \
+ dev-python/sphinx-issues \
+ dev-python/sphinx-tabs
+
+python_compile() {
+ # Python gets confused when it is in sys.path before build.
+ local -x PYTHONPATH=
+
+ distutils-r1_python_compile
+}
+
+python_test() {
+ if ! has "${EPYTHON/./_}" "${PYTHON_TESTED[@]}"; then
+ einfo "Skipping tests on ${EPYTHON} (xfail)"
+ return
+ fi
+
+ # Needed to avoid confusing cache tests
+ unset CYTHON_FORCE_REGEN
+
+ tc-export CC
+ # https://github.com/cython/cython/issues/1911
+ local -x CFLAGS="${CFLAGS} -fno-strict-overflow"
+ "${PYTHON}" runtests.py \
+ -vv \
+ -j "$(makeopts_jobs)" \
+ --work-dir "${BUILD_DIR}"/tests \
+ --no-examples \
+ --no-code-style \
+ || die "Tests fail with ${EPYTHON}"
+}
+
+python_install_all() {
+ local DOCS=( CHANGES.rst README.rst ToDo.txt USAGE.txt )
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/cython/files/cython-0.29.37.1-no-warn-ptr-types.patch b/dev-python/cython/files/cython-0.29.37.1-no-warn-ptr-types.patch
new file mode 100644
index 000000000000..b7a9d19a248d
--- /dev/null
+++ b/dev-python/cython/files/cython-0.29.37.1-no-warn-ptr-types.patch
@@ -0,0 +1,14 @@
+diff --git a/Cython/Compiler/ModuleNode.py b/Cython/Compiler/ModuleNode.py
+index e9bfa9fe9..43be47dd5 100644
+--- a/Cython/Compiler/ModuleNode.py
++++ b/Cython/Compiler/ModuleNode.py
+@@ -376,6 +376,9 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode):
+ self.generate_includes(env, modules, code, early=False)
+
+ code = globalstate['all_the_rest']
++ # Gentoo: workaround for https://github.com/cython/cython/issues/2747
++ # https://bugs.gentoo.org/918983
++ code.putln('#pragma GCC diagnostic ignored "-Wincompatible-pointer-types"')
+
+ self.generate_cached_builtins_decls(env, code)
+ self.generate_lambda_definitions(env, code)
diff --git a/dev-python/cython/files/cython-3.0.8-no-warn-ptr-types.patch b/dev-python/cython/files/cython-3.0.8-no-warn-ptr-types.patch
new file mode 100644
index 000000000000..bfa51fd2bf5c
--- /dev/null
+++ b/dev-python/cython/files/cython-3.0.8-no-warn-ptr-types.patch
@@ -0,0 +1,14 @@
+diff --git a/Cython/Compiler/ModuleNode.py b/Cython/Compiler/ModuleNode.py
+index b46b6cee6..9f9f08d61 100644
+--- a/Cython/Compiler/ModuleNode.py
++++ b/Cython/Compiler/ModuleNode.py
+@@ -507,6 +507,9 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode):
+ self.generate_includes(env, modules, code, early=False)
+
+ code = globalstate['module_code']
++ # Gentoo: workaround for https://github.com/cython/cython/issues/2747
++ # https://bugs.gentoo.org/918983
++ code.putln('#pragma GCC diagnostic ignored "-Wincompatible-pointer-types"')
+
+ self.generate_cached_builtins_decls(env, code)
+
diff --git a/dev-python/email-validator/Manifest b/dev-python/email-validator/Manifest
index 5a00df26e2cf..47cc354e4e63 100644
--- a/dev-python/email-validator/Manifest
+++ b/dev-python/email-validator/Manifest
@@ -1 +1,2 @@
DIST email_validator-2.1.0.post1.tar.gz 46288 BLAKE2B 0321869435485f69bb31b5eb59b778e72add7df4c24815fded9f71740a3fabe48b0a2cf705df692a699d4370f8ab25af946c526b4cec2d9d04777fcb4f37f9ad SHA512 a9ed642bf3c8f80b3a5e832f31e4ea114dcb012afe162439803a499a7ad016b10f6a25092cc61e445f91a1fe1ab6cfb7eb0aca054fd5458c0b935baf92735739
+DIST email_validator-2.1.1.tar.gz 44709 BLAKE2B 7b5a67c0690ee11519d16ce56be7e3ddc955b06fda84b2bb9793e9bc80d82adf7e39799dd1d6cd1b902911721d8e5f7dcf4624b6fbf1e97b0a8edaa16f7ca062 SHA512 659bc5ec1583ff0fdeb256f57ac2506089758772fb471a49865cdee62af3f96a43ff21a94099bb13b69f1efff20952f33ad6bf0cb1bea0793285820948c9fdb4
diff --git a/dev-python/email-validator/email-validator-2.1.1.ebuild b/dev-python/email-validator/email-validator-2.1.1.ebuild
new file mode 100644
index 000000000000..b8bd51a4fe85
--- /dev/null
+++ b/dev-python/email-validator/email-validator-2.1.1.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_PN=email-validator
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A robust email syntax and deliverability validation library"
+HOMEPAGE="
+ https://github.com/JoshData/python-email-validator/
+ https://pypi.org/project/email-validator/
+"
+
+LICENSE="CC0-1.0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+SLOT="0"
+
+RDEPEND="
+ >=dev-python/idna-2.8[${PYTHON_USEDEP}]
+ >=dev-python/dnspython-1.15.0[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ epytest -m "not network"
+}
diff --git a/dev-python/html2text/Manifest b/dev-python/html2text/Manifest
index 24af583b64c6..66ec560d05cc 100644
--- a/dev-python/html2text/Manifest
+++ b/dev-python/html2text/Manifest
@@ -1,2 +1,3 @@
DIST html2text-2020.1.16.tar.gz 49464 BLAKE2B f0331daa63b9e5d7508e0446e19b4dd4d05e5f7af0279efd71dc43b633f8273666189899a27cb598e8afdd5bd8ffb3d566b97327d82870ef44a81310d8e7e7c9 SHA512 14453c98e81d05afb3241b04a9e50caf63e4b6f857337b4bd9f53e6b8fa7146aa6a1f4f64777db9fa350316b19fe62a0033dce5748191ca9fbd17a8757002855
DIST html2text-2024.2.25.tar.gz 56175 BLAKE2B 9612054b394f9a72109b672ecd4ec4f30bfda01b461c557860d450dd20e84d0e86dac5fe2d0a459d0b77cb3c1411fd91581b90e657df225b03e2ae874f2e7539 SHA512 9adf1367b644a7dccef35ddd0041ade8a206943927585a4c1766ff76e2ffc9ab58479d285fe8eb2e18b80270f9eb50ec82855fb8b0df8525e905278abd8ddc22
+DIST html2text-2024.2.26.tar.gz 56527 BLAKE2B 898f69fd087405412ac75cb4e2e9544f1725b9b558c334e1183a79fb6440ab13c4dbfefe6059e1bcb7befc2d365f11887dccc8ba62936c2732a79034d6b00908 SHA512 8304dbc0a8d06ea1bbed4edccbbcb817423bab7acbaa9db84c6c9c3e74a8d1daec148cb591b76b7d5865224ea424b388316c867bda4b07b19ed91272b7beff88
diff --git a/dev-python/html2text/html2text-2024.2.26.ebuild b/dev-python/html2text/html2text-2024.2.26.ebuild
new file mode 100644
index 000000000000..f37d7b66f93a
--- /dev/null
+++ b/dev-python/html2text/html2text-2024.2.26.ebuild
@@ -0,0 +1,29 @@
+# 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 pypi
+
+DESCRIPTION="Turn HTML into equivalent Markdown-structured text"
+HOMEPAGE="
+ https://github.com/Alir3z4/html2text/
+ https://pypi.org/project/html2text/
+"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc ~x86"
+
+DOCS=( AUTHORS.rst ChangeLog.rst README.md )
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ # naming conflict with app-text/html2text, bug 421647
+ sed -e 's/html2text = html2text.cli:main/py\0/' -i setup.cfg || die
+ distutils-r1_src_prepare
+}
diff --git a/dev-python/hypothesis/Manifest b/dev-python/hypothesis/Manifest
index 26d3c4f3e718..1a370f8611fd 100644
--- a/dev-python/hypothesis/Manifest
+++ b/dev-python/hypothesis/Manifest
@@ -2,4 +2,5 @@ DIST hypothesis-6.97.5.gh.tar.gz 9426065 BLAKE2B 2aec769268af7392f71c0ec7d12defa
DIST hypothesis-6.98.10.gh.tar.gz 9428083 BLAKE2B 7b1f49fb296097d00396bdcb699203a92ac210d4c05927e5f44cf4d3ab1aadb75a1a13a66bdcd63a582b19b99980e3075b3d481b9d4d8b737e53f410e3821718 SHA512 5cff0fb16e64b9190da4055487945060b0a85c3dbde949bcd9e1931e3825d8316bd3780a432503fce33cab48f078f83d418e4e1760a084a933f591183b22f0c3
DIST hypothesis-6.98.11.gh.tar.gz 9428472 BLAKE2B 79c4561ac1ac3ad309bccd215bb0b4f1a010b50058e70770ca51cb5e35e5c99e95aaa1d0a757a84fc1c34c117c6d400d40d41ea0dcfc236db2b2bc78812a9671 SHA512 3abe0801e33836727a48bdf7888bfaf0fbe2eca36aa511cdeaed29d45351c250c8f5aed6f47396f1e97fbccbecb45bd0b55b86a2956fa0bd735b99edc6bbe53f
DIST hypothesis-6.98.12.gh.tar.gz 9429362 BLAKE2B cb8ac92b93057c1e311caddcdba99ef56cc5fdcedbf4a5fc0cc9342a4bdc2565cb5154f963e202b0d6fc6254a123277db0ff825493ed0d240f01b14f33131745 SHA512 0dfb07a69810685fc8042e93ce3fa9738d593835008bae31afd9cee621b8975f455c545768096990c3000e08d230cb116c465509e95c5139db0c7609a576ab3e
+DIST hypothesis-6.98.13.gh.tar.gz 9430826 BLAKE2B 93de2e3548c10167e3f1d66dafe8a1f4bb221b79da6de71055753413778657260aac88ac6321d78a06934d2e5c649478b8f7704a79d7d93bcb655d866b3c89d5 SHA512 4a512e2feea13968327913df601be284bf42f94f7cfc574db6e2107b991d83f5c81734a43df31a19f30e1ea57f610916d611270fb9c9f5df353db7c2645b6428
DIST hypothesis-6.98.9.gh.tar.gz 9427046 BLAKE2B c3705e4c780b6e7f427943231ac056f343e70569e88391f118383e6d6197f72e744306476f2e1994e8a6d95dce73b93dcd49e8fa197149e532b84c91bce79594 SHA512 1e8a0dcefb8def8376a0ad6549a58dac66470941e4a3584ba82867f8779fd941c141039f631f15f134f7cdb3beb2ad1a19312d8e56c47db9ace0569f203afaf3
diff --git a/dev-python/hypothesis/hypothesis-6.98.13.ebuild b/dev-python/hypothesis/hypothesis-6.98.13.ebuild
new file mode 100644
index 000000000000..1f7054962839
--- /dev/null
+++ b/dev-python/hypothesis/hypothesis-6.98.13.ebuild
@@ -0,0 +1,90 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+CLI_COMPAT=( python3_{10..12} )
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+PYTHON_REQ_USE="threads(+),sqlite"
+
+inherit distutils-r1 multiprocessing optfeature
+
+TAG=hypothesis-python-${PV}
+MY_P=hypothesis-${TAG}
+DESCRIPTION="A library for property based testing"
+HOMEPAGE="
+ https://github.com/HypothesisWorks/hypothesis/
+ https://pypi.org/project/hypothesis/
+"
+SRC_URI="
+ https://github.com/HypothesisWorks/hypothesis/archive/${TAG}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+S="${WORKDIR}/${MY_P}/hypothesis-python"
+
+LICENSE="MPL-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="cli"
+
+RDEPEND="
+ >=dev-python/attrs-22.2.0[${PYTHON_USEDEP}]
+ >=dev-python/sortedcontainers-2.1.0[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ >=dev-python/exceptiongroup-1.0.0_rc8[${PYTHON_USEDEP}]
+ ' 3.9 3.10)
+ cli? (
+ $(python_gen_cond_dep '
+ dev-python/black[${PYTHON_USEDEP}]
+ dev-python/click[${PYTHON_USEDEP}]
+ ' "${CLI_COMPAT[@]}")
+ )
+"
+BDEPEND="
+ test? (
+ dev-python/pexpect[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ !!<dev-python/requests-toolbelt-0.10.1
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ # subtests are broken by warnings from random plugins
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ local -x PYTEST_PLUGINS=xdist.plugin,_hypothesis_pytestplugin
+ local -x HYPOTHESIS_NO_PLUGINS=1
+
+ # NB: paths need to be relative to pytest.ini,
+ # i.e. start with hypothesis-python/
+ local EPYTEST_DESELECT=()
+ case ${EPYTHON} in
+ pypy3)
+ EPYTEST_DESELECT+=(
+ # failing due to warnings from numpy/cython
+ hypothesis-python/tests/pytest/test_fixtures.py::test_given_plus_overridden_fixture
+ )
+ ;;
+ esac
+
+ epytest -o filterwarnings= -n "$(makeopts_jobs)" --dist=worksteal \
+ tests/cover tests/pytest tests/quality
+}
+
+python_install() {
+ distutils-r1_python_install
+ if ! use cli || ! has "${EPYTHON}" "${CLI_COMPAT[@]/_/.}"; then
+ rm -r "${ED}/usr/bin" "${D}$(python_get_scriptdir)" || die
+ fi
+}
+
+pkg_postinst() {
+ optfeature "datetime support" dev-python/pytz
+ optfeature "dateutil support" dev-python/python-dateutil
+ optfeature "numpy support" dev-python/numpy
+ optfeature "django support" dev-python/django dev-python/pytz
+ optfeature "pandas support" dev-python/pandas
+ optfeature "pytest support" dev-python/pytest
+}
diff --git a/dev-python/ipykernel/Manifest b/dev-python/ipykernel/Manifest
index 4ca5f6133ec8..51190852c65c 100644
--- a/dev-python/ipykernel/Manifest
+++ b/dev-python/ipykernel/Manifest
@@ -1,3 +1,4 @@
DIST ipykernel-6.29.0.tar.gz 160814 BLAKE2B 4f5c650fda125a477ae7f16fad07e968f0f31a97375159ff5d3917181f31ecac3a618927e492332e5d5f69321c43fad69daa4c9bdfc67acc3756775ef855ceec SHA512 f924d8c4471f04349e1c8d0b980f8759e55c37585a4a44e61ba01ed1b96e3aa3897ec6e953e91f8f881debf5e599ab95b679075dcd413e43b8ed0263e8c9ca44
DIST ipykernel-6.29.1.tar.gz 161082 BLAKE2B f5f5d4f15d08594fbab78675cdc1575a5579b69adeb393fa35d3ef57f56ad642999e5d17a901287a7924d8f7d1b62625d1c81dd96c821ce43bc694a277c63389 SHA512 8691394e76b151561248f66802622a4e4863c51bc26b4cf44e468155ff0f82405b92e69c37ecca8181d4b71736f61658fbf59937e7607a94288c107ea4cbfd74
DIST ipykernel-6.29.2.tar.gz 161175 BLAKE2B fc63fbaf01403933e7bcbb5b242e48f125a8349aeb2454a9bfd2f564e67f842af546fe4e69e447be2f4f6396d6aabcd6e29a6ff57424f5fcec0ebb1a43c50177 SHA512 5be2b1447b951304cabb7fbefae711aa2510dfd72ee03f0e2d9ec02e1cf44e541c9d8a11a87ab77a9338acb56db5c2cd82b11fa85f296c8a06ce6a8235e394b3
+DIST ipykernel-6.29.3.tar.gz 162794 BLAKE2B 3f0dcd1805d736f3657949cad45d8cacc57b6bdd4d950507eedb12aaae9e5f769174e8be45cd648d13b842b144bab237afa8da187b94f91a699602e795fb2418 SHA512 8726b37341a810318ec9c1585649288b40c3ac6875c82f5752da245ccd74125f5cb1557ca27a8187a8f668943a527345e9311d015b9e4e3095a4e07195a7d5b8
diff --git a/dev-python/ipykernel/ipykernel-6.29.3.ebuild b/dev-python/ipykernel/ipykernel-6.29.3.ebuild
new file mode 100644
index 000000000000..ef4bb31a518a
--- /dev/null
+++ b/dev-python/ipykernel/ipykernel-6.29.3.ebuild
@@ -0,0 +1,79 @@
+# 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_{8,9,10,11,12} pypy3 )
+PYTHON_REQ_USE="threads(+)"
+
+inherit distutils-r1 pypi virtualx
+
+DESCRIPTION="IPython Kernel for Jupyter"
+HOMEPAGE="
+ https://github.com/ipython/ipykernel/
+ https://pypi.org/project/ipykernel/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos"
+
+RDEPEND="
+ >=dev-python/comm-0.1.1[${PYTHON_USEDEP}]
+ >=dev-python/ipython-7.23.1[${PYTHON_USEDEP}]
+ >=dev-python/jupyter-client-8[${PYTHON_USEDEP}]
+ >=dev-python/jupyter-core-4.12[${PYTHON_USEDEP}]
+ >=dev-python/matplotlib-inline-0.1[${PYTHON_USEDEP}]
+ dev-python/nest-asyncio[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ dev-python/psutil[${PYTHON_USEDEP}]
+ >=dev-python/pyzmq-24[${PYTHON_USEDEP}]
+ >=dev-python/tornado-6.1[${PYTHON_USEDEP}]
+ >=dev-python/traitlets-5.4.0[${PYTHON_USEDEP}]
+"
+# RDEPEND seems specifically needed in BDEPEND, at least jupyter
+# bug #816486
+BDEPEND="
+ ${RDEPEND}
+ test? (
+ dev-python/flaky[${PYTHON_USEDEP}]
+ >=dev-python/pytest-asyncio-0.23.5[${PYTHON_USEDEP}]
+ dev-python/pytest-timeout[${PYTHON_USEDEP}]
+ dev-python/ipyparallel[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ # debugpy is actually optional
+ sed -i -e '/debugpy/d' pyproject.toml || die
+ distutils-r1_src_prepare
+}
+
+python_compile() {
+ distutils-r1_python_compile
+ # Use python3 in kernel.json configuration, bug #784764
+ sed -i -e '/python3.[0-9]\+/s//python3/' \
+ "${BUILD_DIR}/install${EPREFIX}/usr/share/jupyter/kernels/python3/kernel.json" || die
+}
+
+src_test() {
+ local EPYTEST_DESELECT=(
+ # TODO
+ tests/test_debugger.py::test_attach_debug
+ tests/test_debugger.py::test_breakpoint_in_cell_with_leading_empty_lines
+ tests/test_debugger.py::test_rich_inspect_at_breakpoint
+ tests/test_debugger.py::test_rich_inspect_not_at_breakpoint
+ tests/test_debugger.py::test_set_breakpoints
+ tests/test_debugger.py::test_stop_on_breakpoint
+ tests/test_debugger.py::test_copy_to_globals
+ # hangs?
+ tests/test_eventloop.py::test_tk_loop
+ # doesn't like pyside2?
+ tests/test_eventloop.py::test_qt_enable_gui
+ )
+
+ virtx distutils-r1_src_test
+}
diff --git a/dev-python/jupyterlab/Manifest b/dev-python/jupyterlab/Manifest
index a8cf206a5dc1..907acb4924c2 100644
--- a/dev-python/jupyterlab/Manifest
+++ b/dev-python/jupyterlab/Manifest
@@ -1,3 +1,4 @@
DIST jupyterlab-4.0.12.tar.gz 18352336 BLAKE2B afa406372cabd740dc09b354e626d4b87c3143e258294d48f82a816002f43e3d22e43bb0cae9eb34f1754d6ed947923c7fb60fbdaec9c82db162422c6057ec7c SHA512 2a84d2d2e6c64e8fa469b7c5b144b364743d2def1c278aff13e5a9380aca0075b49b31370fed368df951208014a0737380966ab6171a13ff07246ad2b4eca996
+DIST jupyterlab-4.0.13.tar.gz 18354664 BLAKE2B 6c4df40c8ab5a97cf85025c752f48dc97b8d90e01e4343ba40cd7c25f1d48936040af9704a5a9b855aa8cfc9d43db15c0904c96daa73ec0f65c18b365cd2155b SHA512 89a6e7ca594905b08ce7c85299e3fe0a94cb8bb135258c992c3b6eab20f04b34b956e997a362088347c1488f5720e59f8c3d1366d9fbc5bd0dc7c1cc37ad2d43
DIST jupyterlab-4.1.1.tar.gz 21807943 BLAKE2B 9bd6d9fc25c68743f01c2193e09d996e4350a8a00b1b8a0c83c001d4452a16b7ba69362fea36955cbb93f8f408a6e3a5dd45f2a17cde8899d5a192f7395875a5 SHA512 9441dc0faec7e65c7a228b2876d5a6d962e892209414e38c336436af218789d6f735c6c7eb089a0c1525c04ef6824abfb5da82b14292dc402b6a0f7f97d06e0a
DIST jupyterlab-4.1.2.tar.gz 21810592 BLAKE2B 5c5c828c0144260e1fbead1f2ea23cd6b458c2c86dc2202ed4e56fd566d85e14544fa7443d0676926e0619721bad5b8e85431bf02f7a61a3f0fceeafb0eafa66 SHA512 17ab1132421e494a3ce48edec3823576f0202b90e238a01f8500b86bbd7753a8b3e6376a9f2bdd5cf7b1f50708853d92886b486a4a0c620df179693f1566e3e2
diff --git a/dev-python/jupyterlab/jupyterlab-4.0.13.ebuild b/dev-python/jupyterlab/jupyterlab-4.0.13.ebuild
new file mode 100644
index 000000000000..86c870676a9c
--- /dev/null
+++ b/dev-python/jupyterlab/jupyterlab-4.0.13.ebuild
@@ -0,0 +1,77 @@
+# 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_{8,9,10,11,12} pypy3 )
+
+inherit distutils-r1 pypi xdg
+
+DESCRIPTION="JupyterLab computational environment"
+HOMEPAGE="
+ https://jupyter.org/
+ https://github.com/jupyterlab/jupyterlab/
+ https://pypi.org/project/jupyterlab/
+"
+
+LICENSE="BSD MIT GPL-3 Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
+
+RDEPEND="
+ dev-python/async-lru[${PYTHON_USEDEP}]
+ dev-python/ipykernel[${PYTHON_USEDEP}]
+ >=dev-python/jinja-3.0.3[${PYTHON_USEDEP}]
+ dev-python/jupyter-core[${PYTHON_USEDEP}]
+ >=dev-python/jupyter-lsp-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/jupyter-server-2.4.0[${PYTHON_USEDEP}]
+ <dev-python/jupyter-server-3[${PYTHON_USEDEP}]
+ >=dev-python/jupyterlab-server-2.19[${PYTHON_USEDEP}]
+ <dev-python/jupyterlab-server-3[${PYTHON_USEDEP}]
+ >=dev-python/notebook-shim-0.2[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ dev-python/tomli[${PYTHON_USEDEP}]
+ >=dev-python/tornado-6.2[${PYTHON_USEDEP}]
+ dev-python/traitlets[${PYTHON_USEDEP}]
+ net-libs/nodejs
+"
+
+BDEPEND="
+ dev-python/hatch-jupyter-builder[${PYTHON_USEDEP}]
+ test? (
+ dev-python/pytest-console-scripts[${PYTHON_USEDEP}]
+ >=dev-python/pytest-jupyter-0.5.3[${PYTHON_USEDEP}]
+ dev-python/pytest-tornasync[${PYTHON_USEDEP}]
+ dev-python/pytest-timeout[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/requests-cache[${PYTHON_USEDEP}]
+ dev-python/virtualenv[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_DESELECT=(
+ # These tests call npm and want internet
+ jupyterlab/tests/test_jupyterlab.py::TestExtension::test_uninstall_core_extension
+ jupyterlab/tests/test_jupyterlab.py::TestExtension::test_install_and_uninstall_pinned_folder
+ jupyterlab/tests/test_jupyterlab.py::TestExtension::test_install_and_uninstall_pinned
+ jupyterlab/tests/test_jupyterlab.py::TestExtension::test_build_custom_minimal_core_config
+ jupyterlab/tests/test_jupyterlab.py::TestExtension::test_build_custom
+ jupyterlab/tests/test_jupyterlab.py::TestExtension::test_build_check
+ jupyterlab/tests/test_jupyterlab.py::TestExtension::test_build
+ jupyterlab/tests/test_build_api.py::TestBuildAPI::test_clear
+ jupyterlab/tests/test_build_api.py::TestBuildAPI::test_build
+)
+
+EPYTEST_IGNORE=(
+ jupyterlab/tests/test_announcements.py
+)
+
+distutils_enable_tests pytest
+# TODO: package sphinx_copybutton
+#distutils_enable_sphinx docs/source dev-python/sphinx-rtd-theme dev-python/myst-parser
+
+python_install_all() {
+ distutils-r1_python_install_all
+ mv "${ED}/usr/etc" "${ED}/etc" || die
+}
diff --git a/dev-python/keyring/Manifest b/dev-python/keyring/Manifest
index 4cb392d97f3c..311ec54b20de 100644
--- a/dev-python/keyring/Manifest
+++ b/dev-python/keyring/Manifest
@@ -1 +1,2 @@
DIST keyring-24.3.0.tar.gz 59666 BLAKE2B 6f68a6057f25c4e9841e04f2977da0401f09e15c6aeb04d12440de054049af9ece867befdd9fd26acab27cf0a00f3eeba9b7989c74eae88f96411f53cf86e594 SHA512 22467924420cc8646ebb10e2aa851e734c0a2ba9a7298987eba0849dbcba0abd295705f3b80fb6975c24e07ec029c0e406213275fa209fe2ca3e5b0c114e1612
+DIST keyring-24.3.1.tar.gz 60454 BLAKE2B cb0a9b82163febbbd737f2f25353bf96cbb7b8a87c7db00523960b3fce5595c6af65bc02b7d070b0fa5a466fc53530975de8f7a44ab9a9f783d2db34b1a67901 SHA512 53f26763175c7f1de041d8805062696ef3ef6c79792cdc75ae72621da8e729ac4cbb6e76937db2a0a5ce4bc41ab92c164d62e4627f92edab8c0d0fc02ca4980e
diff --git a/dev-python/keyring/keyring-24.3.1.ebuild b/dev-python/keyring/keyring-24.3.1.ebuild
new file mode 100644
index 000000000000..af0c46ccd512
--- /dev/null
+++ b/dev-python/keyring/keyring-24.3.1.ebuild
@@ -0,0 +1,46 @@
+# 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 pypi
+
+DESCRIPTION="Provides access to the system keyring service"
+HOMEPAGE="
+ https://github.com/jaraco/keyring/
+ https://pypi.org/project/keyring/
+"
+
+SLOT="0"
+LICENSE="PSF-2"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+
+RDEPEND="
+ >=dev-python/secretstorage-3.2[${PYTHON_USEDEP}]
+ dev-python/jaraco-classes[${PYTHON_USEDEP}]
+ >=dev-python/jeepney-0.4.2[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ >=dev-python/importlib-metadata-4.11.4[${PYTHON_USEDEP}]
+ ' 3.10 3.11)
+"
+BDEPEND="
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
+
+EPYTEST_DESELECT=(
+ # this test fails if importlib-metadata returns more than one
+ # entry, i.e. when keyring is installed already
+ tests/test_packaging.py::test_entry_point
+)
+
+EPYTEST_IGNORE=(
+ # apparently does not unlock the keyring properly
+ tests/backends/test_libsecret.py
+ # hangs
+ tests/backends/test_kwallet.py
+)
diff --git a/dev-python/langdetect/Manifest b/dev-python/langdetect/Manifest
index e9da2ac43cac..a11d7c268c91 100644
--- a/dev-python/langdetect/Manifest
+++ b/dev-python/langdetect/Manifest
@@ -1,3 +1 @@
DIST langdetect-1.0.9.tar.gz 981474 BLAKE2B ea8a9c3f16a2987c080742473bff4f2c1503f53fb3c2b40b0b1d6212bb6133ea22dce7864ffcfb8968c3a46b157d45cb3e2cf6f84bdbed0266cc716a853b032c SHA512 7558d674c47b080c79e43a00a25d2c7f77188cf60bea2cecb3bebb803d75e1aa42b43c74bd26ea1b541f4cb927421908882cbec01a91f0913984217e71ccc8db
-EBUILD langdetect-1.0.9.ebuild 493 BLAKE2B 0df8bce19bc80f79f8e76bcef5a4c2caf333365fe0cb9a3c076b7858bceded5a3e58921474f866a2709dd657b7ed330c1ec4a7f9d7bab0fcf1bc92d77cabc32d SHA512 ea2a1adcb133ac5fc951ba1aa90ef1ce3dfcc424e59727591763d4875aa044a74188be2d15fd89c6b2e83ed6ea04ec3d9851ed584ae79d2c2c127bde7d994b48
-MISC metadata.xml 457 BLAKE2B 630128a3e982b6d60cc7b9f74c79fcb5ee47a71a02c73a50af9da8cedb6fad8e20a7f74b881e5b25c6483b92c9edbd56552cd38b2d9cbfa8b3eb4530facea969 SHA512 674f4f5cd809c6c77bc14e0f5687fa972bef14bdfa0b3343c5d66b7163eef1906eb87d060c8288732f825de71dce291ad0b841a5f2f0dd230f957b5687e45d45
diff --git a/dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch b/dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch
new file mode 100644
index 000000000000..637368d2f237
--- /dev/null
+++ b/dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch
@@ -0,0 +1,13 @@
+Fix "Package 'langdetect.profiles' is absent from the `packages` configuration."
+
+--- a/setup.py
++++ b/setup.py
+@@ -18,7 +18,7 @@ setup(
+ author_email='michal.danilak@gmail.com',
+ url='https://github.com/Mimino666/langdetect',
+ keywords='language detection library',
+- packages=['langdetect', 'langdetect.utils', 'langdetect.tests'],
++ packages=['langdetect', 'langdetect.utils', 'langdetect.tests', 'langdetect.profiles'],
+ include_package_data=True,
+ install_requires=['six'],
+ license='MIT',
diff --git a/dev-python/langdetect/langdetect-1.0.9.ebuild b/dev-python/langdetect/langdetect-1.0.9.ebuild
index c09b7356f549..630fe63c6f53 100644
--- a/dev-python/langdetect/langdetect-1.0.9.ebuild
+++ b/dev-python/langdetect/langdetect-1.0.9.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2022 Gentoo Authors
+# Copyright 2022-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -19,4 +19,6 @@ KEYWORDS="~amd64"
RDEPEND="dev-python/six[${PYTHON_USEDEP}]"
+PATCHES=( "${FILESDIR}/${P}-explicit-config.patch" )
+
distutils_enable_tests unittest
diff --git a/dev-python/langdetect/metadata.xml b/dev-python/langdetect/metadata.xml
index 020e07f2a3dd..736a1167c898 100644
--- a/dev-python/langdetect/metadata.xml
+++ b/dev-python/langdetect/metadata.xml
@@ -1,12 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>marcin.deranek@slonko.net</email>
- <name>Marcin Deranek</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/Mimino666/langdetect/issues</bugs-to>
- </upstream>
- <origin>slonko-overlay</origin>
+
+ <origin>gentoo-guru-overlay</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-python/leechcorepyc/Manifest b/dev-python/leechcorepyc/Manifest
index 3bb1c840ef7d..186fdd4e84d7 100644
--- a/dev-python/leechcorepyc/Manifest
+++ b/dev-python/leechcorepyc/Manifest
@@ -1 +1,2 @@
DIST leechcorepyc-2.16.9.tar.gz 178656 BLAKE2B 76cefea2d8c30c88ae649da6c95f420b366e6b7ec8a44339cda6bd65b890b02196ff19d3b7d8218c87a73256e079fdd51dcb0499934fef0145e4a404376be7de SHA512 5a5455d0401177d2ae4f6b22a0dbf1f4ddce3458edb4cea04c8a127a6baa7083c83ba79d3d236a6cec15e8a1c05c4a8c747d7053b451dbed9b6a8defa17ec288
+DIST leechcorepyc-2.17.0.tar.gz 179198 BLAKE2B b811e924687e67d394a5271a88ad01e0f9d528176e50baecc9f471c17cc016f11e02e05c4ac0b04277f6828aa2c1c4ff39d56065d6f95a5f0c1d909b0b448b2f SHA512 91cf73c62af104f83bd4d4926633ceb702027c97137c351e4d6d8518a4c8c467031153127e85058a9b451e33f370257dd3aa461f0eab643fb8b48a62827ed436
diff --git a/dev-python/leechcorepyc/leechcorepyc-2.17.0.ebuild b/dev-python/leechcorepyc/leechcorepyc-2.17.0.ebuild
new file mode 100644
index 000000000000..4e44650b2882
--- /dev/null
+++ b/dev-python/leechcorepyc/leechcorepyc-2.17.0.ebuild
@@ -0,0 +1,41 @@
+# 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 toolchain-funcs pypi
+
+DESCRIPTION="Python binding for LeechCore Physical Memory Acquisition Library"
+HOMEPAGE="https://github.com/ufrisk/LeechCore"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+# leechcorepyc ships with a bundled version of the LeechCore library. So we
+# don't depend on the library here. But we must be aware this module doesn't
+# use the system library.
+DEPEND="virtual/libusb:="
+RDEPEND="${DEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-2.16.9-respect-CC.patch"
+)
+
+src_prepare() {
+ default
+
+ # Avoid redefining _FORTIFY_SOURCE. See #893824, #906715.
+ sed -i -e 's/ -D_FORTIFY_SOURCE=2 / /g' leechcore/Makefile || die
+}
+
+src_configure() {
+ tc-export CC
+
+ distutils-r1_src_configure
+}
diff --git a/dev-python/marshmallow/Manifest b/dev-python/marshmallow/Manifest
index 88f9a0120259..c18b24621aae 100644
--- a/dev-python/marshmallow/Manifest
+++ b/dev-python/marshmallow/Manifest
@@ -1 +1,2 @@
DIST marshmallow-3.20.2.gh.tar.gz 183876 BLAKE2B 84cf8ca23069ad1d2353ffa9299556298457485fa459746b948835f04f92ef3949d5429e8285e084be7398fb294b3d74eba1b38ef21b469daed401f1e6affcdb SHA512 8305693405a976c53333b0c6ef074a12af4736f9620ca37c7c2ec6318fac2b19086426344ce8c2f515e95becdba8b2bb1c20aca5a9dffb4145cb27fee00dc080
+DIST marshmallow-3.21.0.gh.tar.gz 183738 BLAKE2B 9f9b9203be93e6feecbd6b7e1da32f737ba33ca8e386e062d091e20480f5241c1d73f77afd542cb24816a48aa5a948aaa20edcfe9d0fdfa847f6e405e89cff20 SHA512 d08e4eedafc1d6f2bfab463357febc75013e8a548195ab85aac55fa225f2180a4f1646d68f8586d369dd108a793086c5bb8522c7543a51540ec4ee6de5305ad3
diff --git a/dev-python/marshmallow/marshmallow-3.21.0.ebuild b/dev-python/marshmallow/marshmallow-3.21.0.ebuild
new file mode 100644
index 000000000000..e0cd0f9d1b17
--- /dev/null
+++ b/dev-python/marshmallow/marshmallow-3.21.0.ebuild
@@ -0,0 +1,36 @@
+# 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
+
+DESCRIPTION="A library for converting to and from native Python datatypes"
+HOMEPAGE="
+ https://github.com/marshmallow-code/marshmallow/
+ https://pypi.org/project/marshmallow/
+"
+SRC_URI="
+ https://github.com/marshmallow-code/marshmallow/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+RDEPEND="
+ >=dev-python/packaging-17.0[${PYTHON_USEDEP}]
+ dev-python/python-dateutil[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/pytz[${PYTHON_USEDEP}]
+ dev-python/simplejson[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/mkdocs-htmlproofer-plugin/Manifest b/dev-python/mkdocs-htmlproofer-plugin/Manifest
index 88a75b9b0360..7517216d6da5 100644
--- a/dev-python/mkdocs-htmlproofer-plugin/Manifest
+++ b/dev-python/mkdocs-htmlproofer-plugin/Manifest
@@ -1 +1,2 @@
DIST mkdocs-htmlproofer-plugin-1.0.0.gh.tar.gz 14534 BLAKE2B 361c422e985dd00c12ffa6bcd1ba02df0ef18fb37f7290660963832b38dd0f2c8e79662780224588f626eaa9215afa9852aed59fc6771a3877f779f40493f54d SHA512 083103ca8a1e1f63a22fb877ec3d123549745157f3f8bc3b10364c271b7975c09222b850ddef4bc9a1aa9d168711764f74c91bed50d8a48c4c7415f894df5fb3
+DIST mkdocs-htmlproofer-plugin-1.1.0.gh.tar.gz 15368 BLAKE2B 19e87fcbe1db4f5cd80ab61957b08ff67d2210fa1ad98ee719a24386bdc6594da8bab20375e66767634a64539d699a7647b8820b12a8f170ece813494d1cde93 SHA512 cca7152e4a8ddf4cca28962f5aabf557b00ff36e775a3ab4fa1fd7a687ca736fdf8f5b509f026c802f4665864413772f216ca7724aca7bfac42e19da36dd422b
diff --git a/dev-python/mkdocs-htmlproofer-plugin/mkdocs-htmlproofer-plugin-1.1.0.ebuild b/dev-python/mkdocs-htmlproofer-plugin/mkdocs-htmlproofer-plugin-1.1.0.ebuild
new file mode 100644
index 000000000000..b0cc5ea88518
--- /dev/null
+++ b/dev-python/mkdocs-htmlproofer-plugin/mkdocs-htmlproofer-plugin-1.1.0.ebuild
@@ -0,0 +1,33 @@
+# 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="A MkDocs plugin that validates URLs in rendered HTML files"
+HOMEPAGE="
+ https://github.com/manuzhang/mkdocs-htmlproofer-plugin/
+ https://pypi.org/project/mkdocs-htmlproofer-plugin/
+"
+# No tests in PyPI tarballs
+SRC_URI="
+ https://github.com/manuzhang/mkdocs-htmlproofer-plugin/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~riscv"
+
+RDEPEND="
+ dev-python/beautifulsoup4[${PYTHON_USEDEP}]
+ dev-python/markdown[${PYTHON_USEDEP}]
+ >=dev-python/mkdocs-1.4.0[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/mkdocstrings/Manifest b/dev-python/mkdocstrings/Manifest
index 58bff6e0f61f..bf867b11c3b3 100644
--- a/dev-python/mkdocstrings/Manifest
+++ b/dev-python/mkdocstrings/Manifest
@@ -1 +1,2 @@
DIST mkdocstrings-0.24.0.gh.tar.gz 85474 BLAKE2B f43c0842bd5c8f52700e572964948f362112c073992c8aa7d6df8ecc0a266b22122988c944e36d5edf6d227a2cf9e2a9a95222146139d8577001833c729ad7ca SHA512 0cc03cb68679958d77a5f1d10e96411271de2db2c89b1c27d151d7d6673a94c967024c377cb22a612a8079a0ea736b921384518869e1475797ed94c8c92d4dbb
+DIST mkdocstrings-0.24.1.gh.tar.gz 86421 BLAKE2B 81d1f4453808140044ab9e27016b0e4119dd50ec8ba4f29d2d53d87cce151e4999ec2c18e2eff90d270a4bfd96a24ba506bbf382cf4c9bc5192c03bc3ddf399c SHA512 7328abe16161ba1358436d3d10105723fcaad9baa3aa5fb923dc46814623bdd15f3f51bba43c2b8029ff73467474d37b1aec94d873c5254d3ef322746df6578b
diff --git a/dev-python/mkdocstrings/mkdocstrings-0.24.1.ebuild b/dev-python/mkdocstrings/mkdocstrings-0.24.1.ebuild
new file mode 100644
index 000000000000..2a51973f9a9d
--- /dev/null
+++ b/dev-python/mkdocstrings/mkdocstrings-0.24.1.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# py3.12 blocked by mkdocs-material
+DISTUTILS_USE_PEP517=pdm-backend
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Automatic documentation from sources, for MkDocs"
+HOMEPAGE="
+ https://mkdocstrings.github.io/
+ https://github.com/mkdocstrings/mkdocstrings/
+ https://pypi.org/project/mkdocstrings/
+"
+# Tests require files absent from PyPI tarballs
+SRC_URI="
+ https://github.com/mkdocstrings/mkdocstrings/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~riscv"
+
+RDEPEND="
+ >=dev-python/click-7.0[${PYTHON_USEDEP}]
+ >=dev-python/jinja-2.11.1[${PYTHON_USEDEP}]
+ >=dev-python/markdown-3.3[${PYTHON_USEDEP}]
+ >=dev-python/markupsafe-1.1[${PYTHON_USEDEP}]
+ >=dev-python/mkdocs-1.5[${PYTHON_USEDEP}]
+ >=dev-python/mkdocs-autorefs-0.3.1[${PYTHON_USEDEP}]
+ >=dev-python/platformdirs-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/pymdown-extensions-6.3[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/markdown-exec[${PYTHON_USEDEP}]
+ dev-python/mkdocs-material[${PYTHON_USEDEP}]
+ dev-python/mkdocstrings-python[${PYTHON_USEDEP}]
+ dev-python/sphinx[${PYTHON_USEDEP}]
+ )
+"
+
+# mkdocstrings documentation generation requires several currently
+# unpackaged mkdocs extensions and plug-ins, and this test
+# makes use of mkdocs configuration
+EPYTEST_DESELECT=(
+ tests/test_plugin.py::test_disabling_plugin
+ # WTF, it tries to unlink installed files from installed package?!
+ tests/test_handlers.py::test_extended_templates
+ # Needs unpackaged mkdocs-callouts, mkdocs-literate-nav, and possibly more
+ tests/test_inventory.py::test_sphinx_load_mkdocstrings_inventory_file
+ # Internet
+ tests/test_inventory.py::test_load_inventory
+)
+
+distutils_enable_tests pytest
+
+export PDM_BUILD_SCM_VERSION=${PV}
diff --git a/dev-python/numexpr/numexpr-2.9.0.ebuild b/dev-python/numexpr/numexpr-2.9.0.ebuild
index f0fe77597c97..bd35834350b6 100644
--- a/dev-python/numexpr/numexpr-2.9.0.ebuild
+++ b/dev-python/numexpr/numexpr-2.9.0.ebuild
@@ -19,7 +19,7 @@ SRC_URI="https://github.com/pydata/numexpr/archive/v${PV}.tar.gz -> ${P}.gh.tar.
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~x64-macos"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~x64-macos"
DEPEND="
>=dev-python/numpy-1.13.3[${PYTHON_USEDEP}]
diff --git a/dev-python/poetry/Manifest b/dev-python/poetry/Manifest
index b4dd3b4edd56..f0bc7ae3ea8d 100644
--- a/dev-python/poetry/Manifest
+++ b/dev-python/poetry/Manifest
@@ -1,2 +1,3 @@
DIST poetry-1.7.1.tar.gz 1483927 BLAKE2B d32f84cbed6f895678fba723700504cafe2bb7b1de0be0f289c0606b3c775d02e4172d74aafe58f29f9e2b5b9cb0f614b902bb9efa55ab1077a6689a8b4d331f SHA512 bf3654e9de71da35d7adfc239797dbed9813a2a1bb585b0bd9ad398706ad1628430422d0ebe7d9c3dcc1f619ad1a1a2073e9d9d3296354bf2f14a1aed5a5444e
DIST poetry-1.8.0.tar.gz 1514968 BLAKE2B 6ef6b8db6cd32c3c8d9a0759ebbfcfd4fafd79a4d236a5f48d7d1abc2d31bd93ee00686bf3623c5fbec212001dc1f2c4afce41f660b1404c39ad04815d364275 SHA512 ef2b3c6ea66d1d565ba8e17f0e4210e4406c08dd2d947deed85eb667ebfd618c3148ee0b67b5b2a020c7ddfb3fc692859de19e421c449954019d7a4b7942dd3d
+DIST poetry-1.8.1.tar.gz 1514978 BLAKE2B 663b4db56e3a78a156c6f90eb2c34160c3d9a4f37762ff9df8826aabb59ba2d297f60c19a260e91bf34b40717a577fbfbd3fe9f4dc1ad9ca635a3c552da633a5 SHA512 b0d1240bdf20e46cc152e128351a4ed1b2aea86bd34a0edba662c6be403535bcf7339fdb2670807e6294f3043d2dd6296d085c03abccfd1c2c89216ddefe093b
diff --git a/dev-python/poetry/poetry-1.8.1.ebuild b/dev-python/poetry/poetry-1.8.1.ebuild
new file mode 100644
index 000000000000..054775bec539
--- /dev/null
+++ b/dev-python/poetry/poetry-1.8.1.ebuild
@@ -0,0 +1,96 @@
+# Copyright 2023-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} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A frontend for poetry - a python dependency management and packaging tool"
+HOMEPAGE="
+ https://python-poetry.org/
+ https://github.com/python-poetry/poetry
+ https://pypi.org/project/poetry/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+# dev-python/build: 1.0 breaks backward compatibility
+# https://github.com/python-poetry/poetry/issues/8434
+RDEPEND="
+ >=dev-python/poetry-core-1.9.0[${PYTHON_USEDEP}]
+ >=dev-python/poetry-plugin-export-1.6.0[${PYTHON_USEDEP}]
+ >=dev-python/build-1.0.3[${PYTHON_USEDEP}]
+ >=dev-python/cachecontrol-0.14.0[${PYTHON_USEDEP}]
+ >=dev-python/cleo-2.1.0[${PYTHON_USEDEP}]
+ >=dev-python/crashtest-0.4.1[${PYTHON_USEDEP}]
+ >=dev-python/dulwich-0.21.2[${PYTHON_USEDEP}]
+ >=dev-python/fastjsonschema-2.18.0[${PYTHON_USEDEP}]
+ >=dev-python/installer-0.7.0[${PYTHON_USEDEP}]
+ >=dev-python/keyring-24.0.0[${PYTHON_USEDEP}]
+ >=dev-python/packaging-23.1[${PYTHON_USEDEP}]
+ >=dev-python/pexpect-4.7.0[${PYTHON_USEDEP}]
+ >=dev-python/pkginfo-1.9.4[${PYTHON_USEDEP}]
+ >=dev-python/platformdirs-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.26[${PYTHON_USEDEP}]
+ >=dev-python/requests-toolbelt-1.0.0[${PYTHON_USEDEP}]
+ >=dev-python/shellingham-1.5.0[${PYTHON_USEDEP}]
+ >=dev-python/tomlkit-0.11.6[${PYTHON_USEDEP}]
+ >=dev-python/trove-classifiers-2022.5.19[${PYTHON_USEDEP}]
+ >=dev-python/urllib3-1.26.0[${PYTHON_USEDEP}]
+ >=dev-python/virtualenv-20.23.0[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ >=dev-python/tomli-2.0.1[${PYTHON_USEDEP}]
+ ' 3.10)
+"
+
+BDEPEND="
+ test? (
+ >=dev-python/deepdiff-6.3.1[${PYTHON_USEDEP}]
+ >=dev-python/httpretty-1.0[${PYTHON_USEDEP}]
+ >=dev-python/pytest-mock-3.9[${PYTHON_USEDEP}]
+ >=dev-python/pytest-xdist-3.1[${PYTHON_USEDEP}]
+ )
+"
+
+src_prepare() {
+ # unpin
+ sed -e 's:\^:>=:' \
+ -e '/poetry-core/s:":">=:' \
+ -e 's:,<[0-9.]*::' \
+ -i pyproject.toml || die
+
+ distutils-r1_src_prepare
+}
+
+EPYTEST_DESELECT=(
+ # Tests require network (they run `pip install ...`)
+ tests/installation/test_chef.py::test_isolated_env_install_success
+ tests/installation/test_executor.py::test_executor_should_write_pep610_url_references_for_directories
+ tests/installation/test_executor.py::test_executor_should_write_pep610_url_references_for_git
+ tests/installation/test_executor.py::test_executor_should_write_pep610_url_references_for_git_with_subdirectories
+ tests/installation/test_executor.py::test_executor_should_write_pep610_url_references_for_non_wheel_files
+ tests/installation/test_installer.py::test_installer_with_pypi_repository
+ tests/installation/test_pip_installer.py::test_uninstall_git_package_nspkg_pth_cleanup
+ tests/masonry/builders/test_editable_builder.py::test_builder_setup_generation_runs_with_pip_editable
+
+ # Works with network, but otherwise: Backend 'poetry.core.masonry.api' is not available.
+ tests/installation/test_chef.py::test_prepare_sdist
+ tests/installation/test_chef.py::test_prepare_directory
+ tests/installation/test_chef.py::test_prepare_directory_with_extensions
+ tests/installation/test_chef.py::test_prepare_directory_editable
+
+ # Internal test for lockfile being up-to-date
+ # Meaningless, also sdist does not include lockfile
+ tests/installation/test_installer.py::test_not_fresh_lock
+
+ # TODO
+ tests/installation/test_executor.py::test_executor_known_hashes
+ tests/utils/env/test_env_manager.py::test_create_venv_finds_no_python_executable
+)
+
+distutils_enable_tests pytest
diff --git a/dev-python/pydantic/Manifest b/dev-python/pydantic/Manifest
index 5c51af3432eb..068b76d949c0 100644
--- a/dev-python/pydantic/Manifest
+++ b/dev-python/pydantic/Manifest
@@ -5,3 +5,4 @@ DIST pydantic-2.5.3.tar.gz 651797 BLAKE2B 9494bd7a243d5cda762d916b10120861870b5f
DIST pydantic-2.6.0.tar.gz 677208 BLAKE2B 10df7e22a05fc01e1d35b71f266f852599f949080c44a3ecbee8f8b42344de13fb2bc13957d2d2104337d4311ceda537073d0dda6f8cd9c5f621d381293d4e8c SHA512 5d3912f2b388ea49ba853b6463478c0fbf15ea67877291198ef69b4dc6f037215e62dc872e62ad6152ce02de0d809c89dcd11b5b0c94e668f15eb559a3d8a536
DIST pydantic-2.6.1.tar.gz 679826 BLAKE2B d1915b20200a9a3a3e1c854ecc2c760eba7b672cb336b07426475072da08090a6adbe6d674019d314b01c92d69aa6caecb52f8f45bdf6d81bde1a1bff6230a3f SHA512 89a202165950ab741eac8441eb6c014dab50474bd4d001f90a32cff55b1b6bf36433d4ae11df8ab5e51bbcf68efb9674cece9a512c1d85f428e13fb59e2ae2c0
DIST pydantic-2.6.2.tar.gz 679956 BLAKE2B 5b1689fa0db2e4583f5df90b730520ba1c703a0745e8752778c45c84b6009e845ae9298aa9b8e393af8dd5b9ae6e8f83a17f3bfb566d2538d477bcb92b38cddf SHA512 dc96ca3639305e4e166a74aa2e445758c049fa76ca3a2a3036267b394a5f46037e3f9da637b20b715f6e27c8733d6e74b1c51a58d2aa624f1de982e4c5788301
+DIST pydantic-2.6.3.tar.gz 680427 BLAKE2B 28d8d4edcfeeae4f0ba70ed09987e26ba569c38b2c511b6d0b4277b830173302228c964f4c086ac4412a331afa3fba16d9581bd31446fb1dfb43065eb29dfc59 SHA512 2eca898328beb1f33e343d3aa7edf8847baae0569d078507a58bbe0fcf355250c72b70a33f6b79cef697f41ced91eaeee1ffc4a7712fd6fd251fd64557e390d0
diff --git a/dev-python/pydantic/pydantic-2.6.3.ebuild b/dev-python/pydantic/pydantic-2.6.3.ebuild
new file mode 100644
index 000000000000..25a966b1b7e7
--- /dev/null
+++ b/dev-python/pydantic/pydantic-2.6.3.ebuild
@@ -0,0 +1,57 @@
+# 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_{8,9,10,11,12} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Data parsing and validation using Python type hints"
+HOMEPAGE="
+ https://github.com/pydantic/pydantic/
+ https://pypi.org/project/pydantic/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/annotated-types-0.4.0[${PYTHON_USEDEP}]
+ ~dev-python/pydantic-core-2.16.3[${PYTHON_USEDEP}]
+ >=dev-python/typing-extensions-4.6.1[${PYTHON_USEDEP}]
+"
+# pytest-8: https://github.com/pydantic/pydantic/issues/8674
+BDEPEND="
+ >=dev-python/hatch-fancy-pypi-readme-22.5.0[${PYTHON_USEDEP}]
+ test? (
+ dev-python/cloudpickle[${PYTHON_USEDEP}]
+ dev-python/dirty-equals[${PYTHON_USEDEP}]
+ >=dev-python/email-validator-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/Faker-18.13.0[${PYTHON_USEDEP}]
+ <dev-python/pytest-8[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ sed -i -e '/benchmark/d' pyproject.toml || die
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local EPYTEST_DESELECT=()
+ local EPYTEST_IGNORE=(
+ # require pytest-examples
+ tests/test_docs.py
+ # benchmarks
+ tests/benchmarks
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -p pytest_mock
+}
diff --git a/dev-python/pyside6/pyside6-6.6.2.ebuild b/dev-python/pyside6/pyside6-6.6.2-r1.ebuild
index 13d711636034..d7bddd609288 100644
--- a/dev-python/pyside6/pyside6-6.6.2.ebuild
+++ b/dev-python/pyside6/pyside6-6.6.2-r1.ebuild
@@ -98,6 +98,7 @@ RDEPEND="${PYTHON_DEPS}
help? ( =dev-qt/qttools-${QT_PV}[assistant] )
location? ( =dev-qt/qtlocation-${QT_PV} )
multimedia? ( =dev-qt/qtmultimedia-${QT_PV} )
+ network? ( =dev-qt/qtbase-${QT_PV}[ssl] )
network-auth? ( =dev-qt/qtnetworkauth-${QT_PV} )
nfc? ( =dev-qt/qtconnectivity-${QT_PV}[nfc] )
pdfium? ( =dev-qt/qtwebengine-${QT_PV}[pdfium(-),widgets?] )
diff --git a/dev-python/pytest-testinfra/pytest-testinfra-10.0.0.ebuild b/dev-python/pytest-testinfra/pytest-testinfra-10.0.0.ebuild
index f29c32f29c34..f355e13bf559 100644
--- a/dev-python/pytest-testinfra/pytest-testinfra-10.0.0.ebuild
+++ b/dev-python/pytest-testinfra/pytest-testinfra-10.0.0.ebuild
@@ -27,9 +27,6 @@ BDEPEND="
dev-python/setuptools-scm[${PYTHON_USEDEP}]
test? (
app-admin/ansible
- $(python_gen_cond_dep '
- app-admin/salt[${PYTHON_USEDEP}]
- ' python3_10)
dev-python/paramiko[${PYTHON_USEDEP}]
dev-python/pywinrm[${PYTHON_USEDEP}]
)
diff --git a/dev-python/pytest-testinfra/pytest-testinfra-10.1.0.ebuild b/dev-python/pytest-testinfra/pytest-testinfra-10.1.0.ebuild
index dce39db220c7..d53ca217b239 100644
--- a/dev-python/pytest-testinfra/pytest-testinfra-10.1.0.ebuild
+++ b/dev-python/pytest-testinfra/pytest-testinfra-10.1.0.ebuild
@@ -27,9 +27,6 @@ BDEPEND="
dev-python/setuptools-scm[${PYTHON_USEDEP}]
test? (
app-admin/ansible
- $(python_gen_cond_dep '
- app-admin/salt[${PYTHON_USEDEP}]
- ' python3_10)
dev-python/paramiko[${PYTHON_USEDEP}]
dev-python/pywinrm[${PYTHON_USEDEP}]
)
diff --git a/dev-python/readme-renderer/Manifest b/dev-python/readme-renderer/Manifest
index 2bafd11354cf..b618bb3f9dd6 100644
--- a/dev-python/readme-renderer/Manifest
+++ b/dev-python/readme-renderer/Manifest
@@ -1 +1,2 @@
DIST readme_renderer-42.0.tar.gz 31532 BLAKE2B d20e6e27e3d551d25788f177671d54b9307ab78f6d685e77831e20bb36ebf4e5b1e0d5d0622ec8d2e868ee202aa1176fa09348137c88f90d2da462aa2c477de1 SHA512 76d78fb2d92faa581679691feeb3cec50ef518417c6c1f187527209ac995f549b4de4b38c7449d1e4dfa7b93d30bfd599db7d01e5e5228c00a24261b0421ce66
+DIST readme_renderer-43.0.tar.gz 31768 BLAKE2B 0f0c3fbac8a1358d5271ee6805e051225bee53a33098d60f8fb54b2bed04de77dc5986759669bf3e14d5fac449b5f6c712aca66400320666958533a406b1ae3b SHA512 505cca08179c0eb35a7248d6bcfea24a968ad749365bec6bb65bbe4ba64ac78ef971ee63422796fdcc462210b199c9df126c8424bfc078ed1a9d1149b2d874e2
diff --git a/dev-python/readme-renderer/readme-renderer-43.0.ebuild b/dev-python/readme-renderer/readme-renderer-43.0.ebuild
new file mode 100644
index 000000000000..d6e2fdcf2a77
--- /dev/null
+++ b/dev-python/readme-renderer/readme-renderer-43.0.ebuild
@@ -0,0 +1,34 @@
+# 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 pypi
+
+DESCRIPTION="A library for rendering 'readme' descriptions for Warehouse"
+HOMEPAGE="
+ https://github.com/pypa/readme_renderer/
+ https://pypi.org/project/readme-renderer/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/docutils-0.13.1[${PYTHON_USEDEP}]
+ >=dev-python/nh3-0.2.14[${PYTHON_USEDEP}]
+ >=dev-python/pygments-2.5.2[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ >=dev-python/docutils-0.19[${PYTHON_USEDEP}]
+ )
+"
+
+DOCS=( README.rst )
+
+distutils_enable_tests pytest
diff --git a/dev-python/sentry-sdk/Manifest b/dev-python/sentry-sdk/Manifest
index e83b9f4b00c1..590f50885365 100644
--- a/dev-python/sentry-sdk/Manifest
+++ b/dev-python/sentry-sdk/Manifest
@@ -1,3 +1,4 @@
DIST sentry-python-1.40.0.gh.tar.gz 457692 BLAKE2B 8f5d299c991f169eaba255ad13fc30620cda7f4d26b0f6ac353a28eef7f1c7001d9a20d61a4d565dc620dbd9292ce11a5bf9fe8c26129f1c340661f218074b53 SHA512 cb3297e96064b3c71a4f28ad1781277f3101c2171d6e8339664c400531f13ed8b394317601b20940261575ff1646801bc8cde760d595bdffa97af4cda4e27d6d
DIST sentry-python-1.40.4.gh.tar.gz 458601 BLAKE2B d2d7ab718b461418bb5a54afe5998dcc0e95d76d5975673c7470fa0f2bbb79e5f8999b254ff406b026d86422fbbe4d3395f07be1224afd00d02ce6d5f170a8f6 SHA512 2c62618e102f754ca838c54aa90bc4d00d8a98903ee2ac3118741bb38f0dd808c8deb8254581c820b086a06415c8adf62862e4c4b2dad393faf7d977a1015cfb
DIST sentry-python-1.40.5.gh.tar.gz 459886 BLAKE2B 47df2f0c1594c236cd6382093c6d67d542ed01d44e51716c04620efd8c62031d401b410bf39572c0c8f178c48469fb35ac902a8b75d81058d55fbaa40308beef SHA512 50476f67be3142599e64815639d416ed7fbee5362dec196040b9c6455b80e176f178a4aefbac332b7aa0075cc45af4064bfa4c0e84c98c6535bc9604e2c7acd7
+DIST sentry-python-1.40.6.gh.tar.gz 460979 BLAKE2B c1df8479e8464480985a722cbbb078af071087e2f8f8c99cdd2675c732ae88c721bc99c5f16aa409552620fe1c89d0668b52b4d2662a6e53bec8eebbb56960c1 SHA512 6eb8237a5cdcd0e10f52cfb660b45f4873da9c10dd0f249d5c4d3a714def4256433a16835a17562dbd2f77b39dc7d50fd7d1b9807bdcac634763879c0a0c9aa3
diff --git a/dev-python/sentry-sdk/sentry-sdk-1.40.6.ebuild b/dev-python/sentry-sdk/sentry-sdk-1.40.6.ebuild
new file mode 100644
index 000000000000..3833dccf2fec
--- /dev/null
+++ b/dev-python/sentry-sdk/sentry-sdk-1.40.6.ebuild
@@ -0,0 +1,153 @@
+# 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
+
+MY_P=sentry-python-${PV}
+DESCRIPTION="Python client for Sentry"
+HOMEPAGE="
+ https://sentry.io/
+ https://github.com/getsentry/sentry-python/
+ https://pypi.org/project/sentry-sdk/
+"
+SRC_URI="
+ https://github.com/getsentry/sentry-python/archive/${PV}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="PSF-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+RDEPEND="
+ dev-python/urllib3[${PYTHON_USEDEP}]
+ dev-python/certifi[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/asttokens[${PYTHON_USEDEP}]
+ dev-python/django[${PYTHON_USEDEP}]
+ dev-python/executing[${PYTHON_USEDEP}]
+ dev-python/fakeredis[${PYTHON_USEDEP}]
+ dev-python/flask-login[${PYTHON_USEDEP}]
+ dev-python/jsonschema[${PYTHON_USEDEP}]
+ dev-python/pyrsistent[${PYTHON_USEDEP}]
+ <dev-python/pytest-8[${PYTHON_USEDEP}]
+ dev-python/pytest-aiohttp[${PYTHON_USEDEP}]
+ dev-python/pytest-django[${PYTHON_USEDEP}]
+ dev-python/pytest-forked[${PYTHON_USEDEP}]
+ dev-python/pytest-localserver[${PYTHON_USEDEP}]
+ dev-python/python-socks[${PYTHON_USEDEP}]
+ dev-python/responses[${PYTHON_USEDEP}]
+ dev-python/werkzeug[${PYTHON_USEDEP}]
+ dev-python/zope-event[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+PATCHES=(
+ "${FILESDIR}/sentry-sdk-1.21.0-ignore-warnings.patch"
+)
+
+python_test() {
+ local EPYTEST_IGNORE=(
+ # tests require Internet access
+ tests/integrations/httpx/test_httpx.py
+ tests/integrations/requests/test_requests.py
+ tests/integrations/stdlib/test_httplib.py
+ tests/integrations/flask/test_flask.py
+ tests/integrations/django/test_basic.py
+ tests/integrations/socket/test_socket.py
+ # wtf is it supposed to do?!
+ tests/integrations/gcp/test_gcp.py
+ # broken by rq-1.10.1 (optional dep)
+ tests/integrations/rq/test_rq.py
+ # fastapi is not packaged
+ tests/integrations/asgi/test_fastapi.py
+ # TODO
+ tests/integrations/bottle
+ # TODO: causes breakage in other tests
+ tests/integrations/starlette
+ # TODO
+ tests/integrations/tornado
+ # requires mockupdb
+ tests/integrations/pymongo
+ # requires AWS access
+ tests/integrations/aws_lambda
+ # requires quart_auth
+ tests/integrations/quart
+ )
+
+ local EPYTEST_DESELECT=(
+ # hangs
+ 'tests/test_transport.py::test_transport_works'
+ # TODO
+ 'tests/test_basics.py::test_auto_enabling_integrations_catches_import_error'
+ tests/test_client.py::test_databag_depth_stripping
+ tests/test_client.py::test_databag_string_stripping
+ tests/test_client.py::test_databag_breadth_stripping
+ tests/integrations/asgi/test_asgi.py::test_auto_session_tracking_with_aggregates
+ tests/integrations/asgi/test_asgi.py::test_websocket
+ tests/integrations/aiohttp/test_aiohttp.py::test_transaction_style
+ tests/integrations/aiohttp/test_aiohttp.py::test_traces_sampler_gets_request_object_in_sampling_context
+ tests/integrations/django/test_data_scrubbing.py::test_scrub_django_custom_session_cookies_filtered
+ # incompatible version?
+ tests/integrations/falcon/test_falcon.py
+ tests/integrations/sqlalchemy/test_sqlalchemy.py::test_large_event_not_truncated
+ tests/integrations/django/test_data_scrubbing.py::test_scrub_django_session_cookies_{filtered,removed}
+ # test_circular_references: apparently fragile
+ 'tests/integrations/threading/test_threading.py::test_circular_references'
+ # test for new feature, fails with IndexError
+ tests/integrations/wsgi/test_wsgi.py::test_session_mode_defaults_to_request_mode_in_wsgi_handler
+ # TODO
+ tests/integrations/wsgi/test_wsgi.py::test_auto_session_tracking_with_aggregates
+ tests/integrations/wsgi/test_wsgi.py::test_profile_sent_when_profiling_enabled
+ tests/test_profiler.py::test_sample_buffer
+ tests/test_profiler.py::test_thread_scheduler_takes_first_samples
+ tests/test_profiler.py::test_thread_scheduler_takes_more_samples
+ tests/test_profiler.py::test_thread_scheduler_single_background_thread
+ # broken with py3.11, *shrug*
+ tests/test_profiler.py::test_extract_stack_with_max_depth
+ # TODO
+ tests/integrations/sqlalchemy/test_sqlalchemy.py::test_long_sql_query_preserved
+ tests/integrations/sqlalchemy/test_sqlalchemy.py::test_engine_name_not_string
+ tests/test_scrubber.py::test_breadcrumb_extra_scrubbing
+ tests/test_scrubber.py::test_span_data_scrubbing
+ # this is not even funny
+ tests/test_utils.py::test_installed_modules
+ # flaky hypothesis stuff
+ tests/test_serializer.py::test_bytes_serialization_repr_many
+ # TODO
+ tests/integrations/aiohttp/test_aiohttp.py::test_basic
+ tests/tracing/test_decorator_py3.py::test_trace_decorator_{,a}sync_py3
+ # crashes Python
+ tests/integrations/grpc/test_grpc_aio.py
+ # hangs
+ tests/integrations/threading/test_threading.py::test_propagates_threadpool_hub
+ # TODO
+ tests/test_utils.py::test_default_release
+ tests/integrations/sqlalchemy/test_sqlalchemy.py::test_orm_queries
+ tests/integrations/sqlalchemy/test_sqlalchemy.py::test_transactions
+ tests/integrations/sqlalchemy/test_sqlalchemy.py::test_query_source
+ tests/integrations/stdlib/test_subprocess.py::test_subprocess_basic
+ tests/integrations/threading/test_threading.py
+ tests/integrations/wsgi/test_wsgi.py
+ 'tests/utils/test_contextvars.py::test_leaks[threads]'
+ # skipped without gevent but breaks stuff via broken teardown?
+ tests/test_metrics.py::test_no_metrics_with_gevent
+ # TODO
+ tests/utils/test_contextvars.py::test_leaks
+ # broken teardown?
+ tests/test_client.py::test_uwsgi_warnings
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -p asyncio -p aiohttp -p pytest_forked
+}
diff --git a/dev-python/spyder-kernels/Manifest b/dev-python/spyder-kernels/Manifest
index 1600afb5cea1..96a4d8052c4b 100644
--- a/dev-python/spyder-kernels/Manifest
+++ b/dev-python/spyder-kernels/Manifest
@@ -1,2 +1,3 @@
DIST spyder-kernels-2.5.0.tar.gz 99908 BLAKE2B 8684bdaba16bdfeb2db1e1789054e4951c6fa673dde91a1ae35972a1fd7cd6c298572c83db360553a3d94b1311d449a62d82d25d007f919a4baf6a23d2d872e2 SHA512 acdf796b450d87ee08f97bb6477383006632b6c91c862907ba43803bf88c1552749dc62c69820f948d8738a1a062614c065f861b73d5d73756cf5d00e63b58b5
+DIST spyder-kernels-2.5.1.tar.gz 99906 BLAKE2B 50cae2744ea2bb2d59046423f084d8e29385a82fe05c5d18fa15a64261c4ae0bef6e6f0427c8053ea6cc622d87660f98dc55613d954818a72babc92a119e3dc2 SHA512 bd855e95fb84014cf86dd062aeffc580ce23db7f1c5c1b4ba6d5386d0be4a4bcde625a6bc3a6d126b07a66ef720860019bab5f245a383fd0b2c7975f6d331598
DIST spyder-kernels-3.0.0b4.tar.gz 237687 BLAKE2B 05b294acd6e000898b4ee42c1f4a64716e73eec7466c5acfec3ee017fd66909cb6f9f5904ffaf546e43fae67738554469a2129916b78c5897a187f88f53d9261 SHA512 d49d198252077bfac06bbdd520d1de68a45d7d1076d598f0a7b2a4109f5b000fb73929cb617c8428672f4d039620e05fdbaa734eb6486849d90e21b4762e61d4
diff --git a/dev-python/spyder-kernels/spyder-kernels-2.5.1.ebuild b/dev-python/spyder-kernels/spyder-kernels-2.5.1.ebuild
new file mode 100644
index 000000000000..a2af022a18f3
--- /dev/null
+++ b/dev-python/spyder-kernels/spyder-kernels-2.5.1.ebuild
@@ -0,0 +1,55 @@
+# 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 pypi
+
+DESCRIPTION="Kernels used by spyder on its ipython console"
+HOMEPAGE="
+ https://github.com/spyder-ide/spyder-kernels/
+ https://pypi.org/project/spyder-kernels/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+RDEPEND="
+ dev-python/cloudpickle[${PYTHON_USEDEP}]
+ <dev-python/ipykernel-7[${PYTHON_USEDEP}]
+ >=dev-python/ipykernel-6.29.3[${PYTHON_USEDEP}]
+ <dev-python/ipython-9[${PYTHON_USEDEP}]
+ >=dev-python/ipython-8.13.0[${PYTHON_USEDEP}]
+ <dev-python/jupyter-client-9[${PYTHON_USEDEP}]
+ >=dev-python/jupyter-client-7.4.9[${PYTHON_USEDEP}]
+ dev-python/matplotlib-inline[${PYTHON_USEDEP}]
+ >=dev-python/pyzmq-24.0.0[${PYTHON_USEDEP}]
+ >=dev-python/wurlitzer-1.0.3[${PYTHON_USEDEP}]
+"
+
+BDEPEND="
+ test? (
+ dev-python/cython[${PYTHON_USEDEP}]
+ dev-python/django[${PYTHON_USEDEP}]
+ dev-python/flaky[${PYTHON_USEDEP}]
+ dev-python/matplotlib[${PYTHON_USEDEP}]
+ dev-python/mock[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/pandas[${PYTHON_USEDEP}]
+ dev-python/scipy[${PYTHON_USEDEP}]
+ dev-python/xarray[${PYTHON_USEDEP}]
+ dev-python/pillow[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+EPYTEST_DESELECT=(
+ # we no longer package distributed, and also removed dependency on dask
+ spyder_kernels/console/tests/test_console_kernel.py::test_dask_multiprocessing
+)
diff --git a/dev-python/sqlglot/Manifest b/dev-python/sqlglot/Manifest
index a044c1ffbc92..5c41b10d339a 100644
--- a/dev-python/sqlglot/Manifest
+++ b/dev-python/sqlglot/Manifest
@@ -20,6 +20,7 @@ DIST redox_syscall-0.4.1.crate 24858 BLAKE2B c3301137a0b84e03b09d28dfa377ab3bea7
DIST scopeguard-1.2.0.crate 11619 BLAKE2B 8b7e9ed6cefef9ee55407fb9690d57a2a98bb93e5105aeebdb475a52485e9e185255249e1dce8f83cd80534e7402d485aac3efa7e8493b13135de27550cd4bc4 SHA512 6247719a15fe1e4e2d179127b9a934bd2f99367724f41175ed9522f58824b6bc69b35002eae66b35880375ff61d77ac43ddaa78cbde7160a35183a1da32d3fbb
DIST smallvec-1.11.2.crate 34801 BLAKE2B 58645e99db8f02db64d02c75860c7ea41836c427c03ee3b0b23365e73a406e4fd6ac312bf13fc5faef8bb6111c10fcfd5f839d5b3686e9b34d1626f8469fc327 SHA512 5cfb427c3b99b0dbd71f6154ed899abcde9d7d2992977ac7b2ef3a4c3ff51e4efafd133071a69609b4ed6cb269bdc26b79eb72e1988f10dfcaef8185d950cd1d
DIST sqlglot-21.2.1.tar.gz 17682954 BLAKE2B 63b03ee6640c1cb88fffc04442198971add9a04afede2712fb1a55b0f77252f0b9d76a67f364d4cf6c2959bafd4690606de1be31cc173f4e04dffccb3de98713 SHA512 800348c61470f77d844e551c2536e2d74645087c6591a460eaa5bebfff78538655863c861c2c817cc543374b24b6c6334c7d1050168157ba3cb92c01d4b16fa5
+DIST sqlglot-22.0.1.tar.gz 17713150 BLAKE2B ad0b4e83744afdc8f32a2127d22c13462eaa8778c56f162bcf8bf62c50abd076952fd2bac18817226bb38a10bbe557196062a092698a9df5680a7594c3cef8ef SHA512 15a3078dba7c072dd41f73dae71e36560a41de43e9493050d2e62a3e43f22583bc3879535fcee19f7f8b98c027f667ec75301ffe80d8df957b4030a98c99ebd1
DIST syn-2.0.41.crate 246016 BLAKE2B 9d389f2e2a0acb4c84c309456e8ffcc88c5d4d541535ed136832d7a6054dde45a598bb68e8a6f3062ca2a96e1ceae947d54b3aec9bad65b0c51d6733aa6c80db SHA512 6bbaf69ca783025dfb81ac3612ac60bfbed31b2d87792909b35c12892dadebdaff2ddf9463105e536b671dce5870610ab90fe29471284bbd3014dca8d6993f1a
DIST target-lexicon-0.12.12.crate 25156 BLAKE2B f3803596c75f6c89438592a1176c3748fc2c0524d7d50a20056de1cd26d40c572b05bafcdf6dd702752864bea37c8b4f28f96dadc12a5b3bb1d279b25e489f85 SHA512 6147295c43ba1b7b087a3c5ab51534b2985e4e77e5e15687978cfb9d07e21c4fd9bc7191576d6cabd268d08a44dc733c4a957e59dba8b948c2055d8bb433aeca
DIST unicode-ident-1.0.12.crate 42168 BLAKE2B 4cede03c08758ccd6bf53a0d0057d7542dfdd0c93d342e89f3b90460be85518a9fd24958d8b1da2b5a09b5ddbee8a4263982194158e171c2bba3e394d88d6dac SHA512 bc1824e1e4452a40732fc69874d7e1a66f7803717a314790dcf48867eba34bc9441331ef031e386912e52c385645c25b6ed39d4f149973b5b97371b1b96b1920
diff --git a/dev-python/sqlglot/sqlglot-22.0.1.ebuild b/dev-python/sqlglot/sqlglot-22.0.1.ebuild
new file mode 100644
index 000000000000..c040bab3734b
--- /dev/null
+++ b/dev-python/sqlglot/sqlglot-22.0.1.ebuild
@@ -0,0 +1,121 @@
+# Copyright 2023-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} )
+
+CARGO_OPTIONAL=1
+CRATES="
+ autocfg@1.1.0
+ bitflags@1.3.2
+ cfg-if@1.0.0
+ heck@0.4.1
+ indoc@2.0.4
+ libc@0.2.150
+ lock_api@0.4.11
+ memoffset@0.9.0
+ once_cell@1.19.0
+ parking_lot@0.12.1
+ parking_lot_core@0.9.9
+ proc-macro2@1.0.70
+ pyo3-build-config@0.20.0
+ pyo3-ffi@0.20.0
+ pyo3-macros-backend@0.20.0
+ pyo3-macros@0.20.0
+ pyo3@0.20.0
+ quote@1.0.33
+ redox_syscall@0.4.1
+ scopeguard@1.2.0
+ smallvec@1.11.2
+ syn@2.0.41
+ target-lexicon@0.12.12
+ unicode-ident@1.0.12
+ unindent@0.2.3
+ windows-targets@0.48.5
+ windows_aarch64_gnullvm@0.48.5
+ windows_aarch64_msvc@0.48.5
+ windows_i686_gnu@0.48.5
+ windows_i686_msvc@0.48.5
+ windows_x86_64_gnu@0.48.5
+ windows_x86_64_gnullvm@0.48.5
+ windows_x86_64_msvc@0.48.5
+"
+
+inherit cargo distutils-r1 pypi optfeature
+
+DESCRIPTION="An easily customizable SQL parser and transpiler"
+HOMEPAGE="
+ https://sqlglot.com/
+ https://github.com/tobymao/sqlglot/
+ https://pypi.org/project/sqlglot/
+"
+SRC_URI+="
+ native-extensions? (
+ ${CARGO_CRATE_URIS}
+ )
+"
+
+LICENSE="MIT"
+LICENSE+=" native-extensions? ("
+# Dependent crate licenses
+LICENSE+=" Apache-2.0-with-LLVM-exceptions MIT Unicode-DFS-2016"
+LICENSE+=" )"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="+native-extensions"
+
+BDEPEND="
+ native-extensions? (
+ ${RUST_DEPEND}
+ dev-util/maturin[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+QA_FLAGS_IGNORED="usr/lib.*/py.*/site-packages/sqlglotrs/sqlglotrs.*.so"
+
+src_unpack() {
+ cargo_src_unpack
+}
+
+src_prepare() {
+ # remove fragile timing check
+ sed -i -e '/assertLessEqual(time\.time/d' tests/test_parser.py || die
+ distutils-r1_src_prepare
+}
+
+python_compile() {
+ distutils-r1_python_compile
+
+ if use native-extensions; then
+ local DISTUTILS_USE_PEP517=maturin
+ cd sqlglotrs || die
+ distutils-r1_python_compile
+ cd - >/dev/null || die
+ fi
+}
+
+python_test() {
+ local EPYTEST_IGNORE=(
+ # Tests require pyspark or duckdb which aren't in the tree.
+ # Pandas would be a requirement normally, but it gets ignored by proxy.
+ "tests/dataframe/integration/test_dataframe.py"
+ "tests/dataframe/integration/test_grouped_data.py"
+ "tests/dataframe/integration/test_session.py"
+ "tests/test_executor.py"
+ "tests/test_optimizer.py"
+ )
+
+ # make sure not to use an earlier installed version
+ local -x SQLGLOTRS_TOKENIZER=$(usex native-extensions 1 0)
+ rm -rf sqlglotrs || die
+ epytest
+}
+
+pkg_postinst() {
+ optfeature "simplifying timedelta expressions" dev-python/python-dateutil
+}
diff --git a/dev-python/tekore/Manifest b/dev-python/tekore/Manifest
index 14a252efae0e..9f7109958368 100644
--- a/dev-python/tekore/Manifest
+++ b/dev-python/tekore/Manifest
@@ -1 +1,2 @@
DIST tekore-5.3.1.tar.gz 270742 BLAKE2B 08fd8a4deeaa5024f5bb138c4f9bc3fae25f5a2b21c4298bf5d12932793b33e778dd2b15cbdbeec2f62cba841f55a59e6f2c43d51f968d01603dcadd5883d91a SHA512 8d81af1528bedcc4d76ee96f2b310d0522262b0466bbc30bf3849eb7b936067e42311acf9fe724377ec801f2863fa50de61f409363d00486c6d596ab01acb09e
+DIST tekore-5.4.0.tar.gz 270967 BLAKE2B 6cfaa8a113707e6944c445f3fda4d55a66fe9719870ce97a7e8f1a5f556ba9fa3a2ee09ff4e98a1e976cbeedbed23dd6268dfd47d06c159f29d30eb5d3fb041b SHA512 a2b943c066ad344a247b5861719965a57f151bdadd50c660a789f59a60bebd82ccbe88fc19cff4d50d21675f35d98c131069f700ff88952b58fe989d098242b5
diff --git a/dev-python/tekore/tekore-5.4.0.ebuild b/dev-python/tekore/tekore-5.4.0.ebuild
new file mode 100644
index 000000000000..f2abbe1270d9
--- /dev/null
+++ b/dev-python/tekore/tekore-5.4.0.ebuild
@@ -0,0 +1,52 @@
+# 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="Spotify Web API client"
+HOMEPAGE="
+ https://tekore.readthedocs.io/
+ https://github.com/felix-hilden/tekore/
+ https://pypi.org/project/tekore/
+"
+
+LICENSE="MIT"
+KEYWORDS="~amd64 ~arm64"
+SLOT="0"
+
+RDEPEND="
+ dev-python/httpx[${PYTHON_USEDEP}]
+ >=dev-python/pydantic-1.8[${PYTHON_USEDEP}]
+"
+
+BDEPEND="
+ test? (
+ >=dev-python/pydantic-2[${PYTHON_USEDEP}]
+ >=dev-python/pytest-asyncio-0.17[${PYTHON_USEDEP}]
+ dev-python/pytest-httpx[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+# TODO: package sphinx_codeautolink
+# distutils_enable_sphinx docs/src \
+# dev-python/sphinx-rtd-theme \
+# dev-python/sphinx-tabs \
+# dev-python/sphinx-autodoc-typehints
+
+EPYTEST_DESELECT=(
+ # Internet
+ tests/auth/expiring.py::TestCredentialsOnline::test_bad_arguments_raises_error
+)
+
+src_prepare() {
+ # unpin dependencies
+ sed -i -e 's:,<[0-9.]*::' pyproject.toml || die
+
+ distutils-r1_src_prepare
+}
diff --git a/dev-python/thriftpy2/Manifest b/dev-python/thriftpy2/Manifest
index b4b3df6c79f8..750fd153e840 100644
--- a/dev-python/thriftpy2/Manifest
+++ b/dev-python/thriftpy2/Manifest
@@ -1 +1,2 @@
DIST thriftpy2-0.4.17.tar.gz 519386 BLAKE2B 29c383cb886debb7167fbcef3526d0c027dc60db5ae20c554ea19067bb9a3ab40bea50392bd903293c5d9de1e3bc210220d887bd71194f91345a7565f577ccd9 SHA512 7c58eb6d0c91c933e31654d28ce2f4ef04854551db3eb5b8022565932761c74d95f27d44fc847f93723e535fdb4997fdad66a9dba432aa44e27e069e73b7ff7e
+DIST thriftpy2-0.4.19.tar.gz 689034 BLAKE2B 556d47b65b0f9801627515ab7e3fc9907af50b43e8197142626e51b8110ffd740285c895e9ee98e6e0bd8074b9e2f4e9811ce309a68d006dc504f80b3ca38ae6 SHA512 a67160e742683ecd4e47007cd4a6a52f78ab3ae492aa4c170f725d25f1a78fb6a0054cab691752b20a43ff855df61207d302af65ae5966ee5c3f961ff1e42650
diff --git a/dev-python/thriftpy2/thriftpy2-0.4.19.ebuild b/dev-python/thriftpy2/thriftpy2-0.4.19.ebuild
new file mode 100644
index 000000000000..5f1359c9b629
--- /dev/null
+++ b/dev-python/thriftpy2/thriftpy2-0.4.19.ebuild
@@ -0,0 +1,44 @@
+# Copyright 2021-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 pypi
+
+DESCRIPTION="Pure python approach of Apache Thrift"
+HOMEPAGE="
+ https://github.com/Thriftpy/thriftpy2/
+ https://pypi.org/project/thriftpy2/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ dev-python/ply[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/cython[${PYTHON_USEDEP}]
+ test? (
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/tornado[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ tests/test_tornado.py::TornadoRPCTestCase::test_asynchronous_exception
+ tests/test_tornado.py::TornadoRPCTestCase::test_asynchronous_result
+ )
+
+ cd tests || die
+ epytest
+}
diff --git a/dev-python/tomlkit/Manifest b/dev-python/tomlkit/Manifest
index 1348c338a680..37ee5eba1a09 100644
--- a/dev-python/tomlkit/Manifest
+++ b/dev-python/tomlkit/Manifest
@@ -1 +1,2 @@
DIST tomlkit-0.12.3.tar.gz 190967 BLAKE2B 82205c8e012d4584c60ce8d53a995a01fccd50e35330b8aaecd84dd348b79be1ec7cd9bbaf84dbdbcd904102b7dc4216551298657553606d4da8457f565e8945 SHA512 f89b1fdcbefcd511bbc5e22a1cc57d8c4593fc1353e901de31c69ac99ed3c685f042d71205c747bd5d20df246dd19b5402393df81231f12d18414d85c0a0000c
+DIST tomlkit-0.12.4.tar.gz 191162 BLAKE2B 3a5f8f01c7965a6d445fa96d0253d0dad55414bf9cae875fe9d9bc670d5b0a20a76fbf655695396ea188cddcea7ad034a38eed05d85f48c47301a3f23a9c7ded SHA512 b6b1cbb954202a256411388eea46852964bbdd02026086a42eab9107c55b961718398ec504f0289560894e9b46cf1c2f4b7e943267454509f6212e899e161d05
diff --git a/dev-python/tomlkit/tomlkit-0.12.4.ebuild b/dev-python/tomlkit/tomlkit-0.12.4.ebuild
new file mode 100644
index 000000000000..8765f6d057c1
--- /dev/null
+++ b/dev-python/tomlkit/tomlkit-0.12.4.ebuild
@@ -0,0 +1,43 @@
+# 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} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Style preserving TOML library"
+HOMEPAGE="
+ https://github.com/sdispater/tomlkit/
+ https://pypi.org/project/tomlkit/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+BDEPEND="
+ test? (
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_configure() {
+ grep -q 'build-backend = "poetry' 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 = "tomlkit"
+ version = "${PV}"
+ description = "Style preserving TOML library"
+ EOF
+}
diff --git a/dev-python/trimesh/Manifest b/dev-python/trimesh/Manifest
index 4f09a0134973..029d64af6226 100644
--- a/dev-python/trimesh/Manifest
+++ b/dev-python/trimesh/Manifest
@@ -1,3 +1,4 @@
DIST trimesh-4.1.3.gh.tar.gz 13438037 BLAKE2B 1aaa2ad9fc974bc335710e12381f63fc7d6c6db47b6d88e9590dba92c126dee374ebe8282df02bdd4405558b391ce836c861b0672be847c627238c9c4c6c2285 SHA512 5f9b81c9e59760ec023e0a2ceeb62fdd4308f69ebc0cb495bcb0d7b58244a6754d4016c87110509f01696b291c03838b7896f9f470fe95f99d8755781b82051a
DIST trimesh-4.1.4.gh.tar.gz 13438872 BLAKE2B b03efc741bccf3b08c9f8611dbf282d99fb8a2691d54d0230326453aa5666b69470d00fce7eccf2863c6f6939c56d74d3d537100b8def9c8660a33eabf3ba462 SHA512 bbdc3ec24d5a53e329b3b3021bec14668b1bb19e231ebb5f2ee186449e9c4ad162a14c4f42b8bdaed513ff5c874bf7ec1f0fc4bf103ee6b79ca7564494316984
DIST trimesh-4.1.5.gh.tar.gz 13440026 BLAKE2B bdf27c0ebfc24ede66ecd8ae94151cbf926e187112f096246080db34a43a23f950674a461c29d8b87a71d6b5bc8e3cc824007b54be90593ceb552e1669e41e36 SHA512 a62cdbad4a053fe6bf3d70285c2484600af09f9bc6a638214b10718bdf3c0901053bad0d25c4d7dc96f396c66fb3d438981d3fc96ea179bb078abb3d8b87695b
+DIST trimesh-4.1.6.gh.tar.gz 13439647 BLAKE2B 785d27d794922a8e42013c4cbb9e58589874bd1db17c8b9f3490a91456d9b0a729c7714928e420174a5c7d9d4ccaa1781350134f13d1e2fb530150445d88918f SHA512 9b3da87a176a5585c7d4ff818e883f259277ad3efc13c50bcb1dd17a6635b688b0b657d0111c50c93c01a453b6f96c757a58da88edc32de64bf11cba316913ef
diff --git a/dev-python/trimesh/trimesh-4.1.6.ebuild b/dev-python/trimesh/trimesh-4.1.6.ebuild
new file mode 100644
index 000000000000..40fdf5d0efea
--- /dev/null
+++ b/dev-python/trimesh/trimesh-4.1.6.ebuild
@@ -0,0 +1,68 @@
+# 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 optfeature
+
+DESCRIPTION="Python library for loading and using triangular meshes"
+HOMEPAGE="
+ https://trimesh.org/
+ https://github.com/mikedh/trimesh/
+ https://pypi.org/project/trimesh/
+"
+SRC_URI="
+ https://github.com/mikedh/${PN}/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+RDEPEND="
+ dev-python/chardet[${PYTHON_USEDEP}]
+ dev-python/colorlog[${PYTHON_USEDEP}]
+ dev-python/httpx[${PYTHON_USEDEP}]
+ dev-python/jsonschema[${PYTHON_USEDEP}]
+ dev-python/lxml[${PYTHON_USEDEP}]
+ dev-python/networkx[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/pillow[${PYTHON_USEDEP}]
+ dev-python/pycollada[${PYTHON_USEDEP}]
+ dev-python/pyglet[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/scipy[${PYTHON_USEDEP}]
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ >=dev-python/shapely-1.8.2[${PYTHON_USEDEP}]
+ dev-python/svg-path[${PYTHON_USEDEP}]
+ dev-python/sympy[${PYTHON_USEDEP}]
+ dev-python/xxhash[${PYTHON_USEDEP}]
+ sci-libs/rtree[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/mapbox_earcut[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_TIMEOUT=1800
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+python_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
+
+pkg_postinst() {
+ optfeature_header "${PN} functionality can be extended by installing the following packages:"
+ optfeature "making GUI applications with 3D stuff" dev-python/glooey
+ optfeature "2D triangulations of polygons" dev-python/mapbox_earcut
+ optfeature "loading a number of additional mesh formats" dev-python/meshio
+ optfeature "figuring out how much memory we have" dev-python/psutil
+ optfeature "marching cubes and other nice stuff" dev-python/scikit-image
+}
diff --git a/dev-python/types-docutils/Manifest b/dev-python/types-docutils/Manifest
index b4679e78651e..15f1cd4a25a2 100644
--- a/dev-python/types-docutils/Manifest
+++ b/dev-python/types-docutils/Manifest
@@ -1 +1,2 @@
DIST types-docutils-0.20.0.20240201.tar.gz 12323 BLAKE2B ad93eb2777701279c8909634033beacd5758fc87c3e25c6199a9fe2929732e3654984b308ea0c559e21819334cea917bb9411d88ef061ddda99b66914be72d62 SHA512 fa47b6da1b3346151aab15bf59173e85b982fbe0fe8ef9cd584899fbc941da52a5a33508ce095ff1e983006d089905aecd9046765c5ff526de8b35a25cfb1ec7
+DIST types-docutils-0.20.0.20240227.tar.gz 12877 BLAKE2B 69fca1425acf34ed9c139cec086af2231a85da1ace9c9fb8de7addbc18fd40d62b27905f2ac382dae9bae29e3438f6a4df5c8be6b870c8209c14f6c1cf575730 SHA512 9d29ebe8968328b230323be13a70b62f057246ecb411acfb38e7c1116a036d62b82a4d3bddb25edd1063387a21ac2c76fbcc74389f87428b5cb990da8b4b2429
diff --git a/dev-python/types-docutils/types-docutils-0.20.0.20240227.ebuild b/dev-python/types-docutils/types-docutils-0.20.0.20240227.ebuild
new file mode 100644
index 000000000000..0d86c4835acd
--- /dev/null
+++ b/dev-python/types-docutils/types-docutils-0.20.0.20240227.ebuild
@@ -0,0 +1,17 @@
+# Copyright 2022-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 pypi
+
+DESCRIPTION="Typing stubs for docutils"
+HOMEPAGE="https://pypi.org/project/types-docutils/"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"