summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2024-02-06 06:29:50 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2024-02-06 06:29:50 +0000
commit97f3a0a782a277ae327f3c20b6ff038476d54adf (patch)
treeabb9bb13e2e45f290fc2250c87fddf6b15ae7cad /dev-python
parente9505ab755d38bc1faa052626c18604e93712cb4 (diff)
downloadbaldeagleos-repo-97f3a0a782a277ae327f3c20b6ff038476d54adf.tar.gz
baldeagleos-repo-97f3a0a782a277ae327f3c20b6ff038476d54adf.tar.xz
baldeagleos-repo-97f3a0a782a277ae327f3c20b6ff038476d54adf.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/Faker/Faker-22.7.0.ebuild40
-rw-r--r--dev-python/Faker/Manifest1
-rw-r--r--dev-python/autocommand/autocommand-2.2.2.ebuild6
-rw-r--r--dev-python/autocommand/files/autocommand-2.2.2-setuptools-license.patch26
-rw-r--r--dev-python/boto3/Manifest1
-rw-r--r--dev-python/boto3/boto3-1.34.35.ebuild58
-rw-r--r--dev-python/botocore/Manifest1
-rw-r--r--dev-python/botocore/botocore-1.34.35.ebuild63
-rw-r--r--dev-python/hypercorn/hypercorn-0.16.0.ebuild2
-rw-r--r--dev-python/hypothesis/Manifest1
-rw-r--r--dev-python/hypothesis/hypothesis-6.98.2.ebuild90
-rw-r--r--dev-python/ipykernel/Manifest1
-rw-r--r--dev-python/ipykernel/ipykernel-6.29.1.ebuild78
-rw-r--r--dev-python/jc/Manifest1
-rw-r--r--dev-python/jc/jc-1.25.0.ebuild32
-rw-r--r--dev-python/jupyterlab/Manifest1
-rw-r--r--dev-python/jupyterlab/jupyterlab-4.1.0.ebuild78
-rw-r--r--dev-python/nbconvert/Manifest1
-rw-r--r--dev-python/nbconvert/nbconvert-7.15.0.ebuild74
-rw-r--r--dev-python/peewee/Manifest1
-rw-r--r--dev-python/peewee/peewee-3.17.1.ebuild57
-rw-r--r--dev-python/pydantic/Manifest1
-rw-r--r--dev-python/pydantic/pydantic-2.6.1.ebuild57
-rw-r--r--dev-python/python-engineio/Manifest1
-rw-r--r--dev-python/python-engineio/python-engineio-4.9.0.ebuild59
-rw-r--r--dev-python/taskgroup/taskgroup-0.0.0_alpha4.ebuild4
26 files changed, 731 insertions, 4 deletions
diff --git a/dev-python/Faker/Faker-22.7.0.ebuild b/dev-python/Faker/Faker-22.7.0.ebuild
new file mode 100644
index 000000000000..b726995539a4
--- /dev/null
+++ b/dev-python/Faker/Faker-22.7.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 e5745dc20ed1..8e20f6b70284 100644
--- a/dev-python/Faker/Manifest
+++ b/dev-python/Faker/Manifest
@@ -1,3 +1,4 @@
DIST Faker-22.4.0.tar.gz 1702616 BLAKE2B 1a50724c0c8faaf4b2e72d3b23f242be19862133c79a1d49b8919512355ec84d565768b1c0868f287708880a13e833bab4dc911a9f4df53d9a225fa3ea75e00c SHA512 a8531b839c46c0403c37d1f5d58b026a2f8bf9ef66c4ce6302673dc7988250d51d069740bf783abf5b610afc2d01e23aa769c7d32ee03927befb13a610adc586
DIST Faker-22.5.1.tar.gz 1703337 BLAKE2B 603b06512deb04c6e320904aa32b7e210ecbe270ae634814adeaa420d2af342d44744755ad7ae575ef7902bd3ad6d117c88814bb13a1d84952509ec881b402f9 SHA512 469cf1af9535be0610c1b8750874b1623b0746b762a995805a86a9bdb54a2a8cd3d4118254b1a75240f24a6294629669aae3b6e062e8b229eba30de56cb2bbf8
DIST Faker-22.6.0.tar.gz 1703974 BLAKE2B b6deb022fd38f52baf9a76e697451ca4ba175e530c3c232d09722f1f809de779d7885b92d1b87be64d9b87da2a7bda80af6cb5968faa55c60547156a5a7c63b7 SHA512 100db2723e4e6961ea239bd1c083cc8ed90cec2af3a8fb82c77df4cd2faec10b51f6cc5ff502e3afaf4d53142f6eaf04b1c6bd955ae8173e5c2f7b19bb7cf561
+DIST Faker-22.7.0.tar.gz 1705221 BLAKE2B 9c41a053de75ca238399140531e7d37148ffa358f3ead37cc1aeb32bab74f096689bdcd160372419aed3a541f1aa367e891735e68d384e1c559634e2630e9659 SHA512 38cf655acf23568f0e1b275475461a9272e500c60330d7fc6a0b0db2977d4ea5762bf07cbc24ebe30fcb771cd90579611addce513b80166dbe70554b297c2109
diff --git a/dev-python/autocommand/autocommand-2.2.2.ebuild b/dev-python/autocommand/autocommand-2.2.2.ebuild
index 458d17f0cb76..5c2c6ee2ac68 100644
--- a/dev-python/autocommand/autocommand-2.2.2.ebuild
+++ b/dev-python/autocommand/autocommand-2.2.2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2022-2023 Gentoo Authors
+# Copyright 2022-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -22,4 +22,8 @@ LICENSE="LGPL-3+"
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"
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.2.2-setuptools-license.patch
+)
+
distutils_enable_tests pytest
diff --git a/dev-python/autocommand/files/autocommand-2.2.2-setuptools-license.patch b/dev-python/autocommand/files/autocommand-2.2.2-setuptools-license.patch
new file mode 100644
index 000000000000..b0d6fdd5a2f8
--- /dev/null
+++ b/dev-python/autocommand/files/autocommand-2.2.2-setuptools-license.patch
@@ -0,0 +1,26 @@
+https://bugs.gentoo.org/917754
+https://github.com/Lucretiel/autocommand/issues/28
+https://github.com/Lucretiel/autocommand/pull/31
+
+From cf98b8bc024f536565a67369a9f9a506fe67b942 Mon Sep 17 00:00:00 2001
+From: Ben Greiner <code@bnavigator.de>
+Date: Fri, 22 Dec 2023 14:15:46 +0100
+Subject: [PATCH] License is dynamic
+
+---
+ pyproject.toml | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/pyproject.toml b/pyproject.toml
+index aa30b35..5221f65 100644
+--- a/pyproject.toml
++++ b/pyproject.toml
+@@ -18,6 +18,7 @@ classifiers = [
+ "Topic :: Software Development :: Libraries",
+ "Topic :: Software Development :: Libraries :: Python Modules",
+ ]
++dynamic = [ "license" ]
+
+ [project.urls]
+ "Homepage" = "https://github.com/Lucretiel/autocommand"
+
diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest
index 494a2a301d2e..45db2b22b784 100644
--- a/dev-python/boto3/Manifest
+++ b/dev-python/boto3/Manifest
@@ -1,3 +1,4 @@
DIST boto3-1.34.23.gh.tar.gz 766609 BLAKE2B d00b010c84c41695f02df58a51d483162af1ba770263218b6465132fdb104424ea8dd7c8d96e278c50700aa3c90d2321a21d31e9ae3b42712aff31a1a5c4b65d SHA512 4f1c0cafb3d511a23c07b97ed2b41369299d0a4819e0bf103288c7b44074c93bc55b729a2979b133a50d390660078a0bb0e251dcd1523244fdbe06cae6ef037a
DIST boto3-1.34.29.gh.tar.gz 769654 BLAKE2B 3eec92f78f343c1806eb7ad96a31b07592ffb355aed5bca75b9cf9bc32cc240a1c254cd43e618d7cba442dddab31035f43f319aa674b5fd6ee99e93d76514389 SHA512 1dff0825811b346e1300030770f00dfea9694d3f6c4beccddfb2ff00520503271b617321e124a1d922da8e8fb1d2c2beb08a83f23eb5e5754bf1d519ea994cf3
DIST boto3-1.34.34.gh.tar.gz 771553 BLAKE2B 52459e1baefd7986256bb6c89074aac365fb14c8fdd1b04a79bc02b6722e1e8e5f0d59b426e519947ab1795d12defbde2768af97dd3a2cdef576fdb535422567 SHA512 d0d9c47550aeb46aa3095d08583931d79fe38da8498a3ece322d7dea07b25c3569f7b44ed2afdb53cae98e4e3c337e8bb91a87c325d88798488e6ba87c73d9cb
+DIST boto3-1.34.35.gh.tar.gz 771771 BLAKE2B 2126de54d6d7fe94bab546d1f4be4b99f6ecf3b5033e4a9e3c514482c6b954a83992a904d84b3da17ffcb6ee62a147b40669b7264f7d278c81ec35259bdc1326 SHA512 a9e6586144f14b5602bf5ab37de433d96b7c713b370dff18922eddad19a8ba0b421008f334d8af2f8eb39f454487cbbea1b83f7141c4afea988d5592251a6c65
diff --git a/dev-python/boto3/boto3-1.34.35.ebuild b/dev-python/boto3/boto3-1.34.35.ebuild
new file mode 100644
index 000000000000..c6201d2c5818
--- /dev/null
+++ b/dev-python/boto3/boto3-1.34.35.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 affad7f9f0e8..77f08ed5cccc 100644
--- a/dev-python/botocore/Manifest
+++ b/dev-python/botocore/Manifest
@@ -1,3 +1,4 @@
DIST botocore-1.34.23.gh.tar.gz 12647072 BLAKE2B be20994714a1f31ac5272d5b7be8424e574be1059c5be311e68d1932eb6884a54f71287dc5a9c11996063e4c2ab15a342bf778a0a90620710761e63a5deaa170 SHA512 fcc1879245e8d848c8cd6283af904e0408a5bdaa3b3e14c4ae267735cb29bdde50f1da5f3232ea23053f25fc1f29a1204a08a5c820909cf8667595543b6cfdea
DIST botocore-1.34.29.gh.tar.gz 12665018 BLAKE2B 928c27ae62a5e2675dc5476af05a4390cbeaf9d5c64cae6a5af0d5348f703417f48431258fc7c4ad316908fd29f6bfeb5a7c76290ea9622172f3d787f40021c7 SHA512 5314900eecf2d31fe08bcb9efbc1a361467fe034129c85f5cb4a678275115292fc5a6a95fbbe3cc06aa0a1387e14dde0f9115a9aa25ba59dba62a02c3b8db43b
DIST botocore-1.34.34.gh.tar.gz 12682925 BLAKE2B 514e6946558d1014371ca7ae4c76614b9714e0444e65f9606abe059cff1e1c467e81d913dad849ed9468a557499daafbdb19bbabef7ef3ed1f45607afa1f545a SHA512 4bc0bc57f4b29c461cade471e18d0f04ecf081a33bf966d80ab09832e0a5af2c08808b9fe72be9ea6a04b37e8207cdf38e43ec588c38ab9546740863e7a206ba
+DIST botocore-1.34.35.gh.tar.gz 12683490 BLAKE2B 4cb287495e77de15803b36755962a0e6446d00aa9a6056c5762261874adf297a55bd8fceb43aa518cb981ac09b5d00e87eb593f0356949b6f8b0cced65936ac0 SHA512 82a57540c6fa50957434254ff536bb0a6c73cec313372233c0e4b922a4d7539a7c2150d3c49df9bcd1840c29d2eb22b25d6d8c276a704dfa9a12a32974f17d33
diff --git a/dev-python/botocore/botocore-1.34.35.ebuild b/dev-python/botocore/botocore-1.34.35.ebuild
new file mode 100644
index 000000000000..b78ea904a0da
--- /dev/null
+++ b/dev-python/botocore/botocore-1.34.35.ebuild
@@ -0,0 +1,63 @@
+# 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/six[${PYTHON_USEDEP}]
+ <dev-python/jmespath-2[${PYTHON_USEDEP}]
+ dev-python/python-dateutil[${PYTHON_USEDEP}]
+ >=dev-python/urllib3-1.25.4[${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/hypercorn/hypercorn-0.16.0.ebuild b/dev-python/hypercorn/hypercorn-0.16.0.ebuild
index 5a06e7172454..bb7cdc48eadb 100644
--- a/dev-python/hypercorn/hypercorn-0.16.0.ebuild
+++ b/dev-python/hypercorn/hypercorn-0.16.0.ebuild
@@ -20,7 +20,7 @@ SRC_URI="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="amd64 arm arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 sparc x86"
+KEYWORDS="amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86"
RDEPEND="
>=dev-python/exceptiongroup-1.1.0[${PYTHON_USEDEP}]
diff --git a/dev-python/hypothesis/Manifest b/dev-python/hypothesis/Manifest
index 31f0a75cca5b..3b1816e97ede 100644
--- a/dev-python/hypothesis/Manifest
+++ b/dev-python/hypothesis/Manifest
@@ -5,3 +5,4 @@ DIST hypothesis-6.97.3.gh.tar.gz 9424749 BLAKE2B 4d7f2b1f9e37593006c5be8e66918a2
DIST hypothesis-6.97.4.gh.tar.gz 9425209 BLAKE2B 7e6065fc988f5853f1da3df712d32e7449ba6336af9caf6732a391ed4dc9fbc5da7fcf834cb068ad57a106f451cd61141417d9b79048c8e746a6b4550bad7f65 SHA512 a4aaa4fc3d753401620e234e27b0b269fa2bddd039345df0463600c6cbd5b38f6a09a9a01c322e08ecf7c9f27c881501403f2ec083497c26d512e5ffd41b7afc
DIST hypothesis-6.97.5.gh.tar.gz 9426065 BLAKE2B 2aec769268af7392f71c0ec7d12defad4962bd56597cb68ca0edfa81dbf28ef7d865b26086b75ee03287c82a0b2c0273a55bd6872b188728595fe74198130dd6 SHA512 d9f2adc51ef3b7fc331d3dca1b69a9464a2bc73298747f3732b8b4621237284ac60a50b927b57a047a155e0d94a3ee2974bbef2c9cf9112080e9098fba3cfc7f
DIST hypothesis-6.98.1.gh.tar.gz 9438665 BLAKE2B c2529e19b8ac039db334a51b33e0552f4acb92ae49b6bde5e26913b4ba7781e82a5ba4cfd7fba2a3ed5442d1bd8f0c2b2d7878ba86eff1276e590a412856811d SHA512 aae7f7c03af4667b0d9993a1b911076fe4d1ce7d752295a7e9f712da4d33b1fd34e51d5e0cc11c4ac4c00e7f8fa9ac4574d0594e1a82ea67aa3e5a4e98ed1b71
+DIST hypothesis-6.98.2.gh.tar.gz 9438703 BLAKE2B e1c93ae8f428c95e5bf9d6d6364717378f12ad829b7754f8793b19342adc24c5c90f2e8975469b568378768c9e8a0dd39051b5cf8b1616a119c1531261f4f60c SHA512 81a6b919107a35825af15c2dea91c0010611bd0756172aae76be195b5751a58542a28eb8cecd02f79d43287d013b1dbadad6991ef3057adfddad95a1a7447a92
diff --git a/dev-python/hypothesis/hypothesis-6.98.2.ebuild b/dev-python/hypothesis/hypothesis-6.98.2.ebuild
new file mode 100644
index 000000000000..1f7054962839
--- /dev/null
+++ b/dev-python/hypothesis/hypothesis-6.98.2.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 3a029089e3cc..518d913f3104 100644
--- a/dev-python/ipykernel/Manifest
+++ b/dev-python/ipykernel/Manifest
@@ -1 +1,2 @@
DIST ipykernel-6.29.0.tar.gz 160814 BLAKE2B 4f5c650fda125a477ae7f16fad07e968f0f31a97375159ff5d3917181f31ecac3a618927e492332e5d5f69321c43fad69daa4c9bdfc67acc3756775ef855ceec SHA512 f924d8c4471f04349e1c8d0b980f8759e55c37585a4a44e61ba01ed1b96e3aa3897ec6e953e91f8f881debf5e599ab95b679075dcd413e43b8ed0263e8c9ca44
+DIST ipykernel-6.29.1.tar.gz 161082 BLAKE2B f5f5d4f15d08594fbab78675cdc1575a5579b69adeb393fa35d3ef57f56ad642999e5d17a901287a7924d8f7d1b62625d1c81dd96c821ce43bc694a277c63389 SHA512 8691394e76b151561248f66802622a4e4863c51bc26b4cf44e468155ff0f82405b92e69c37ecca8181d4b71736f61658fbf59937e7607a94288c107ea4cbfd74
diff --git a/dev-python/ipykernel/ipykernel-6.29.1.ebuild b/dev-python/ipykernel/ipykernel-6.29.1.ebuild
new file mode 100644
index 000000000000..3a4df971118e
--- /dev/null
+++ b/dev-python/ipykernel/ipykernel-6.29.1.ebuild
@@ -0,0 +1,78 @@
+# 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}]
+ !elibc_Darwin? (
+ $(python_gen_cond_dep '
+ >=dev-python/debugpy-1.6.5[${PYTHON_USEDEP}]
+ ' 'python*')
+ )
+ >=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[${PYTHON_USEDEP}]
+ dev-python/pytest-timeout[${PYTHON_USEDEP}]
+ dev-python/ipyparallel[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+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/jc/Manifest b/dev-python/jc/Manifest
index 33d14cc78e65..2072a2cfe556 100644
--- a/dev-python/jc/Manifest
+++ b/dev-python/jc/Manifest
@@ -1 +1,2 @@
DIST jc-1.24.0.gh.tar.gz 13413929 BLAKE2B 22090ee1629dac7add0fd4fbf149f01354dc2e8a9b9603b4106c15f878fbfcb28e7b6cce17bb4bb018f73d4889e23c437cf1db2776356a84958a73d39305576b SHA512 00a70ea0e7e7153bafcc35877cb871d9c6c7659e323010c4fe5174134f5357d6e32d87cd7ab935133fed4f5e59f5cfc3ae3f679881b28ba9ff861467054f1961
+DIST jc-1.25.0.gh.tar.gz 13455054 BLAKE2B 4aca450c1549a1aa83cd20b9aed70072418a08d62c4d95c152e5d1b2cfd2d0f86945fcd0b39fffa16decfa3c844fafa684c38dfe9b06ec3c3c269467e2a4d696 SHA512 2ada59f25eb915405792830fe2bb5bf05f060c5a382459da5f226323c095e88abee1e18db51aa40a230a42021faa66949a9b535372070c8c419fd47fbbea8856
diff --git a/dev-python/jc/jc-1.25.0.ebuild b/dev-python/jc/jc-1.25.0.ebuild
new file mode 100644
index 000000000000..ad48d697b77f
--- /dev/null
+++ b/dev-python/jc/jc-1.25.0.ebuild
@@ -0,0 +1,32 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Converts the output of popular command-line tools and file-types to JSON"
+HOMEPAGE="
+ https://github.com/kellyjonbrazil/jc/
+ https://pypi.org/project/jc/
+"
+# no tests in sdist, as of 1.23.2
+SRC_URI="
+ https://github.com/kellyjonbrazil/jc/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc64"
+
+RDEPEND="
+ dev-python/pygments[${PYTHON_USEDEP}]
+ dev-python/ruamel-yaml[${PYTHON_USEDEP}]
+ dev-python/xmltodict[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests unittest
diff --git a/dev-python/jupyterlab/Manifest b/dev-python/jupyterlab/Manifest
index efa210cd9e1c..4bbeef8f6cc0 100644
--- a/dev-python/jupyterlab/Manifest
+++ b/dev-python/jupyterlab/Manifest
@@ -1,2 +1,3 @@
DIST jupyterlab-4.0.11.tar.gz 18348142 BLAKE2B 6a2676504a6475d02965ef7b6e393a52c19b3c6af8e58938a189f6bf22693ec754be6c165029f7b9f68b1b80a9f8c20fb67600cb4e9c526da5ae386b3bf728d3 SHA512 b02d18d0e0ecffc9a5d847efe4ce7c7258c741fd6ae0842f25c2c446b16af7cb11ac422dff7807a1a19f4536b514914e098c4fd04a58ceadb8296ce9aca3e2f3
DIST jupyterlab-4.0.12.tar.gz 18352336 BLAKE2B afa406372cabd740dc09b354e626d4b87c3143e258294d48f82a816002f43e3d22e43bb0cae9eb34f1754d6ed947923c7fb60fbdaec9c82db162422c6057ec7c SHA512 2a84d2d2e6c64e8fa469b7c5b144b364743d2def1c278aff13e5a9380aca0075b49b31370fed368df951208014a0737380966ab6171a13ff07246ad2b4eca996
+DIST jupyterlab-4.1.0.tar.gz 21806195 BLAKE2B f525cab21a92958bd756f873fdd7d5cd3d0166e6ed1aa974d48c7038f7994f5356b18786464d3eaf41b8fa6e4a107e3904e9f3f2d3f1f22047fed5cd1f8b17e3 SHA512 fb5df4e149c0862fba726a88c07c6a96856743279d018b474c527c34f526a23ff49bfdcdd307834f110cb8ff4517c5867131ff7feadea85606212fddb09ff9ea
diff --git a/dev-python/jupyterlab/jupyterlab-4.1.0.ebuild b/dev-python/jupyterlab/jupyterlab-4.1.0.ebuild
new file mode 100644
index 000000000000..bf6f338b6cac
--- /dev/null
+++ b/dev-python/jupyterlab/jupyterlab-4.1.0.ebuild
@@ -0,0 +1,78 @@
+# 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/httpx-0.25.0[${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.0[${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/nbconvert/Manifest b/dev-python/nbconvert/Manifest
index 6bb995265f9e..f898445b8447 100644
--- a/dev-python/nbconvert/Manifest
+++ b/dev-python/nbconvert/Manifest
@@ -1 +1,2 @@
DIST nbconvert-7.14.2.tar.gz 852202 BLAKE2B 195a4f8088ec82d7fcb56b7450878d8e769027bedf64dec82adfb2683936400c74b62ceb2a24d47724584df0cfa0e9c773e53357b412eda0958aa2c4256cb3fd SHA512 79a91b2cacb50af8eb584668b070bf233de4cdf783fa0d9d256c2204de4a97efc5224088811b6f2b5f89015e4180a24da63c5b79a026b1966df157de325114cd
+DIST nbconvert-7.15.0.tar.gz 853363 BLAKE2B c417428708279099d8a966ab61d044be1deebbb37757b75a248b8bf50302db8a7ba39a25c0d255777d695f9af93f43f420727c33bdad0a4a239660b7f74cc49a SHA512 bf598cc776ceadadecdec816ec8fd78502cffae399175d22cf184d6e45974fcd0d5e731ef8aa032aec251dcd2a8e5d6077c585c5f70786d4cbe72979e1ad8503
diff --git a/dev-python/nbconvert/nbconvert-7.15.0.ebuild b/dev-python/nbconvert/nbconvert-7.15.0.ebuild
new file mode 100644
index 000000000000..6d9143dd99a2
--- /dev/null
+++ b/dev-python/nbconvert/nbconvert-7.15.0.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+
+inherit distutils-r1 pypi virtualx
+
+DESCRIPTION="Converting Jupyter Notebooks"
+HOMEPAGE="
+ https://nbconvert.readthedocs.io/
+ https://github.com/jupyter/nbconvert/
+ https://pypi.org/project/nbconvert/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ dev-python/beautifulsoup4[${PYTHON_USEDEP}]
+ dev-python/bleach[${PYTHON_USEDEP}]
+ dev-python/defusedxml[${PYTHON_USEDEP}]
+ >=dev-python/jinja-3.0[${PYTHON_USEDEP}]
+ >=dev-python/jupyter-core-4.7[${PYTHON_USEDEP}]
+ dev-python/jupyterlab-pygments[${PYTHON_USEDEP}]
+ >=dev-python/markupsafe-2.0[${PYTHON_USEDEP}]
+ <dev-python/mistune-4[${PYTHON_USEDEP}]
+ >=dev-python/nbclient-0.5.0[${PYTHON_USEDEP}]
+ >=dev-python/nbformat-5.7[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ >=dev-python/pandocfilters-1.4.1[${PYTHON_USEDEP}]
+ >=dev-python/pygments-2.4.1[${PYTHON_USEDEP}]
+ dev-python/tinycss2[${PYTHON_USEDEP}]
+ >=dev-python/traitlets-5.1.1[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/ipykernel[${PYTHON_USEDEP}]
+ >=dev-python/ipywidgets-7.5[${PYTHON_USEDEP}]
+ dev-python/flaky[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+src_test() {
+ virtx distutils-r1_src_test
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # TODO
+ tests/test_nbconvertapp.py::TestNbConvertApp::test_convert_full_qualified_name
+ tests/test_nbconvertapp.py::TestNbConvertApp::test_post_processor
+ # crazy qtweb* stuff, perhaps permissions
+ tests/exporters/test_qtpdf.py::TestQtPDFExporter::test_export
+ tests/exporters/test_qtpng.py::TestQtPNGExporter::test_export
+ )
+
+ # virtx implies nonfatal, make it explicit to avoid confusion
+ nonfatal epytest || die
+}
+
+pkg_postinst() {
+ if ! has_version virtual/pandoc; then
+ einfo "Pandoc is required for converting to formats other than Python,"
+ einfo "HTML, and Markdown. If you need this functionality, install"
+ einfo "app-text/pandoc or app-text/pandoc-bin."
+ fi
+}
diff --git a/dev-python/peewee/Manifest b/dev-python/peewee/Manifest
index 66ea900af6be..30274da60626 100644
--- a/dev-python/peewee/Manifest
+++ b/dev-python/peewee/Manifest
@@ -1 +1,2 @@
DIST peewee-3.17.0.gh.tar.gz 915412 BLAKE2B 531a021f925f41ce62822fe9a0f28dd9505c1890e02b42b6b9efb9ced15e56f531c564e3412104d5d10f5ef578c728d64e3f57d9c72a03e2c4b7f7d22d639647 SHA512 978a911aa0236246abcc3cc2ef54d418dc8f94bf78ce6eeeeaf43352d92ccb4238c66972b78a904d3ceed47736a2c509fbdde837e7660290faf220e5744b1cfa
+DIST peewee-3.17.1.gh.tar.gz 918980 BLAKE2B 192bdb4c8ba40c0d65f8182c4d87b6917d7758a8017977144b3455a0abdc96e6dfc2299cb9dfb967092c2619666816886b2f1fc163ee1e0607fb6ddfb6f2ae75 SHA512 7b3515949f862c96c9509edf2b1e7c8fc4947f3371421c5df8ca066f8456000471b0c2af8b906c9d826ea3bdc187b4e8676299b328160bda91ffd7f5a1b95435
diff --git a/dev-python/peewee/peewee-3.17.1.ebuild b/dev-python/peewee/peewee-3.17.1.ebuild
new file mode 100644
index 000000000000..b477fec07718
--- /dev/null
+++ b/dev-python/peewee/peewee-3.17.1.ebuild
@@ -0,0 +1,57 @@
+# 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} )
+PYTHON_REQ_USE="sqlite"
+
+inherit distutils-r1
+
+DESCRIPTION="Small Python ORM"
+HOMEPAGE="
+ https://github.com/coleifer/peewee/
+ https://pypi.org/project/peewee/
+"
+SRC_URI="
+ https://github.com/coleifer/peewee/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~riscv ~x86"
+IUSE="examples +native-extensions test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ native-extensions? ( dev-db/sqlite:3= )
+"
+RDEPEND="
+ ${DEPEND}
+"
+BDEPEND="
+ dev-python/cython[${PYTHON_USEDEP}]
+"
+
+distutils_enable_sphinx docs \
+ dev-python/sphinx-rtd-theme
+
+src_compile() {
+ if ! use native-extensions; then
+ local -x NO_SQLITE=1
+ fi
+
+ distutils-r1_src_compile
+}
+
+python_test() {
+ "${EPYTHON}" runtests.py -v 2 || die "tests failed under ${EPYTHON}"
+}
+
+python_install_all() {
+ use examples && DOCS=( examples/ )
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/pydantic/Manifest b/dev-python/pydantic/Manifest
index 0f8a0983884c..d3138e95e2d0 100644
--- a/dev-python/pydantic/Manifest
+++ b/dev-python/pydantic/Manifest
@@ -3,3 +3,4 @@ DIST pydantic-2.4.2.tar.gz 654020 BLAKE2B 2f91b6bf89f87230976a2e777541bb7418382f
DIST pydantic-2.5.2.tar.gz 652158 BLAKE2B d3a7eeb4e1933d4893df69d2600437a4df1a640f4ec6564079669f8703b8d21bba548197277a373e5a653f4aea67de2336ea983906c2e96b514cdab3f8821dc1 SHA512 56753c9739759251004476620ca25d69bebc7743da911f69a09fcbffa6d6e5ec9b9fc22975e845599fcb2aed5cbbf081c3737d6eab55b9e1696818c4da405e6d
DIST pydantic-2.5.3.tar.gz 651797 BLAKE2B 9494bd7a243d5cda762d916b10120861870b5f3112f581aa33b888eab7b605adcd3eb861853467e2d021b88b1c2583bbaf6ace8e96154543c6946e13722ed345 SHA512 bfc2f9704688815dbf418e2a7c72e193de80f279ac578fdaefe763f7cd8a9dce6c9152bd950d013f7fa48ea743468ae588adf61e277924536637590b63792779
DIST pydantic-2.6.0.tar.gz 677208 BLAKE2B 10df7e22a05fc01e1d35b71f266f852599f949080c44a3ecbee8f8b42344de13fb2bc13957d2d2104337d4311ceda537073d0dda6f8cd9c5f621d381293d4e8c SHA512 5d3912f2b388ea49ba853b6463478c0fbf15ea67877291198ef69b4dc6f037215e62dc872e62ad6152ce02de0d809c89dcd11b5b0c94e668f15eb559a3d8a536
+DIST pydantic-2.6.1.tar.gz 679826 BLAKE2B d1915b20200a9a3a3e1c854ecc2c760eba7b672cb336b07426475072da08090a6adbe6d674019d314b01c92d69aa6caecb52f8f45bdf6d81bde1a1bff6230a3f SHA512 89a202165950ab741eac8441eb6c014dab50474bd4d001f90a32cff55b1b6bf36433d4ae11df8ab5e51bbcf68efb9674cece9a512c1d85f428e13fb59e2ae2c0
diff --git a/dev-python/pydantic/pydantic-2.6.1.ebuild b/dev-python/pydantic/pydantic-2.6.1.ebuild
new file mode 100644
index 000000000000..8c8d696379cd
--- /dev/null
+++ b/dev-python/pydantic/pydantic-2.6.1.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.2[${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/python-engineio/Manifest b/dev-python/python-engineio/Manifest
index d468cdfd18f6..4655af63e53b 100644
--- a/dev-python/python-engineio/Manifest
+++ b/dev-python/python-engineio/Manifest
@@ -1,2 +1,3 @@
DIST python-engineio-4.8.1.gh.tar.gz 313165 BLAKE2B 3d3b87b7fba18d2315c2ef20c404a49ada7b4ac3ade33c11ef7ecaa3271000d4d6fdef3b92e65f39e4eed28425efb7d264b9b63e6262722ad0bb998924f05af4 SHA512 071fea8ffc2bc08322bf16953a8aba956af9fef583168c04d47c893fe99424709b66cf2dd780b00faf6c973eb40a96eb42d62bb15417057ec3f248ea091533d0
DIST python-engineio-4.8.2.gh.tar.gz 313823 BLAKE2B a985466a661c1ad1995999c1792758bc6a412097911f64cbb8a38af362b19f5a2abd7aa0fb1e6806310f766db0fc4486ae2793ad4fc8804fe580540daff73a3a SHA512 ad61794f4ebabdaca86e049f378818506f6d2dc0bc52a4a7687185c2ef11788652d55e397a7e45f666f8c4233e46be5b16b7fda38440e96d0a66116e9327c172
+DIST python-engineio-4.9.0.gh.tar.gz 314185 BLAKE2B e14bb11f5762c42a77d782b0e1ce20c30f0f5599ba0c4577699d53f085464ce588660805d1b8c18a147b3bf01a2e255980f21e36003127e17351c28bd42f433e SHA512 24838cb71ca3beda6a28deaa37208fae0e673bb0a00696594aa638af95e49af479b0088809f093ace9b2a8f5f7a4dcc95bbd2aa5c97938137b6e594ac1a7950d
diff --git a/dev-python/python-engineio/python-engineio-4.9.0.ebuild b/dev-python/python-engineio/python-engineio-4.9.0.ebuild
new file mode 100644
index 000000000000..5e8de490bfe9
--- /dev/null
+++ b/dev-python/python-engineio/python-engineio-4.9.0.ebuild
@@ -0,0 +1,59 @@
+# 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="Python implementation of the Engine.IO realtime server"
+HOMEPAGE="
+ https://python-engineio.readthedocs.io/
+ https://github.com/miguelgrinberg/python-engineio/
+ https://pypi.org/project/python-engineio/"
+SRC_URI="
+ https://github.com/miguelgrinberg/python-engineio/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+RDEPEND="
+ dev-python/aiohttp[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ >=dev-python/simple-websocket-0.10.0[${PYTHON_USEDEP}]
+ dev-python/websocket-client[${PYTHON_USEDEP}]
+"
+# Can use eventlet, werkzeug, or gevent, but no tests for werkzeug
+BDEPEND="
+ test? (
+ dev-python/tornado[${PYTHON_USEDEP}]
+ dev-python/websockets[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+distutils_enable_sphinx docs \
+ dev-python/alabaster
+
+python_test() {
+ local EPYTEST_IGNORE=(
+ # eventlet is masked for removal
+ tests/common/test_async_eventlet.py
+ )
+
+ local EPYTEST_DESELECT=(
+ # also eventlet
+ tests/common/test_server.py::TestServer::test_async_mode_eventlet
+ tests/common/test_server.py::TestServer::test_connect
+ tests/common/test_server.py::TestServer::test_service_task_started
+ tests/common/test_server.py::TestServer::test_upgrades
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
diff --git a/dev-python/taskgroup/taskgroup-0.0.0_alpha4.ebuild b/dev-python/taskgroup/taskgroup-0.0.0_alpha4.ebuild
index 6ed4dfabcd1e..a70974e54c87 100644
--- a/dev-python/taskgroup/taskgroup-0.0.0_alpha4.ebuild
+++ b/dev-python/taskgroup/taskgroup-0.0.0_alpha4.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2023 Gentoo Authors
+# Copyright 2023-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="amd64 arm arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 sparc x86"
+KEYWORDS="amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86"
RDEPEND="
dev-python/exceptiongroup[${PYTHON_USEDEP}]