summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2024-04-24 20:15:27 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2024-04-24 20:15:27 +0000
commit6278a199a6e3a0636b6466bc7eba9fbf6ae507f2 (patch)
tree20bab609f31f477770a8033f4140a4a2b009446d /dev-python
parentc3cf01faaca23ac6fbbd9e41fdff0d53bbddd1a1 (diff)
downloadbaldeagleos-repo-6278a199a6e3a0636b6466bc7eba9fbf6ae507f2.tar.gz
baldeagleos-repo-6278a199a6e3a0636b6466bc7eba9fbf6ae507f2.tar.xz
baldeagleos-repo-6278a199a6e3a0636b6466bc7eba9fbf6ae507f2.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/Faker/Faker-24.4.0.ebuild40
-rw-r--r--dev-python/Faker/Faker-24.8.0.ebuild2
-rw-r--r--dev-python/Faker/Faker-24.9.0.ebuild40
-rw-r--r--dev-python/Faker/Manifest2
-rw-r--r--dev-python/Levenshtein/Levenshtein-0.25.1.ebuild2
-rw-r--r--dev-python/PythonQwt/Manifest2
-rw-r--r--dev-python/PythonQwt/PythonQwt-0.11.2.ebuild3
-rw-r--r--dev-python/PythonQwt/PythonQwt-0.12.1.ebuild (renamed from dev-python/PythonQwt/PythonQwt-0.10.5.ebuild)6
-rw-r--r--dev-python/ansible-compat/Manifest1
-rw-r--r--dev-python/ansible-compat/ansible-compat-4.1.11.ebuild54
-rw-r--r--dev-python/ansible-compat/ansible-compat-4.1.12.ebuild2
-rw-r--r--dev-python/backports-tarfile/Manifest2
-rw-r--r--dev-python/backports-tarfile/backports-tarfile-1.1.1.ebuild (renamed from dev-python/backports-tarfile/backports-tarfile-1.0.0.ebuild)12
-rw-r--r--dev-python/chameleon/Manifest1
-rw-r--r--dev-python/chameleon/chameleon-4.5.3.ebuild23
-rw-r--r--dev-python/chameleon/chameleon-4.5.4.ebuild2
-rw-r--r--dev-python/coverage/Manifest1
-rw-r--r--dev-python/coverage/coverage-7.5.0.ebuild98
-rw-r--r--dev-python/docutils/Manifest1
-rw-r--r--dev-python/docutils/docutils-0.21.2.ebuild80
-rw-r--r--dev-python/ecdsa/Manifest1
-rw-r--r--dev-python/ecdsa/ecdsa-0.18.0.ebuild33
-rw-r--r--dev-python/ecdsa/ecdsa-0.19.0.ebuild2
-rw-r--r--dev-python/execnet/Manifest2
-rw-r--r--dev-python/execnet/execnet-2.0.2.ebuild32
-rw-r--r--dev-python/execnet/execnet-2.1.0.ebuild37
-rw-r--r--dev-python/execnet/execnet-2.1.1.ebuild2
-rw-r--r--dev-python/filelock/Manifest1
-rw-r--r--dev-python/filelock/filelock-3.13.3.ebuild29
-rw-r--r--dev-python/filelock/filelock-3.13.4.ebuild2
-rw-r--r--dev-python/flask/Manifest1
-rw-r--r--dev-python/flask/flask-3.0.2.ebuild58
-rw-r--r--dev-python/flask/flask-3.0.3.ebuild2
-rw-r--r--dev-python/google-api-python-client/Manifest1
-rw-r--r--dev-python/google-api-python-client/google-api-python-client-2.127.0.ebuild51
-rw-r--r--dev-python/guidata/Manifest2
-rw-r--r--dev-python/guidata/guidata-3.3.0.ebuild3
-rw-r--r--dev-python/guidata/guidata-3.5.0.ebuild (renamed from dev-python/guidata/guidata-3.2.2.ebuild)3
-rw-r--r--dev-python/hishel/Manifest1
-rw-r--r--dev-python/hishel/hishel-0.0.26.ebuild73
-rw-r--r--dev-python/hypothesis/Manifest1
-rw-r--r--dev-python/hypothesis/hypothesis-6.100.1.ebuild2
-rw-r--r--dev-python/hypothesis/hypothesis-6.99.13.ebuild91
-rw-r--r--dev-python/importlib-resources/Manifest1
-rw-r--r--dev-python/importlib-resources/importlib-resources-6.4.0.ebuild28
-rw-r--r--dev-python/jaraco-context/jaraco-context-5.3.0.ebuild2
-rw-r--r--dev-python/jaraco-vcs/Manifest2
-rw-r--r--dev-python/jaraco-vcs/jaraco-vcs-2.1.0.ebuild44
-rw-r--r--dev-python/jaraco-vcs/jaraco-vcs-2.2.0.ebuild44
-rw-r--r--dev-python/jaraco-vcs/metadata.xml10
-rw-r--r--dev-python/jaraco-versioning/Manifest1
-rw-r--r--dev-python/jaraco-versioning/jaraco-versioning-1.1.0.ebuild27
-rw-r--r--dev-python/jaraco-versioning/metadata.xml10
-rw-r--r--dev-python/joblib/joblib-1.4.0.ebuild2
-rw-r--r--dev-python/jupyter-lsp/Manifest1
-rw-r--r--dev-python/jupyter-lsp/jupyter-lsp-2.2.4.ebuild85
-rw-r--r--dev-python/jupyter-lsp/jupyter-lsp-2.2.5.ebuild2
-rw-r--r--dev-python/jupyterlab-server/Manifest2
-rw-r--r--dev-python/jupyterlab-server/jupyterlab-server-2.25.4.ebuild66
-rw-r--r--dev-python/jupyterlab-server/jupyterlab-server-2.26.0.ebuild2
-rw-r--r--dev-python/jupyterlab-server/jupyterlab-server-2.27.0.ebuild66
-rw-r--r--dev-python/jupyterlab/Manifest1
-rw-r--r--dev-python/jupyterlab/jupyterlab-4.1.5.ebuild78
-rw-r--r--dev-python/jupyterlab/jupyterlab-4.1.6.ebuild2
-rw-r--r--dev-python/mkdocs-get-deps/mkdocs-get-deps-0.2.0.ebuild2
-rw-r--r--dev-python/mkdocs-macros-plugin/Manifest1
-rw-r--r--dev-python/mkdocs-macros-plugin/mkdocs-macros-plugin-1.0.5.ebuild34
-rw-r--r--dev-python/mkdocs/mkdocs-1.6.0.ebuild2
-rw-r--r--dev-python/moto/moto-5.0.5.ebuild2
-rw-r--r--dev-python/myst-parser/Manifest1
-rw-r--r--dev-python/myst-parser/myst-parser-3.0.0.ebuild58
-rw-r--r--dev-python/path/Manifest1
-rw-r--r--dev-python/path/path-16.12.1.ebuild37
-rw-r--r--dev-python/path/path-16.14.0.ebuild2
-rw-r--r--dev-python/platformdirs/Manifest1
-rw-r--r--dev-python/platformdirs/platformdirs-4.2.1.ebuild49
-rw-r--r--dev-python/pulsectl-asyncio/Manifest1
-rw-r--r--dev-python/pulsectl-asyncio/pulsectl-asyncio-1.1.1.ebuild41
-rw-r--r--dev-python/pulsectl-asyncio/pulsectl-asyncio-1.2.0.ebuild2
-rw-r--r--dev-python/pulsectl/Manifest1
-rw-r--r--dev-python/pulsectl/pulsectl-23.5.2-r1.ebuild30
-rw-r--r--dev-python/pulsectl/pulsectl-24.4.0.ebuild2
-rw-r--r--dev-python/pygments-github-lexers/files/pygments-github-lexers-0.0.5-escape-sequences.patch22
-rw-r--r--dev-python/pygments-github-lexers/pygments-github-lexers-0.0.5-r2.ebuild (renamed from dev-python/pygments-github-lexers/pygments-github-lexers-0.0.5-r1.ebuild)7
-rw-r--r--dev-python/pypdf/pypdf-4.2.0.ebuild2
-rw-r--r--dev-python/pyphen/Manifest1
-rw-r--r--dev-python/pyphen/pyphen-0.15.0.ebuild25
-rw-r--r--dev-python/pypy-exe-bin/Manifest8
-rw-r--r--dev-python/pypy-exe-bin/pypy-exe-bin-7.3.16.ebuild82
-rw-r--r--dev-python/pypy-exe/Manifest2
-rw-r--r--dev-python/pypy-exe/pypy-exe-7.3.16.ebuild181
-rw-r--r--dev-python/pypy/Manifest4
-rw-r--r--dev-python/pypy/pypy-7.3.16.ebuild (renamed from dev-python/pypy/pypy-7.3.13.ebuild)19
-rw-r--r--dev-python/pypy3/pypy3-7.3.16.ebuild26
-rw-r--r--dev-python/pypy3_10-exe-bin/Manifest8
-rw-r--r--dev-python/pypy3_10-exe-bin/pypy3_10-exe-bin-7.3.16.ebuild85
-rw-r--r--dev-python/pypy3_10-exe/Manifest2
-rw-r--r--dev-python/pypy3_10-exe/pypy3_10-exe-7.3.16.ebuild136
-rw-r--r--dev-python/pypy3_10/Manifest2
-rw-r--r--dev-python/pypy3_10/pypy3_10-7.3.16.ebuild212
-rw-r--r--dev-python/pypy3_9-exe-bin/Manifest8
-rw-r--r--dev-python/pypy3_9-exe-bin/pypy3_9-exe-bin-7.3.16.ebuild85
-rw-r--r--dev-python/pypy3_9-exe/Manifest2
-rw-r--r--dev-python/pypy3_9-exe/pypy3_9-exe-7.3.16.ebuild132
-rw-r--r--dev-python/pypy3_9/Manifest2
-rw-r--r--dev-python/pypy3_9/pypy3_9-7.3.16.ebuild211
-rw-r--r--dev-python/pyscard/pyscard-2.0.9.ebuild2
-rw-r--r--dev-python/rapidfuzz/rapidfuzz-3.8.1.ebuild2
-rw-r--r--dev-python/referencing/Manifest1
-rw-r--r--dev-python/referencing/referencing-0.35.0.ebuild33
-rw-r--r--dev-python/requests_download/requests_download-0.1.2-r2.ebuild32
-rw-r--r--dev-python/rst-linker/Manifest1
-rw-r--r--dev-python/rst-linker/rst-linker-2.6.0.ebuild33
-rw-r--r--dev-python/scikit-learn/Manifest1
-rw-r--r--dev-python/scikit-learn/scikit-learn-1.3.2-r1.ebuild78
-rw-r--r--dev-python/scikit-learn/scikit-learn-1.4.2.ebuild2
-rw-r--r--dev-python/send2trash/Manifest1
-rw-r--r--dev-python/send2trash/send2trash-1.8.2.ebuild23
-rw-r--r--dev-python/send2trash/send2trash-1.8.3.ebuild2
-rw-r--r--dev-python/spyder-kernels/Manifest3
-rw-r--r--dev-python/spyder-kernels/spyder-kernels-2.5.0.ebuild55
-rw-r--r--dev-python/spyder-kernels/spyder-kernels-3.0.0_beta5.ebuild (renamed from dev-python/spyder-kernels/spyder-kernels-3.0.0_beta4.ebuild)4
-rw-r--r--dev-python/spyder/Manifest3
-rw-r--r--dev-python/spyder/spyder-6.0.0_alpha5.ebuild (renamed from dev-python/spyder/spyder-6.0.0_alpha4.ebuild)9
-rw-r--r--dev-python/stripe/Manifest2
-rw-r--r--dev-python/stripe/stripe-8.11.0.ebuild2
-rw-r--r--dev-python/stripe/stripe-8.9.0.ebuild81
-rw-r--r--dev-python/stripe/stripe-9.1.0.ebuild88
-rw-r--r--dev-python/textdistance/Manifest1
-rw-r--r--dev-python/textdistance/textdistance-4.6.2.ebuild36
-rw-r--r--dev-python/thriftpy2/Manifest2
-rw-r--r--dev-python/thriftpy2/thriftpy2-0.4.17.ebuild44
-rw-r--r--dev-python/thriftpy2/thriftpy2-0.4.20-r1.ebuild (renamed from dev-python/thriftpy2/thriftpy2-0.4.19.ebuild)17
-rw-r--r--dev-python/uv/Manifest2
-rw-r--r--dev-python/uv/files/uv-0.1.37-test.patch22
-rw-r--r--dev-python/uv/uv-0.1.37.ebuild117
-rw-r--r--dev-python/xmlschema/Manifest2
-rw-r--r--dev-python/xmlschema/xmlschema-3.1.0.ebuild37
-rw-r--r--dev-python/xmlschema/xmlschema-3.2.0.ebuild37
-rw-r--r--dev-python/xmlschema/xmlschema-3.2.1.ebuild2
140 files changed, 2215 insertions, 1373 deletions
diff --git a/dev-python/Faker/Faker-24.4.0.ebuild b/dev-python/Faker/Faker-24.4.0.ebuild
deleted file mode 100644
index 7654943106a7..000000000000
--- a/dev-python/Faker/Faker-24.4.0.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# 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/Faker-24.8.0.ebuild b/dev-python/Faker/Faker-24.8.0.ebuild
index b726995539a4..7654943106a7 100644
--- a/dev-python/Faker/Faker-24.8.0.ebuild
+++ b/dev-python/Faker/Faker-24.8.0.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="amd64 arm arm64 ~loong ppc ppc64 ~riscv ~s390 sparc x86"
RDEPEND="
>=dev-python/python-dateutil-2.4.2[${PYTHON_USEDEP}]
diff --git a/dev-python/Faker/Faker-24.9.0.ebuild b/dev-python/Faker/Faker-24.9.0.ebuild
deleted file mode 100644
index b726995539a4..000000000000
--- a/dev-python/Faker/Faker-24.9.0.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# 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 ad8bde575bcb..2a40692c1898 100644
--- a/dev-python/Faker/Manifest
+++ b/dev-python/Faker/Manifest
@@ -1,4 +1,2 @@
DIST Faker-24.11.0.tar.gz 1726502 BLAKE2B 52429b5b0db4e1fd55d2a4b30ed007417f37e36fbec8d4fe43dea316920d85877668f4e66107011fef5874b74b25c1465fcfc0990ee3f40810df064622bb5373 SHA512 d5ee8c7c048d113c37b13608406d96966745ab46b095fcb30c9107a27a7af909c9d4d6bf9c7bb478ad7d0604b3cb6b33b93b0ba9e1a321c20870d651f57617a5
-DIST Faker-24.4.0.tar.gz 1724351 BLAKE2B 2eeb2d660462b0f0b55aadd32768c9a5eaaf22a8036ae203dab7538b8c24f0e6fcdf08533c7737fe597dbe395a00a39c8c2d5e3a823133638a90a9ffa8d32f08 SHA512 5ea18faa39cf8506f007557b9a8c84bf2cc21d806a99991bf2fcced3d350f96daf3dd6a0a42dfdb7021b72156eb12ad84a930c669df011f39a17f4c290d08675
DIST Faker-24.8.0.tar.gz 1725365 BLAKE2B b2646766b993d946bf7965133b7484408370a2e8bed9091b713ffd427d545bb708027066b6787a78cd675659b4d342ac86c9f611aecfb7df3d0565a8066925f0 SHA512 d8fe7e411052bec485b40540317c88ff5aeae8a32ef2e53214816b190d4730c9f5af9157ac2c66aba5fbc887e995d0238f71deefdcf67300e49586c7995b60ff
-DIST Faker-24.9.0.tar.gz 1725521 BLAKE2B 30486824e1e9a33cb9bf018ebbe9845c65c5fbb797fd75c0798f854c487b5e02b30fad83dd1f94ef4650e5e6ec981ef3318e1b3ec7cc64169e2b3fb7f90a42d8 SHA512 18fb6970c90c1048fcfcc9bb3f557eb21374b9e0f128833ac32ad281019059d8a8a3a05a276b72d38bd9bd6315cf0846d7f8111f054191dae1149cdcaf08187d
diff --git a/dev-python/Levenshtein/Levenshtein-0.25.1.ebuild b/dev-python/Levenshtein/Levenshtein-0.25.1.ebuild
index beb0f32315ad..d41b8a5c8478 100644
--- a/dev-python/Levenshtein/Levenshtein-0.25.1.ebuild
+++ b/dev-python/Levenshtein/Levenshtein-0.25.1.ebuild
@@ -22,7 +22,7 @@ SRC_URI="
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm arm64 ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86"
DEPEND="
<dev-cpp/rapidfuzz-cpp-4
diff --git a/dev-python/PythonQwt/Manifest b/dev-python/PythonQwt/Manifest
index f8066ed9f27f..55cc24a1af8c 100644
--- a/dev-python/PythonQwt/Manifest
+++ b/dev-python/PythonQwt/Manifest
@@ -1,2 +1,2 @@
-DIST PythonQwt-0.10.5.tar.gz 1109805 BLAKE2B 0d675586f56f3fc345edb660fe6746f9da018001c142d2ff46fac999110c6c5bb457d163550325aaf86e92febee96b9cc4d2e935e31194b9a2b889c2762482bb SHA512 f4ae3468c599f55c9cc5aeb58980740ffdcb3c37e761591c43e463f3a5b395e9bf21acf117f586eeebd2e1264b710d88c10006f3477e98127c516a54f497d933
DIST PythonQwt-0.11.2.tar.gz 1216322 BLAKE2B cecc5cbcfc4266690692e2bd358dbcd9d6f949b64ffff38879b1df84b0e4c4a562ffac18ce436fd7ccdb3dbb43e77b9bc998e73d53855ab065b53363d3256ccc SHA512 1f5210943dec77fc72426a1da5db6b783ae9d27aa9f7f76c69e9a5d40e306b7bfde0f1a16990cbb622ab2f66289fd65e7d0887b5ac777389859c64e6ef372d69
+DIST PythonQwt-0.12.1.tar.gz 1216628 BLAKE2B 9428d3c8d0fe671c6182e4664d53ea684bf18e0bf7c8462fc56e669e7745f17064c890e37a75766f6165bfe381847c06f1d532eb524949445b0efe6ddd1486e9 SHA512 cdfe02c8db8a3d81af71412590f12a86779143bb8f3411bc442b23760fc6c51d1f0aac320c6418c9e32ef68abe706b952ed172f5f0bb39aca17427c8ecc34e07
diff --git a/dev-python/PythonQwt/PythonQwt-0.11.2.ebuild b/dev-python/PythonQwt/PythonQwt-0.11.2.ebuild
index 29c9dbcdb048..5d0e78007ea1 100644
--- a/dev-python/PythonQwt/PythonQwt-0.11.2.ebuild
+++ b/dev-python/PythonQwt/PythonQwt-0.11.2.ebuild
@@ -14,9 +14,8 @@ HOMEPAGE="https://pypi.python.org/pypi/PythonQwt"
LICENSE="MIT"
SLOT="0"
+KEYWORDS="~amd64 ~x86"
# Test directory seems to contain demo instead
RESTRICT="test"
RDEPEND="dev-python/PyQt5[${PYTHON_USEDEP},svg]"
-
-KEYWORDS="~amd64 ~x86"
diff --git a/dev-python/PythonQwt/PythonQwt-0.10.5.ebuild b/dev-python/PythonQwt/PythonQwt-0.12.1.ebuild
index 78f3b76ddd87..5d0e78007ea1 100644
--- a/dev-python/PythonQwt/PythonQwt-0.10.5.ebuild
+++ b/dev-python/PythonQwt/PythonQwt-0.12.1.ebuild
@@ -14,8 +14,8 @@ HOMEPAGE="https://pypi.python.org/pypi/PythonQwt"
LICENSE="MIT"
SLOT="0"
-RETRICT="test"
+KEYWORDS="~amd64 ~x86"
+# Test directory seems to contain demo instead
+RESTRICT="test"
RDEPEND="dev-python/PyQt5[${PYTHON_USEDEP},svg]"
-
-KEYWORDS="~amd64 ~x86"
diff --git a/dev-python/ansible-compat/Manifest b/dev-python/ansible-compat/Manifest
index 8fab0b525641..f9da22d4cff0 100644
--- a/dev-python/ansible-compat/Manifest
+++ b/dev-python/ansible-compat/Manifest
@@ -1,2 +1 @@
-DIST ansible-compat-4.1.11.tar.gz 73021 BLAKE2B 4d62c6c6739ae5dcfe98347eac268f6976f12cabcf8706f89ebaed2a6750a47faaf53ce5585ee2d6a2cf8a92add9f8f74bd050e44fa6f5515a9b77a7f49979c5 SHA512 0e8de16ef0da9a036595dadbdfa5fd776f8edf0d2c16e8e2759a0e1b07f0d0fffc22a8c7be17aefb73312f3c8f56d48fdf097c527fa3b8919907923fffc44fa7
DIST ansible-compat-4.1.12.gh.tar.gz 67966 BLAKE2B 3c665eb2cb87e184042da78ed1c41e7ca2b437c5151ba21bdd609104b44fa28c5f03247d275c58cfdf04a8e9ed328947cb0c2670603218798e3a484861274af2 SHA512 c9b2c340dc2b1ffb6f6db76017f7537e20307a7519a4df2dfb31811180cd647e39812bc433db51bd94d42f4c52a6c2f729d81edadcd615a5e0d23566969d8911
diff --git a/dev-python/ansible-compat/ansible-compat-4.1.11.ebuild b/dev-python/ansible-compat/ansible-compat-4.1.11.ebuild
deleted file mode 100644
index ba42110dab37..000000000000
--- a/dev-python/ansible-compat/ansible-compat-4.1.11.ebuild
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYPI_NO_NORMALIZE=1
-PYTHON_COMPAT=( python3_{8,9,10,11,12} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="Contains functions that facilitate working with various versions of Ansible"
-HOMEPAGE="
- https://pypi.org/project/ansible-compat/
- https://github.com/ansible/ansible-compat/
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~arm64 ~riscv"
-
-RDEPEND="
- >=app-admin/ansible-core-2.12[${PYTHON_USEDEP}]
- >=dev-python/jsonschema-4.6.0[${PYTHON_USEDEP}]
- dev-python/packaging[${PYTHON_USEDEP}]
- dev-python/pyyaml[${PYTHON_USEDEP}]
- >=dev-python/subprocess-tee-0.4.1[${PYTHON_USEDEP}]
-"
-BDEPEND="
- >=dev-python/setuptools-scm-7.0.5[${PYTHON_USEDEP}]
- test? (
- dev-python/flaky[${PYTHON_USEDEP}]
- dev-python/pytest-mock[${PYTHON_USEDEP}]
- dev-python/pytest-plus[${PYTHON_USEDEP}]
- )
-"
-
-# All these tests attempt to connect to galaxy.ansible.com
-EPYTEST_DESELECT=(
- test/test_runtime.py::test_install_collection
- test/test_runtime.py::test_install_collection_dest
- test/test_runtime.py::test_prepare_environment_with_collections
- test/test_runtime.py::test_prerun_reqs_v1
- test/test_runtime.py::test_prerun_reqs_v2
- test/test_runtime.py::test_require_collection_no_cache_dir
- test/test_runtime.py::test_require_collection_wrong_version
- test/test_runtime.py::test_require_collection
- test/test_runtime.py::test_upgrade_collection
- test/test_runtime_example.py::test_runtime
- # pip, failing due to internets
- test/test_runtime_scan_path.py::test_scan_sys_path
-)
-
-distutils_enable_tests pytest
diff --git a/dev-python/ansible-compat/ansible-compat-4.1.12.ebuild b/dev-python/ansible-compat/ansible-compat-4.1.12.ebuild
index ab29a02c2c5f..f6cbb37eceaa 100644
--- a/dev-python/ansible-compat/ansible-compat-4.1.12.ebuild
+++ b/dev-python/ansible-compat/ansible-compat-4.1.12.ebuild
@@ -19,7 +19,7 @@ SRC_URI="https://github.com/ansible/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~riscv"
+KEYWORDS="amd64 ~arm64 ~riscv"
RDEPEND="
>=app-admin/ansible-core-2.12[${PYTHON_USEDEP}]
diff --git a/dev-python/backports-tarfile/Manifest b/dev-python/backports-tarfile/Manifest
index 16f3d9b62afd..0f072e067214 100644
--- a/dev-python/backports-tarfile/Manifest
+++ b/dev-python/backports-tarfile/Manifest
@@ -1 +1 @@
-DIST backports.tarfile-1.0.0.tar.gz 32952 BLAKE2B 264f63406f0cbf053bcbbc2933317152cbe89e765b87449111cf3397b072d68b1671918a7e3549f9f96dfc62c540f36a7b4e263d5c3f3ea305093a992d68eb2b SHA512 c44907a9b5c9af5dbcc37ecd613dcd7e269b1eed71a757d4e6c32828cc703a3060943f67a0caf90680ade89df8a938b999ba64d30ebfb5b63fbb0c70a068d349
+DIST backports_tarfile-1.1.1.tar.gz 84734 BLAKE2B 7691aaf4bd66e6fd6ad32dc9f4c4c51887ab502d302dae4931c72076b97d55b7646a716fd0dcd04dfc955a8dbf195d3804800b79375ecac1631fd633aefe2d12 SHA512 59ff0f6d78a0b4b2d868026a2f82375a7bfa3b1a09a96c0d6eaf0620c99ec379c22e12e6222677ca9c430349d40714f265ad879390789d63b8d322a31a7c1923
diff --git a/dev-python/backports-tarfile/backports-tarfile-1.0.0.ebuild b/dev-python/backports-tarfile/backports-tarfile-1.1.1.ebuild
index 9444317a499b..ec379b7053b7 100644
--- a/dev-python/backports-tarfile/backports-tarfile-1.0.0.ebuild
+++ b/dev-python/backports-tarfile/backports-tarfile-1.1.1.ebuild
@@ -5,7 +5,6 @@
EAPI=8
DISTUTILS_USE_PEP517=flit
-PYPI_NO_NORMALIZE=1
PYPI_PN=${PN/-/.}
# This is a backport from Python 3.12.
PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
@@ -20,7 +19,16 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~m68k ~ppc ~ppc64 ~riscv ~s390 ~x86"
+KEYWORDS="amd64 arm arm64 ~ia64 ~m68k ppc ppc64 ~riscv ~s390 x86"
+
+BDEPEND="
+ test? (
+ dev-python/jaraco-test[${PYTHON_USEDEP}]
+ <dev-python/pytest-8.1[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
src_configure() {
grep -q 'build-backend = "setuptools' pyproject.toml ||
diff --git a/dev-python/chameleon/Manifest b/dev-python/chameleon/Manifest
index 707a78860539..4ee915bcc858 100644
--- a/dev-python/chameleon/Manifest
+++ b/dev-python/chameleon/Manifest
@@ -1,2 +1 @@
-DIST Chameleon-4.5.3.tar.gz 180148 BLAKE2B 952602d4dbee6adcab2eb2fec012ae150014d66e7fb03376da3b9aafd6a129e2727e8b22f50ad23c4e920833243baf79f4b8eb4dadec9ac46be4d3502a239a21 SHA512 60914af16e946db85bda205c6c2a21d82123015239279355c127f33260a774daa4e27cd6d7603444c4f630f4b10d00e65e19d9558cdcf9cc751b593f72aede3d
DIST Chameleon-4.5.4.tar.gz 180464 BLAKE2B cb77a1a928e67b029038f7e2704f077cc45e2baf79dfb30bdf460d0f940cb8fb30f5e42ef5b977a6c33e070b229ede1b53268d30a5d2f165607db8f03179f061 SHA512 476ecc902e252eca6de0552f4526666eaccd305f973d2cf6035c209174152c27d7dce8f4e8a21b9507a3609c38215446bfaa7203865c6151d02922893422e160
diff --git a/dev-python/chameleon/chameleon-4.5.3.ebuild b/dev-python/chameleon/chameleon-4.5.3.ebuild
deleted file mode 100644
index c1495bcb2ca1..000000000000
--- a/dev-python/chameleon/chameleon-4.5.3.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYPI_NO_NORMALIZE=1
-PYPI_PN=${PN^}
-PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="Fast HTML/XML template compiler for Python"
-HOMEPAGE="
- https://github.com/malthe/chameleon/
- https://pypi.org/project/Chameleon/
-"
-
-LICENSE="repoze"
-SLOT="0"
-KEYWORDS="amd64 arm64 x86"
-
-distutils_enable_tests pytest
diff --git a/dev-python/chameleon/chameleon-4.5.4.ebuild b/dev-python/chameleon/chameleon-4.5.4.ebuild
index d151699b1d62..c1495bcb2ca1 100644
--- a/dev-python/chameleon/chameleon-4.5.4.ebuild
+++ b/dev-python/chameleon/chameleon-4.5.4.ebuild
@@ -18,6 +18,6 @@ HOMEPAGE="
LICENSE="repoze"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
+KEYWORDS="amd64 arm64 x86"
distutils_enable_tests pytest
diff --git a/dev-python/coverage/Manifest b/dev-python/coverage/Manifest
index 606347d6e845..17c1b53b6908 100644
--- a/dev-python/coverage/Manifest
+++ b/dev-python/coverage/Manifest
@@ -1 +1,2 @@
DIST coverage-7.4.4.tar.gz 783727 BLAKE2B e7d7af92ddcb3d7b5857cc83d8e14bb16ea2bde720eba63b082d35358934047ef7285ac70a6cd8fcb4720a9ddea5c22cf4cb14404ac2800794c49650ff5a1dd4 SHA512 26d4715ce69556ca12d1b65db5f21807c08733810b4398750280184812ebfb698e7b424b9e30f55e7524323861a22d4581db0524e9e285ca858132359fd24d28
+DIST coverage-7.5.0.tar.gz 798314 BLAKE2B 6f7b80d1a46fb88f92571bc23fa2e061680e4e72e6339332f135ace6072570776abbfdce7654d34599ccd1dff920fb1d7cbdc7039a341d10e130408d554e6f83 SHA512 1332f630e6f6ed9a2445f93a3826f22151cf4eff2491163a6d01ef1ce468928a52871ee71aeeb716e8e4f04542524ae25213a37bdb874c4a663cbc581482530d
diff --git a/dev-python/coverage/coverage-7.5.0.ebuild b/dev-python/coverage/coverage-7.5.0.ebuild
new file mode 100644
index 000000000000..8f7e197a5950
--- /dev/null
+++ b/dev-python/coverage/coverage-7.5.0.ebuild
@@ -0,0 +1,98 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+PYTHON_REQ_USE="threads(+),sqlite(+)"
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Code coverage measurement for Python"
+HOMEPAGE="
+ https://coverage.readthedocs.io/en/latest/
+ https://github.com/nedbat/coveragepy/
+ https://pypi.org/project/coverage/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+
+RDEPEND="
+ $(python_gen_cond_dep '
+ dev-python/tomli[${PYTHON_USEDEP}]
+ ' 3.{9..10})
+"
+BDEPEND="
+ test? (
+ dev-python/flaky[${PYTHON_USEDEP}]
+ dev-python/hypothesis[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ >=dev-python/unittest-mixins-1.4[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ sed -i -e '/addopts/s:-q -n auto::' pyproject.toml || die
+ distutils-r1_src_prepare
+}
+
+test_tracer() {
+ local -x COVERAGE_CORE=${1}
+ einfo " Testing with the ${COVERAGE_CORE} core ..."
+ epytest -p flaky -p hypothesis -p xdist tests
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # TODO: fails because of additional "Terminated" print on SIGTERM
+ tests/test_concurrency.py::SigtermTest::test_sigterm_threading_saves_data
+ # broken because of pytest plugins explicity loaded
+ tests/test_debug.py::ShortStackTest::test_short_stack{,_skip}
+ # these expect specific availability of C extension matching
+ # COVERAGE_CORE (which breaks testing pytracer on CPython)
+ tests/test_cmdline.py::CmdLineStdoutTest::test_version
+ tests/test_debug.py::DebugTraceTest::test_debug_sys_ctracer
+ )
+ local EPYTEST_IGNORE=(
+ # pip these days insists on fetching build deps from Internet
+ tests/test_venv.py
+ )
+
+ "${EPYTHON}" igor.py zip_mods || die
+
+ local -x COVERAGE_TESTING=True
+ # TODO: figure out why they can't be imported inside test env
+ local -x COVERAGE_NO_CONTRACTS=1
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+
+ local prev_opt=$(shopt -p nullglob)
+ shopt -s nullglob
+ local c_ext=( "${BUILD_DIR}/install$(python_get_sitedir)"/coverage/*.so )
+ ${prev_opt}
+
+ if [[ -n ${c_ext} ]]; then
+ cp "${c_ext}" coverage/ || die
+ test_tracer ctrace
+ fi
+
+ test_tracer pytrace
+
+ case ${EPYTHON} in
+ python3.1[01]|pypy3)
+ ;;
+ *)
+ # available since Python 3.12
+ test_tracer sysmon
+ ;;
+ esac
+
+ if [[ -n ${c_ext} ]]; then
+ rm coverage/*.so || die
+ fi
+}
diff --git a/dev-python/docutils/Manifest b/dev-python/docutils/Manifest
index 520c7d2dd766..79539f23b096 100644
--- a/dev-python/docutils/Manifest
+++ b/dev-python/docutils/Manifest
@@ -1,3 +1,4 @@
DIST docutils-0.19.tar.gz 2056383 BLAKE2B 9983a905642de4e81ca118578671b503ddfda4bef1afcc0524de40543e1f9617fd8d768ef467da49d2f01076683400bad6a0fe15f6b5a3a1e202c42b2e34ab1b SHA512 fb904a899f2b6f3c07c5079577bd7c52a3182cb85f6a4149391e523498df15bfa317f0c04095b890beeb3f89c2b444875a2a609d880ac4d7fbc3125e46b37ea5
DIST docutils-0.20.1.tar.gz 2058365 BLAKE2B 73fb8302599ffe57b0840c898b0b2e3ccd39ff9ea6eec2b5d345d02c950e1a8357bd821e62733b0484e82bc30e71d30fab381390b0edaef4375b02bcd9eeeb40 SHA512 a0ddca315d03677003036d6a8052ac96fbd3fcc4508564938ea684d79bedb4d322d83449c7b26e55b19b0aadd6e46ca9ac409bb16279a20f06c70e9c15ef5eb0
DIST docutils-0.21.1.tar.gz 2201080 BLAKE2B a89792a69a7faa0eda7b2470e5e3a3d3cf8250a3577553a8f8f8d3d86d2693394e97dca6c75c1b4815748d2ce126ccd3f71dead5763ec8b70aee7be183165473 SHA512 2816fe074b12d7f15fb6730339f3af5f459f50af0cd2a4922194887f48bfd9931c2f2054a17a5418585b586502b96e05ed18600d31c523084537dc72707ab0ee
+DIST docutils-0.21.2.tar.gz 2204444 BLAKE2B 727c2f97fc5835a0ffa62e38ea85af366cd89ad1eaec0b8af8b1f3b12e6cddfddb65161ba34f9109952d37ba2cf8985f3c3b6905ebb2ac1c9a984cce3fb4d170 SHA512 7fafa331f5687448e80d299c20cdccc4b49819fa471b5f586bf0ab18c694ba43a70f58e7c76b0a70a16267585548389214e11a4998ad7fdc19a27f0f7644539c
diff --git a/dev-python/docutils/docutils-0.21.2.ebuild b/dev-python/docutils/docutils-0.21.2.ebuild
new file mode 100644
index 000000000000..f0e241706534
--- /dev/null
+++ b/dev-python/docutils/docutils-0.21.2.ebuild
@@ -0,0 +1,80 @@
+# 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 optfeature pypi
+
+DESCRIPTION="Python Documentation Utilities (reference reStructuredText impl.)"
+HOMEPAGE="
+ https://docutils.sourceforge.io/
+ https://pypi.org/project/docutils/
+"
+
+# GPL-3+ only for emacs/rst.el
+LICENSE="BSD BSD-2 GPL-3+ PSF-2.4 public-domain"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+
+RDEPEND="
+ dev-python/pillow[${PYTHON_USEDEP}]
+ dev-python/pygments[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ ${RDEPEND}
+"
+
+python_compile_all() {
+ # Generate html docs from reStructured text sources.
+
+ # Place html4css1.css in base directory to ensure that the generated reference to it is correct.
+ cp docutils/writers/html4css1/html4css1.css . || die
+
+ cd tools || die
+ "${EPYTHON}" buildhtml.py --input-encoding=utf-8 --no-datestamp \
+ --stylesheet-path=../html4css1.css, --traceback ../docs || die
+}
+
+src_test() {
+ cd test || die
+ distutils-r1_src_test
+}
+
+python_test() {
+ "${EPYTHON}" alltests.py -v || die "Testing failed with ${EPYTHON}"
+}
+
+python_install() {
+ distutils-r1_python_install
+
+ # Install tools.
+ python_doscript tools/buildhtml.py
+}
+
+install_txt_doc() {
+ local doc="${1}"
+ local dir="txt/$(dirname ${doc})"
+ docinto "${dir}"
+ dodoc "${doc}"
+}
+
+python_install_all() {
+ local DOCS=( *.txt )
+ local HTML_DOCS=( docs tools docutils/writers/html4css1/html4css1.css )
+
+ distutils-r1_python_install_all
+
+ local doc
+ while IFS= read -r -d '' doc; do
+ install_txt_doc "${doc}"
+ done < <(find docs tools -name '*.txt' -print0)
+}
+
+pkg_postinst() {
+ optfeature \
+ "auto-detecting the image dimensions when using the 'scale' option" \
+ dev-python/pillow
+}
diff --git a/dev-python/ecdsa/Manifest b/dev-python/ecdsa/Manifest
index a030d88554d3..4e770d68011a 100644
--- a/dev-python/ecdsa/Manifest
+++ b/dev-python/ecdsa/Manifest
@@ -1,2 +1 @@
-DIST ecdsa-0.18.0.tar.gz 197938 BLAKE2B d4f55591d58a998e69c070983d6cc45720677f83dc6149bd95938c79391df85fe5ce8fe059e961d23b8334d9ac4ef4972bff91a6e9537affc9ddd75c7cbce4f7 SHA512 f26dbeccd8e6ec832405d419b7244ca97b43a2811513493913a4f2f2fd1d2f453068fe0ba7b90b972f42a0d7b9834212fbd4d4559475cffeb1d80075fa954d78
DIST ecdsa-0.19.0.tar.gz 197791 BLAKE2B bcf8cead08bb9354c91a788e7bf03c9c8befa03f6fcbd65de0ba4442353a68683e7e100cef307387b270eb525c9f7778492f43b83929648866e6c0b5fc09b40f SHA512 7fa90c810800f453ffcdf1872f9a8448cb6081478980cc3d7f282284b4e5483c3a86dc7b1ad6c3a4f46102479e9c8493a9d16903c462383ebf09f9021c0f3217
diff --git a/dev-python/ecdsa/ecdsa-0.18.0.ebuild b/dev-python/ecdsa/ecdsa-0.18.0.ebuild
deleted file mode 100644
index 6ad7dea41031..000000000000
--- a/dev-python/ecdsa/ecdsa-0.18.0.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2023 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="ECDSA cryptographic signature library in pure Python"
-HOMEPAGE="
- https://github.com/tlsfuzzer/python-ecdsa/
- https://pypi.org/project/ecdsa/
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~ppc-macos ~x64-macos"
-
-RDEPEND="
- $(python_gen_cond_dep '
- dev-python/gmpy[${PYTHON_USEDEP}]
- ' 'python*')
- dev-python/six[${PYTHON_USEDEP}]
-"
-BDEPEND="
- test? (
- dev-python/hypothesis[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
diff --git a/dev-python/ecdsa/ecdsa-0.19.0.ebuild b/dev-python/ecdsa/ecdsa-0.19.0.ebuild
index 0a2efd497437..e17085085119 100644
--- a/dev-python/ecdsa/ecdsa-0.19.0.ebuild
+++ b/dev-python/ecdsa/ecdsa-0.19.0.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~ppc-macos ~x64-macos"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~ppc-macos ~x64-macos"
RDEPEND="
$(python_gen_cond_dep '
diff --git a/dev-python/execnet/Manifest b/dev-python/execnet/Manifest
index e294d78a8dc0..d5960022bc9f 100644
--- a/dev-python/execnet/Manifest
+++ b/dev-python/execnet/Manifest
@@ -1,3 +1 @@
-DIST execnet-2.0.2.tar.gz 161098 BLAKE2B 2a0a4d3071a0436d7c6ec450f1b502047e6a367985771aa58050e149ea060e8a573844bd2380c66be914dd00e3f9491b126e84089006787c61c043116f9e5981 SHA512 9e2e7ff4e04f50b12a3dd47d3326a3ea229f64926e8598bdce6ea25bd57afb41e96249e1c9f7333927a38a2793f67cac77965c922980055ed758dee361bf2ce4
-DIST execnet-2.1.0.tar.gz 166475 BLAKE2B b1149df5e0073ad9e02520bd74a19a3e527a488088d785b902fab2e7d008fe01195134d2742d6443a52645338b79bc69283ad3402495d64089885793446c4aad SHA512 efd63147748d2f26fd75034b2a0a90c7aa10ac647468ceb27c845c3b66dfa6ffda8b8bd3b5d40ce34f429fb151bfd9fe5c2c6ebc20027789de555232851b5525
DIST execnet-2.1.1.tar.gz 166524 BLAKE2B cf6ef7007ecee7cd3e205dfaefc7c46dcc555dd4290a9055413373cbc1f8b24c5769e8e2eb58c9d6169ad766539bf44139a691726d791a69a80a2f800fefcf4e SHA512 486f906ad653d16cce7337d9085c36070fe3dd721a3723ca62ceb25862c3ff837120062df028d5aadec17f854c0d46204537e9d75d22079a677f08c50dd48d21
diff --git a/dev-python/execnet/execnet-2.0.2.ebuild b/dev-python/execnet/execnet-2.0.2.ebuild
deleted file mode 100644
index d289d6da6db0..000000000000
--- a/dev-python/execnet/execnet-2.0.2.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2023 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="Rapid multi-Python deployment"
-HOMEPAGE="
- https://codespeak.net/execnet/
- https://github.com/pytest-dev/execnet/
- https://pypi.org/project/execnet/
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos"
-
-BDEPEND="
- dev-python/hatch-vcs[${PYTHON_USEDEP}]
-"
-
-distutils_enable_sphinx doc
-distutils_enable_tests pytest
-
-python_test() {
- local -x PYTHONDONTWRITEBYTECODE=
- epytest testing
-}
diff --git a/dev-python/execnet/execnet-2.1.0.ebuild b/dev-python/execnet/execnet-2.1.0.ebuild
deleted file mode 100644
index 5091c6e25062..000000000000
--- a/dev-python/execnet/execnet-2.1.0.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# 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="Rapid multi-Python deployment"
-HOMEPAGE="
- https://codespeak.net/execnet/
- https://github.com/pytest-dev/execnet/
- https://pypi.org/project/execnet/
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
-
-BDEPEND="
- dev-python/hatch-vcs[${PYTHON_USEDEP}]
-"
-
-distutils_enable_sphinx doc
-distutils_enable_tests pytest
-
-python_test() {
- # the test suite checks if bytecode writing can be disabled/enabled
- local -x PYTHONDONTWRITEBYTECODE=
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- # some tests are implicitly run against both sys.executable
- # and pypy3, which is redundant and results in pypy3 bytecode being
- # written to cpython install dirs
- epytest testing -k "not pypy3"
-}
diff --git a/dev-python/execnet/execnet-2.1.1.ebuild b/dev-python/execnet/execnet-2.1.1.ebuild
index 5091c6e25062..e9efafcbdd2b 100644
--- a/dev-python/execnet/execnet-2.1.1.ebuild
+++ b/dev-python/execnet/execnet-2.1.1.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="MIT"
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"
BDEPEND="
dev-python/hatch-vcs[${PYTHON_USEDEP}]
diff --git a/dev-python/filelock/Manifest b/dev-python/filelock/Manifest
index 0aa878b5cb6d..82d779b519a7 100644
--- a/dev-python/filelock/Manifest
+++ b/dev-python/filelock/Manifest
@@ -1,2 +1 @@
-DIST filelock-3.13.3.tar.gz 14938 BLAKE2B b6593dfdb1f2c6ed76ec0d79375e60c67950251bdecc61215be70b1c14e50932ed9796c0318f582fd62760340a3d569b18eb7854205df0b228d4be4f92a333b2 SHA512 d335f9cffdda98f2d3e3585f9170ad5f062e6457056e75738df8b2a2e7ebaed4939597c5e4d1353a4ed0cd1bd53bbb21dab8418412be98cc0b322a6789dd0c7d
DIST filelock-3.13.4.tar.gz 15093 BLAKE2B 1ee07531e4743ad61e9fc2ef85d79e1402be75efb31a6661e1f912a3ae44d19e5578e6e78980228645157ab254f56070ee85b2cdcd2e9d507947c778284159d4 SHA512 072d78bfb3b3831847103b3e7d54e97e9486cbe1ba146d9632edb510abe2d56f3f06bce6b79a2e6cb830ba51e47bbfe32b8f18abb08bd33480ecf78ee0da161b
diff --git a/dev-python/filelock/filelock-3.13.3.ebuild b/dev-python/filelock/filelock-3.13.3.ebuild
deleted file mode 100644
index f0daf06754a0..000000000000
--- a/dev-python/filelock/filelock-3.13.3.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 2018-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="A platform independent file lock for Python"
-HOMEPAGE="
- https://github.com/tox-dev/filelock/
- https://pypi.org/project/filelock/
-"
-
-LICENSE="Unlicense"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos"
-
-BDEPEND="
- dev-python/hatch-vcs[${PYTHON_USEDEP}]
- test? (
- dev-python/pytest-mock[${PYTHON_USEDEP}]
- dev-python/pytest-timeout[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
diff --git a/dev-python/filelock/filelock-3.13.4.ebuild b/dev-python/filelock/filelock-3.13.4.ebuild
index 42a496178710..f0daf06754a0 100644
--- a/dev-python/filelock/filelock-3.13.4.ebuild
+++ b/dev-python/filelock/filelock-3.13.4.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="Unlicense"
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"
BDEPEND="
dev-python/hatch-vcs[${PYTHON_USEDEP}]
diff --git a/dev-python/flask/Manifest b/dev-python/flask/Manifest
index 981da96b5de6..31db193f2be0 100644
--- a/dev-python/flask/Manifest
+++ b/dev-python/flask/Manifest
@@ -1,2 +1 @@
-DIST flask-3.0.2.tar.gz 675248 BLAKE2B 137e09ac0f3bb9d027f2c8204769ae98ae5b9992f6126961208a875efb8d450abec471859ab0341120356c9b61238700f0e918da867d7265e31e73cee3a242db SHA512 02f937dae7d654f6286eb9fcf2d68d83f3ef56dbc4d59a961ea1bd95d17fac7a5ace3f27ebb03ff0592f6a87361e59934ffda098714fc8a049a487d4c0bbc0ef
DIST flask-3.0.3.tar.gz 676315 BLAKE2B 19013ff4588dc057febe2720eadcfcadb0e1854731c2c9e391449696549106da930c11f94782610424ea40c1377e9b8aa52ca39fedc6ad0c98c9a70a56d01514 SHA512 977c0e5fd2d496fae8e34a035f211118642dc6518a14dc5f6c175b72c6a76407aeb9ff0ed1f5db636370a9aa7e0d36baa783713ea7bdabd7f28c8c2b94643cd1
diff --git a/dev-python/flask/flask-3.0.2.ebuild b/dev-python/flask/flask-3.0.2.ebuild
deleted file mode 100644
index d7fe19035248..000000000000
--- a/dev-python/flask/flask-3.0.2.ebuild
+++ /dev/null
@@ -1,58 +0,0 @@
-# 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
-
-DESCRIPTION="A microframework based on Werkzeug, Jinja2 and good intentions"
-HOMEPAGE="
- https://palletsprojects.com/p/flask/
- https://github.com/pallets/flask/
- https://pypi.org/project/Flask/
-"
-if [[ ${PV} == *9999* ]]; then
- EGIT_REPO_URI="https://github.com/mitsuhiko/flask.git"
- inherit git-r3
-else
- inherit pypi
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-fi
-
-LICENSE="BSD"
-SLOT="0"
-IUSE="examples"
-
-RDEPEND="
- >=dev-python/blinker-1.6.2[${PYTHON_USEDEP}]
- >=dev-python/click-8.1.3[${PYTHON_USEDEP}]
- >=dev-python/itsdangerous-2.1.2[${PYTHON_USEDEP}]
- >=dev-python/jinja-3.1.2[${PYTHON_USEDEP}]
- >=dev-python/werkzeug-3.0.0[${PYTHON_USEDEP}]
-"
-BDEPEND="
- test? (
- >=dev-python/asgiref-3.2[${PYTHON_USEDEP}]
- !!dev-python/shiboken2[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_sphinx docs \
- dev-python/pallets-sphinx-themes \
- dev-python/sphinx-issues \
- dev-python/sphinx-tabs \
- dev-python/sphinxcontrib-log-cabinet
-distutils_enable_tests pytest
-
-python_test() {
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- epytest
-}
-
-python_install_all() {
- use examples && dodoc -r examples
- distutils-r1_python_install_all
-}
diff --git a/dev-python/flask/flask-3.0.3.ebuild b/dev-python/flask/flask-3.0.3.ebuild
index 6da9a46bfe3d..d7fe19035248 100644
--- a/dev-python/flask/flask-3.0.3.ebuild
+++ b/dev-python/flask/flask-3.0.3.ebuild
@@ -19,7 +19,7 @@ if [[ ${PV} == *9999* ]]; then
inherit git-r3
else
inherit pypi
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
fi
LICENSE="BSD"
diff --git a/dev-python/google-api-python-client/Manifest b/dev-python/google-api-python-client/Manifest
index 9181318c16e6..ed96607bc199 100644
--- a/dev-python/google-api-python-client/Manifest
+++ b/dev-python/google-api-python-client/Manifest
@@ -1,2 +1,3 @@
DIST google-api-python-client-2.125.0.tar.gz 12020305 BLAKE2B a5c5beef66a40adc8eb9b56476bbd2eb6a5b9b1b528ccbfa964d9a2c65bdff2f949c52de5384faae6c7233be6f3357040a8fe531e0d21f48f822276a8e8a7ec9 SHA512 b2f456edacf515f83755bfaeb35677c3d3f6bef90d4d9be986a9191c3e8a0d80664784cc125524dd77792a329ff58fc9b35b0bd387248450a8b4e67ccaaa2f85
DIST google-api-python-client-2.126.0.tar.gz 12163106 BLAKE2B b66240ea914b1f673bd96e161e2fdffa4567641471594b166258331c04d5f43cc1a0c6f888cafd904b0b84d3afe5befbf437c347409da6197b4f801c6a15b7a1 SHA512 e21d98106a97de4037d9eead2b2153010d75a07bc00585a8a4d0a584b3da1bd753421ef33fa635a62c850235eede880f34ed222c2b0ede13ba93e7e1558d7cf5
+DIST google-api-python-client-2.127.0.tar.gz 12203690 BLAKE2B 9252bf772c1d52ffc7b658f5c53d6537073f30df4a201573db84e53ded1b4e9693fa293a28d4f00d0d345695ac90639109993afe70908bf22538a2fa5b4bb7f5 SHA512 06887845f769005a10339114bb9d274c685bfcbc37e99ba9ac055e34cf587a4d8c0a2723159b8b2f6f6a25612bc4cc8ec01b248db4fafe3f1e1e7056e4081bdc
diff --git a/dev-python/google-api-python-client/google-api-python-client-2.127.0.ebuild b/dev-python/google-api-python-client/google-api-python-client-2.127.0.ebuild
new file mode 100644
index 000000000000..63817fa5c051
--- /dev/null
+++ b/dev-python/google-api-python-client/google-api-python-client-2.127.0.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Google API Client for Python"
+HOMEPAGE="
+ https://github.com/googleapis/google-api-python-client/
+ https://pypi.org/project/google-api-python-client/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+RDEPEND="
+ >=dev-python/httplib2-0.15[${PYTHON_USEDEP}]
+ <dev-python/httplib2-1[${PYTHON_USEDEP}]
+ >=dev-python/google-api-core-2.3.1[${PYTHON_USEDEP}]
+ >=dev-python/google-auth-1.35.0[${PYTHON_USEDEP}]
+ >=dev-python/google-auth-httplib2-0.1.0[${PYTHON_USEDEP}]
+ >=dev-python/uritemplate-3.0.0[${PYTHON_USEDEP}]
+ <dev-python/uritemplate-5[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/mock[${PYTHON_USEDEP}]
+ dev-python/pandas[${PYTHON_USEDEP}]
+ dev-python/parameterized[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # require Internet access (and credentials)
+ tests/test_discovery.py::DiscoveryErrors::test_credentials_and_credentials_file_mutually_exclusive
+ tests/test_discovery.py::DiscoveryFromDocument::test_api_endpoint_override_from_client_options_mapping_object
+ tests/test_discovery.py::Universe::test_client_options_universe_configured_with_mtls
+ tests/test_discovery.py::Universe::test_universe_env_var_configured_with_mtls
+ )
+
+ epytest tests
+}
diff --git a/dev-python/guidata/Manifest b/dev-python/guidata/Manifest
index 28a62c5afbdc..72e768fc9643 100644
--- a/dev-python/guidata/Manifest
+++ b/dev-python/guidata/Manifest
@@ -1,2 +1,2 @@
-DIST guidata-3.2.2.tar.gz 672062 BLAKE2B ff8c06e1f97cc454136a3cb8857739cc223536456bb06a4ac3b3b86e2eaf894fc60a3bdc2d70ea62fdc2b85bbc9f546f614b5ad0b2c9bace584054377f5fbfb2 SHA512 a9f31e5c43bf203f9a5919dd574553ec14dcd317e06204be50bcd4f2cc7ac71a431145d33a6d3dfe076620d6cc753349b5fdb5436d89dfda18c9f7572aeec00f
DIST guidata-3.3.0.tar.gz 690865 BLAKE2B 1b52295094844f839665e9dadbfff8d407b48d1746d72154d1181812a8b205660feac6ec86002cab31eef2c8fc5e72a35034145e51388e16e9bae89b2e801bd1 SHA512 7c962b8205cdcb13a628b6bfa256e7b62e1478933933d5ac9b8a1f7fbf6e4e17dbbbfe73bd520585b148ea858816e78f7dd3377ba70acc1be3a071981e5179ca
+DIST guidata-3.5.0.tar.gz 715835 BLAKE2B 11668c0ab1e5c7ec1a58b1cd705420c79b5e2c05174318556aabd48895421a2e77cadd8932e8affe4e52214881b3feb5d99a5f75ccc8adec31d44137ff70df24 SHA512 281460040396d1de07bad44a27c69b1fb69d41406d3b4029651332bf8d39d610e1d89f541062b8cd3b5d11afa9f39c5de83ae0e9729594a22c23abd73a79d83d
diff --git a/dev-python/guidata/guidata-3.3.0.ebuild b/dev-python/guidata/guidata-3.3.0.ebuild
index 2a5044103a49..2e3f2e22332e 100644
--- a/dev-python/guidata/guidata-3.3.0.ebuild
+++ b/dev-python/guidata/guidata-3.3.0.ebuild
@@ -12,9 +12,8 @@ DESCRIPTION="Library for user interfaces for easy dataset editing and display"
HOMEPAGE="https://pypi.python.org/pypi/guidata"
LICENSE="BSD"
-KEYWORDS="~amd64 ~x86"
-
SLOT="0"
+KEYWORDS="~amd64 ~x86"
IUSE="test"
RDEPEND="
diff --git a/dev-python/guidata/guidata-3.2.2.ebuild b/dev-python/guidata/guidata-3.5.0.ebuild
index 2a5044103a49..2e3f2e22332e 100644
--- a/dev-python/guidata/guidata-3.2.2.ebuild
+++ b/dev-python/guidata/guidata-3.5.0.ebuild
@@ -12,9 +12,8 @@ DESCRIPTION="Library for user interfaces for easy dataset editing and display"
HOMEPAGE="https://pypi.python.org/pypi/guidata"
LICENSE="BSD"
-KEYWORDS="~amd64 ~x86"
-
SLOT="0"
+KEYWORDS="~amd64 ~x86"
IUSE="test"
RDEPEND="
diff --git a/dev-python/hishel/Manifest b/dev-python/hishel/Manifest
index 273ee5c48ac2..e3dc6a0cc938 100644
--- a/dev-python/hishel/Manifest
+++ b/dev-python/hishel/Manifest
@@ -1 +1,2 @@
DIST hishel-0.0.25.gh.tar.gz 825114 BLAKE2B dd7d7bec47700a1ab07976ba31b951adacf7e917dd7ba09419cc6e3b81f1b6609a1f7f14a6c176b0c151ed255cf099f3da60122717b2be9161bd41b7ba080f36 SHA512 16aec1ea495075b4932e1e9d16b07af060b49bb74faed097343bde99c5d2b656b36762b2f2d67fd46c31b700206eec77ecdfb364a1c2cd19bb67c3055abc9e98
+DIST hishel-0.0.26.gh.tar.gz 828246 BLAKE2B e8273020c3b69edc0a080940d8462d33c4eb6b6bbb6f0325975ef29e15d0f16c57a31406f24ae56ad651722ccf6ff704afcedb917417355f67b7536d80dc0c3f SHA512 1d5d55e2ad2743ac15b258c1246a21975c4e8bf5786e331d55acc6e5cb82c0393b23b7c00a5ea9f6f8070e5e3cf6d5f6d9755315403748259d99e6ce20ccd27f
diff --git a/dev-python/hishel/hishel-0.0.26.ebuild b/dev-python/hishel/hishel-0.0.26.ebuild
new file mode 100644
index 000000000000..9632cde0242e
--- /dev/null
+++ b/dev-python/hishel/hishel-0.0.26.ebuild
@@ -0,0 +1,73 @@
+# Copyright 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} )
+inherit distutils-r1
+
+DESCRIPTION="An elegant HTTP Cache implementation for HTTPX and HTTP Core"
+HOMEPAGE="
+ https://github.com/karpetrosyan/hishel
+ https://pypi.org/project/hishel/
+"
+SRC_URI="https://github.com/karpetrosyan/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/httpx[${PYTHON_USEDEP}]
+ dev-python/typing-extensions[${PYTHON_USEDEP}]
+"
+
+BDEPEND="
+ ${RDEPEND}
+ dev-python/hatch-fancy-pypi-readme[${PYTHON_USEDEP}]
+ test? (
+ dev-db/redis
+ dev-python/anyio[${PYTHON_USEDEP}]
+ dev-python/boto3[${PYTHON_USEDEP}]
+ dev-python/moto[${PYTHON_USEDEP}]
+ dev-python/trio[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ sed -e 's:mock_s3:mock_aws:g' \
+ -e '/import anysqlite/ d' \
+ -i tests/_async/test_storages.py \
+ tests/_sync/test_storages.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+src_test() {
+ local EPYTEST_DESELECT=(
+ # tests that need anysqlite
+ tests/_async/test_storages.py::test_sqlitestorage
+ tests/_async/test_storages.py::test_sqlite_expired
+ tests/_async/test_storages.py::test_sqlite_ttl_after_hits
+ )
+
+ local redis_pid="${T}"/redis.pid
+ local redis_port=6379
+
+ einfo "Starting Redis"
+ "${EPREFIX}"/usr/sbin/redis-server - <<- EOF
+ daemonize yes
+ pidfile ${redis_pid}
+ port ${redis_port}
+ bind 127.0.0.1 ::1
+ EOF
+
+ # Run the tests
+ distutils-r1_src_test
+
+ # Clean up afterwards
+ kill "$(<"${redis_pid}")" || die
+}
diff --git a/dev-python/hypothesis/Manifest b/dev-python/hypothesis/Manifest
index 8f2f7fd907f7..eaeb033fe31f 100644
--- a/dev-python/hypothesis/Manifest
+++ b/dev-python/hypothesis/Manifest
@@ -1,2 +1 @@
DIST hypothesis-6.100.1.gh.tar.gz 9450717 BLAKE2B b27e3be6b43ee7d140ee00064748cd651683414b1b9f8d697c166ddec7596c11e2c47a814de91b567b4d08568e7bcaab42a88665f8b6882d2807afcfdb967257 SHA512 4b46c5dfb330c65c8fc4afce90ed28309fc377e39d65b1ba0bf086efb5fe53b2be021bcb5e6a90fa6bdad463de6254761faab14fe2ad7814e84dfff08ff1a9d9
-DIST hypothesis-6.99.13.gh.tar.gz 9450425 BLAKE2B cb8d559d95c60a931640c978ad3ed4c9898cc048254f105f9cb79cd8e36c8b28712d48304b17f5a837a1fd69b88102461a057d5d9ea3786a846d61362137d426 SHA512 0d74dcb6c5d8015c8c660b66298a3053fce1ad04191f81b216a05b08f24fdaaccc7470937459614b95810dad4e37c4712da67eeff414ca50af1d1e5fa81b4d64
diff --git a/dev-python/hypothesis/hypothesis-6.100.1.ebuild b/dev-python/hypothesis/hypothesis-6.100.1.ebuild
index 29919aa8ec05..ce3fd2a4dd30 100644
--- a/dev-python/hypothesis/hypothesis-6.100.1.ebuild
+++ b/dev-python/hypothesis/hypothesis-6.100.1.ebuild
@@ -25,7 +25,7 @@ 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"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="cli"
RDEPEND="
diff --git a/dev-python/hypothesis/hypothesis-6.99.13.ebuild b/dev-python/hypothesis/hypothesis-6.99.13.ebuild
deleted file mode 100644
index ce3fd2a4dd30..000000000000
--- a/dev-python/hypothesis/hypothesis-6.99.13.ebuild
+++ /dev/null
@@ -1,91 +0,0 @@
-# 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-8[${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/importlib-resources/Manifest b/dev-python/importlib-resources/Manifest
index 57bfbbb29151..bfded02b2a68 100644
--- a/dev-python/importlib-resources/Manifest
+++ b/dev-python/importlib-resources/Manifest
@@ -1 +1,2 @@
DIST importlib_resources-6.1.1.tar.gz 38620 BLAKE2B 351c8ca588fa757ab8300dbf673c0e9a6fc8b6638b4ae98151a5ace91e661add5bb8e9eb98fae33db4920cc9afce3358529d4613db0f9278e14d6278d38d9e9c SHA512 4d16891b81ef0257da3df8db930f3c823af5ed9f01907ee278bf7b8e78c887ab1d88dcfda4b70c648bbb4a92449727140e7b255d5d92458233ce55570d624d81
+DIST importlib_resources-6.4.0.tar.gz 42040 BLAKE2B 55b52a42051c6900af7b5b70783476a48398ae02539871a3f508df08fd5b4ec03bbe40980de8cd49a60cc022905a4ffdfd95b55d70e0cfb5d64497b02cc9b88f SHA512 c600e7ba96431f15a929e5acda89a262ceef33a3f44ae361fad4201dde8033dd8f0f2bcb856619fd5e21209a5d17cf9ae3610e65c3e6ecd0e36545437d0064b9
diff --git a/dev-python/importlib-resources/importlib-resources-6.4.0.ebuild b/dev-python/importlib-resources/importlib-resources-6.4.0.ebuild
new file mode 100644
index 000000000000..10f4088baa75
--- /dev/null
+++ b/dev-python/importlib-resources/importlib-resources-6.4.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 2023 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="Backport of the importlib.resources module"
+HOMEPAGE="
+ https://pypi.org/project/importlib-resources/
+ https://github.com/python/importlib_resources
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+BDEPEND="
+ test? (
+ dev-python/zipp[${PYTHON_USEDEP}]
+ dev-python/jaraco-test[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/jaraco-context/jaraco-context-5.3.0.ebuild b/dev-python/jaraco-context/jaraco-context-5.3.0.ebuild
index 2404b9c3f655..514efea0a813 100644
--- a/dev-python/jaraco-context/jaraco-context-5.3.0.ebuild
+++ b/dev-python/jaraco-context/jaraco-context-5.3.0.ebuild
@@ -19,7 +19,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~m68k ~ppc ~ppc64 ~riscv ~s390 ~x86"
+KEYWORDS="amd64 arm arm64 ~ia64 ~m68k ppc ppc64 ~riscv ~s390 x86"
RDEPEND="
$(python_gen_cond_dep '
diff --git a/dev-python/jaraco-vcs/Manifest b/dev-python/jaraco-vcs/Manifest
new file mode 100644
index 000000000000..b34c392f95e2
--- /dev/null
+++ b/dev-python/jaraco-vcs/Manifest
@@ -0,0 +1,2 @@
+DIST jaraco_vcs-2.1.0.tar.gz 16434 BLAKE2B 96ca37435b5fdd9bc5e7825ba21ff1aa70285885724bfa9bcbdc21531c15d9952336b888846d2e3200e619ee40da68741cc83205e81925f2a8d9b7a833f0fc8c SHA512 72d1a4ee5c29cdd8122a39c856ec9f910fb4d4ffc0d88f1e9c99723f5a076e1166aed842ba54286b8f14b41cb4c570cd7a9862a33fe7f15cdf637a114f4147ae
+DIST jaraco_vcs-2.2.0.tar.gz 16660 BLAKE2B 9d48f78839e0e13aa5a520a167144deadce0d607c0bb378370d930d0aa1d94fe5778206384f29a449499e73b3cafc716358417d41f3016115b347d686e557269 SHA512 a842db1dac4beca4273b4a3afaec804bfc89286ad6eba6f9f47cd2b4dab7e04d9d12136bf555108fdbfe133fe62c71935be990b79cb0801766cc565c21343339
diff --git a/dev-python/jaraco-vcs/jaraco-vcs-2.1.0.ebuild b/dev-python/jaraco-vcs/jaraco-vcs-2.1.0.ebuild
new file mode 100644
index 000000000000..ece82b0085e7
--- /dev/null
+++ b/dev-python/jaraco-vcs/jaraco-vcs-2.1.0.ebuild
@@ -0,0 +1,44 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_PN=${PN/-/.}
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Facilities for working with VCS repositories"
+HOMEPAGE="
+ https://github.com/jaraco/jaraco.vcs/
+ https://pypi.org/project/jaraco.vcs/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc"
+
+RDEPEND="
+ dev-python/jaraco-classes[${PYTHON_USEDEP}]
+ dev-python/jaraco-versioning[${PYTHON_USEDEP}]
+ dev-python/more-itertools[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ dev-python/python-dateutil[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/jaraco-path[${PYTHON_USEDEP}]
+ dev-vcs/git
+ !s390? ( !sparc? (
+ dev-vcs/mercurial
+ ) )
+ )
+"
+
+distutils_enable_tests pytest
+
+EPYTEST_DESELECT=(
+ # assumes running inside the git repo
+ jaraco/vcs/__init__.py::jaraco.vcs
+)
diff --git a/dev-python/jaraco-vcs/jaraco-vcs-2.2.0.ebuild b/dev-python/jaraco-vcs/jaraco-vcs-2.2.0.ebuild
new file mode 100644
index 000000000000..abd258207bf2
--- /dev/null
+++ b/dev-python/jaraco-vcs/jaraco-vcs-2.2.0.ebuild
@@ -0,0 +1,44 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_PN=${PN/-/.}
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Facilities for working with VCS repositories"
+HOMEPAGE="
+ https://github.com/jaraco/jaraco.vcs/
+ https://pypi.org/project/jaraco.vcs/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ dev-python/jaraco-classes[${PYTHON_USEDEP}]
+ dev-python/jaraco-versioning[${PYTHON_USEDEP}]
+ dev-python/more-itertools[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ dev-python/python-dateutil[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/jaraco-path[${PYTHON_USEDEP}]
+ dev-vcs/git
+ !s390? ( !sparc? (
+ dev-vcs/mercurial
+ ) )
+ )
+"
+
+distutils_enable_tests pytest
+
+EPYTEST_DESELECT=(
+ # assumes running inside the git repo
+ jaraco/vcs/__init__.py::jaraco.vcs
+)
diff --git a/dev-python/jaraco-vcs/metadata.xml b/dev-python/jaraco-vcs/metadata.xml
new file mode 100644
index 000000000000..a0d4c5913ba0
--- /dev/null
+++ b/dev-python/jaraco-vcs/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>python@gentoo.org</email>
+ </maintainer>
+
+ <origin>gentoo-staging</origin>
+ <stabilize-allarches/>
+</pkgmetadata> \ No newline at end of file
diff --git a/dev-python/jaraco-versioning/Manifest b/dev-python/jaraco-versioning/Manifest
new file mode 100644
index 000000000000..d44373184e38
--- /dev/null
+++ b/dev-python/jaraco-versioning/Manifest
@@ -0,0 +1 @@
+DIST jaraco.versioning-1.1.0.tar.gz 9193 BLAKE2B 53839065296a9ae0ecf48553ee4beeffa5771257c58ae2799c15d58a9d0e0accb5b361ca0ac67bc6d69ae3c15aaece96aa479159a3df7ecd545eb75e21240d8b SHA512 aa2e93bb13fa4ca9f2df07f65bc801b3f03566df06be1b388fd1651c3610c59f691170db8de27146c602ef5df2306809efe3a84dc23c1a9e9d6806ad4ce27906
diff --git a/dev-python/jaraco-versioning/jaraco-versioning-1.1.0.ebuild b/dev-python/jaraco-versioning/jaraco-versioning-1.1.0.ebuild
new file mode 100644
index 000000000000..235bced8b265
--- /dev/null
+++ b/dev-python/jaraco-versioning/jaraco-versioning-1.1.0.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+PYPI_PN=${PN/-/.}
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="More sophisticated version manipulation (than packaging)"
+HOMEPAGE="
+ https://github.com/jaraco/jaraco.versioning/
+ https://pypi.org/project/jaraco.versioning/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc ~x86"
+
+RDEPEND="
+ dev-python/packaging[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/jaraco-versioning/metadata.xml b/dev-python/jaraco-versioning/metadata.xml
new file mode 100644
index 000000000000..a0d4c5913ba0
--- /dev/null
+++ b/dev-python/jaraco-versioning/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>python@gentoo.org</email>
+ </maintainer>
+
+ <origin>gentoo-staging</origin>
+ <stabilize-allarches/>
+</pkgmetadata> \ No newline at end of file
diff --git a/dev-python/joblib/joblib-1.4.0.ebuild b/dev-python/joblib/joblib-1.4.0.ebuild
index 8915388c5db5..ca599dd5c44b 100644
--- a/dev-python/joblib/joblib-1.4.0.ebuild
+++ b/dev-python/joblib/joblib-1.4.0.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86 ~arm64-macos ~x64-macos"
+KEYWORDS="amd64 ~arm arm64 ~ppc ppc64 ~riscv x86 ~arm64-macos ~x64-macos"
RDEPEND="
dev-python/cloudpickle[${PYTHON_USEDEP}]
diff --git a/dev-python/jupyter-lsp/Manifest b/dev-python/jupyter-lsp/Manifest
index 36b7e12b5083..b4c5d786072f 100644
--- a/dev-python/jupyter-lsp/Manifest
+++ b/dev-python/jupyter-lsp/Manifest
@@ -1,2 +1 @@
-DIST jupyter-lsp-2.2.4.tar.gz 48663 BLAKE2B 7157d52657b614af1909e681903aa5fabd5b8d4f246f8e87b281615dc9c754c23da928a806980e1f7c8230786870263cb4d9fab32e365dfe660a2e578e40552b SHA512 01d2b18ec3f9575c1d2ab1ea64f94d093fa593374ab8a1343024b78c1baf935a9fd51a4f9a65a1094b6fc59384ca244714e73066d8db13fa00de5c1f625462c6
DIST jupyter-lsp-2.2.5.tar.gz 48741 BLAKE2B c5ab6d735cab3585b5093bb3a60ae360c33414fe32ddd85bd926d71f92bb4997e846d3ac75ac8d502aacd1a296d7fd447d71cdc7d3c76f2856b2e5f5fd60f7dd SHA512 16c3b40a1557d0417553f0a9371dfa49e1b510a8fef77f4420adc2a521eeb57bb3d28d9c905388211174f47ae4dedf0c9213756288712dbe7430178d832f698b
diff --git a/dev-python/jupyter-lsp/jupyter-lsp-2.2.4.ebuild b/dev-python/jupyter-lsp/jupyter-lsp-2.2.4.ebuild
deleted file mode 100644
index 0a1bf7ee8a13..000000000000
--- a/dev-python/jupyter-lsp/jupyter-lsp-2.2.4.ebuild
+++ /dev/null
@@ -1,85 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYPI_NO_NORMALIZE=1
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
-
-inherit distutils-r1 optfeature pypi
-
-DESCRIPTION="Multi-Language Server WebSocket proxy for Jupyter Notebook/Lab"
-HOMEPAGE="
- https://github.com/jupyter-lsp/jupyterlab-lsp
- https://pypi.org/project/jupyter-lsp/
-"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 arm arm64 ~loong ppc64 ~riscv x86"
-
-RDEPEND="
- dev-python/entrypoints[${PYTHON_USEDEP}]
- >=dev-python/jupyter-server-1.1.2[${PYTHON_USEDEP}]
-"
-
-distutils_enable_tests pytest
-
-python_prepare_all() {
- # Do not depend on pytest-cov or flake8
- sed -i -e '/--cov/d' -e '/--flake8/d' setup.cfg || die
-
- distutils-r1_python_prepare_all
-}
-
-python_test() {
- local EPYTEST_DESELECT=(
- # hangs
- jupyter_lsp/tests/test_auth.py
- # Not packaged
- jupyter_lsp/tests/test_detect.py::test_r_package_detection
- "jupyter_lsp/tests/test_listener.py::test_listeners[bash-language-server]"
- "jupyter_lsp/tests/test_listener.py::test_listeners[dockerfile-language-server-nodejs]"
- "jupyter_lsp/tests/test_listener.py::test_listeners[pylsp]"
- "jupyter_lsp/tests/test_listener.py::test_listeners[r-languageserver]"
- "jupyter_lsp/tests/test_listener.py::test_listeners[sql-language-server]"
- "jupyter_lsp/tests/test_listener.py::test_listeners[typescript-language-server]"
- "jupyter_lsp/tests/test_listener.py::test_listeners[unified-language-server]"
- "jupyter_lsp/tests/test_listener.py::test_listeners[vscode-css-languageserver-bin]"
- "jupyter_lsp/tests/test_listener.py::test_listeners[vscode-html-languageserver-bin]"
- "jupyter_lsp/tests/test_listener.py::test_listeners[vscode-json-languageserver-bin]"
- "jupyter_lsp/tests/test_listener.py::test_listeners[yaml-language-server]"
- "jupyter_lsp/tests/test_session.py::test_start_known[bash-language-server]"
- "jupyter_lsp/tests/test_session.py::test_start_known[dockerfile-language-server-nodejs]"
- "jupyter_lsp/tests/test_session.py::test_start_known[pylsp]"
- "jupyter_lsp/tests/test_session.py::test_start_known[r-languageserver]"
- "jupyter_lsp/tests/test_session.py::test_start_known[sql-language-server]"
- "jupyter_lsp/tests/test_session.py::test_start_known[typescript-language-server]"
- "jupyter_lsp/tests/test_session.py::test_start_known[unified-language-server]"
- "jupyter_lsp/tests/test_session.py::test_start_known[vscode-css-languageserver-bin]"
- "jupyter_lsp/tests/test_session.py::test_start_known[vscode-html-languageserver-bin]"
- "jupyter_lsp/tests/test_session.py::test_start_known[vscode-json-languageserver-bin]"
- "jupyter_lsp/tests/test_session.py::test_start_known[yaml-language-server]"
- )
-
- case ${EPYTHON} in
- python3.12)
- EPYTEST_DESELECT+=(
- jupyter_lsp/tests/test_session.py::test_start_unknown
- )
- ;;
- esac
-
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- epytest
-}
-
-python_install_all() {
- distutils-r1_python_install_all
- mv "${ED}/usr/etc" "${ED}/etc" || die
-}
-
-pkg_postinst() {
- optfeature "Language server for Python" dev-python/python-lsp-server
-}
diff --git a/dev-python/jupyter-lsp/jupyter-lsp-2.2.5.ebuild b/dev-python/jupyter-lsp/jupyter-lsp-2.2.5.ebuild
index 8dd7b8c36712..37df07c71f25 100644
--- a/dev-python/jupyter-lsp/jupyter-lsp-2.2.5.ebuild
+++ b/dev-python/jupyter-lsp/jupyter-lsp-2.2.5.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
+KEYWORDS="amd64 arm arm64 ~loong ppc64 ~riscv x86"
RDEPEND="
dev-python/entrypoints[${PYTHON_USEDEP}]
diff --git a/dev-python/jupyterlab-server/Manifest b/dev-python/jupyterlab-server/Manifest
index f446fd956d42..9ed4bf2c2931 100644
--- a/dev-python/jupyterlab-server/Manifest
+++ b/dev-python/jupyterlab-server/Manifest
@@ -1,4 +1,2 @@
-DIST jupyterlab_server-2.25.4.tar.gz 74772 BLAKE2B 8647840e2bb93244360db07524374f30e6831fddf6c2b89101b2a01f505470649fcc6aa31b40dc18a480628eeb791b4f7488cd91bb921796c3daad36102e535b SHA512 de04d1c5de3507a2465c316686be10ff6398be2f05d9d84ff6e79c376978503bc6ff836bfca67735d85f8ef23a15d6f30ad69268a25855dc4ebc1bd5f7c2fdaf
DIST jupyterlab_server-2.26.0.tar.gz 75100 BLAKE2B 10f507cf8b6640ee4178d2850561a5d186f9b9004b2d74de7382b4c9a03494d3553e7a2397cafb45b3be60062baf0d3df3026b1f8613e5dd2a597faad0cfc9d5 SHA512 cb9c78ae8afed53637b441767c630666d391a7ce6a19cc5cf8bcc9c3149ef570c5aeaba204878bd4d52806a6e2b9e25f9724536f1addf084bfb15855f7700125
-DIST jupyterlab_server-2.27.0.tar.gz 75375 BLAKE2B c4b8c26d93a2af79ab4d82492172a8cdfb2049d7885c6cefda96f472d9edafc749c8d06ae194b5e4b66052a8514d0cbdbba1bcbc4b03fdf9e4cec65ab27cca8e SHA512 7336434b3b9378d345f7d657f8f21c3217d4605fae93a74382bb4a71135fabb3dfc7229e388737297568f13281ba9e8f710b010a6fa9b6bc0bbc5db2dd3f3293
DIST jupyterlab_server-2.27.1.tar.gz 75524 BLAKE2B d25457954984d66ddcb52330d9a224d8e7bf85fdda7d20957a5949c95ea8d1dad0529a5135fc636911d9eef9f8663c0ef9bca71ec88f9de12cc4924b6f5ce3a5 SHA512 0ddaa2f765131357d1e75509db41a15ded720257fe956acb142e3cfb46c4cff280388b0507dead333d3c6f4cc5e6320e24be1e847c14eaf3e2f5eef0505e12c3
diff --git a/dev-python/jupyterlab-server/jupyterlab-server-2.25.4.ebuild b/dev-python/jupyterlab-server/jupyterlab-server-2.25.4.ebuild
deleted file mode 100644
index 8b4b8477ba57..000000000000
--- a/dev-python/jupyterlab-server/jupyterlab-server-2.25.4.ebuild
+++ /dev/null
@@ -1,66 +0,0 @@
-# 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="Server components for JupyterLab and JupyterLab like applications"
-HOMEPAGE="
- https://jupyter.org/
- https://github.com/jupyterlab/jupyterlab_server/
- https://pypi.org/project/jupyterlab-server/
-"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 arm arm64 ~loong ppc64 ~riscv x86"
-
-RDEPEND="
- >=dev-python/Babel-2.10[${PYTHON_USEDEP}]
- >=dev-python/jinja-3.0.3[${PYTHON_USEDEP}]
- >=dev-python/json5-0.9.0[${PYTHON_USEDEP}]
- >=dev-python/jsonschema-4.18.0[${PYTHON_USEDEP}]
- >=dev-python/packaging-21.3[${PYTHON_USEDEP}]
- >=dev-python/requests-2.31[${PYTHON_USEDEP}]
- >=dev-python/jupyter-server-1.21[${PYTHON_USEDEP}]
- <dev-python/jupyter-server-3[${PYTHON_USEDEP}]
-"
-
-BDEPEND="
- test? (
- dev-python/ipykernel[${PYTHON_USEDEP}]
- dev-python/jupyter-server[${PYTHON_USEDEP}]
- <dev-python/openapi-core-0.19[${PYTHON_USEDEP}]
- >=dev-python/openapi-core-0.18[${PYTHON_USEDEP}]
- <dev-python/openapi-spec-validator-0.8[${PYTHON_USEDEP}]
- >=dev-python/openapi-spec-validator-0.6[${PYTHON_USEDEP}]
- dev-python/pytest-jupyter[${PYTHON_USEDEP}]
- dev-python/pytest-tornasync[${PYTHON_USEDEP}]
- dev-python/pytest-timeout[${PYTHON_USEDEP}]
- dev-python/requests-mock[${PYTHON_USEDEP}]
- dev-python/ruamel-yaml[${PYTHON_USEDEP}]
- dev-python/strict-rfc3339[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-# TODO: package autodoc_traits
-#distutils_enable_sphinx docs/source dev-python/pydata-sphinx-theme dev-python/myst-parser
-
-python_test() {
- local EPYTEST_IGNORE=(
- tests/test_translation_api.py
- )
-
- EPYTEST_DESELECT=(
- # Fails if terminal not available
- tests/test_labapp.py::test_page_config
- )
-
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- epytest -p pytest_tornasync.plugin -p timeout
-}
diff --git a/dev-python/jupyterlab-server/jupyterlab-server-2.26.0.ebuild b/dev-python/jupyterlab-server/jupyterlab-server-2.26.0.ebuild
index 579c6102b263..8b4b8477ba57 100644
--- a/dev-python/jupyterlab-server/jupyterlab-server-2.26.0.ebuild
+++ b/dev-python/jupyterlab-server/jupyterlab-server-2.26.0.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
+KEYWORDS="amd64 arm arm64 ~loong ppc64 ~riscv x86"
RDEPEND="
>=dev-python/Babel-2.10[${PYTHON_USEDEP}]
diff --git a/dev-python/jupyterlab-server/jupyterlab-server-2.27.0.ebuild b/dev-python/jupyterlab-server/jupyterlab-server-2.27.0.ebuild
deleted file mode 100644
index 579c6102b263..000000000000
--- a/dev-python/jupyterlab-server/jupyterlab-server-2.27.0.ebuild
+++ /dev/null
@@ -1,66 +0,0 @@
-# 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="Server components for JupyterLab and JupyterLab like applications"
-HOMEPAGE="
- https://jupyter.org/
- https://github.com/jupyterlab/jupyterlab_server/
- https://pypi.org/project/jupyterlab-server/
-"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
-
-RDEPEND="
- >=dev-python/Babel-2.10[${PYTHON_USEDEP}]
- >=dev-python/jinja-3.0.3[${PYTHON_USEDEP}]
- >=dev-python/json5-0.9.0[${PYTHON_USEDEP}]
- >=dev-python/jsonschema-4.18.0[${PYTHON_USEDEP}]
- >=dev-python/packaging-21.3[${PYTHON_USEDEP}]
- >=dev-python/requests-2.31[${PYTHON_USEDEP}]
- >=dev-python/jupyter-server-1.21[${PYTHON_USEDEP}]
- <dev-python/jupyter-server-3[${PYTHON_USEDEP}]
-"
-
-BDEPEND="
- test? (
- dev-python/ipykernel[${PYTHON_USEDEP}]
- dev-python/jupyter-server[${PYTHON_USEDEP}]
- <dev-python/openapi-core-0.19[${PYTHON_USEDEP}]
- >=dev-python/openapi-core-0.18[${PYTHON_USEDEP}]
- <dev-python/openapi-spec-validator-0.8[${PYTHON_USEDEP}]
- >=dev-python/openapi-spec-validator-0.6[${PYTHON_USEDEP}]
- dev-python/pytest-jupyter[${PYTHON_USEDEP}]
- dev-python/pytest-tornasync[${PYTHON_USEDEP}]
- dev-python/pytest-timeout[${PYTHON_USEDEP}]
- dev-python/requests-mock[${PYTHON_USEDEP}]
- dev-python/ruamel-yaml[${PYTHON_USEDEP}]
- dev-python/strict-rfc3339[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-# TODO: package autodoc_traits
-#distutils_enable_sphinx docs/source dev-python/pydata-sphinx-theme dev-python/myst-parser
-
-python_test() {
- local EPYTEST_IGNORE=(
- tests/test_translation_api.py
- )
-
- EPYTEST_DESELECT=(
- # Fails if terminal not available
- tests/test_labapp.py::test_page_config
- )
-
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- epytest -p pytest_tornasync.plugin -p timeout
-}
diff --git a/dev-python/jupyterlab/Manifest b/dev-python/jupyterlab/Manifest
index d9b5563f4be6..d01d17ae45a6 100644
--- a/dev-python/jupyterlab/Manifest
+++ b/dev-python/jupyterlab/Manifest
@@ -1,2 +1 @@
-DIST jupyterlab-4.1.5.tar.gz 21797132 BLAKE2B f3bb8d2292cfa60392b7e97b7852479767e831c4131e1980deaedbf03332d2fec2f01f3e7a6c0f830528e1d99a77f6092a83eb5303d955165946199aed885ffd SHA512 ddd43d5cf7f3ffe18e3baa846270a61a1c5d588901dcc70a32d30ade29273e9c6975640aa89bc9daf58b7fdfc1eeff2f10a9b3f5d174141cbb13a2622579c15e
DIST jupyterlab-4.1.6.tar.gz 21773628 BLAKE2B b2855ecc4fa0cc892fab9bb79c19a3cec0ea577c9c490571ad4028e9fe35bca87fc61d0035cc889bee14313475825344e1cea69f34af4a908c5d2a304250d983 SHA512 b895aac68c6df3affb47eaebc243ecf7d778228a5adec8b8a047783e341008ab4beb0fe50b92138f765e7a72acfbe906f63f41aebe1a72544fe3030105d52716
diff --git a/dev-python/jupyterlab/jupyterlab-4.1.5.ebuild b/dev-python/jupyterlab/jupyterlab-4.1.5.ebuild
deleted file mode 100644
index 34de2dc495e0..000000000000
--- a/dev-python/jupyterlab/jupyterlab-4.1.5.ebuild
+++ /dev/null
@@ -1,78 +0,0 @@
-# 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/jupyterlab/jupyterlab-4.1.6.ebuild b/dev-python/jupyterlab/jupyterlab-4.1.6.ebuild
index 5a2a2e825582..270a555e73d9 100644
--- a/dev-python/jupyterlab/jupyterlab-4.1.6.ebuild
+++ b/dev-python/jupyterlab/jupyterlab-4.1.6.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="BSD MIT GPL-3 Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
+KEYWORDS="amd64 arm arm64 ~loong ppc64 ~riscv x86"
RDEPEND="
dev-python/async-lru[${PYTHON_USEDEP}]
diff --git a/dev-python/mkdocs-get-deps/mkdocs-get-deps-0.2.0.ebuild b/dev-python/mkdocs-get-deps/mkdocs-get-deps-0.2.0.ebuild
index 7e06d268621e..556bc9d838a7 100644
--- a/dev-python/mkdocs-get-deps/mkdocs-get-deps-0.2.0.ebuild
+++ b/dev-python/mkdocs-get-deps/mkdocs-get-deps-0.2.0.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
RDEPEND="
>=dev-python/mergedeep-1.3.4[${PYTHON_USEDEP}]
diff --git a/dev-python/mkdocs-macros-plugin/Manifest b/dev-python/mkdocs-macros-plugin/Manifest
index 0f839fab9172..0550312c50b0 100644
--- a/dev-python/mkdocs-macros-plugin/Manifest
+++ b/dev-python/mkdocs-macros-plugin/Manifest
@@ -1 +1,2 @@
DIST mkdocs-macros-plugin-1.0.4.tar.gz 556036 BLAKE2B f0cd0eabbd208c2c84d28e2ef4eac8e23fa8c13918b02a69d8e69f5e7c635d9551dc986b19edf9d5ee5da43c80d49b62f4f277e995584ebef749d9d2bed1881d SHA512 553ca51462f0f0e26284046ea49d36afec973cf0345c1c6c5d9a094f32bf731972f7ae3ba148bb85a77e440982de3f24a4da8ea4e30c4f025153c1ce46164f32
+DIST mkdocs-macros-plugin-1.0.5.tar.gz 566013 BLAKE2B f984cced060f09060bd63c7c204799dd9b318fa98229b2a86b034165190a76ccac7c8d37bf084c56ba0673105a818c0a0d210121d01e6b677349488aa0730160 SHA512 38fa2f2522f08b418ef8dc8fd222ba6b0feb2cb81bcaed98017e9641b66f249e77d93334850a6e6e8dcb91f2d3cfc16e3348b5a1f0103bb93512465a8b095f35
diff --git a/dev-python/mkdocs-macros-plugin/mkdocs-macros-plugin-1.0.5.ebuild b/dev-python/mkdocs-macros-plugin/mkdocs-macros-plugin-1.0.5.ebuild
new file mode 100644
index 000000000000..eaea4b7f2998
--- /dev/null
+++ b/dev-python/mkdocs-macros-plugin/mkdocs-macros-plugin-1.0.5.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
+PYPI_NO_NORMALIZE=1
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Mkdocs plug-in allowing the use of macros and variables in Markdown"
+HOMEPAGE="
+ https://mkdocs-macros-plugin.readthedocs.io/
+ https://pypi.org/project/mkdocs-macros-plugin/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~riscv"
+
+# TODO: enable these once the relevant deps have been packaged
+RESTRICT="test"
+
+RDEPEND="
+ >=dev-python/mkdocs-0.17[${PYTHON_USEDEP}]
+ dev-python/jinja[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ dev-python/python-dateutil[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-python/termcolor[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/mkdocs/mkdocs-1.6.0.ebuild b/dev-python/mkdocs/mkdocs-1.6.0.ebuild
index d761ef0e647d..b5e81dc5d5a8 100644
--- a/dev-python/mkdocs/mkdocs-1.6.0.ebuild
+++ b/dev-python/mkdocs/mkdocs-1.6.0.ebuild
@@ -21,7 +21,7 @@ SRC_URI="
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
# https://bugs.gentoo.org/873349
# Building documentation requires packaging: callouts and mkdocs-autorefs
diff --git a/dev-python/moto/moto-5.0.5.ebuild b/dev-python/moto/moto-5.0.5.ebuild
index 04745f4837ca..fcf8dc0f75f4 100644
--- a/dev-python/moto/moto-5.0.5.ebuild
+++ b/dev-python/moto/moto-5.0.5.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+KEYWORDS="amd64 ~arm arm64 ~riscv ~x86"
RDEPEND="
>=dev-python/aws-xray-sdk-0.93[${PYTHON_USEDEP}]
diff --git a/dev-python/myst-parser/Manifest b/dev-python/myst-parser/Manifest
index 850540c12b8c..f6840b6b8bd3 100644
--- a/dev-python/myst-parser/Manifest
+++ b/dev-python/myst-parser/Manifest
@@ -1,2 +1,3 @@
DIST MyST-Parser-2.0.0.gh.tar.gz 815453 BLAKE2B 8f5dd823c3c79d843b45a7a4819d5677b51a12f78db2c1ce9700eb6faa8c4f0bc167fb1d8cd947e89ffab85aec947ab527b67dc73ef4db97a393f700a4331738 SHA512 c47bdd773565e93c4714d318a70f9a8adab1be6e2a63c23175667fc4afb5da4d66b84e11176782c8202e9fd68883e74d444911ddfb0b91356c2ba07fa65f7ea4
+DIST MyST-Parser-3.0.0.gh.tar.gz 823619 BLAKE2B 95d8f1c5a2ab442225079495fa4ebf3619d554bd3e6f469f6215a2458bad4fde3ca555dca591ac20537026765a8fda8a4fa9d85ca592251d9b699bba90782c59 SHA512 a91abfcb99b9b53cee6877d469c32a95c69c2fcbc9cfe6217451c0995e49dec89fe98cd5a1a5e408845985a10fbc21d4e3d8063f1d7a3d96781cb44352b3e806
DIST myst-parser-2.0.0-sphinx-7.2.patch 22443 BLAKE2B 994f0b2c419832e61cb006b1b45c01274970900bdcfcef3422d5331e88962a46884afbf5b27b5cb98ed349a426444ca4ff21810526cc34eae4cf074102f7b3de SHA512 707b2a69c81352d2900c91088ca137f6455e0006b0e7c798b6f03b9f0cac85489c27db662f5e6ab6e2cd52e10f1594aa54d5c6821c07c110ad138d0cf129ac65
diff --git a/dev-python/myst-parser/myst-parser-3.0.0.ebuild b/dev-python/myst-parser/myst-parser-3.0.0.ebuild
new file mode 100644
index 000000000000..116346743dd9
--- /dev/null
+++ b/dev-python/myst-parser/myst-parser-3.0.0.ebuild
@@ -0,0 +1,58 @@
+# Copyright 2022-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
+
+MY_P=MyST-Parser-${PV}
+DESCRIPTION="Extended commonmark compliant parser, with bridges to Sphinx"
+HOMEPAGE="
+ https://github.com/executablebooks/MyST-Parser/
+ https://pypi.org/project/myst-parser/
+"
+SRC_URI="
+ https://github.com/executablebooks/MyST-Parser/archive/v${PV}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/docutils-0.18[${PYTHON_USEDEP}]
+ dev-python/jinja[${PYTHON_USEDEP}]
+ <dev-python/markdown-it-py-4[${PYTHON_USEDEP}]
+ >=dev-python/markdown-it-py-3.0[${PYTHON_USEDEP}]
+ <dev-python/mdit-py-plugins-0.5[${PYTHON_USEDEP}]
+ >=dev-python/mdit-py-plugins-0.4[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ <dev-python/sphinx-8[${PYTHON_USEDEP}]
+ >=dev-python/sphinx-6[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/beautifulsoup4[${PYTHON_USEDEP}]
+ dev-python/defusedxml[${PYTHON_USEDEP}]
+ <dev-python/linkify-it-py-3[${PYTHON_USEDEP}]
+ >=dev-python/linkify-it-py-2.0.0[${PYTHON_USEDEP}]
+ dev-python/pytest-regressions[${PYTHON_USEDEP}]
+ dev-python/pytest-param-files[${PYTHON_USEDEP}]
+ >=dev-python/sphinx-7.3[${PYTHON_USEDEP}]
+ dev-python/sphinx-pytest[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ default
+
+ # unpin docutils
+ sed -i -e '/docutils/s:,<[0-9.]*::' pyproject.toml || die
+}
diff --git a/dev-python/path/Manifest b/dev-python/path/Manifest
index dac72eeb6a93..222189638047 100644
--- a/dev-python/path/Manifest
+++ b/dev-python/path/Manifest
@@ -1,2 +1 @@
-DIST path-16.12.1.tar.gz 49685 BLAKE2B 2e2fca5db8ed82764686f4cb9a3de0ce18ce92e6e70999ffd93f13638a061cb2b3624d96f91740cba3efc9fcb8d80c37b55ab9595138e90764093901ab05c111 SHA512 144710438a0ed6f433094f9c27c0f9a3de02e6ee3fad337092a3b8d3c969746f330d4380924ba2ef17f99dc2757cde47115e392f6ee393bcd9f650e0f214d145
DIST path-16.14.0.tar.gz 50076 BLAKE2B 0046501fc05e65a211360e84cd30e312c6b1a18d482a36b8451d338cd8c87749254fc31dbe497ec55d55880dab0eae3b88ce412b2058454c0c1ad01cb180d522 SHA512 1b35bf06413d3f5da5fd818b2327458ef92a3bcb7e0d8108e4db113e3819f3723384650f7f9e889862bfcd2bc761f2be46932d11023f5a1dcda6bb4c51074ec0
diff --git a/dev-python/path/path-16.12.1.ebuild b/dev-python/path/path-16.12.1.ebuild
deleted file mode 100644
index e24397da3dbc..000000000000
--- a/dev-python/path/path-16.12.1.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# 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 module wrapper for os.path"
-HOMEPAGE="
- https://github.com/jaraco/path/
- https://pypi.org/project/path/
-"
-
-SLOT="0"
-LICENSE="MIT"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~x64-macos"
-
-RDEPEND="
- dev-python/appdirs[${PYTHON_USEDEP}]
-"
-BDEPEND="
- dev-python/setuptools-scm[${PYTHON_USEDEP}]
- test? (
- dev-python/more-itertools[${PYTHON_USEDEP}]
- dev-python/packaging[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-
-EPYTEST_DESELECT=(
- # unreliable, not really meaningful for end users
- test_path.py::TestPerformance
-)
diff --git a/dev-python/path/path-16.14.0.ebuild b/dev-python/path/path-16.14.0.ebuild
index 9b6afa587549..5b8d509af8fc 100644
--- a/dev-python/path/path-16.14.0.ebuild
+++ b/dev-python/path/path-16.14.0.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~x64-macos"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~x64-macos"
RDEPEND="
dev-python/appdirs[${PYTHON_USEDEP}]
diff --git a/dev-python/platformdirs/Manifest b/dev-python/platformdirs/Manifest
index 82e1e3a93142..003455160061 100644
--- a/dev-python/platformdirs/Manifest
+++ b/dev-python/platformdirs/Manifest
@@ -1 +1,2 @@
DIST platformdirs-4.2.0.tar.gz 20055 BLAKE2B 07338fc1ad6f5edf3dfe9de9e74326af4c22a4b6db0979a2b0926d248e7bc27f6f40e9e47e62979657c0804e3d296dfba5b18f57fa64b1fdcd205d52ae21fe17 SHA512 615742163cc4eb0ee97c4dba069d59a08e0056e05a3fbeab32dcab854ed56976e8707dd70afd65dbd0732bf1ad1a42c565fb3d980b7b668aa2cdecc5cc1de4f0
+DIST platformdirs-4.2.1.tar.gz 20398 BLAKE2B 6ae25a07afb0878a3c5347f4cc48e81117a5be42affe6b7873e1e62d9b4e8e63f380eb2a4062a472823c1d3e1eaaf499463ec93ca7e3c7c115c51a1c8fb10284 SHA512 c6c671022a74ba35610469f08e9a275daa19f0362a98208096fab147a77abfc96c12a0312fdf65668b3e457e0c06d938f141efec1217ef1a7598a77f65786130
diff --git a/dev-python/platformdirs/platformdirs-4.2.1.ebuild b/dev-python/platformdirs/platformdirs-4.2.1.ebuild
new file mode 100644
index 000000000000..307e44260a7a
--- /dev/null
+++ b/dev-python/platformdirs/platformdirs-4.2.1.ebuild
@@ -0,0 +1,49 @@
+# Copyright 2021-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="A small Python module for determining appropriate platform-specific dirs"
+HOMEPAGE="
+ https://pypi.org/project/platformdirs/
+ https://github.com/platformdirs/platformdirs/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris"
+
+BDEPEND="
+ test? (
+ dev-python/appdirs[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_configure() {
+ grep -q 'build-backend = "hatchling' 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 = "${PN}"
+ version = "${PV}"
+ description = 'A small Python package for determining appropriate platform-specific dirs, e.g. a "user data dir".'
+ EOF
+ # sigh
+ cat > src/platformdirs/version.py <<-EOF || die
+ __version__ = version = '${PV}'
+ __version_tuple__ = version_tuple = (${PV//./, })
+ EOF
+}
diff --git a/dev-python/pulsectl-asyncio/Manifest b/dev-python/pulsectl-asyncio/Manifest
index 302df417b234..fb2b24db043b 100644
--- a/dev-python/pulsectl-asyncio/Manifest
+++ b/dev-python/pulsectl-asyncio/Manifest
@@ -1,2 +1 @@
-DIST pulsectl-asyncio-1.1.1.gh.tar.gz 19425 BLAKE2B c950dc0e003c6795fba0b122ed9b5e3c0bb61adb1a26901f467e508ff3def64bc7c0a25e4250decbbd55aedd66ef5b030ced004e797a94ee0a5988043cd7dedb SHA512 b495295ee13d54e136cd70daaf3675239aa96faa284bd2ad0d21496821ee818f67ebbe83269a4201ea0bee99b5b2b78be3945909e1b2519078bc38c2529734bf
DIST pulsectl-asyncio-1.2.0.gh.tar.gz 19517 BLAKE2B 919909acfabfefa1dbea99cef6285483652649c111df6f3f6719d92e35ea548b54e6c0a60e4277b69610ee9a58c2c29c3355b7f2fe2780d773aa2c89513ce9a1 SHA512 b560c38b6d18a4c73551ae4ba34243f0043dc18426141c128c6ca3e8bd30f4d94d8718c3003ae506be038bc645ee569b77e6289b97ac913daa1e42e6b9aef03b
diff --git a/dev-python/pulsectl-asyncio/pulsectl-asyncio-1.1.1.ebuild b/dev-python/pulsectl-asyncio/pulsectl-asyncio-1.1.1.ebuild
deleted file mode 100644
index 59ffcb5c2889..000000000000
--- a/dev-python/pulsectl-asyncio/pulsectl-asyncio-1.1.1.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 2023 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="Asyncio frontend for pulsectl, Python bindings of libpulse"
-HOMEPAGE="
- https://github.com/mhthies/pulsectl-asyncio/
- https://pypi.org/project/pulsectl-asyncio/
-"
-# sdist is missing examples that are used in tests
-SRC_URI="
- https://github.com/mhthies/pulsectl-asyncio/archive/v${PV}.tar.gz
- -> ${P}.gh.tar.gz
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~riscv ~x86"
-
-RDEPEND="
- >=dev-python/pulsectl-23.5.0[${PYTHON_USEDEP}]
-"
-BDEPEND="
- test? (
- media-sound/pulseaudio-daemon
- )
-"
-
-distutils_enable_tests pytest
-
-src_prepare() {
- # unpin deps
- sed -i -e 's:,<=[0-9.]*::' setup.cfg || die
- distutils-r1_src_prepare
-}
diff --git a/dev-python/pulsectl-asyncio/pulsectl-asyncio-1.2.0.ebuild b/dev-python/pulsectl-asyncio/pulsectl-asyncio-1.2.0.ebuild
index 32ad8b4aacb5..a5e5b2108cb5 100644
--- a/dev-python/pulsectl-asyncio/pulsectl-asyncio-1.2.0.ebuild
+++ b/dev-python/pulsectl-asyncio/pulsectl-asyncio-1.2.0.ebuild
@@ -21,7 +21,7 @@ SRC_URI="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~riscv ~x86"
+KEYWORDS="amd64 ~riscv ~x86"
RDEPEND="
>=dev-python/pulsectl-23.5.0[${PYTHON_USEDEP}]
diff --git a/dev-python/pulsectl/Manifest b/dev-python/pulsectl/Manifest
index 92b5ba72b5e8..272844960854 100644
--- a/dev-python/pulsectl/Manifest
+++ b/dev-python/pulsectl/Manifest
@@ -1,2 +1 @@
-DIST pulsectl-23.5.2.tar.gz 41119 BLAKE2B 45239e9b6b3e19356f7c89acb673d9287e9e38099608e246c8334a5de82bf93d813688e376cf5aedb92e6b3368ce93bae1df630726a5ae568c83d774c942f848 SHA512 4f05edd994aac1964c358c50a95f564afb40fcc6ac410d5189525312c042057954d040dc41939b665347a39453244eccc138c4c7d628ef2da62034606716ecb9
DIST pulsectl-24.4.0.tar.gz 41166 BLAKE2B 3b2d41b3077f050104e7b416cb8dbba47f4282bb90ee58c855f4f5a1e1b1183b131879e6965edf8d8b5a2466ce3381e45c7a6b92f2b64fc336d311d3d7625440 SHA512 b17fd577f9c336f762925bd423fdca665afa92a88b0dae076ca016d7c5b2b3d9ef11efd27f7339031accadef00d513f972c216a23f26cfd049516f3dbcc63d01
diff --git a/dev-python/pulsectl/pulsectl-23.5.2-r1.ebuild b/dev-python/pulsectl/pulsectl-23.5.2-r1.ebuild
deleted file mode 100644
index e05bd2c3ae3c..000000000000
--- a/dev-python/pulsectl/pulsectl-23.5.2-r1.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2023 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="Python high-level interface and ctypes-based bindings for PulseAudio (libpulse)"
-HOMEPAGE="
- https://github.com/mk-fg/python-pulse-control/
- https://pypi.org/project/pulsectl/
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~riscv ~x86"
-
-RDEPEND="
- media-libs/libpulse
-"
-BDEPEND="
- test? (
- media-sound/pulseaudio-daemon
- )
-"
-
-distutils_enable_tests unittest
diff --git a/dev-python/pulsectl/pulsectl-24.4.0.ebuild b/dev-python/pulsectl/pulsectl-24.4.0.ebuild
index e59a535bd4c7..10215efcb005 100644
--- a/dev-python/pulsectl/pulsectl-24.4.0.ebuild
+++ b/dev-python/pulsectl/pulsectl-24.4.0.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~riscv ~x86"
+KEYWORDS="amd64 ~riscv ~x86"
RDEPEND="
media-libs/libpulse
diff --git a/dev-python/pygments-github-lexers/files/pygments-github-lexers-0.0.5-escape-sequences.patch b/dev-python/pygments-github-lexers/files/pygments-github-lexers-0.0.5-escape-sequences.patch
new file mode 100644
index 000000000000..65c90e857bb2
--- /dev/null
+++ b/dev-python/pygments-github-lexers/files/pygments-github-lexers-0.0.5-escape-sequences.patch
@@ -0,0 +1,22 @@
+diff --git a/pygments_github_lexers/github.py b/pygments_github_lexers/github.py
+index d2fa4b2..36a5c94 100644
+--- a/pygments_github_lexers/github.py
++++ b/pygments_github_lexers/github.py
+@@ -53,7 +53,7 @@ class Dasm16Lexer(RegexLexer):
+
+ # Regexes yo
+ char = r'[a-zA-Z$._0-9@]'
+- identifier = r'(?:[a-zA-Z$_]' + char + '*|\.' + char + '+)'
++ identifier = r'(?:[a-zA-Z$_]' + char + r'*|\.' + char + '+)'
+ number = r'[+-]?(?:0[xX][a-zA-Z0-9]+|\d+)'
+ binary_number = r'0b[01_]+'
+ instruction = r'(?i)(' + '|'.join(INSTRUCTIONS) + ')'
+@@ -379,7 +379,7 @@ class TOMLLexer(RegexLexer):
+ (r'#.*?$', Comment.Single),
+ (r'"(\\\\|\\"|[^"])*"', String),
+ (r'(true|false)$', Keyword.Constant),
+- ('[a-zA-Z_][a-zA-Z0-9_\-]*', Name),
++ (r'[a-zA-Z_][a-zA-Z0-9_\-]*', Name),
+
+ # Datetime
+ (r'\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}Z', Number.Integer),
diff --git a/dev-python/pygments-github-lexers/pygments-github-lexers-0.0.5-r1.ebuild b/dev-python/pygments-github-lexers/pygments-github-lexers-0.0.5-r2.ebuild
index aaf575dc72df..65d13c18be36 100644
--- a/dev-python/pygments-github-lexers/pygments-github-lexers-0.0.5-r1.ebuild
+++ b/dev-python/pygments-github-lexers/pygments-github-lexers-0.0.5-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2019-2023 Gentoo Authors
+# Copyright 2019-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -14,7 +14,6 @@ SRC_URI="https://github.com/liluo/${PN}/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz"
LICENSE="BSD-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
-IUSE=""
RDEPEND="
dev-python/pygments[${PYTHON_USEDEP}]
@@ -23,4 +22,8 @@ BDEPEND="
${RDEPEND}
"
+PATCHES=(
+ "${FILESDIR}/pygments-github-lexers-0.0.5-escape-sequences.patch"
+)
+
# no tests
diff --git a/dev-python/pypdf/pypdf-4.2.0.ebuild b/dev-python/pypdf/pypdf-4.2.0.ebuild
index 656b4069fadd..332b95a29d3e 100644
--- a/dev-python/pypdf/pypdf-4.2.0.ebuild
+++ b/dev-python/pypdf/pypdf-4.2.0.ebuild
@@ -25,7 +25,7 @@ SRC_URI="
LICENSE="BSD-2"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+KEYWORDS="amd64 arm64 ~ppc64 x86"
RDEPEND="
$(python_gen_cond_dep '
diff --git a/dev-python/pyphen/Manifest b/dev-python/pyphen/Manifest
index 7767458016e3..1315ec1ba861 100644
--- a/dev-python/pyphen/Manifest
+++ b/dev-python/pyphen/Manifest
@@ -1 +1,2 @@
DIST pyphen-0.14.0.tar.gz 1986988 BLAKE2B 3513ad1c9fbcc05318764f862a01bc4bbd6ad6a86f120ad93f8ff1d2a979984c35554db85943b5b7423f97e44ea933c64a3bf9c90aeb18629d215292466581b6 SHA512 5e242de2ecd5e951b2e1925df724013c14cea14729e8e0c132ab233c82406b37cc8d1d21cbd1edd748811fa6826a79da7a5ff9dfa859315840560cacae523e13
+DIST pyphen-0.15.0.tar.gz 2072615 BLAKE2B ce5a1d16ade5d1e894b941aa02749de5793d1b11554b232d0a475c687551843171da5c8fb31fa686af524c12693f87baf8e61a7c07e71935ca159fba42e4353f SHA512 c73ec781c92fbac1daadbf435b028a1eb6476df2bec40ceb039d394ae928ab3b3eff4f3ffaf23d847b89e766810a9dd153f6bbcb9678a9f61f65d84206042640
diff --git a/dev-python/pyphen/pyphen-0.15.0.ebuild b/dev-python/pyphen/pyphen-0.15.0.ebuild
new file mode 100644
index 000000000000..4d5c6fa19549
--- /dev/null
+++ b/dev-python/pyphen/pyphen-0.15.0.ebuild
@@ -0,0 +1,25 @@
+# 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="Python module for hyphenation using hunspell dictionaries"
+HOMEPAGE="
+ https://github.com/Kozea/Pyphen/
+ https://pypi.org/project/pyphen/
+"
+
+LICENSE="GPL-2+ LGPL-2+ MPL-1.1"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
+
+distutils_enable_tests pytest
+
+python_test() {
+ epytest -o addopts=
+}
diff --git a/dev-python/pypy-exe-bin/Manifest b/dev-python/pypy-exe-bin/Manifest
index 0e4a262b68ee..f900909d0099 100644
--- a/dev-python/pypy-exe-bin/Manifest
+++ b/dev-python/pypy-exe-bin/Manifest
@@ -6,3 +6,11 @@ DIST pypy-exe-7.3.15-1.ppc64le-musl.gpkg.tar 6696960 BLAKE2B a39cb7d46c4a877b2ea
DIST pypy-exe-7.3.15-1.ppc64le.gpkg.tar 11100160 BLAKE2B 294ba3f95fc81122348747e922f589d16028a34bcc5dee12464a06584986f3bd6e542a4f097d7fdee3348d727bf4bbf1fdd6beb655f8e34f4608b319e22e8339 SHA512 c374a605372cd200cf7c7cd8792c74dd1187fc77c5405537539823044da344bde5a540442bcde39aaaa7c8bc330ea03896311e8353e0e81bab312fac40ff60fc
DIST pypy-exe-7.3.15-1.x86-musl.gpkg.tar 9861120 BLAKE2B 97d3d7b80150246c49688847d2a7008cade36a0a3c89c3223be6205cf17c4623520786b393c301d42146863afb6118f7b58bb406a25bdabd9b6737016cee8718 SHA512 ca98a1bce5cbc9e9d2b90c6766b6eee094165420c38c676e63a185f54db50f275723b4b5e6183b1cc44ffec199973a57c3b0cc5fb4b0b9c6ebc2837ba84095a8
DIST pypy-exe-7.3.15-1.x86.gpkg.tar 9902080 BLAKE2B 79cc4705c9ebdac2a4a982f095750538ecb63ca38db97dcd995ce922781f80c006311025f8e51dc8e4ef32ebfaa0ae4ae333513b19e9778503947edd1a7c69bd SHA512 12cda3f33a38c3a624095ddd25bcdde8b3ecb5b6886182ee94d7149389703b98733413d6dcbb818d9363195b46d89fc997620e72b9bd26f797223604707fef57
+DIST pypy-exe-7.3.16-1.amd64-musl.gpkg.tar 12933120 BLAKE2B 4a70fc1b6724a75cd4d162a0a61f43242cf6ca889e8f00bc8ed4813aa2e303cf2ebc90bda48fab5aad06de3ac4654e1fdd48c94ab0be44fcf58879655b8dcb98 SHA512 dc1be0e135669593ad05f94b2696bd7cc41a9f3b0e3e46dec4f3909ff6763463372e2da0d2ebf6d4c04b966b6b78d552593bc4de52cc3a0a9e1c3d9f3d499338
+DIST pypy-exe-7.3.16-1.amd64.gpkg.tar 12943360 BLAKE2B 1991240985234b17410387e08008619aa15bbd56d5af855fe2aa75b6fe7936efeab0e42e10fee11d2a6a4eb26de1ae1a470f9a14b842b00a584c18db82bc4df1 SHA512 e0b4a8ca3d312931a2d1ed08f4a98c513ec4ef03c925d82a270357887e1d83c68aa4b68328106a000e4135c96081395a52fd28eec02bbbff06ebec12d4b815a2
+DIST pypy-exe-7.3.16-1.arm64-musl.gpkg.tar 10915840 BLAKE2B 51ea5c558283fd8da09b1ad410a2287a7512d6f5a5b1cd6882bfb10206a81c025ed08ee99cd05caefa41ddf1e6f17d6935e04e756bae7f2e2a80dd19d4a290e8 SHA512 0835866ad97e1e2aed406d8d346356a2095b3cb18fb22648f510063ff76cd9c29cf09877dda6f6ab2637748b376890143372b2012a322c60ced65be0e1b0d7fb
+DIST pypy-exe-7.3.16-1.arm64.gpkg.tar 10864640 BLAKE2B d33b2e35cbc81ef72ee9c04072664e1481ef8b2291be8d74a4bc2e3a5c177abf9344cc0880cfd5bfc04b684edcb6a12851b72ae77744cd36aae0b9cdaee616aa SHA512 9c49541850d359577ad5057e67fbfde13b7e0bf381305c5a15dec14e818f2ac6fcc59dc1654271b6e2f6a04914c7afa40f0caa8c7904c6eaa6633b80780e9500
+DIST pypy-exe-7.3.16-1.ppc64le-musl.gpkg.tar 6707200 BLAKE2B 3d3a3d0c0fef3a69c6c0e6a16c91abf3c8c3a232883f01c13121ed22d3c608ff62347823342e78892a080b84f52652507b870711452e087cab201d0acb58c7c4 SHA512 c36327ec441875c7ada54e3ae9e95651307f03a3dcd447c1d112527c72ddbdcbc303f5769a837e8b3c528d13aeb35ffe1cd9b11ba0575b0e5859138a67f7a2c6
+DIST pypy-exe-7.3.16-1.ppc64le.gpkg.tar 11038720 BLAKE2B 1a7aa31d9ec59a3aeb57c254d2b9efde9d02aba1663683999f1ebae95b2ad0c68a2fc8e4806420b1ad9f45ce4767f8e048b9607d1f124291770a99b423ae799f SHA512 5659cdb5a4a001d9c878670b0f5e7d06e6aa55d8fab403ab80a98e6b362bb8185b01fe4af092cc9042a1762ca52cc0ce81937c84240d08ebb84071cd860559e2
+DIST pypy-exe-7.3.16-1.x86-musl.gpkg.tar 9912320 BLAKE2B c6a42ce64cfda1a148af49e0876b640fb3ecaa7e70b5d5b22e58b9796c11b0e4d9fb5536927b7b20b05b9eaa2210333cb1b1be81581483a21a7a3699e5721e01 SHA512 8964ece7482218e06ab65b790f8f1fcf15a94c270daa9a2381b35ae335717a02f0b32947578fa03f0905a0783cb5fcf3ef03cb87a7ceaa7110c8593e483a971e
+DIST pypy-exe-7.3.16-1.x86.gpkg.tar 9861120 BLAKE2B b83fa9e3c3bbbd7c49ea2fdceabd7125e0db36ee20c2b71969833512f69070e07a1485ab830261f34e2571dbd48b9b65ffb580e9f8ae4b667626ca81b560c493 SHA512 eb2be6886126c675fc85458d34a0bcdd1da1415c843448e39d413b80d363698cb48b3b68bf8869b5ef898f0543966ab501bd4db545d7659705c279bf4de29ae6
diff --git a/dev-python/pypy-exe-bin/pypy-exe-bin-7.3.16.ebuild b/dev-python/pypy-exe-bin/pypy-exe-bin-7.3.16.ebuild
new file mode 100644
index 000000000000..900de22d9f93
--- /dev/null
+++ b/dev-python/pypy-exe-bin/pypy-exe-bin-7.3.16.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit pax-utils unpacker
+
+MY_P=pypy-exe-${PV}-1
+DESCRIPTION="PyPy executable (pre-built version)"
+HOMEPAGE="
+ https://www.pypy.org/
+ https://github.com/pypy/pypy/
+"
+SRC_URI="
+ elibc_glibc? (
+ amd64? (
+ https://dev.gentoo.org/~mgorny/binpkg/amd64/pypy/dev-python/pypy-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.amd64.gpkg.tar
+ )
+ arm64? (
+ https://dev.gentoo.org/~mgorny/binpkg/arm64/pypy/dev-python/pypy-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.arm64.gpkg.tar
+ )
+ ppc64? (
+ https://dev.gentoo.org/~mgorny/binpkg/ppc64le/pypy/dev-python/pypy-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.ppc64le.gpkg.tar
+ )
+ x86? (
+ https://dev.gentoo.org/~mgorny/binpkg/x86/pypy/dev-python/pypy-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.x86.gpkg.tar
+ )
+ )
+ elibc_musl? (
+ amd64? (
+ https://dev.gentoo.org/~mgorny/binpkg/amd64-musl/pypy/dev-python/pypy-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.amd64-musl.gpkg.tar
+ )
+ arm64? (
+ https://dev.gentoo.org/~mgorny/binpkg/arm64-musl/pypy/dev-python/pypy-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.arm64-musl.gpkg.tar
+ )
+ ppc64? (
+ https://dev.gentoo.org/~mgorny/binpkg/ppc64le-musl/pypy/dev-python/pypy-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.ppc64le-musl.gpkg.tar
+ )
+ x86? (
+ https://dev.gentoo.org/~mgorny/binpkg/x86-musl/pypy/dev-python/pypy-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.x86-musl.gpkg.tar
+ )
+ )
+"
+S="${WORKDIR}"
+
+LICENSE="MIT"
+SLOT="${PV%_p*}"
+KEYWORDS="amd64 ~arm64 ~ppc64 x86"
+
+# sys-devel/gcc for libgcc_s.so
+RDEPEND="
+ app-arch/bzip2:0/1
+ dev-libs/expat:0/0
+ dev-libs/libffi:0/8
+ sys-libs/ncurses:0/6
+ >=sys-libs/zlib-1.1.3:0/1
+ virtual/libintl:0/0
+ elibc_glibc? (
+ sys-devel/gcc
+ >=sys-libs/glibc-2.35
+ )
+ !dev-python/pypy-exe:${SLOT}
+"
+
+QA_PREBUILT="
+ usr/lib/pypy2.7/pypy-c-${SLOT}
+"
+
+src_install() {
+ insinto /
+ doins -r */image/usr
+ fperms +x "/usr/lib/pypy2.7/pypy-c-${SLOT}"
+ pax-mark m "${ED}/usr/lib/pypy2.7/pypy-c-${SLOT}"
+}
diff --git a/dev-python/pypy-exe/Manifest b/dev-python/pypy-exe/Manifest
index ba35d88e52ad..8c8a2bb8fff0 100644
--- a/dev-python/pypy-exe/Manifest
+++ b/dev-python/pypy-exe/Manifest
@@ -1,2 +1,4 @@
DIST pypy2.7-gentoo-patches-7.3.15.tar.xz 5324 BLAKE2B 395b1292b59cc9b2147fd488726d7cb2c18e7240d604d0bb19f172654c87b453a27f33f29bd2c1cb230d35b660457a317247c3b2eb73e8f3247c7d01fd35aa6a SHA512 698a58b30f5a4785e2d94c38cb0e7ce2666b6b621ee0ae4e9fd51862efce13449342afe6408edc9f4ba68497f2138d653617fa4a31cd925a51a048dd79467913
+DIST pypy2.7-gentoo-patches-7.3.16.tar.xz 5312 BLAKE2B b265dd7afee097ad66bacd9df01514eed6bb30afe19410b2594ee7c2d61ababc67e11c0dd0392a0b1f81e0bc609963cde044834ab24e67d007d101b8aa8052cb SHA512 0d0309f3ed7314f6d310b0e34eedbbfdcc5a75d9bbd59b9071e567968bb10925549435776fab5bc7ec97e2b3422921dc282619427f930d89df6c7bc98ea701c1
DIST pypy2.7-v7.3.15-src.tar.bz2 19834343 BLAKE2B 4e1145cac007223de0616029dfe763a8d2b3e25a6d867c98da0e8e0431d775c6aa7e50834c761e19f96b96309dbb415a39d7811c68b1b3a26c16cd222911205d SHA512 40448c7c94878bcb88402de8719a4a6a4ffe3f68d7e70500f04fe77a460b1605c83dace360988d2dae70fa2c9bb31a20c22003f70a3a2fde988f6d60507edefe
+DIST pypy2.7-v7.3.16-src.tar.bz2 19843601 BLAKE2B 9c37a03561fcdf742eccde760f6cadcbc2e1b140dd6d3e67856cc072e0c3db85759c398f590ed44fb4e4ed2f5f7745d5589cb9a95cefcbec79f3b1be6c4956e1 SHA512 131635433e53d4d86730a3daf1ad81799a7dd1117511618cc2607ac7234ce3aa5c833400df09cbd3376a391e125d6d2ec3471f120f81a6d53700f5c3d087793c
diff --git a/dev-python/pypy-exe/pypy-exe-7.3.16.ebuild b/dev-python/pypy-exe/pypy-exe-7.3.16.ebuild
new file mode 100644
index 000000000000..e6d19abc0125
--- /dev/null
+++ b/dev-python/pypy-exe/pypy-exe-7.3.16.ebuild
@@ -0,0 +1,181 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit check-reqs pax-utils toolchain-funcs
+
+PYPY_PV=${PV%_p*}
+MY_P=pypy2.7-v${PYPY_PV/_}
+PATCHSET="pypy2.7-gentoo-patches-${PV/_}"
+
+DESCRIPTION="PyPy executable (build from source)"
+HOMEPAGE="
+ https://www.pypy.org/
+ https://github.com/pypy/pypy/
+"
+SRC_URI="
+ https://downloads.python.org/pypy/${MY_P}-src.tar.bz2
+ https://buildbot.pypy.org/pypy/${MY_P}-src.tar.bz2
+ https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz
+"
+S="${WORKDIR}/${MY_P}-src"
+
+LICENSE="MIT"
+SLOT="${PYPY_PV}"
+KEYWORDS="amd64 ~arm64 ~ppc64 x86 ~amd64-linux ~x86-linux"
+IUSE="bzip2 +jit low-memory ncurses cpu_flags_x86_sse2"
+
+DEPEND="
+ >=sys-libs/zlib-1.1.3:0=
+ dev-libs/libffi:0=
+ virtual/libintl:0=
+ dev-libs/expat:0=
+ bzip2? ( app-arch/bzip2:0= )
+ ncurses? ( sys-libs/ncurses:0= )
+"
+RDEPEND="
+ ${DEPEND}
+ !dev-python/pypy-exe-bin:${PYPY_PV}
+"
+# don't enforce the dep on dev-python/pypy with USE=low-memory
+# since it's going to cause circular dep with unhelpful error message
+BDEPEND="
+ !low-memory? (
+ || (
+ dev-python/pypy
+ dev-lang/python:2.7
+ )
+ )
+"
+
+check_env() {
+ if ! has_version -b dev-python/pypy; then
+ if use low-memory; then
+ eerror "USE=low-memory requires (a prior version of) dev-python/pypy"
+ eerror "installed."
+ else
+ ewarn "CPython 2.7 will be used to perform the translation. Upstream"
+ ewarn "recommends using (a prior version of) dev-python/pypy instead."
+ fi
+ elog "You can install a prebuilt version of PyPy first using e.g.:"
+ elog " $ emerge -1v dev-python/pypy dev-python/pypy-exe-bin"
+
+ if use low-memory; then
+ die "dev-python/pypy needs to be installed for USE=low-memory"
+ fi
+ fi
+
+ if use low-memory; then
+ CHECKREQS_MEMORY="1750M"
+ use amd64 && CHECKREQS_MEMORY="3500M"
+ else
+ CHECKREQS_MEMORY="3G"
+ use amd64 && CHECKREQS_MEMORY="6G"
+ fi
+
+ check-reqs_pkg_pretend
+}
+
+pkg_pretend() {
+ [[ ${MERGE_TYPE} != binary ]] && check_env
+}
+
+pkg_setup() {
+ [[ ${MERGE_TYPE} != binary ]] && check_env
+}
+
+src_prepare() {
+ local PATCHES=(
+ "${WORKDIR}/${PATCHSET}"
+ )
+ default
+}
+
+src_configure() {
+ tc-export CC
+
+ local jit_backend
+ if use jit; then
+ jit_backend='--jit-backend='
+
+ # We only need the explicit sse2 switch for x86.
+ # On other arches we can rely on autodetection which uses
+ # compiler macros. Plus, --jit-backend= doesn't accept all
+ # the modern values...
+
+ if use x86; then
+ if use cpu_flags_x86_sse2; then
+ jit_backend+=x86
+ else
+ jit_backend+=x86-without-sse2
+ fi
+ else
+ jit_backend+=auto
+ fi
+ fi
+
+ local args=(
+ --no-shared
+ $(usex jit -Ojit -O2)
+
+ ${jit_backend}
+
+ pypy/goal/targetpypystandalone
+ )
+
+ # Avoid linking against libraries disabled by use flags
+ local opts=(
+ bzip2:bz2
+ ncurses:_minimal_curses
+ )
+
+ local opt
+ for opt in "${opts[@]}"; do
+ local flag=${opt%:*}
+ local mod=${opt#*:}
+
+ args+=(
+ $(usex ${flag} --withmod --withoutmod)-${mod}
+ )
+ done
+
+ local interp
+ if use low-memory || has_version -b dev-python/pypy; then
+ einfo "Using already-installed PyPy to perform the translation."
+ interp=( pypy )
+ if use low-memory; then
+ local -x PYPY_GC_MAX_DELTA=200MB
+ interp+=( --jit loop_longevity=300 )
+ fi
+ else
+ einfo "Using CPython 2.7 to perform the translation."
+ interp=( python2.7 )
+
+ # reuse bundled pycparser to avoid external dep
+ mkdir -p "${T}"/pymod/cffi || die
+ : > "${T}"/pymod/cffi/__init__.py || die
+ cp -r lib_pypy/cffi/_pycparser "${T}"/pymod/cffi/ || die
+ local -x PYTHONPATH=${T}/pymod:${PYTHONPATH}
+ fi
+
+ # translate into the C sources
+ # we're going to build them ourselves since otherwise pypy does not
+ # free up the unneeded memory before spawning the compiler
+ set -- "${interp[@]}" rpython/bin/rpython --batch --source "${args[@]}"
+ echo -e "\033[1m${@}\033[0m"
+ "${@}" || die "translation failed"
+}
+
+src_compile() {
+ emake -C "${T}"/usession*-0/testing_1
+}
+
+src_install() {
+ local dest=/usr/lib/pypy2.7
+ exeinto "${dest}"
+ newexe "${T}"/usession*-0/testing_1/pypy-c pypy-c-${PYPY_PV}
+ insinto "${dest}"/include/${PYPY_PV}
+ doins include/pypy_*
+ pax-mark m "${ED}${dest}/pypy-c-${PYPY_PV}"
+}
diff --git a/dev-python/pypy/Manifest b/dev-python/pypy/Manifest
index f69ffdbf3c8c..8c8a2bb8fff0 100644
--- a/dev-python/pypy/Manifest
+++ b/dev-python/pypy/Manifest
@@ -1,4 +1,4 @@
-DIST pypy2.7-gentoo-patches-7.3.13.tar.xz 5340 BLAKE2B 843a7a5e4c2fd56fc4db51ba388736c0aa6593d45b145503f6428783a9fd815a77e2a06809077effced6fccf75c0dd38527a0695211852fd2a4c61b34e40c15c SHA512 cc8f6fc69f00030609a8d79f05a60b2e185141e9fc70a53b476b60a183dd0500627023658c6a57c2412f32af1db6fae91a361a4992d84e7dfbadb7eb4a98b8a1
DIST pypy2.7-gentoo-patches-7.3.15.tar.xz 5324 BLAKE2B 395b1292b59cc9b2147fd488726d7cb2c18e7240d604d0bb19f172654c87b453a27f33f29bd2c1cb230d35b660457a317247c3b2eb73e8f3247c7d01fd35aa6a SHA512 698a58b30f5a4785e2d94c38cb0e7ce2666b6b621ee0ae4e9fd51862efce13449342afe6408edc9f4ba68497f2138d653617fa4a31cd925a51a048dd79467913
-DIST pypy2.7-v7.3.13-src.tar.bz2 19907651 BLAKE2B ce80db193afadbc721e781cbfe3d72bfe420eef3ede408f23213ab5d87a9a42c025d3c31c742dcb55a039b618930ebc4899d704f060d294f2e492d4d754effba SHA512 deeca234abbe526102cec637dc88399f462f64ae66c38782e6f3372b484d25fa4e88b906f783ba515bed17d2e82626d1c94fd6ee9b8b64e393f9bc0f5ee2b07b
+DIST pypy2.7-gentoo-patches-7.3.16.tar.xz 5312 BLAKE2B b265dd7afee097ad66bacd9df01514eed6bb30afe19410b2594ee7c2d61ababc67e11c0dd0392a0b1f81e0bc609963cde044834ab24e67d007d101b8aa8052cb SHA512 0d0309f3ed7314f6d310b0e34eedbbfdcc5a75d9bbd59b9071e567968bb10925549435776fab5bc7ec97e2b3422921dc282619427f930d89df6c7bc98ea701c1
DIST pypy2.7-v7.3.15-src.tar.bz2 19834343 BLAKE2B 4e1145cac007223de0616029dfe763a8d2b3e25a6d867c98da0e8e0431d775c6aa7e50834c761e19f96b96309dbb415a39d7811c68b1b3a26c16cd222911205d SHA512 40448c7c94878bcb88402de8719a4a6a4ffe3f68d7e70500f04fe77a460b1605c83dace360988d2dae70fa2c9bb31a20c22003f70a3a2fde988f6d60507edefe
+DIST pypy2.7-v7.3.16-src.tar.bz2 19843601 BLAKE2B 9c37a03561fcdf742eccde760f6cadcbc2e1b140dd6d3e67856cc072e0c3db85759c398f590ed44fb4e4ed2f5f7745d5589cb9a95cefcbec79f3b1be6c4956e1 SHA512 131635433e53d4d86730a3daf1ad81799a7dd1117511618cc2607ac7234ce3aa5c833400df09cbd3376a391e125d6d2ec3471f120f81a6d53700f5c3d087793c
diff --git a/dev-python/pypy/pypy-7.3.13.ebuild b/dev-python/pypy/pypy-7.3.16.ebuild
index ee22302c0b50..4c5944a4d35c 100644
--- a/dev-python/pypy/pypy-7.3.13.ebuild
+++ b/dev-python/pypy/pypy-7.3.16.ebuild
@@ -1,15 +1,18 @@
-# Copyright 2021-2023 Liguros Authors
+# Copyright 2021-2024 Liguros Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-inherit pax-utils python-utils-r1
+inherit pax-utils
PYPY_PV=${PV%_p*}
MY_P=pypy2.7-v${PYPY_PV/_}
PATCHSET="pypy2.7-gentoo-patches-${PV/_rc/rc}"
DESCRIPTION="A fast, compliant alternative implementation of the Python language"
-HOMEPAGE="https://www.pypy.org/"
+HOMEPAGE="
+ https://www.pypy.org/
+ https://github.com/pypy/pypy/
+"
SRC_URI="
https://buildbot.pypy.org/pypy/${MY_P}-src.tar.bz2
https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz
@@ -21,7 +24,7 @@ LICENSE="MIT"
SLOT="0/73"
KEYWORDS="amd64 ~arm64 ~ppc64 x86 ~amd64-linux ~x86-linux"
IUSE="bzip2 full-stdlib gdbm +jit libressl ncurses sqlite tk"
-RESTRICT="!full-stdlib? ( test )"
+RESTRICT="test"
RDEPEND="
|| (
@@ -36,7 +39,6 @@ RDEPEND="
dev-lang/tk:0=
dev-tcltk/tix:0=
)
- !<dev-python/pypy-bin-7.3.0:0
"
DEPEND="
${RDEPEND}
@@ -109,7 +111,7 @@ src_compile() {
done
# Verify that CFFI module list is up-to-date
- local expected_cksum=2d3acf18
+ local expected_cksum=-7df4eab0
local local_cksum=$(
../pypy-c - <<-EOF
import binascii
@@ -302,13 +304,14 @@ src_install() {
dosym ../lib/pypy2.7/pypy-c /usr/bin/pypy
dodoc README.rst
- local -x EPYTHON=pypy
local -x PYTHON=${ED}${dest}/pypy-c-${PYPY_PV}
# temporarily copy to build tree to facilitate module builds
cp -p "${BROOT}${dest}/pypy-c-${PYPY_PV}" "${PYTHON}" || die
einfo "Byte-compiling Python standard library..."
- python_optimize "${ED}${dest}"
+ "${PYTHON}" -m compileall \
+ -x 'bad_coding|badsyntax|make_ssl_data|lib2to3/tests/data' \
+ -q -f -d "${dest}" "${ED}/${dest}" || die
# remove to avoid collisions
rm "${PYTHON}" || die
diff --git a/dev-python/pypy3/pypy3-7.3.16.ebuild b/dev-python/pypy3/pypy3-7.3.16.ebuild
new file mode 100644
index 000000000000..ba301054faf0
--- /dev/null
+++ b/dev-python/pypy3/pypy3-7.3.16.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYVER=3.10
+DESCRIPTION="A fast, compliant alternative implementation of the Python (${PYVER}) language"
+HOMEPAGE="
+ https://www.pypy.org/
+ https://foss.heptapod.net/pypy/pypy/
+"
+S=${WORKDIR}
+
+LICENSE="MIT"
+SLOT="0/pypy310-pp73-384"
+KEYWORDS="amd64 ~arm64 ~ppc64 x86 ~amd64-linux ~x86-linux"
+IUSE="+gdbm ncurses sqlite tk"
+
+RDEPEND="
+ =dev-python/pypy3_10-${PV}*:${SLOT}[gdbm?,ncurses?,sqlite?,tk?]
+"
+
+src_install() {
+ dodir /usr/bin
+ dosym pypy${PYVER} /usr/bin/pypy3
+}
diff --git a/dev-python/pypy3_10-exe-bin/Manifest b/dev-python/pypy3_10-exe-bin/Manifest
index feae9e08eb9a..bfef5dd347d1 100644
--- a/dev-python/pypy3_10-exe-bin/Manifest
+++ b/dev-python/pypy3_10-exe-bin/Manifest
@@ -6,3 +6,11 @@ DIST pypy3_10-exe-7.3.15-1.ppc64le-musl.gpkg.tar 6758400 BLAKE2B 737a1a6779e65e6
DIST pypy3_10-exe-7.3.15-1.ppc64le.gpkg.tar 10465280 BLAKE2B b7af5d3f89e6881f697cdd16e7b8f3a7f3dd574125c0559b21f2ae5bb7ef1f948c1149c1a891ad5815461ed03e224086ab810fe45071dd2cbef9b35fe1c8cc00 SHA512 90f610253833c31d10e09e81e2ada135f5ad7486816cbc5421087cf386d1281901cfde13331c440df726d8bd2b703cf068f7effa7a13cafde48af0833027c1f0
DIST pypy3_10-exe-7.3.15-1.x86-musl.gpkg.tar 9062400 BLAKE2B 14e371118171709a7a88cad1cc6877a486269819758f27f86083f37635d1d148ae1cdcac0f25eb0db241c199341f34f709dcaffe8292ec8c34332ddba2477f75 SHA512 833f915fd2b873ae038844bf594863fedef2bb534e81af599f356b6f9287584bde8748b066d54ad972f2a77df41fe4e61ad1a51d48e8b60c3e91cb29d1e7e210
DIST pypy3_10-exe-7.3.15-1.x86.gpkg.tar 9011200 BLAKE2B 6d6766f1e343dfde5627d9a1ca33a27c1df39377dbf3e42c969298e20586c4430fd81ba7b9332d4258fce01167ec2c95783c65496262a1fc56bbcd07a57c1c5e SHA512 f4804bf874389eb8493a692d238e354dac3e52e6a7888c34a2bf3801429121e337e6008b0da8c9c36a15d579a3fa04e617339aab7e82e3c83ebbc0747345bf33
+DIST pypy3_10-exe-7.3.16-1.amd64-musl.gpkg.tar 12042240 BLAKE2B a770fce3044ae928c74fcd96be293fef7b87f9f8857ed430d44761eecb28b34879fb86c6c4a032e80fdbf20aede88fcaaf2a53dbe56e0cc150269807cdb28928 SHA512 a9d87be0ef72ac928c35db89321edd713cfff93f93ff2b2c5a04e91febc540859dc4e0a065ec3da2c297cc353f9278ac43d57494d282546c8e4cdc1cbb4a4cec
+DIST pypy3_10-exe-7.3.16-1.amd64.gpkg.tar 12083200 BLAKE2B df6a53532cc10ade867f60d81033ee4ff46e9bb8a3331499acde65866a31ba5e25b6af6df316e4e7187005f6c98609171d5d8908a03ea7088f6306c3680d369b SHA512 89a889ae565e4d2772075eab72246ca5940e905b01f1c91082af583ec28390d018f441f427fa408e84de0b2d24b1deb28602297c653c4aeb25d3ae34e929f9ff
+DIST pypy3_10-exe-7.3.16-1.arm64-musl.gpkg.tar 10219520 BLAKE2B 0fa144cdfd144c881baf71a3ed8d222165571bea07c41079af42846c1a7a633fa146ed128dd7466bff8e7911c7518e6d576bca24326d1248ad96fcb5854eec85 SHA512 dac544bd589c11c52c74ef99216b15ffd3155d764c47f8957c49369e98f2caa8feb0fb278002cb3b1244731f19b5e0c0dd2cf7e59efe49045206325b62daf5e0
+DIST pypy3_10-exe-7.3.16-1.arm64.gpkg.tar 10178560 BLAKE2B 5d9227b35bba2229679e2e103b6c6964ea1a8b88581dbe306e8d03342f6a889dac1127b615a14f85cb9c53fbf496b1f7e1236b7b8f590930dcf4d92d9a87c914 SHA512 1d689bf08fd9a1ec5892e2f81eae1d0f49fb410873e6d2914db698a2a4e0cf1bfdd7725e8d932a20ce69d4ea40f86ae16146dc9fba1c65858ff1f7f5bece4b6b
+DIST pypy3_10-exe-7.3.16-1.ppc64le-musl.gpkg.tar 6819840 BLAKE2B a3ae523a26a187b7af18329483c8129e52df3bb7cc9f611769e48d4fee6ec627e203d7138bec39e4a45c7feca83d5ab913239ba30f52c797f85f2be252ea39b5 SHA512 74cd507c48e639e67beb9e4304237ddce926ff1a07df9e6fe5041305290db1ba3a506fae570b57d2f3c9c732d0deb558c8d0883183434286bc13812098c02a45
+DIST pypy3_10-exe-7.3.16-1.ppc64le.gpkg.tar 10352640 BLAKE2B 53d2804ef1a95de1edf4765261deb4c53accf59b8b2d827b2dec24a279424629322a701bd3942d05e4e13f52e796c119c237d32bf334287daad8664e1e76e67a SHA512 8016ed28f076936e3477d75d47e20af79fb97d138f924c514fcd32a02ad4b9bf3eb0d09a82d08f99843b102b4a048b78a694963e223a936b029ab903a5c60a21
+DIST pypy3_10-exe-7.3.16-1.x86-musl.gpkg.tar 9093120 BLAKE2B 56a349615ce67c3e581da65ac3b52cdc412760aea689d4b8bf6b9f5d2a4285ac67557ee6791363a0faaa1ba10f20b9d761529f278f3737b304e79682353bf1fc SHA512 cf9a8e4475c2d3c8d7c3756c7b4a61fd4effde3010b33f67aa40354658952dcf2ee7d05f6db7912bf8015dd76cf7bb08bfc7d9aea2f168bec23acab9a9068239
+DIST pypy3_10-exe-7.3.16-1.x86.gpkg.tar 9093120 BLAKE2B ef908156f0dd9376495330fe0278aa2565c5428bfe46aaeb9f11dabee2ee998969028296cef3e5b71e6d8963bd7573ddded8583e3410f4c66b7b1f17a9cb52aa SHA512 d65132d4a89f7f0764095fee1a3f10d4b7821ba45745a3576179ff2e74f24f38538fe5df6812e654cecc71fe7feecec4e2b9518c8b51aea9b66d43dca935949e
diff --git a/dev-python/pypy3_10-exe-bin/pypy3_10-exe-bin-7.3.16.ebuild b/dev-python/pypy3_10-exe-bin/pypy3_10-exe-bin-7.3.16.ebuild
new file mode 100644
index 000000000000..9849a9ecfd11
--- /dev/null
+++ b/dev-python/pypy3_10-exe-bin/pypy3_10-exe-bin-7.3.16.ebuild
@@ -0,0 +1,85 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit pax-utils unpacker
+
+PYVER=3.10
+MY_P=pypy3_10-exe-${PV}-1
+
+DESCRIPTION="PyPy3.10 executable (pre-built version)"
+HOMEPAGE="
+ https://www.pypy.org/
+ https://github.com/pypy/pypy/
+"
+SRC_URI="
+ elibc_glibc? (
+ amd64? (
+ https://dev.gentoo.org/~mgorny/binpkg/amd64/pypy/dev-python/pypy3_10-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.amd64.gpkg.tar
+ )
+ arm64? (
+ https://dev.gentoo.org/~mgorny/binpkg/arm64/pypy/dev-python/pypy3_10-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.arm64.gpkg.tar
+ )
+ ppc64? (
+ https://dev.gentoo.org/~mgorny/binpkg/ppc64le/pypy/dev-python/pypy3_10-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.ppc64le.gpkg.tar
+ )
+ x86? (
+ https://dev.gentoo.org/~mgorny/binpkg/x86/pypy/dev-python/pypy3_10-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.x86.gpkg.tar
+ )
+ )
+ elibc_musl? (
+ amd64? (
+ https://dev.gentoo.org/~mgorny/binpkg/amd64-musl/pypy/dev-python/pypy3_10-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.amd64-musl.gpkg.tar
+ )
+ arm64? (
+ https://dev.gentoo.org/~mgorny/binpkg/arm64-musl/pypy/dev-python/pypy3_10-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.arm64-musl.gpkg.tar
+ )
+ ppc64? (
+ https://dev.gentoo.org/~mgorny/binpkg/ppc64le-musl/pypy/dev-python/pypy3_10-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.ppc64le-musl.gpkg.tar
+ )
+ x86? (
+ https://dev.gentoo.org/~mgorny/binpkg/x86-musl/pypy/dev-python/pypy3_10-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.x86-musl.gpkg.tar
+ )
+ )
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="MIT"
+SLOT="${PV%_p*}"
+KEYWORDS="amd64 ~arm64 ~ppc64 x86"
+
+# sys-devel/gcc for libgcc_s.so
+RDEPEND="
+ app-arch/bzip2:0/1
+ dev-libs/expat:0/0
+ dev-libs/libffi:0/8
+ sys-libs/ncurses:0/6
+ >=sys-libs/zlib-1.1.3:0/1
+ virtual/libintl:0/0
+ elibc_glibc? (
+ sys-devel/gcc
+ >=sys-libs/glibc-2.35
+ )
+ !dev-python/pypy3_10-exe:${SLOT}
+"
+
+PYPY_PV=${PV%_p*}
+QA_PREBUILT="
+ usr/bin/pypy${PYVER}-c-${PYPY_PV}
+"
+
+src_install() {
+ insinto /
+ doins -r image/usr
+ fperms +x "/usr/bin/pypy${PYVER}-c-${PYPY_PV}"
+ pax-mark m "${ED}/usr/bin/pypy${PYVER}-c-${PYPY_PV}"
+}
diff --git a/dev-python/pypy3_10-exe/Manifest b/dev-python/pypy3_10-exe/Manifest
index adc020909dc2..4e7c111b208e 100644
--- a/dev-python/pypy3_10-exe/Manifest
+++ b/dev-python/pypy3_10-exe/Manifest
@@ -1,2 +1,4 @@
DIST pypy3.10-gentoo-patches-7.3.15.tar.xz 4760 BLAKE2B 9131794293aa15cbafbc245727b5b60183606bb0273b05f4ebf8d24b525c3d6a39c8fe6f2c38487cda4a47d5defbdbb494c7786ee25a9ddc23cc9f209e5fc3cd SHA512 d2780be7ce91524bb71a47d51d9e9ad9a6aa5bd6c19903c90391cf7e6d4c9a96a98f414d22e9da7af67960ab9639f9a0f58f103c90ca9d694dcdfc4f0982bd6b
+DIST pypy3.10-gentoo-patches-7.3.16.tar.xz 4752 BLAKE2B a5cd87f30c0b20bf5d49c3b5c979c12231d6b67750e777d4488093094d5998e6f0d9adba51c04704eb31d621089aeb12ee5a6b0a58dad0ecda0d60d2ecbdab6d SHA512 e2779841a3e56e384134416ce2a10e1e00a11d7c720023506370fb9f54363da6b7300b4019c121aa1874152b62d9679ebcd3dd679fd0dbd2bf524520990b6f38
DIST pypy3.10-v7.3.15-src.tar.bz2 23934723 BLAKE2B 12b438729547faa81bc31c429e166d4bfab2b4e76cb16a687886903ad83e3369e0532297222eafbc8b0f4ae006d87cbe15b2c360ad828fd9a44124067aa788ff SHA512 84f9a30484cf0b0bcf3ef1f71ce2ecae02a51b6609acc4f6edd4096302c9940541dc947f3f0767216d83d261f8db85ea43760af8ce3c9137c70aabe5571d1249
+DIST pypy3.10-v7.3.16-src.tar.bz2 23358556 BLAKE2B 4eddae47dea1005b9450b9d3d23bd90782dffecdc252eff4fd3195a61e0e7ebbdafaf4c4b5d318c88534f152c1110c3bc4f76f43a7e711a859dd4330841a0e0b SHA512 5b941e3b5c7b0c7a50413e16122bad3e167dcc4ee159ce53e9716e9d5af79d600823f3d7442b7562bb568ff027723e22904fc0840dc06bd26e3da38c93cc5b94
diff --git a/dev-python/pypy3_10-exe/pypy3_10-exe-7.3.16.ebuild b/dev-python/pypy3_10-exe/pypy3_10-exe-7.3.16.ebuild
new file mode 100644
index 000000000000..d8e6a582bb10
--- /dev/null
+++ b/dev-python/pypy3_10-exe/pypy3_10-exe-7.3.16.ebuild
@@ -0,0 +1,136 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit check-reqs flag-o-matic pax-utils toolchain-funcs
+
+PYPY_PV=${PV%_p*}
+PYVER=3.10
+MY_P="pypy${PYVER}-v${PYPY_PV/_}"
+PATCHSET="pypy${PYVER}-gentoo-patches-${PV}"
+
+DESCRIPTION="PyPy3.10 executable (build from source)"
+HOMEPAGE="
+ https://www.pypy.org/
+ https://github.com/pypy/pypy/
+"
+SRC_URI="
+ https://downloads.python.org/pypy/${MY_P}-src.tar.bz2
+ https://buildbot.pypy.org/pypy/${MY_P}-src.tar.bz2
+ https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz
+"
+S="${WORKDIR}/${MY_P}-src"
+
+LICENSE="MIT"
+SLOT="${PYPY_PV}"
+KEYWORDS="amd64 ~arm64 ~ppc64 x86 ~amd64-linux ~x86-linux"
+IUSE="+jit low-memory ncurses cpu_flags_x86_sse2"
+
+RDEPEND="
+ app-arch/bzip2:0=
+ dev-libs/expat:0=
+ dev-libs/libffi:0=
+ >=sys-libs/zlib-1.1.3:0=
+ virtual/libintl:0=
+ ncurses? ( sys-libs/ncurses:0= )
+ !dev-python/pypy3_10-exe-bin:${SLOT}
+"
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ dev-python/pypy
+ virtual/pkgconfig
+"
+
+check_env() {
+ if use low-memory; then
+ CHECKREQS_MEMORY="1750M"
+ use amd64 && CHECKREQS_MEMORY="3500M"
+ else
+ CHECKREQS_MEMORY="3G"
+ use amd64 && CHECKREQS_MEMORY="6G"
+ fi
+
+ check-reqs_pkg_pretend
+}
+
+pkg_pretend() {
+ [[ ${MERGE_TYPE} != binary ]] && check_env
+}
+
+pkg_setup() {
+ [[ ${MERGE_TYPE} != binary ]] && check_env
+}
+
+src_prepare() {
+ local PATCHES=(
+ "${WORKDIR}/${PATCHSET}"
+ )
+ default
+}
+
+src_configure() {
+ tc-export CC
+
+ # Yes, yuck, but it's being worked on upstream (bug #918971).
+ # https://foss.heptapod.net/pypy/pypy/-/issues/4042
+ append-flags $(test-flags-CC -Wno-error=incompatible-pointer-types)
+
+ local jit_backend
+ if use jit; then
+ jit_backend='--jit-backend='
+
+ # We only need the explicit sse2 switch for x86.
+ # On other arches we can rely on autodetection which uses
+ # compiler macros. Plus, --jit-backend= doesn't accept all
+ # the modern values...
+
+ if use x86; then
+ if use cpu_flags_x86_sse2; then
+ jit_backend+=x86
+ else
+ jit_backend+=x86-without-sse2
+ fi
+ else
+ jit_backend+=auto
+ fi
+ fi
+
+ local args=(
+ --no-shared
+ $(usex jit -Ojit -O2)
+
+ ${jit_backend}
+
+ pypy/goal/targetpypystandalone
+ --withmod-bz2
+ $(usex ncurses --with{,out}mod-_minimal_curses)
+ )
+
+ local interp=( pypy )
+ if use low-memory; then
+ local -x PYPY_GC_MAX_DELTA=200MB
+ interp+=( --jit loop_longevity=300 )
+ fi
+
+ # translate into the C sources
+ # we're going to build them ourselves since otherwise pypy does not
+ # free up the unneeded memory before spawning the compiler
+ set -- "${interp[@]}" rpython/bin/rpython --batch --source "${args[@]}"
+ echo -e "\033[1m${@}\033[0m"
+ "${@}" || die "translation failed"
+}
+
+src_compile() {
+ emake -C "${T}"/usession*-0/testing_1
+}
+
+src_install() {
+ cd "${T}"/usession*-0 || die
+ newbin "testing_1/pypy${PYVER}-c" "pypy${PYVER}-c-${PYPY_PV}"
+ insinto "/usr/include/pypy${PYVER}/${PYPY_PV}"
+ doins *.h
+ pax-mark m "${ED}/usr/bin/pypy${PYVER}-c-${PYPY_PV}"
+}
diff --git a/dev-python/pypy3_10/Manifest b/dev-python/pypy3_10/Manifest
index adc020909dc2..4e7c111b208e 100644
--- a/dev-python/pypy3_10/Manifest
+++ b/dev-python/pypy3_10/Manifest
@@ -1,2 +1,4 @@
DIST pypy3.10-gentoo-patches-7.3.15.tar.xz 4760 BLAKE2B 9131794293aa15cbafbc245727b5b60183606bb0273b05f4ebf8d24b525c3d6a39c8fe6f2c38487cda4a47d5defbdbb494c7786ee25a9ddc23cc9f209e5fc3cd SHA512 d2780be7ce91524bb71a47d51d9e9ad9a6aa5bd6c19903c90391cf7e6d4c9a96a98f414d22e9da7af67960ab9639f9a0f58f103c90ca9d694dcdfc4f0982bd6b
+DIST pypy3.10-gentoo-patches-7.3.16.tar.xz 4752 BLAKE2B a5cd87f30c0b20bf5d49c3b5c979c12231d6b67750e777d4488093094d5998e6f0d9adba51c04704eb31d621089aeb12ee5a6b0a58dad0ecda0d60d2ecbdab6d SHA512 e2779841a3e56e384134416ce2a10e1e00a11d7c720023506370fb9f54363da6b7300b4019c121aa1874152b62d9679ebcd3dd679fd0dbd2bf524520990b6f38
DIST pypy3.10-v7.3.15-src.tar.bz2 23934723 BLAKE2B 12b438729547faa81bc31c429e166d4bfab2b4e76cb16a687886903ad83e3369e0532297222eafbc8b0f4ae006d87cbe15b2c360ad828fd9a44124067aa788ff SHA512 84f9a30484cf0b0bcf3ef1f71ce2ecae02a51b6609acc4f6edd4096302c9940541dc947f3f0767216d83d261f8db85ea43760af8ce3c9137c70aabe5571d1249
+DIST pypy3.10-v7.3.16-src.tar.bz2 23358556 BLAKE2B 4eddae47dea1005b9450b9d3d23bd90782dffecdc252eff4fd3195a61e0e7ebbdafaf4c4b5d318c88534f152c1110c3bc4f76f43a7e711a859dd4330841a0e0b SHA512 5b941e3b5c7b0c7a50413e16122bad3e167dcc4ee159ce53e9716e9d5af79d600823f3d7442b7562bb568ff027723e22904fc0840dc06bd26e3da38c93cc5b94
diff --git a/dev-python/pypy3_10/pypy3_10-7.3.16.ebuild b/dev-python/pypy3_10/pypy3_10-7.3.16.ebuild
new file mode 100644
index 000000000000..5e7deb31db00
--- /dev/null
+++ b/dev-python/pypy3_10/pypy3_10-7.3.16.ebuild
@@ -0,0 +1,212 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit multiprocessing pax-utils toolchain-funcs
+
+PYPY_PV=${PV%_p*}
+PYVER=3.10
+MY_P="pypy${PYVER}-v${PYPY_PV/_}"
+PATCHSET="pypy${PYVER}-gentoo-patches-${PV/_rc/rc}"
+
+DESCRIPTION="A fast, compliant alternative implementation of the Python (${PYVER}) language"
+HOMEPAGE="
+ https://www.pypy.org/
+ https://github.com/pypy/pypy/
+"
+SRC_URI="
+ https://downloads.python.org/pypy/${MY_P}-src.tar.bz2
+ https://buildbot.pypy.org/pypy/${MY_P}-src.tar.bz2
+ https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz
+"
+S="${WORKDIR}/${MY_P}-src"
+
+LICENSE="MIT"
+# pypy3 -c 'import sysconfig; print(sysconfig.get_config_var("SOABI"))'
+# also check pypy/interpreter/pycode.py -> pypy_incremental_magic
+SLOT="0/pypy310-pp73-384"
+KEYWORDS="amd64 ~arm64 ~ppc64 x86 ~amd64-linux ~x86-linux"
+IUSE="+ensurepip gdbm +jit ncurses sqlite tk"
+# many tests are failing upstream
+# see https://buildbot.pypy.org/summary?branch=py${PYVER}
+RESTRICT="test"
+
+RDEPEND="
+ || (
+ >=dev-python/${PN}-exe-${PYPY_PV}:${PYPY_PV}[bzip2(+),ncurses?]
+ >=dev-python/${PN}-exe-bin-${PYPY_PV}:${PYPY_PV}
+ )
+ dev-lang/python-exec[python_targets_pypy3(-)]
+ dev-libs/openssl:0=
+ dev-python/gentoo-common
+ ensurepip? ( dev-python/ensurepip-wheels )
+ gdbm? ( sys-libs/gdbm:0= )
+ sqlite? ( dev-db/sqlite:3= )
+ tk? (
+ dev-lang/tk:0=
+ dev-tcltk/tix:0=
+ )
+"
+DEPEND="
+ ${RDEPEND}
+"
+
+src_prepare() {
+ local PATCHES=(
+ "${WORKDIR}/${PATCHSET}"
+ )
+
+ default
+}
+
+src_configure() {
+ tc-export CC
+}
+
+src_compile() {
+ mkdir bin || die
+ # switch to the layout expected for cffi module builds
+ mkdir include/pypy${PYVER} || die
+ # copy over to make sys.prefix happy
+ cp -p "${BROOT}"/usr/bin/pypy${PYVER}-c-${PYPY_PV} pypy${PYVER}-c || die
+ cp -p "${BROOT}"/usr/include/pypy${PYVER}/${PYPY_PV}/* include/pypy${PYVER}/ || die
+ # (not installed by pypy-exe)
+ rm pypy/module/cpyext/include/_numpypy/numpy/README || die
+ mv pypy/module/cpyext/include/* include/pypy${PYVER}/ || die
+ mv pypy/module/cpyext/parse/*.h include/pypy${PYVER}/ || die
+ pax-mark m pypy${PYVER}-c
+
+ # verify the subslot
+ local soabi=$(
+ ./pypy${PYVER}-c - <<-EOF
+ import importlib.util
+ import sysconfig
+ soabi = sysconfig.get_config_var("SOABI")
+ magic = importlib.util._RAW_MAGIC_NUMBER & 0xffff
+ print(f"{soabi}-{magic}")
+ EOF
+ )
+ [[ ${soabi} == ${SLOT#*/} ]] || die "update subslot to ${soabi}"
+
+ # Add epython.py to the distribution
+ echo 'EPYTHON="pypy3"' > lib-python/3/epython.py || die
+
+ einfo "Generating caches and CFFI modules ..."
+
+ # Generate sysconfig data
+ local host_gnu_type=$(sh pypy/tool/release/config.guess)
+ local overrides=(
+ HOST_GNU_TYPE "${host_gnu_type:-unknown}"
+ INCLUDEPY "${EPREFIX}/usr/include/pypy${PYVER}"
+ LIBDIR "${EPREFIX}/usr/$(get_libdir)"
+ TZPATH "${EPREFIX}/usr/share/zoneinfo"
+ WHEEL_PKG_DIR "${EPREFIX}/usr/lib/python/ensurepip"
+ )
+ ./pypy${PYVER}-c -m sysconfig --generate-posix-vars "${overrides[@]}" || die
+ local outdir
+ outdir=$(<pybuilddir.txt) || die
+ cp "${outdir}"/_sysconfigdata__*.py lib-python/3/ || die
+
+ # Generate Grammar and PatternGrammar pickles.
+ ./pypy${PYVER}-c - <<-EOF || die "Generation of Grammar and PatternGrammar pickles failed"
+ import lib2to3.pygram
+ import lib2to3.patcomp
+ lib2to3.patcomp.PatternCompiler()
+ EOF
+
+ # Generate cffi modules
+ # Please keep in sync with lib_pypy/pypy_tools/build_cffi_imports.py!
+ # (NB: we build CFFI modules first to avoid error log when importing
+ # build_cffi_imports).
+ cffi_targets=(
+ pypy_util blake2/_blake2 sha3/_sha3 ssl
+ audioop syslog pwdgrp resource lzma posixshmem
+ ctypes_test testmultiphase
+ )
+ use gdbm && cffi_targets+=( gdbm )
+ use ncurses && cffi_targets+=( curses )
+ use sqlite && cffi_targets+=( sqlite3 )
+ use tk && cffi_targets+=( tkinter/tklib )
+
+ local t
+ # all modules except tkinter output to .
+ # tkinter outputs to the correct dir ...
+ cd lib_pypy || die
+ for t in "${cffi_targets[@]}"; do
+ # tkinter doesn't work via -m
+ ../pypy${PYVER}-c "_${t}_build.py" || die "Failed to build CFFI bindings for ${t}"
+ done
+ # testcapi does not have a "build" script
+ ../pypy${PYVER}-c -c "import _testcapi" || die
+
+ # Verify that CFFI module list is up-to-date
+ local expected_cksum=a4138e48
+ local local_cksum=$(
+ ../pypy${PYVER}-c - <<-EOF
+ import binascii
+ import json
+ from pypy_tools.build_cffi_imports import cffi_build_scripts as x
+ print("%08x" % (binascii.crc32(json.dumps(x).encode()),))
+ EOF
+ )
+ if [[ ${local_cksum} != ${expected_cksum} ]]; then
+ die "Please verify cffi_targets and update checksum to ${local_cksum}"
+ fi
+
+ # Cleanup temporary objects
+ find \( -name "*_cffi.c" -o -name '*.o' \) -delete || die
+ find -type d -empty -delete || die
+}
+
+src_install() {
+ einfo "Installing PyPy ..."
+ dodir /usr/bin
+ dosym pypy${PYVER}-c-${PYPY_PV} /usr/bin/pypy${PYVER}
+ insinto /usr/lib/pypy${PYVER}
+ # preserve mtimes to avoid obsoleting caches
+ insopts -p
+ doins -r lib-python/3/. lib_pypy/.
+ insinto /usr/include
+ doins -r include/pypy${PYVER}
+
+ # replace copied headers with symlinks
+ for x in "${BROOT}"/usr/include/pypy${PYVER}/${PYPY_PV}/*; do
+ dosym "${PYPY_PV}/${x##*/}" "/usr/include/pypy${PYVER}/${x##*/}"
+ done
+
+ dodoc README.rst
+
+ local dest=/usr/lib/pypy${PYVER}
+ rm -r "${ED}${dest}"/ensurepip/_bundled || die
+ if ! use ensurepip; then
+ rm -r "${ED}${dest}"/ensurepip || die
+ fi
+ if ! use gdbm; then
+ rm -r "${ED}${dest}"/_gdbm* || die
+ fi
+ if ! use sqlite; then
+ rm -r "${ED}${dest}"/sqlite3 \
+ "${ED}${dest}"/_sqlite3* \
+ "${ED}${dest}"/test/test_sqlite.py || die
+ fi
+ if ! use tk; then
+ rm -r "${ED}${dest}"/{idlelib,tkinter} \
+ "${ED}${dest}"/_tkinter \
+ "${ED}${dest}"/test/test_{tcl,tk,ttk*}.py || die
+ fi
+ dosym ../python/EXTERNALLY-MANAGED "${dest}/EXTERNALLY-MANAGED"
+
+ local -x PYTHON=${ED}/usr/bin/pypy${PYVER}-c-${PYPY_PV}
+ # temporarily copy to build tree to facilitate module builds
+ cp -p "${BROOT}/usr/bin/pypy${PYVER}-c-${PYPY_PV}" "${PYTHON}" || die
+
+ einfo "Byte-compiling Python standard library..."
+ # exclude list from CPython Makefile.pre.in
+ "${PYTHON}" -m compileall -j "$(makeopts_jobs)" -o 0 -o 1 -o 2 \
+ -x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \
+ --hardlink-dupes -q -f -d "${dest}" "${ED}${dest}" || die
+
+ # remove to avoid collisions
+ rm "${PYTHON}" || die
+}
diff --git a/dev-python/pypy3_9-exe-bin/Manifest b/dev-python/pypy3_9-exe-bin/Manifest
index 4f56a7eaa2ca..2bef3092572c 100644
--- a/dev-python/pypy3_9-exe-bin/Manifest
+++ b/dev-python/pypy3_9-exe-bin/Manifest
@@ -6,3 +6,11 @@ DIST pypy3_9-exe-7.3.15-1.ppc64le-musl.gpkg.tar 6635520 BLAKE2B 89974e2537e9c2f1
DIST pypy3_9-exe-7.3.15-1.ppc64le.gpkg.tar 10301440 BLAKE2B 0a1a6f625a0929a65bfe01b333143d1ebe6c6c89a9a9bc1ec0c2a9274f897c56e8e080fecfbf6066d0b033d84582c7d71fbf03cb6310c01393e7f28d2e4aa2c1 SHA512 256fa79652a070747a865728f7e53e5b6d6ee4f8cdaca7cbbcf310cec883f8ed9606756bd1cb3d628fa7ba8e55f9fb7f2fa497e93c82567ff285c8ae913a3da2
DIST pypy3_9-exe-7.3.15-1.x86-musl.gpkg.tar 8919040 BLAKE2B 58f523aa9082284adc5b4fb131023adbeba411654501e71ba286abe5e0501d070180a44236c57f39bc310ad35f5734f314139b9701c4e48ae304674eeae5ec4e SHA512 9dda550b304e73453e5eea8a5243ac2796576cb3e70ba770c8096d3077c99a0663d6a5d3f2ade3e88b6e814f994e71d5b56dfe779c3d2fc51242c01f8602bcb2
DIST pypy3_9-exe-7.3.15-1.x86.gpkg.tar 8898560 BLAKE2B c8d3fcb749e5317e5bdd37981318cdea6ed801fccfdcf19dbc2c40457ac32e2d02e8ec500f25149172daea91decf79e62f7fd410512cf9d3e63c31f1d7c323b8 SHA512 1a547f42b739095658d96e1c8432b43f49913e0053f7ec596b2f409d6428c6291f741b56addcf88dac97f053089ca37c66b46a44b4284b00dc37b1918a5fdeff
+DIST pypy3_9-exe-7.3.16-1.amd64-musl.gpkg.tar 11939840 BLAKE2B 7467d16c97696cf2c75f2840a0e898c56325f4766ffdd5c2193ca3908a7fce243ee9354d03d75b410d3b7290ebb5be6365bca892cebecf3f7c76053c33883c03 SHA512 ccac91b61018eac95cb394e8bd696ab72295cc7d607fc183d95ffde630ef01823a46f1a5ab6043eb88beacd54bbc368894ad038b40e8c3b19c66beff8a5d568e
+DIST pypy3_9-exe-7.3.16-1.amd64.gpkg.tar 11950080 BLAKE2B 92b1ad6e13dfb221258452c684d95ee30a673c964e502cd1e3b9358220280eff16f2e070469e6a4a2167cb907a4aafb537a56a9ab623595bbaa003f6ae5264e8 SHA512 b0716129d93e450c68710971ab4251e7955e5fb16dc3edf0fdea5ef7ad0babc3243e84398754a9afd85e9f463a6d0a9427f8ca8867006c7c5354adad023da051
+DIST pypy3_9-exe-7.3.16-1.arm64-musl.gpkg.tar 10076160 BLAKE2B a7423e9708f3d3b300b8556ae985843539bf8f13974645073df09107e27ff4d2fb62b21f345966ba2356ddf3e45d4172350393875d0948ca083e9dc4c46adffa SHA512 49549b5b87360be6f09b3ad41a31cd60367f4cced75dc0b32f8267d0a1da4e04efd258ca593304b4dc998e8627e7b81fd6e15110d44ab101cd9108fd4e14f2c0
+DIST pypy3_9-exe-7.3.16-1.arm64.gpkg.tar 10035200 BLAKE2B 39830cf926e990cf2e70baa97e5d486ae171287a4a459501b41fb3849e55cf5cacc07d53054d8470f8ea0265a0b9b8af9a451ee97dc717d7afc70fee0c470578 SHA512 1e93d709dd452b5e4d2b996419ea24450fb96b02e88dd0317f83539f89904ace54defa23888c6eb777237143eeeeb7cf1caef6d502013d06cf8ff5365c73cb38
+DIST pypy3_9-exe-7.3.16-1.ppc64le-musl.gpkg.tar 6676480 BLAKE2B 0822479c1ea9b51ff6996cd9b5484506e2419977fa23a156d72b84f3d7e4d6475f8f1638954e9de98bf8c07c1c4c8e22dd06a7d501940d4cbc5a60d91049a055 SHA512 662284692e9b253c3f43244d4ffc2d837f2dd5f3324b0cf6b035104a2ecdeca6e678767da53f638ed59b8d84d1b99a63ddc8740c943eb16f5714f2bed5ef9f91
+DIST pypy3_9-exe-7.3.16-1.ppc64le.gpkg.tar 10229760 BLAKE2B 8062194aa43492a9d8c0762ae0c76db0f1f5c74250c27da9eec052c1822548ad93a69f729d6130be969e50c17b6c601dcee8a11e9a2721390f53f8bf248f002f SHA512 4e78792c8bc62e56cd5e4e3ff6824d477c48d2aa79f6efb6402c59c05fd1a8b572e8df6e5c269d4dc5ecbe2118db12dea1ba8c8f7970ce63f34a7a005e1d6280
+DIST pypy3_9-exe-7.3.16-1.x86-musl.gpkg.tar 8949760 BLAKE2B 75f1713623ee220ad8bb5fd74cc0c5647cdb753a94c927a0030a102e1d721c8a4195248fe8ba4c833657fccdeeb74557cae389f11d5faf5b31166dea5afbb532 SHA512 9ad3c42756a6d23e1af0c9241da8989b6af90baf88062148b35934a6873967d41577857d845c07655243c4a840a501f60ba690326f593edfad2a5207adc0aefd
+DIST pypy3_9-exe-7.3.16-1.x86.gpkg.tar 8970240 BLAKE2B bafdc25fbf3baaff5a2dc7867edef2f90d17045e51a8eed212fd00e22643aebc492d972f60867d221b3fdf4c3502c387d95f123ba6d34641ccbbf0e606ba0d89 SHA512 bb6f57982c01c6cb372afe7bebef2e1c240e3ef67d75c7ff36d999b7ddc64c12b75a5b0fad528a6dd05a4680e44dafdaa5f1d6534f7ba15a3f77629d02f30310
diff --git a/dev-python/pypy3_9-exe-bin/pypy3_9-exe-bin-7.3.16.ebuild b/dev-python/pypy3_9-exe-bin/pypy3_9-exe-bin-7.3.16.ebuild
new file mode 100644
index 000000000000..b4d8e231b125
--- /dev/null
+++ b/dev-python/pypy3_9-exe-bin/pypy3_9-exe-bin-7.3.16.ebuild
@@ -0,0 +1,85 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit pax-utils unpacker
+
+PYVER=3.9
+MY_P=pypy3_9-exe-${PV}-1
+
+DESCRIPTION="PyPy3.9 executable (pre-built version)"
+HOMEPAGE="
+ https://www.pypy.org/
+ https://github.com/pypy/pypy/
+"
+SRC_URI="
+ elibc_glibc? (
+ amd64? (
+ https://dev.gentoo.org/~mgorny/binpkg/amd64/pypy/dev-python/pypy3_9-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.amd64.gpkg.tar
+ )
+ arm64? (
+ https://dev.gentoo.org/~mgorny/binpkg/arm64/pypy/dev-python/pypy3_9-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.arm64.gpkg.tar
+ )
+ ppc64? (
+ https://dev.gentoo.org/~mgorny/binpkg/ppc64le/pypy/dev-python/pypy3_9-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.ppc64le.gpkg.tar
+ )
+ x86? (
+ https://dev.gentoo.org/~mgorny/binpkg/x86/pypy/dev-python/pypy3_9-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.x86.gpkg.tar
+ )
+ )
+ elibc_musl? (
+ amd64? (
+ https://dev.gentoo.org/~mgorny/binpkg/amd64-musl/pypy/dev-python/pypy3_9-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.amd64-musl.gpkg.tar
+ )
+ arm64? (
+ https://dev.gentoo.org/~mgorny/binpkg/arm64-musl/pypy/dev-python/pypy3_9-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.arm64-musl.gpkg.tar
+ )
+ ppc64? (
+ https://dev.gentoo.org/~mgorny/binpkg/ppc64le-musl/pypy/dev-python/pypy3_9-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.ppc64le-musl.gpkg.tar
+ )
+ x86? (
+ https://dev.gentoo.org/~mgorny/binpkg/x86-musl/pypy/dev-python/pypy3_9-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.x86-musl.gpkg.tar
+ )
+ )
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="MIT"
+SLOT="${PV%_p*}"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+
+# sys-devel/gcc for libgcc_s.so
+RDEPEND="
+ app-arch/bzip2:0/1
+ dev-libs/expat:0/0
+ dev-libs/libffi:0/8
+ sys-libs/ncurses:0/6
+ >=sys-libs/zlib-1.1.3:0/1
+ virtual/libintl:0/0
+ elibc_glibc? (
+ sys-devel/gcc
+ >=sys-libs/glibc-2.35
+ )
+ !dev-python/pypy3_9-exe:${SLOT}
+"
+
+PYPY_PV=${PV%_p*}
+QA_PREBUILT="
+ usr/bin/pypy${PYVER}-c-${PYPY_PV}
+"
+
+src_install() {
+ insinto /
+ doins -r image/usr
+ fperms +x "/usr/bin/pypy${PYVER}-c-${PYPY_PV}"
+ pax-mark m "${ED}/usr/bin/pypy${PYVER}-c-${PYPY_PV}"
+}
diff --git a/dev-python/pypy3_9-exe/Manifest b/dev-python/pypy3_9-exe/Manifest
index 3e201830e36d..9901e21f155e 100644
--- a/dev-python/pypy3_9-exe/Manifest
+++ b/dev-python/pypy3_9-exe/Manifest
@@ -1,2 +1,4 @@
DIST pypy3.9-gentoo-patches-7.3.15.tar.xz 5800 BLAKE2B e3466eb528c7cfaa8a189552041852d29bbacb45e08dc967deec1d8486107725ab2b2b1e65c98307983ff1f3ad038d3e54bf84eaadc32060185661c8023dea06 SHA512 c834433bfaaa1cd081fb71f9e122810b66fbd0a52f8473b6ec02a8615f0b0328da51ca1e3f0f209d325d9884876b634dbd1ec202f428620044fe5e60b4ce910a
+DIST pypy3.9-gentoo-patches-7.3.16.tar.xz 5764 BLAKE2B 094740bc594bc63648bba997e2a8a8eddd857e6f63594fc3d5f3bca9e74bce101ab56ddf59afd75d62e91c17d89271d7f8b52da6b19adf480dd9fab9f0c6dc2c SHA512 efbe3ac941be19b270336e7b31999114d4334cfd3cc0ab5f2499e41825a51bc7c005e10302114813741772ae0412466c000ab33b64f01d639d5689460f8befcb
DIST pypy3.9-v7.3.15-src.tar.bz2 24694333 BLAKE2B 151c3c8b828c7a35cfd63dd73b8683c3fe5529c5f6df7cc628d2967e5c61e16490b8663efe838fc6efd9f0b4a08fde8c9315e2f0a471bb62a2395055f2f130c6 SHA512 64faca74c507ef3e8dd2df34ad81874c24bc336e79ecf53bbbb43c21adebdea60efafe6ad38bdbf15bc2a677980d7db2c2c0affa04beb7e7e1b739d85e17f333
+DIST pypy3.9-v7.3.16-src.tar.bz2 23686849 BLAKE2B 736b173d8bd6b19785e64827d289feb39e30e93caaef3071a5185cc5cbaab4aed23b9da89e34a464dad0c0d5142db9dc238a1dd221aea299f95bea2e47299a81 SHA512 bd13cddb0b4cab4e200d2eafd8239c76209a49f8e847193c5ed0fe446ca46271446fc762cafd2aa8f410d022bc65abcd48ba7148502b70b901565e187058310d
diff --git a/dev-python/pypy3_9-exe/pypy3_9-exe-7.3.16.ebuild b/dev-python/pypy3_9-exe/pypy3_9-exe-7.3.16.ebuild
new file mode 100644
index 000000000000..b75e5d8f5409
--- /dev/null
+++ b/dev-python/pypy3_9-exe/pypy3_9-exe-7.3.16.ebuild
@@ -0,0 +1,132 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit check-reqs pax-utils toolchain-funcs
+
+PYPY_PV=${PV%_p*}
+PYVER=3.9
+MY_P="pypy${PYVER}-v${PYPY_PV/_}"
+PATCHSET="pypy${PYVER}-gentoo-patches-${PV/_}"
+
+DESCRIPTION="PyPy3.9 executable (build from source)"
+HOMEPAGE="
+ https://www.pypy.org/
+ https://github.com/pypy/pypy/
+"
+SRC_URI="
+ https://downloads.python.org/pypy/${MY_P}-src.tar.bz2
+ https://buildbot.pypy.org/pypy/${MY_P}-src.tar.bz2
+ https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz
+"
+S="${WORKDIR}/${MY_P}-src"
+
+LICENSE="MIT"
+SLOT="${PYPY_PV}"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="+jit low-memory ncurses cpu_flags_x86_sse2"
+
+RDEPEND="
+ app-arch/bzip2:0=
+ dev-libs/expat:0=
+ dev-libs/libffi:0=
+ >=sys-libs/zlib-1.1.3:0=
+ virtual/libintl:0=
+ ncurses? ( sys-libs/ncurses:0= )
+ !dev-python/pypy3_9-exe-bin:${SLOT}
+"
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ dev-python/pypy
+ virtual/pkgconfig
+"
+
+check_env() {
+ if use low-memory; then
+ CHECKREQS_MEMORY="1750M"
+ use amd64 && CHECKREQS_MEMORY="3500M"
+ else
+ CHECKREQS_MEMORY="3G"
+ use amd64 && CHECKREQS_MEMORY="6G"
+ fi
+
+ check-reqs_pkg_pretend
+}
+
+pkg_pretend() {
+ [[ ${MERGE_TYPE} != binary ]] && check_env
+}
+
+pkg_setup() {
+ [[ ${MERGE_TYPE} != binary ]] && check_env
+}
+
+src_prepare() {
+ local PATCHES=(
+ "${WORKDIR}/${PATCHSET}"
+ )
+ default
+}
+
+src_configure() {
+ tc-export CC
+
+ local jit_backend
+ if use jit; then
+ jit_backend='--jit-backend='
+
+ # We only need the explicit sse2 switch for x86.
+ # On other arches we can rely on autodetection which uses
+ # compiler macros. Plus, --jit-backend= doesn't accept all
+ # the modern values...
+
+ if use x86; then
+ if use cpu_flags_x86_sse2; then
+ jit_backend+=x86
+ else
+ jit_backend+=x86-without-sse2
+ fi
+ else
+ jit_backend+=auto
+ fi
+ fi
+
+ local args=(
+ --no-shared
+ $(usex jit -Ojit -O2)
+
+ ${jit_backend}
+
+ pypy/goal/targetpypystandalone
+ --withmod-bz2
+ $(usex ncurses --with{,out}mod-_minimal_curses)
+ )
+
+ local interp=( pypy )
+ if use low-memory; then
+ local -x PYPY_GC_MAX_DELTA=200MB
+ interp+=( --jit loop_longevity=300 )
+ fi
+
+ # translate into the C sources
+ # we're going to build them ourselves since otherwise pypy does not
+ # free up the unneeded memory before spawning the compiler
+ set -- "${interp[@]}" rpython/bin/rpython --batch --source "${args[@]}"
+ echo -e "\033[1m${@}\033[0m"
+ "${@}" || die "translation failed"
+}
+
+src_compile() {
+ emake -C "${T}"/usession*-0/testing_1
+}
+
+src_install() {
+ cd "${T}"/usession*-0 || die
+ newbin "testing_1/pypy${PYVER}-c" "pypy${PYVER}-c-${PYPY_PV}"
+ insinto "/usr/include/pypy${PYVER}/${PYPY_PV}"
+ doins *.h
+ pax-mark m "${ED}/usr/bin/pypy${PYVER}-c-${PYPY_PV}"
+}
diff --git a/dev-python/pypy3_9/Manifest b/dev-python/pypy3_9/Manifest
index 3e201830e36d..9901e21f155e 100644
--- a/dev-python/pypy3_9/Manifest
+++ b/dev-python/pypy3_9/Manifest
@@ -1,2 +1,4 @@
DIST pypy3.9-gentoo-patches-7.3.15.tar.xz 5800 BLAKE2B e3466eb528c7cfaa8a189552041852d29bbacb45e08dc967deec1d8486107725ab2b2b1e65c98307983ff1f3ad038d3e54bf84eaadc32060185661c8023dea06 SHA512 c834433bfaaa1cd081fb71f9e122810b66fbd0a52f8473b6ec02a8615f0b0328da51ca1e3f0f209d325d9884876b634dbd1ec202f428620044fe5e60b4ce910a
+DIST pypy3.9-gentoo-patches-7.3.16.tar.xz 5764 BLAKE2B 094740bc594bc63648bba997e2a8a8eddd857e6f63594fc3d5f3bca9e74bce101ab56ddf59afd75d62e91c17d89271d7f8b52da6b19adf480dd9fab9f0c6dc2c SHA512 efbe3ac941be19b270336e7b31999114d4334cfd3cc0ab5f2499e41825a51bc7c005e10302114813741772ae0412466c000ab33b64f01d639d5689460f8befcb
DIST pypy3.9-v7.3.15-src.tar.bz2 24694333 BLAKE2B 151c3c8b828c7a35cfd63dd73b8683c3fe5529c5f6df7cc628d2967e5c61e16490b8663efe838fc6efd9f0b4a08fde8c9315e2f0a471bb62a2395055f2f130c6 SHA512 64faca74c507ef3e8dd2df34ad81874c24bc336e79ecf53bbbb43c21adebdea60efafe6ad38bdbf15bc2a677980d7db2c2c0affa04beb7e7e1b739d85e17f333
+DIST pypy3.9-v7.3.16-src.tar.bz2 23686849 BLAKE2B 736b173d8bd6b19785e64827d289feb39e30e93caaef3071a5185cc5cbaab4aed23b9da89e34a464dad0c0d5142db9dc238a1dd221aea299f95bea2e47299a81 SHA512 bd13cddb0b4cab4e200d2eafd8239c76209a49f8e847193c5ed0fe446ca46271446fc762cafd2aa8f410d022bc65abcd48ba7148502b70b901565e187058310d
diff --git a/dev-python/pypy3_9/pypy3_9-7.3.16.ebuild b/dev-python/pypy3_9/pypy3_9-7.3.16.ebuild
new file mode 100644
index 000000000000..cd6b3d3e3ed8
--- /dev/null
+++ b/dev-python/pypy3_9/pypy3_9-7.3.16.ebuild
@@ -0,0 +1,211 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit multiprocessing pax-utils toolchain-funcs
+
+PYPY_PV=${PV%_p*}
+PYVER=3.9
+MY_P="pypy${PYVER}-v${PYPY_PV/_}"
+PATCHSET="pypy${PYVER}-gentoo-patches-${PV/_rc/rc}"
+
+DESCRIPTION="A fast, compliant alternative implementation of the Python (${PYVER}) language"
+HOMEPAGE="
+ https://www.pypy.org/
+ https://github.com/pypy/pypy/
+"
+SRC_URI="
+ https://downloads.python.org/pypy/${MY_P}-src.tar.bz2
+ https://buildbot.pypy.org/pypy/${MY_P}-src.tar.bz2
+ https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz
+"
+S="${WORKDIR}/${MY_P}-src"
+
+LICENSE="MIT"
+# pypy3 -c 'import sysconfig; print(sysconfig.get_config_var("SOABI"))'
+# also check pypy/interpreter/pycode.py -> pypy_incremental_magic
+SLOT="0/pypy39-pp73-336"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="+ensurepip gdbm +jit ncurses sqlite tk"
+# many tests are failing upstream
+# see https://buildbot.pypy.org/summary?branch=py${PYVER}
+RESTRICT="test"
+
+RDEPEND="
+ || (
+ >=dev-python/${PN}-exe-${PYPY_PV}:${PYPY_PV}[bzip2(+),ncurses?]
+ >=dev-python/${PN}-exe-bin-${PYPY_PV}:${PYPY_PV}
+ )
+ dev-lang/python-exec[python_targets_pypy3(-)]
+ dev-libs/openssl:0=
+ dev-python/gentoo-common
+ ensurepip? ( dev-python/ensurepip-wheels )
+ gdbm? ( sys-libs/gdbm:0= )
+ sqlite? ( dev-db/sqlite:3= )
+ tk? (
+ dev-lang/tk:0=
+ dev-tcltk/tix:0=
+ )
+"
+DEPEND="
+ ${RDEPEND}
+"
+
+src_prepare() {
+ local PATCHES=(
+ "${WORKDIR}/${PATCHSET}"
+ )
+ default
+}
+
+src_configure() {
+ tc-export CC
+}
+
+src_compile() {
+ mkdir bin || die
+ # switch to the layout expected for cffi module builds
+ mkdir include/pypy${PYVER} || die
+ # copy over to make sys.prefix happy
+ cp -p "${BROOT}"/usr/bin/pypy${PYVER}-c-${PYPY_PV} pypy${PYVER}-c || die
+ cp -p "${BROOT}"/usr/include/pypy${PYVER}/${PYPY_PV}/* include/pypy${PYVER}/ || die
+ # (not installed by pypy-exe)
+ rm pypy/module/cpyext/include/_numpypy/numpy/README || die
+ mv pypy/module/cpyext/include/* include/pypy${PYVER}/ || die
+ mv pypy/module/cpyext/parse/*.h include/pypy${PYVER}/ || die
+ pax-mark m pypy${PYVER}-c
+
+ # verify the subslot
+ local soabi=$(
+ ./pypy${PYVER}-c - <<-EOF
+ import importlib.util
+ import sysconfig
+ soabi = sysconfig.get_config_var("SOABI")
+ magic = importlib.util._RAW_MAGIC_NUMBER & 0xffff
+ print(f"{soabi}-{magic}")
+ EOF
+ )
+ [[ ${soabi} == ${SLOT#*/} ]] || die "update subslot to ${soabi}"
+
+ # Add epython.py to the distribution
+ echo 'EPYTHON="pypy3"' > lib-python/3/epython.py || die
+
+ einfo "Generating caches and CFFI modules ..."
+
+ # Generate sysconfig data
+ local host_gnu_type=$(sh pypy/tool/release/config.guess)
+ local overrides=(
+ HOST_GNU_TYPE "${host_gnu_type:-unknown}"
+ INCLUDEPY "${EPREFIX}/usr/include/pypy${PYVER}"
+ LIBDIR "${EPREFIX}/usr/$(get_libdir)"
+ TZPATH "${EPREFIX}/usr/share/zoneinfo"
+ WHEEL_PKG_DIR "${EPREFIX}/usr/lib/python/ensurepip"
+ )
+ ./pypy${PYVER}-c -m sysconfig --generate-posix-vars "${overrides[@]}" || die
+ local outdir
+ outdir=$(<pybuilddir.txt) || die
+ cp "${outdir}"/_sysconfigdata__*.py lib-python/3/ || die
+
+ # Generate Grammar and PatternGrammar pickles.
+ ./pypy${PYVER}-c - <<-EOF || die "Generation of Grammar and PatternGrammar pickles failed"
+ import lib2to3.pygram
+ import lib2to3.patcomp
+ lib2to3.patcomp.PatternCompiler()
+ EOF
+
+ # Generate cffi modules
+ # Please keep in sync with lib_pypy/pypy_tools/build_cffi_imports.py!
+ # (NB: we build CFFI modules first to avoid error log when importing
+ # build_cffi_imports).
+ cffi_targets=(
+ pypy_util blake2/_blake2 sha3/_sha3 ssl
+ audioop syslog pwdgrp resource lzma posixshmem
+ ctypes_test testmultiphase
+ )
+ use gdbm && cffi_targets+=( gdbm )
+ use ncurses && cffi_targets+=( curses )
+ use sqlite && cffi_targets+=( sqlite3 )
+ use tk && cffi_targets+=( tkinter/tklib )
+
+ local t
+ # all modules except tkinter output to .
+ # tkinter outputs to the correct dir ...
+ cd lib_pypy || die
+ for t in "${cffi_targets[@]}"; do
+ # tkinter doesn't work via -m
+ ../pypy${PYVER}-c "_${t}_build.py" || die "Failed to build CFFI bindings for ${t}"
+ done
+ # testcapi does not have a "build" script
+ ../pypy${PYVER}-c -c "import _testcapi" || die
+
+ # Verify that CFFI module list is up-to-date
+ local expected_cksum=a4138e48
+ local local_cksum=$(
+ ../pypy${PYVER}-c - <<-EOF
+ import binascii
+ import json
+ from pypy_tools.build_cffi_imports import cffi_build_scripts as x
+ print("%08x" % (binascii.crc32(json.dumps(x).encode()),))
+ EOF
+ )
+ if [[ ${local_cksum} != ${expected_cksum} ]]; then
+ die "Please verify cffi_targets and update checksum to ${local_cksum}"
+ fi
+
+ # Cleanup temporary objects
+ find \( -name "*_cffi.c" -o -name '*.o' \) -delete || die
+ find -type d -empty -delete || die
+}
+
+src_install() {
+ einfo "Installing PyPy ..."
+ dodir /usr/bin
+ dosym pypy${PYVER}-c-${PYPY_PV} /usr/bin/pypy${PYVER}
+ insinto /usr/lib/pypy${PYVER}
+ # preserve mtimes to avoid obsoleting caches
+ insopts -p
+ doins -r lib-python/3/. lib_pypy/.
+ insinto /usr/include
+ doins -r include/pypy${PYVER}
+
+ # replace copied headers with symlinks
+ for x in "${BROOT}"/usr/include/pypy${PYVER}/${PYPY_PV}/*; do
+ dosym "${PYPY_PV}/${x##*/}" "/usr/include/pypy${PYVER}/${x##*/}"
+ done
+
+ dodoc README.rst
+
+ local dest=/usr/lib/pypy${PYVER}
+ rm -r "${ED}${dest}"/ensurepip/_bundled || die
+ if ! use ensurepip; then
+ rm -r "${ED}${dest}"/ensurepip || die
+ fi
+ if ! use gdbm; then
+ rm -r "${ED}${dest}"/_gdbm* || die
+ fi
+ if ! use sqlite; then
+ rm -r "${ED}${dest}"/sqlite3 \
+ "${ED}${dest}"/_sqlite3* \
+ "${ED}${dest}"/test/test_sqlite.py || die
+ fi
+ if ! use tk; then
+ rm -r "${ED}${dest}"/{idlelib,tkinter} \
+ "${ED}${dest}"/_tkinter \
+ "${ED}${dest}"/test/test_{tcl,tk,ttk*}.py || die
+ fi
+ dosym ../python/EXTERNALLY-MANAGED "${dest}/EXTERNALLY-MANAGED"
+
+ local -x PYTHON=${ED}/usr/bin/pypy${PYVER}-c-${PYPY_PV}
+ # temporarily copy to build tree to facilitate module builds
+ cp -p "${BROOT}/usr/bin/pypy${PYVER}-c-${PYPY_PV}" "${PYTHON}" || die
+
+ einfo "Byte-compiling Python standard library..."
+ # exclude list from CPython Makefile.pre.in
+ "${PYTHON}" -m compileall -j "$(makeopts_jobs)" -o 0 -o 1 -o 2 \
+ -x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \
+ --hardlink-dupes -q -f -d "${dest}" "${ED}${dest}" || die
+
+ # remove to avoid collisions
+ rm "${PYTHON}" || die
+}
diff --git a/dev-python/pyscard/pyscard-2.0.9.ebuild b/dev-python/pyscard/pyscard-2.0.9.ebuild
index eb9130e83cf3..5b86533914a9 100644
--- a/dev-python/pyscard/pyscard-2.0.9.ebuild
+++ b/dev-python/pyscard/pyscard-2.0.9.ebuild
@@ -21,7 +21,7 @@ SRC_URI="
LICENSE="LGPL-2.1"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+KEYWORDS="amd64 ~arm arm64 ~ppc64 ~riscv x86"
DEPEND="
sys-apps/pcsc-lite
diff --git a/dev-python/rapidfuzz/rapidfuzz-3.8.1.ebuild b/dev-python/rapidfuzz/rapidfuzz-3.8.1.ebuild
index 219eb7ea777e..e2e756493fd8 100644
--- a/dev-python/rapidfuzz/rapidfuzz-3.8.1.ebuild
+++ b/dev-python/rapidfuzz/rapidfuzz-3.8.1.ebuild
@@ -18,7 +18,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
# all these are header-only libraries
DEPEND="
diff --git a/dev-python/referencing/Manifest b/dev-python/referencing/Manifest
index e17c2a288a46..d09044e60e1d 100644
--- a/dev-python/referencing/Manifest
+++ b/dev-python/referencing/Manifest
@@ -1 +1,2 @@
DIST referencing-0.34.0.tar.gz 62624 BLAKE2B c5e8a5d19121f2d09ea443248690e2fa9069140b027b6fa2f741d5133c931da12ae87d8ac7923bfc52ca3d93c966399cf48c1f31d6f4066b6a44488ec50b5d24 SHA512 97e4cfe0fb306068abfd6c0348d12483cbd3705c0b4c8852c0f0209c4d05be08bf77fa3ec56af77a2815a4ff3294ff06d3f09f213a165ae17bdcab246e47c178
+DIST referencing-0.35.0.tar.gz 62860 BLAKE2B 314f98e3c15d384a704def8c1cd62aea9ccfbfb0abce09d27b44062e68e284774314b79c3e9f6b3691f8e8e75e231f9bb0a7bb3c140c05d41f809515f8b4edd0 SHA512 c637a3767a7d03445adb14bcb4c1e9c9a069779d31c5043f300e34398c9c728dfe09cdf9601516a96280d6c095740114e3bd4a6b5103f8a1938b1be6b9cb9cb3
diff --git a/dev-python/referencing/referencing-0.35.0.ebuild b/dev-python/referencing/referencing-0.35.0.ebuild
new file mode 100644
index 000000000000..83f1fb7d7b51
--- /dev/null
+++ b/dev-python/referencing/referencing-0.35.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 2023-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="Cross-specification JSON referencing (JSON Schema, OpenAPI...)"
+HOMEPAGE="
+ https://github.com/python-jsonschema/referencing/
+ https://pypi.org/project/referencing/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/attrs-22.2.0[${PYTHON_USEDEP}]
+ >=dev-python/rpds-py-0.7.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/hatch-vcs[${PYTHON_USEDEP}]
+ test? (
+ dev-python/jsonschema[${PYTHON_USEDEP}]
+ dev-python/pytest-subtests[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/requests_download/requests_download-0.1.2-r2.ebuild b/dev-python/requests_download/requests_download-0.1.2-r2.ebuild
new file mode 100644
index 000000000000..b9b24833a414
--- /dev/null
+++ b/dev-python/requests_download/requests_download-0.1.2-r2.ebuild
@@ -0,0 +1,32 @@
+# Copyright 2019-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
+
+DESCRIPTION="A convenient function to download to a file using requests"
+HOMEPAGE="
+ https://github.com/takluyver/requests_download
+ https://pypi.org/project/requests_download/
+"
+SRC_URI="https://github.com/takluyver/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~mips ~x86"
+
+RDEPEND="
+ dev-python/requests[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ ${RDEPEND}
+"
+
+# there are no tests upstream
+RESTRICT="test"
+
+DOCS=( README.rst )
diff --git a/dev-python/rst-linker/Manifest b/dev-python/rst-linker/Manifest
index 3dbe53e3f09f..84cca2993867 100644
--- a/dev-python/rst-linker/Manifest
+++ b/dev-python/rst-linker/Manifest
@@ -1,2 +1,3 @@
DIST rst.linker-2.4.0.tar.gz 11340 BLAKE2B a1ae9c811b7d6fa2821bfbf5787dce75fd3d7e5d933ec15fbac9cd3bde08cfad59fdc81b3b58dc39d1209a27ca9dd8d2ecd68034b434b3f6d15469bfb98efa3d SHA512 31e3427ecf35b433cc9650138ee36090e99003b72c69b60b530835eb624d7eb13aae4cf81cc0044b36750798a4b8aa676e53e3b9eb335430076593640a243940
DIST rst_linker-2.5.0.tar.gz 11548 BLAKE2B eafa6a0076dd51d05779710cb3b41f4b6e5109b25ea71537bc4f4e75d8c0fe4c9329321833e5a9253bb4a51fab706488a78ece4679a4c52cd7fc0295cc29e76f SHA512 7aaa55ccbe34767f8c0e085703872f4112c5db142e81f7024fd0653fa74fcf0b9d15fec06998268e8161dc70dac6935ba7b380992a132ecaa2548ed0db3b5a13
+DIST rst_linker-2.6.0.tar.gz 11308 BLAKE2B 216c3d79b2de02fc53f1548127d7dc08d85d065e103659168b6e4b9521d75972f1ff28c78b45f59a9be09c16e66897c2506b0e48d37b3a08b114060999a76d09 SHA512 08977a88e53ebdb82f0e69923430e08a9ad643c184ad76154a7d5840c8193e71e53fd1b7fb97f6d74f65d55e3d45f5c0c262a60a1d030788d2c067f71918aa8e
diff --git a/dev-python/rst-linker/rst-linker-2.6.0.ebuild b/dev-python/rst-linker/rst-linker-2.6.0.ebuild
new file mode 100644
index 000000000000..6506c26fba66
--- /dev/null
+++ b/dev-python/rst-linker/rst-linker-2.6.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 pypi
+
+DESCRIPTION="Sphinx plugin to add links and timestamps to the changelog"
+HOMEPAGE="
+ https://github.com/jaraco/rst.linker/
+ https://pypi.org/project/rst.linker/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc ~x86"
+
+RDEPEND="
+ dev-python/jaraco-context[${PYTHON_USEDEP}]
+ >=dev-python/jaraco-vcs-2.1[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ >=dev-python/setuptools-scm-3.4.1[${PYTHON_USEDEP}]
+ test? (
+ dev-python/path[${PYTHON_USEDEP}]
+ dev-python/pytest-subprocess[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/scikit-learn/Manifest b/dev-python/scikit-learn/Manifest
index 03935f21b43f..d71d11216c6d 100644
--- a/dev-python/scikit-learn/Manifest
+++ b/dev-python/scikit-learn/Manifest
@@ -1,2 +1 @@
-DIST scikit-learn-1.3.2.gh.tar.gz 7650823 BLAKE2B 170699917f46d6d3f4b9ebc314bc1ec45687dad0a4aec5d2cee6e288b5dbe508bad6dd80406501f289a33593c6482067393e9dc28155f85a4872a34523bf4199 SHA512 a3799e9b39b755a50ba225f836904a378f7d83a08274c614d0485e4d4d4a7b0c7adba2dbb6612f2ccb4e5167f872214a2853eff69d767dc70f52369bda7a230b
DIST scikit-learn-1.4.2.gh.tar.gz 7907022 BLAKE2B d52b808ae981883438592ee9155797fedf832181b0fe66c25728aedc43143143d44af190977b22844e3322da77cd21a1ce5c733e254686722df7f4c43029192c SHA512 ac4eea3d1f1f7c7280694d59ccb1e58362e77080f65dc2d4644dc257e874d7ff0d2d5b7abeb18acffc2752382527c6e9bbf5ebc47a8a74a2fab2a543e0220951
diff --git a/dev-python/scikit-learn/scikit-learn-1.3.2-r1.ebuild b/dev-python/scikit-learn/scikit-learn-1.3.2-r1.ebuild
deleted file mode 100644
index 94104a167e42..000000000000
--- a/dev-python/scikit-learn/scikit-learn-1.3.2-r1.ebuild
+++ /dev/null
@@ -1,78 +0,0 @@
-# Copyright 2020-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{8,9,10,11,12} )
-
-inherit distutils-r1
-
-DESCRIPTION="Machine learning library for Python"
-HOMEPAGE="
- https://scikit-learn.org/stable/
- https://github.com/scikit-learn/scikit-learn/
- https://pypi.org/project/scikit-learn/
-"
-SRC_URI="
- https://github.com/scikit-learn/scikit-learn/archive/${PV}.tar.gz
- -> ${P}.gh.tar.gz
-"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 ~arm64 ppc64 ~riscv ~x86 ~arm64-macos ~x64-macos"
-IUSE="examples"
-
-DEPEND="
- virtual/blas:=
- virtual/cblas:=
-"
-RDEPEND="
- ${DEPEND}
- dev-python/wheel[${PYTHON_USEDEP}]
- >=dev-python/joblib-1.2.0[${PYTHON_USEDEP}]
- >=dev-python/numpy-1.22.3[${PYTHON_USEDEP}]
- >=dev-python/scipy-1.5.0[${PYTHON_USEDEP}]
- >=dev-python/threadpoolctl-2.0.0[${PYTHON_USEDEP}]
-"
-BDEPEND="
- >=dev-python/pythran-0.14.0[${PYTHON_USEDEP}]
- dev-python/cython[${PYTHON_USEDEP}]
-"
-
-EPYTEST_XDIST=1
-distutils_enable_tests pytest
-
-# For some reason this wants to use urllib to fetch things from the internet
-# distutils_enable_sphinx doc \
-# dev-python/matplotlib \
-# dev-python/memory-profiler \
-# dev-python/numpydoc \
-# dev-python/pandas \
-# dev-python/pillow \
-# dev-python/seaborn \
-# dev-python/sphinx-gallery \
-# dev-python/sphinx-prompt \
-# dev-python/scikit-image
-
-python_test() {
- local EPYTEST_DESELECT=(
- # test broken with newer scipy, fixed upstream
- # https://github.com/scikit-learn/scikit-learn/issues/27578
- manifold/tests/test_locally_linear.py::test_singular_matrix
- # TODO
- gaussian_process/kernels.py::sklearn.gaussian_process.kernels.ExpSineSquared
- )
-
- rm -rf sklearn || die
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- epytest --pyargs sklearn
-}
-
-python_install_all() {
- find "${S}" -name \*LICENSE.txt -delete || die
- distutils-r1_python_install_all
- use examples && dodoc -r examples
-}
diff --git a/dev-python/scikit-learn/scikit-learn-1.4.2.ebuild b/dev-python/scikit-learn/scikit-learn-1.4.2.ebuild
index 3eb1e42cc334..623ea8e51fee 100644
--- a/dev-python/scikit-learn/scikit-learn-1.4.2.ebuild
+++ b/dev-python/scikit-learn/scikit-learn-1.4.2.ebuild
@@ -22,7 +22,7 @@ SRC_URI="
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86 ~arm64-macos ~x64-macos"
+KEYWORDS="amd64 ~arm64 ppc64 ~riscv ~x86 ~arm64-macos ~x64-macos"
IUSE="examples"
DEPEND="
diff --git a/dev-python/send2trash/Manifest b/dev-python/send2trash/Manifest
index b8c43f852c4d..e6dd4ffd8c12 100644
--- a/dev-python/send2trash/Manifest
+++ b/dev-python/send2trash/Manifest
@@ -1,2 +1 @@
-DIST Send2Trash-1.8.2.tar.gz 17487 BLAKE2B 3362a7e0c70f0e3f0f7a64676174d6c6f28290079590e08e4a746c0e19f96deca028aa521df58afa7f0ab47d78f286df01f98e903dfd771063af0ff40b4f6c08 SHA512 378107c8175e8d08566258daa13d3000e66ec03f732698180a2eb7f862c39d3c458be66ecf3f8864f559b961e29b777b8e7f5169468219e19723def62a69bb9c
DIST Send2Trash-1.8.3.tar.gz 17394 BLAKE2B 55f382ae81b2279214023daad3a7a8ac0d5f55ebbbe9a2c7af02d35b980f3342ecc5f9b4e734d3c233b65a1fdd058ed856b7a96f3685ebbf1eb4c7dd9d37e159 SHA512 81b9d6ce00830414daac0e1cafe2b69d42b750146f45e64c27750ee8f6d81f771145852a96bf51afa944d8c31959b8c9ac1b5e05c8793732039b690107789d93
diff --git a/dev-python/send2trash/send2trash-1.8.2.ebuild b/dev-python/send2trash/send2trash-1.8.2.ebuild
deleted file mode 100644
index 016a097ba263..000000000000
--- a/dev-python/send2trash/send2trash-1.8.2.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYPI_NO_NORMALIZE=1
-PYPI_PN=Send2Trash
-PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="Sends files to the Trash (or Recycle Bin)"
-HOMEPAGE="
- https://github.com/arsenetar/send2trash/
- https://pypi.org/project/Send2Trash/
-"
-
-SLOT="0"
-LICENSE="BSD"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-
-distutils_enable_tests pytest
diff --git a/dev-python/send2trash/send2trash-1.8.3.ebuild b/dev-python/send2trash/send2trash-1.8.3.ebuild
index 9a4d578a6fc2..d41615a8e5ce 100644
--- a/dev-python/send2trash/send2trash-1.8.3.ebuild
+++ b/dev-python/send2trash/send2trash-1.8.3.ebuild
@@ -18,6 +18,6 @@ HOMEPAGE="
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
distutils_enable_tests pytest
diff --git a/dev-python/spyder-kernels/Manifest b/dev-python/spyder-kernels/Manifest
index 96a4d8052c4b..8ed3fe7c9986 100644
--- a/dev-python/spyder-kernels/Manifest
+++ b/dev-python/spyder-kernels/Manifest
@@ -1,3 +1,2 @@
-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
+DIST spyder-kernels-3.0.0b5.tar.gz 237958 BLAKE2B 3684892bac2f3f525d133b6a7bac3d2f77cf772de09f61e5c58c5a7a914274688006345348f2ffcfa8af04ace2eaee2d97db709b0772cab15752a5d9c5fb6405 SHA512 f02fe0a2bbe1aa7849aa30f784ab507dcd988349f5874e1fe3bcc468d139eb27f168005c9d475dcc826252dca00bbd2bfa8f5ae38ae71001c8e515e6e91d535a
diff --git a/dev-python/spyder-kernels/spyder-kernels-2.5.0.ebuild b/dev-python/spyder-kernels/spyder-kernels-2.5.0.ebuild
deleted file mode 100644
index 29d6520b489a..000000000000
--- a/dev-python/spyder-kernels/spyder-kernels-2.5.0.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 1999-2023 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.23.2[${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-22.1.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/spyder-kernels/spyder-kernels-3.0.0_beta4.ebuild b/dev-python/spyder-kernels/spyder-kernels-3.0.0_beta5.ebuild
index 02463a39402f..e5789956e16f 100644
--- a/dev-python/spyder-kernels/spyder-kernels-3.0.0_beta4.ebuild
+++ b/dev-python/spyder-kernels/spyder-kernels-3.0.0_beta5.ebuild
@@ -22,14 +22,14 @@ KEYWORDS=""
RDEPEND="
dev-python/cloudpickle[${PYTHON_USEDEP}]
<dev-python/ipykernel-7[${PYTHON_USEDEP}]
- >=dev-python/ipykernel-6.23.2[${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/pyxdg-0.26[${PYTHON_USEDEP}]
- >=dev-python/pyzmq-22.1.0[${PYTHON_USEDEP}]
+ >=dev-python/pyzmq-24.0.0[${PYTHON_USEDEP}]
>=dev-python/wurlitzer-1.0.3[${PYTHON_USEDEP}]
"
diff --git a/dev-python/spyder/Manifest b/dev-python/spyder/Manifest
index 1a5fe8c9e0bc..dc9f810090af 100644
--- a/dev-python/spyder/Manifest
+++ b/dev-python/spyder/Manifest
@@ -1,4 +1,3 @@
DIST spyder-5.5.4.gh.tar.gz 16258160 BLAKE2B 4f29db0805e1d7eed33497df0b28754cd873cfa5c6bd6c7955efc881000498a7527e413de5107ca4414f2dcbf0aa55903b1bf496626e7b470942cc5142abc152 SHA512 4f68d1edc2901b4cffb67943c782ccd89e923722579ec4144064de2ec1b6bbf89f831feb3eb58a7adf7c403efc7d2529c38017b423bb32709170915792f4deb2
-DIST spyder-6.0.0_alpha4.gh.tar.gz 15503538 BLAKE2B ee896fe2c3c2afd464a8c86204f770ef08ff2fdfc68f7431d2706f76516b6e2b31c9cda8df3236cb3b85799d67f983fbbbfcdc92400a2a88f1efdcd166622f50 SHA512 8ff36feecf6ce99d90ec07fc0cc3ecab075af4e36d64ba650316a46d1f79ca1a08ca7eb2b48dee6e5eddaaafaff14445f0b687742e9a439c3e4def098e489879
-DIST spyder-docs-0aa81d44ec6490c155be1bb1acca0a27328b12e0.gh.tar.gz 94895731 BLAKE2B 468412372bf2f70f838fa89dc1b88997fa2d9d92e36d6a5abac736b6b5f2782f25121b18b876c7c6e2af9d7eda433aaccd017c2e8c8c06a223420f0ce9684fc1 SHA512 9ac0f930a1a864e81e4181f101449a6506728d0d89254409a58e68bc17a3de39f4d1bf329f11da433d8ee4f3122faf3b337654d011263a70b253459e9562e923
+DIST spyder-6.0.0_alpha5.gh.tar.gz 15518670 BLAKE2B 936137c8bf20338b2cb084c8a798819d877595336b74e68fb7418c221f7168b2716042d0b6b26f9ae36034611a0d25962880026587a6a6b40f0009c818d316bb SHA512 dedc46c4651735abdaedba79c9acb55ba91a23f7fd78c426d23d8a34153b33e57601c49d1417767ad4f7d23fcf52449d6e44c7f77fddb4810f75739aa64bd16c
DIST spyder-docs-32efdaebc11dab0b8e0767717342b7d306dc06ea.gh.tar.gz 94897009 BLAKE2B 30e0b42e34bddb60d8fc986183a363b71455067bc7f4411cb75a00c5758e87501ee07ad0b484caed2aa3cf91153be814c7faf935be8665b6984bce38ebcd0be2 SHA512 9f9aa56ab27aed8d27c3d653119d5c5454b4317a78a7ff27715d91cac9dec79143db85d4f1c87b10fa821eb33abc043912df308fa6c84ade59539bd633eefbd2
diff --git a/dev-python/spyder/spyder-6.0.0_alpha4.ebuild b/dev-python/spyder/spyder-6.0.0_alpha5.ebuild
index b10fe84dc3bb..20c3a5e9ed5f 100644
--- a/dev-python/spyder/spyder-6.0.0_alpha4.ebuild
+++ b/dev-python/spyder/spyder-6.0.0_alpha5.ebuild
@@ -9,7 +9,7 @@ DISTUTILS_USE_PEP517=setuptools
inherit distutils-r1 optfeature virtualx xdg
# Commit of documentation to fetch
-DOCS_PV="0aa81d44ec6490c155be1bb1acca0a27328b12e0"
+DOCS_PV="32efdaebc11dab0b8e0767717342b7d306dc06ea"
DESCRIPTION="The Scientific Python Development Environment"
HOMEPAGE="
@@ -49,14 +49,15 @@ RDEPEND="
>=dev-python/qdarkstyle-3.2.0[${PYTHON_USEDEP}]
<dev-python/qdarkstyle-3.3.0[${PYTHON_USEDEP}]
>=dev-python/qstylizer-0.2.2[${PYTHON_USEDEP}]
- >=dev-python/qtawesome-1.3.0[${PYTHON_USEDEP}]
+ >=dev-python/qtawesome-1.3.1[${PYTHON_USEDEP}]
+ <dev-python/qtawesome-1.4.0[${PYTHON_USEDEP}]
>=dev-python/qtconsole-5.5.1[${PYTHON_USEDEP}]
<dev-python/qtconsole-5.6.0[${PYTHON_USEDEP}]
>=dev-python/QtPy-2.4.0[${PYTHON_USEDEP},svg,webengine]
>=sci-libs/rtree-0.9.7[${PYTHON_USEDEP}]
>=dev-python/sphinx-0.6.6[${PYTHON_USEDEP}]
- >=dev-python/spyder-kernels-3.0.0_beta4[${PYTHON_USEDEP}]
- <dev-python/spyder-kernels-3.0.0_beta5[${PYTHON_USEDEP}]
+ >=dev-python/spyder-kernels-3.0.0_beta5[${PYTHON_USEDEP}]
+ <dev-python/spyder-kernels-3.0.0_beta6[${PYTHON_USEDEP}]
>=dev-python/superqt-0.6.1[${PYTHON_USEDEP}]
<dev-python/superqt-1.0.0[${PYTHON_USEDEP}]
>=dev-python/textdistance-4.2.0[${PYTHON_USEDEP}]
diff --git a/dev-python/stripe/Manifest b/dev-python/stripe/Manifest
index 7aac6fb8379b..02358b3125be 100644
--- a/dev-python/stripe/Manifest
+++ b/dev-python/stripe/Manifest
@@ -1,5 +1,3 @@
DIST stripe-8.11.0.tar.gz 1215071 BLAKE2B 7e3eec2008582a7ba52bf6c9a9676f5886cb3a52aed06302f2a21c572db01c759f5a48a743ee32d76cd54d28acb507b46ee556a10b277c6727e0737f055506bf SHA512 9d53ed3e253f18de36dfaf3c28fbcba7ef957f35b6f117c0dcb50040e0484f6fde1f3deb816d51aac62ddad64a20ae344acd25d680ec10c7fa7ddde1cf16c0ec
-DIST stripe-8.9.0.tar.gz 1124248 BLAKE2B 158b070256404dfa7f5d2a13f076c08834fc0ec5c3f0564912bcd461276d790faf0530260f291f8681c357de727465ab900339b4d53ddf93972ace7411748ff8 SHA512 e4505262720eaccffd5b5e12858df1ca81117bdb9103ac7f9425ae50f93ac621b13587a314edc80546f1f6c4b28c5908fcd34f31dacc8e2c80b4532bf56fb63e
-DIST stripe-9.1.0.tar.gz 1219814 BLAKE2B 1a84dab6743e92423cb376f1dc03d01140f93dd74a89a0eb89c9697911c70abf108dd2f51ac422948d73c9ca024ca50e93c0552a2f4df642d60df6d1c521a71b SHA512 6f8484f99ecc0a66d778ef9e3140224adff79391f03acba594b2da3c0096433990d77f2eedb91812626b25aca7063d824cb3511c02eb2b489909cfc78fc0dca4
DIST stripe-9.2.0.tar.gz 1221000 BLAKE2B efa869e7f9039fbf5ec2c7308b1f2b098f870289224f5f941ae3555c2f9177cf18210f813e26fb068841855d62697d25302b10dd8db0aa7de2af74b827ea151c SHA512 a579c537b3cfea245638d649734f62f6734e237db4d2bc733f933ecf03ac2576e9fdce2ad1adf5891db72c68e2166907b93e4e5d98b6ef92962423f7d8241ee2
DIST stripe-9.3.0.tar.gz 1257309 BLAKE2B 819f2ece26282020383953b2f9436023796897b7928ac9f07c753a56a79aa8b80cadad9b1f8b1021224f6a4f704a3c2a92aa807d60a6bc769992d7fc6793aecb SHA512 708ffe2b36946de7e5780f582bc0db6a7b3dc82c163a0839491060944e882fa1f7679900d398b87fd2dc336d2e74eccc0f4f821095ce0465affd49b813d2b4fa
diff --git a/dev-python/stripe/stripe-8.11.0.ebuild b/dev-python/stripe/stripe-8.11.0.ebuild
index 2bca72a15700..298f95a6bce2 100644
--- a/dev-python/stripe/stripe-8.11.0.ebuild
+++ b/dev-python/stripe/stripe-8.11.0.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
+KEYWORDS="amd64 arm64 x86"
IUSE="telemetry"
RDEPEND="
diff --git a/dev-python/stripe/stripe-8.9.0.ebuild b/dev-python/stripe/stripe-8.9.0.ebuild
deleted file mode 100644
index 678f38c6c646..000000000000
--- a/dev-python/stripe/stripe-8.9.0.ebuild
+++ /dev/null
@@ -1,81 +0,0 @@
-# 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="Stripe python bindings"
-HOMEPAGE="
- https://github.com/stripe/stripe-python/
- https://pypi.org/project/stripe/
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 arm64 x86"
-IUSE="telemetry"
-
-RDEPEND="
- >=dev-python/requests-2.20[${PYTHON_USEDEP}]
- >=dev-python/typing-extensions-4.5.0[${PYTHON_USEDEP}]
-"
-# please bump dev-util/stripe-mock dep to the latest version on every bump
-BDEPEND="
- test? (
- >=dev-util/stripe-mock-0.183.0
- dev-python/pytest-mock[${PYTHON_USEDEP}]
- net-misc/curl
- )
-"
-
-distutils_enable_tests pytest
-
-DOCS=( LONG_DESCRIPTION.rst CHANGELOG.md README.md )
-
-src_prepare() {
- if ! use telemetry; then
- sed -i -e '/enable_telemetry/s:True:False:' stripe/__init__.py || die
- fi
- distutils-r1_src_prepare
-}
-
-python_test() {
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- epytest tests -p pytest_mock
-}
-
-src_test() {
- local stripe_mock_port=12111
- local stripe_mock_max_port=12121
- local stripe_mock_logfile="${T}/stripe_mock_${EPYTHON}.log"
- # Try to start stripe-mock until we find a free port
- while [[ ${stripe_mock_port} -le ${stripe_mock_max_port} ]]; do
- ebegin "Trying to start stripe-mock on port ${stripe_mock_port}"
- stripe-mock --http-port "${stripe_mock_port}" &> "${stripe_mock_logfile}" &
- local stripe_mock_pid=${!}
- sleep 2
- # Did stripe-mock start?
- curl --fail -u "sk_test_123:" \
- "http://127.0.0.1:${stripe_mock_port}/v1/customers" &> /dev/null
- eend ${?} "Port ${stripe_mock_port} unavailable"
- if [[ ${?} -eq 0 ]]; then
- einfo "stripe-mock running on port ${stripe_mock_port}"
- break
- fi
- (( stripe_mock_port++ ))
- done
- if [[ ${stripe_mock_port} -gt ${stripe_mock_max_port} ]]; then
- eerror "Unable to start stripe-mock for tests"
- die "Please see the logfile located at: ${stripe_mock_logfile}"
- fi
-
- local -x STRIPE_MOCK_PORT=${stripe_mock_port}
- distutils-r1_src_test
-
- # Tear down stripe-mock
- kill "${stripe_mock_pid}" || die "Unable to stop stripe-mock"
-}
diff --git a/dev-python/stripe/stripe-9.1.0.ebuild b/dev-python/stripe/stripe-9.1.0.ebuild
deleted file mode 100644
index 2bca72a15700..000000000000
--- a/dev-python/stripe/stripe-9.1.0.ebuild
+++ /dev/null
@@ -1,88 +0,0 @@
-# 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="Stripe python bindings"
-HOMEPAGE="
- https://github.com/stripe/stripe-python/
- https://pypi.org/project/stripe/
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="telemetry"
-
-RDEPEND="
- >=dev-python/requests-2.20[${PYTHON_USEDEP}]
- >=dev-python/typing-extensions-4.5.0[${PYTHON_USEDEP}]
-"
-# please bump dev-util/stripe-mock dep to the latest version on every bump
-BDEPEND="
- test? (
- >=dev-util/stripe-mock-0.183.0
- dev-python/aiohttp[${PYTHON_USEDEP}]
- dev-python/anyio[${PYTHON_USEDEP}]
- dev-python/httpx[${PYTHON_USEDEP}]
- dev-python/pytest-mock[${PYTHON_USEDEP}]
- dev-python/trio[${PYTHON_USEDEP}]
- net-misc/curl
- )
-"
-
-distutils_enable_tests pytest
-
-DOCS=( LONG_DESCRIPTION.rst CHANGELOG.md README.md )
-
-src_prepare() {
- if ! use telemetry; then
- sed -i -e '/enable_telemetry/s:True:False:' stripe/__init__.py || die
- fi
- # https://github.com/stripe/stripe-python/pull/1297
- sed -e 's:from mock:from unittest.mock:' \
- -i tests/test_http_client.py || die
- distutils-r1_src_prepare
-}
-
-python_test() {
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- epytest tests -p anyio -p pytest_mock
-}
-
-src_test() {
- local stripe_mock_port=12111
- local stripe_mock_max_port=12121
- local stripe_mock_logfile="${T}/stripe_mock_${EPYTHON}.log"
- # Try to start stripe-mock until we find a free port
- while [[ ${stripe_mock_port} -le ${stripe_mock_max_port} ]]; do
- ebegin "Trying to start stripe-mock on port ${stripe_mock_port}"
- stripe-mock --http-port "${stripe_mock_port}" &> "${stripe_mock_logfile}" &
- local stripe_mock_pid=${!}
- sleep 2
- # Did stripe-mock start?
- curl --fail -u "sk_test_123:" \
- "http://127.0.0.1:${stripe_mock_port}/v1/customers" &> /dev/null
- eend ${?} "Port ${stripe_mock_port} unavailable"
- if [[ ${?} -eq 0 ]]; then
- einfo "stripe-mock running on port ${stripe_mock_port}"
- break
- fi
- (( stripe_mock_port++ ))
- done
- if [[ ${stripe_mock_port} -gt ${stripe_mock_max_port} ]]; then
- eerror "Unable to start stripe-mock for tests"
- die "Please see the logfile located at: ${stripe_mock_logfile}"
- fi
-
- local -x STRIPE_MOCK_PORT=${stripe_mock_port}
- distutils-r1_src_test
-
- # Tear down stripe-mock
- kill "${stripe_mock_pid}" || die "Unable to stop stripe-mock"
-}
diff --git a/dev-python/textdistance/Manifest b/dev-python/textdistance/Manifest
index 39446ae940d2..51e618e7230f 100644
--- a/dev-python/textdistance/Manifest
+++ b/dev-python/textdistance/Manifest
@@ -1 +1,2 @@
DIST textdistance-4.6.1.gh.tar.gz 46618 BLAKE2B 168737e2380380570e67e873913823851e6e50a52f5180d4c5519a71f7899074aff2514f0df1a5d920c1c6a8313522fda6eb987862008eda9221ea8cc5be2902 SHA512 a27256c8ad9a228711acb6d54c5ea05634c89537686751c50623411238ee0b519cf0415e345c83b5cd347bda855751562c37ad88f06c1eacfea959cf2798b97c
+DIST textdistance-4.6.2.gh.tar.gz 46619 BLAKE2B 0a205bd5615f252f4ab832597b26cd81f3a817fa9544675b947b2ba8a9d8c128ad261a09fb1ee118e0ca807ff7721f3594de5da11f5df59c90c2d9b7110b84ff SHA512 4e5ec7ef76cfd45b05f5813d624d934a6aa90c326b8bc1af50fdde51c4fda141d5aa826e7a145f4cf59f7d7cbcdcf775746eeb197a2adef3c62ad8570d699890
diff --git a/dev-python/textdistance/textdistance-4.6.2.ebuild b/dev-python/textdistance/textdistance-4.6.2.ebuild
new file mode 100644
index 000000000000..a6a7e1731eb5
--- /dev/null
+++ b/dev-python/textdistance/textdistance-4.6.2.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=setuptools
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Compute distance between the two texts"
+HOMEPAGE="
+ https://github.com/life4/textdistance/
+ https://pypi.org/project/textdistance/
+"
+SRC_URI="
+ https://github.com/life4/textdistance/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
+
+BDEPEND="
+ test? (
+ dev-python/hypothesis[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+EPYTEST_IGNORE=(
+ tests/test_external.py
+)
diff --git a/dev-python/thriftpy2/Manifest b/dev-python/thriftpy2/Manifest
index 9aee88453931..f9be2c364dd2 100644
--- a/dev-python/thriftpy2/Manifest
+++ b/dev-python/thriftpy2/Manifest
@@ -1,3 +1 @@
-DIST thriftpy2-0.4.17.tar.gz 519386 BLAKE2B 29c383cb886debb7167fbcef3526d0c027dc60db5ae20c554ea19067bb9a3ab40bea50392bd903293c5d9de1e3bc210220d887bd71194f91345a7565f577ccd9 SHA512 7c58eb6d0c91c933e31654d28ce2f4ef04854551db3eb5b8022565932761c74d95f27d44fc847f93723e535fdb4997fdad66a9dba432aa44e27e069e73b7ff7e
-DIST thriftpy2-0.4.19.tar.gz 689034 BLAKE2B 556d47b65b0f9801627515ab7e3fc9907af50b43e8197142626e51b8110ffd740285c895e9ee98e6e0bd8074b9e2f4e9811ce309a68d006dc504f80b3ca38ae6 SHA512 a67160e742683ecd4e47007cd4a6a52f78ab3ae492aa4c170f725d25f1a78fb6a0054cab691752b20a43ff855df61207d302af65ae5966ee5c3f961ff1e42650
DIST thriftpy2-0.4.20.tar.gz 689003 BLAKE2B b7ceb8345e984d6b3524fadff359bb125b0c94900afbfa4c3e64de7034bd816e3fd37fe721b7c35bee0c7fa7a6416ab859c2987cb66ed3fa4a66f6ca06eac952 SHA512 e06b22e1b63df3425eccdd3c83d1154413744ee387c3882d783a5168635087e6e38fd73d24c173e76854c4fe3f57631f4dd59fbb8e5b28cd380dd27d1d51caf3
diff --git a/dev-python/thriftpy2/thriftpy2-0.4.17.ebuild b/dev-python/thriftpy2/thriftpy2-0.4.17.ebuild
deleted file mode 100644
index 6a737d2366b0..000000000000
--- a/dev-python/thriftpy2/thriftpy2-0.4.17.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 2021-2023 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/thriftpy2/thriftpy2-0.4.19.ebuild b/dev-python/thriftpy2/thriftpy2-0.4.20-r1.ebuild
index 5f1359c9b629..c40eae857544 100644
--- a/dev-python/thriftpy2/thriftpy2-0.4.19.ebuild
+++ b/dev-python/thriftpy2/thriftpy2-0.4.20-r1.ebuild
@@ -7,7 +7,7 @@ DISTUTILS_EXT=1
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{8,9,10,11,12} )
-inherit distutils-r1 pypi
+inherit distutils-r1 flag-o-matic pypi
DESCRIPTION="Pure python approach of Apache Thrift"
HOMEPAGE="
@@ -33,12 +33,25 @@ BDEPEND="
distutils_enable_tests pytest
+src_compile() {
+ # -Werror=strict-aliasing
+ # https://bugs.gentoo.org/857105
+ # https://github.com/Thriftpy/thriftpy2/issues/246
+ #
+ # Don't trust this to LTO
+ append-flags -fno-strict-aliasing
+ filter-lto
+
+ distutils-r1_src_compile
+}
+
python_test() {
local EPYTEST_DESELECT=(
tests/test_tornado.py::TornadoRPCTestCase::test_asynchronous_exception
tests/test_tornado.py::TornadoRPCTestCase::test_asynchronous_result
)
- cd tests || die
+ pushd tests >/dev/null || die
epytest
+ popd >/dev/null || die
}
diff --git a/dev-python/uv/Manifest b/dev-python/uv/Manifest
index 510ceb7c9cfa..66e3836a23e5 100644
--- a/dev-python/uv/Manifest
+++ b/dev-python/uv/Manifest
@@ -6,3 +6,5 @@ DIST uv-0.1.24-crates.tar.xz 64420840 BLAKE2B 7324461092a07c86aadaddf051aaa7454e
DIST uv-0.1.24.gh.tar.gz 899637 BLAKE2B fab26ba9934fc5f586505b5ac1fa386c11f07e51ca2bb2a79f46d5dec9475ba8d75ad8587223d5149df5f2a225146d020a49b7ff81ed26b949cff55892738c2d SHA512 520b47a096b50fce9e7b7af5bca203df9bf4c2d0aafbe28a3dcfe0592d8ddcaa7b58d52300c67454f6aeecfd196f1592be18e45c95b7c67257361917cdb0154d
DIST uv-0.1.36-crates.tar.xz 65852268 BLAKE2B f9dac75dc992d37c54554c25e0ce0895aa017753a6688754acee5b6a99822e0f55923a539fcd67a8d30332abf1d2b2ed333b8b1125eef5061da2d8f57307004b SHA512 c0dd2171416333f8267592c75699fd35f686d04b3b81241e51cbf4b9f8d1e0def54ab9336b2e62e1fb5e40d3ad73146eba7dd6c0093fa23230d23c4fa73d8f74
DIST uv-0.1.36.gh.tar.gz 1018114 BLAKE2B c57a3362940803df34f45c0dd2bcc176fb4928d1b0c168adc89d150ffb59a39d0fb57b41c063485a7c324a2101b9f4334cf29e175f910122842f893c6be9970a SHA512 39a4ec3b17803a13a53f331185bfb4fa321f9ee2c158828ad9f88aa7214ee72a58a87dcef74eaeac7a1e3a989909f0d50a457431ce22a72703db0e8c3fc4a6c2
+DIST uv-0.1.37-crates.tar.xz 65881140 BLAKE2B c1a640c44d73d5607c8d07468cefc66c150135b0f0249362148bd2b8f8c99a43c9031a642c0f76140631177df947be7637b49e99e247afbd7efbebb2ad79bcb1 SHA512 99bf6f341f9e6cf8eb0834c436b81453615725cabd3ddc4cca34edb307200bdbb71e913e8ff52a2a1d11e5f1a4abfb4dbdfe40a9c4f114079a7d9fdace0bcaab
+DIST uv-0.1.37.gh.tar.gz 1020667 BLAKE2B 4aa459b15dc06d57d5cad66ebeb5925ec833870dea17f72ef54889f8e8699719cba59bd0600263c1647f17402c002000114d603a474dbcf873ac2f2c37301fb8 SHA512 88d9233bd05e8003b75759e39bc22c469a0094a5ca5b6bd6f2bd8b266b376c44ecfa442f3cd5fff1c099234b660a871153423bacbf785863deb79df321b05574
diff --git a/dev-python/uv/files/uv-0.1.37-test.patch b/dev-python/uv/files/uv-0.1.37-test.patch
new file mode 100644
index 000000000000..0c39b4d3400f
--- /dev/null
+++ b/dev-python/uv/files/uv-0.1.37-test.patch
@@ -0,0 +1,22 @@
+diff --git a/crates/uv/tests/pip_compile.rs b/crates/uv/tests/pip_compile.rs
+index de3336a5..b6884992 100644
+--- a/crates/uv/tests/pip_compile.rs
++++ b/crates/uv/tests/pip_compile.rs
+@@ -3413,7 +3413,7 @@ fn compile_html() -> Result<()> {
+ # This file was autogenerated by uv via the following command:
+ # uv pip compile requirements.in --cache-dir [CACHE_DIR]
+ jinja2==3.1.2
+- markupsafe==2.1.3
++ markupsafe==2.1.5
+ # via jinja2
+
+ ----- stderr -----
+@@ -7737,7 +7737,7 @@ fn compile_index_url_fallback_prefer_primary() -> Result<()> {
+ ----- stdout -----
+ # This file was autogenerated by uv via the following command:
+ # uv pip compile --cache-dir [CACHE_DIR] --index-strategy unsafe-any-match requirements.in --no-deps
+- jinja2==3.1.2
++ jinja2==3.1.3
+
+ ----- stderr -----
+ Resolved 1 package in [TIME]
diff --git a/dev-python/uv/uv-0.1.37.ebuild b/dev-python/uv/uv-0.1.37.ebuild
new file mode 100644
index 000000000000..38bbfee404a1
--- /dev/null
+++ b/dev-python/uv/uv-0.1.37.ebuild
@@ -0,0 +1,117 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CRATES="
+"
+
+declare -A GIT_CRATES=(
+ [async_zip]='https://github.com/charliermarsh/rs-async-zip;1dcb40cfe1bf5325a6fd4bfcf9894db40241f585;rs-async-zip-%commit%'
+ [pubgrub]='https://github.com/astral-sh/pubgrub;c26e485213e39582c6f2e4d45c0328422670e7a7;pubgrub-%commit%'
+)
+
+inherit cargo check-reqs
+
+DESCRIPTION="A Python package installer and resolver, written in Rust"
+HOMEPAGE="
+ https://github.com/astral-sh/uv/
+ https://pypi.org/project/uv/
+"
+# pypi sdist misses scripts/, needed for tests
+SRC_URI="
+ https://github.com/astral-sh/uv/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+ ${CARGO_CRATE_URIS}
+"
+if [[ ${PKGBUMPING} != ${PVR} ]]; then
+ CRATE_P=${P}
+ SRC_URI+="
+ https://dev.gentoo.org/~mgorny/dist/${CRATE_P}-crates.tar.xz
+ "
+fi
+
+# most of the code
+LICENSE="|| ( Apache-2.0 MIT )"
+# crates/pep508-rs is || ( Apache-2.0 BSD-2 ) which is covered below
+# Dependent crate licenses
+LICENSE+="
+ 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 BSD ISC MIT
+ MPL-2.0 Unicode-DFS-2016
+"
+# ring crate
+LICENSE+=" openssl"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+IUSE="test"
+RESTRICT="test"
+PROPERTIES="test_network"
+
+DEPEND="
+ dev-libs/libgit2:=
+"
+RDEPEND="
+ ${DEPEND}
+"
+BDEPEND="
+ >=virtual/rust-1.77
+ test? (
+ dev-lang/python:3.8
+ dev-lang/python:3.9
+ dev-lang/python:3.10
+ dev-lang/python:3.11
+ dev-lang/python:3.12
+ )
+"
+
+QA_FLAGS_IGNORED="usr/bin/.*"
+
+PATCHES=(
+ # tests are running on live pip index, and need to be updated
+ # whenever upstreams release new packages x_x
+ "${FILESDIR}/${P}-test.patch"
+)
+
+check_space() {
+ local CHECKREQS_DISK_BUILD=3G
+ use debug && CHECKREQS_DISK_BUILD=9G
+ check-reqs_pkg_setup
+}
+
+pkg_pretend() {
+ check_space
+}
+
+pkg_setup() {
+ check_space
+}
+
+src_configure() {
+ local myfeatures=(
+ # from upstream defaults
+ flate2/zlib-ng
+ python
+ pypi
+ git
+ maturin
+ # skip tests that require specific patch version of the interpreter:
+ # python-patch
+ )
+
+ cargo_src_configure --no-default-features
+}
+
+src_compile() {
+ cd crates/uv || die
+ cargo_src_compile
+}
+
+src_test() {
+ cd crates/uv || die
+ cargo_src_test --no-fail-fast
+}
+
+src_install() {
+ cd crates/uv || die
+ cargo_src_install
+}
diff --git a/dev-python/xmlschema/Manifest b/dev-python/xmlschema/Manifest
index e7dbee3974b8..2909dc1b21b6 100644
--- a/dev-python/xmlschema/Manifest
+++ b/dev-python/xmlschema/Manifest
@@ -1,4 +1,2 @@
-DIST xmlschema-3.1.0.tar.gz 566760 BLAKE2B d8d1dc61e5eb6897d128ba9ed5257b65190af948946b7ac5d5b9b5fdeb14df42e8a298bc0ed7cdec58cabd237e0c950465bf58be702610496a16000a2f23f354 SHA512 26d6586ede499907bc2b7f0b58c75460d4bfa3761bc029a042e32ede2237234daa8be7b4602da7dec2e28aa945f24e1726fd445189ec31ce4af89c9c5762e1ef
-DIST xmlschema-3.2.0.tar.gz 570442 BLAKE2B 0910a417a608e99850874a15ed608b0e33abb4a3a76c0bd0101eb3fdef89087f1f1c44ca59bc08ee6992eee24ed433bb602626fef0ffe76b671f8a5b33d662a7 SHA512 90d3e6b92054ec9eaead6c79543dceb819b75e94c19e2991671708443cb713fc9b7925d1ae09fe40d1522a27369b729528ab758087b9de0cc0157227abb95f3a
DIST xmlschema-3.2.1.tar.gz 571883 BLAKE2B 1c5202af6f3e1aca99898442f0efb47fd72c0f32e42d0ad4d527e5f4849195b8298656ba214c8578ed5a3cabca3232102e778667062139955fbae39610d90559 SHA512 ea65d79c628eca1b4becefee0f8a79e5a5c9a43072747d7b5b312e152c953a45727e3945bd2755a37ef28e2f010148879ca32a42516254eccba0bc3bb371c2ff
DIST xmlschema-3.3.0.tar.gz 573034 BLAKE2B 1d403483ee4b80ddcfae3ece41ba2b8edb3e0297ac7ad8d531fdfdbc4b4eb50736b728b0aefde08bd8d06e7f6b0636762b098095b06c6ad1c03928d102e4d23f SHA512 3c07d740f26901d4dc481bd83566fed1c48e48b542f14601d30b3c593a606854939052a6b6af20755e0ff6b56dbeb23b4a96519e1d91abc7145d80745f5478b4
diff --git a/dev-python/xmlschema/xmlschema-3.1.0.ebuild b/dev-python/xmlschema/xmlschema-3.1.0.ebuild
deleted file mode 100644
index abfa2376bcf3..000000000000
--- a/dev-python/xmlschema/xmlschema-3.1.0.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 2019-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="An XML Schema validator and decoder"
-HOMEPAGE="
- https://github.com/sissaschool/xmlschema/
- https://pypi.org/project/xmlschema/
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- <dev-python/elementpath-5[${PYTHON_USEDEP}]
- >=dev-python/elementpath-4.4.0[${PYTHON_USEDEP}]
-"
-BDEPEND="
- test? (
- ${RDEPEND}
- dev-python/jinja[${PYTHON_USEDEP}]
- dev-python/lxml[${PYTHON_USEDEP}]
- )
-"
-
-python_test() {
- "${EPYTHON}" tests/test_all.py -v || die "Tests fail with ${EPYTHON}"
-}
diff --git a/dev-python/xmlschema/xmlschema-3.2.0.ebuild b/dev-python/xmlschema/xmlschema-3.2.0.ebuild
deleted file mode 100644
index beb366c0501e..000000000000
--- a/dev-python/xmlschema/xmlschema-3.2.0.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 2019-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="An XML Schema validator and decoder"
-HOMEPAGE="
- https://github.com/sissaschool/xmlschema/
- https://pypi.org/project/xmlschema/
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- <dev-python/elementpath-5[${PYTHON_USEDEP}]
- >=dev-python/elementpath-4.4.0[${PYTHON_USEDEP}]
-"
-BDEPEND="
- test? (
- ${RDEPEND}
- dev-python/jinja[${PYTHON_USEDEP}]
- dev-python/lxml[${PYTHON_USEDEP}]
- )
-"
-
-python_test() {
- "${EPYTHON}" tests/test_all.py -v || die "Tests fail with ${EPYTHON}"
-}
diff --git a/dev-python/xmlschema/xmlschema-3.2.1.ebuild b/dev-python/xmlschema/xmlschema-3.2.1.ebuild
index beb366c0501e..abfa2376bcf3 100644
--- a/dev-python/xmlschema/xmlschema-3.2.1.ebuild
+++ b/dev-python/xmlschema/xmlschema-3.2.1.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos"
IUSE="test"
RESTRICT="!test? ( test )"