summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2024-08-27 18:09:06 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2024-08-27 18:09:06 +0000
commit7dc327e91b5914509541dd690b777eb5941554d4 (patch)
treeb29001220b69c2893a16e5edf631fb480a323181 /dev-python
parentdcf162f5e6bf3248f5c8aefbf7aa0370692628a9 (diff)
downloadbaldeagleos-repo-7dc327e91b5914509541dd690b777eb5941554d4.tar.gz
baldeagleos-repo-7dc327e91b5914509541dd690b777eb5941554d4.tar.xz
baldeagleos-repo-7dc327e91b5914509541dd690b777eb5941554d4.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/Nuitka/Manifest3
-rw-r--r--dev-python/Nuitka/Nuitka-2.4.5.ebuild52
-rw-r--r--dev-python/Nuitka/Nuitka-2.4.8.ebuild (renamed from dev-python/Nuitka/Nuitka-2.4.4.ebuild)0
-rw-r--r--dev-python/PyGithub/Manifest1
-rw-r--r--dev-python/PyGithub/PyGithub-2.4.0.ebuild43
-rw-r--r--dev-python/apsw/Manifest1
-rw-r--r--dev-python/apsw/apsw-3.46.1.0.ebuild51
-rw-r--r--dev-python/boto3/Manifest1
-rw-r--r--dev-python/boto3/boto3-1.35.6.ebuild53
-rw-r--r--dev-python/botocore/Manifest1
-rw-r--r--dev-python/botocore/botocore-1.35.6.ebuild76
-rw-r--r--dev-python/clang-python/Manifest4
-rw-r--r--dev-python/clang-python/clang-python-19.1.0_rc2.ebuild53
-rw-r--r--dev-python/clang-python/clang-python-20.0.0_pre20240808.ebuild53
-rw-r--r--dev-python/clang-python/clang-python-20.0.0_pre20240815.ebuild53
-rw-r--r--dev-python/cypari2/cypari2-2.2.0.ebuild2
-rw-r--r--dev-python/cysignals/cysignals-1.11.4-r1.ebuild2
-rw-r--r--dev-python/fakeredis/Manifest1
-rw-r--r--dev-python/fakeredis/fakeredis-2.24.1.ebuild97
-rw-r--r--dev-python/fpylll/fpylll-0.6.1.ebuild2
-rw-r--r--dev-python/googleapis-common-protos/Manifest1
-rw-r--r--dev-python/googleapis-common-protos/googleapis-common-protos-1.64.0.ebuild32
-rw-r--r--dev-python/importlib-resources/importlib-resources-6.4.4.ebuild2
-rw-r--r--dev-python/jupyterlab/Manifest1
-rw-r--r--dev-python/jupyterlab/jupyterlab-4.2.5.ebuild81
-rw-r--r--dev-python/keystoneauth1/Manifest1
-rw-r--r--dev-python/keystoneauth1/keystoneauth1-5.8.0.ebuild60
-rw-r--r--dev-python/lit/Manifest4
-rw-r--r--dev-python/lit/lit-19.1.0_rc2.ebuild45
-rw-r--r--dev-python/lit/lit-20.0.0_pre20240808.ebuild45
-rw-r--r--dev-python/lit/lit-20.0.0_pre20240815.ebuild45
-rw-r--r--dev-python/lxml/Manifest1
-rw-r--r--dev-python/lxml/files/lxml-5.3.0-pypy.patch177
-rw-r--r--dev-python/lxml/lxml-5.3.0.ebuild119
-rw-r--r--dev-python/memory-allocator/memory-allocator-0.1.4.ebuild2
-rw-r--r--dev-python/numpy/Manifest1
-rw-r--r--dev-python/numpy/numpy-2.0.2.ebuild132
-rw-r--r--dev-python/oslo-config/Manifest1
-rw-r--r--dev-python/oslo-config/files/oslo-config-9.6.0-py312.patch43
-rw-r--r--dev-python/oslo-config/oslo-config-9.6.0.ebuild63
-rw-r--r--dev-python/parse-type/Manifest (renamed from dev-python/parse_type/Manifest)1
-rw-r--r--dev-python/parse-type/metadata.xml (renamed from dev-python/parse_type/metadata.xml)0
-rw-r--r--dev-python/parse-type/parse-type-0.6.2.ebuild (renamed from dev-python/parse_type/parse_type-0.6.2.ebuild)0
-rw-r--r--dev-python/parse-type/parse-type-0.6.3.ebuild31
-rw-r--r--dev-python/paste/paste-3.10.1.ebuild2
-rw-r--r--dev-python/pastedeploy/pastedeploy-3.1.ebuild2
-rw-r--r--dev-python/phonenumbers/Manifest1
-rw-r--r--dev-python/phonenumbers/phonenumbers-8.13.44.ebuild39
-rw-r--r--dev-python/pipx/Manifest3
-rw-r--r--dev-python/pipx/pipx-1.7.1.ebuild108
-rw-r--r--dev-python/pplpy/pplpy-0.8.10.ebuild2
-rw-r--r--dev-python/pulsectl/Manifest1
-rw-r--r--dev-python/pulsectl/pulsectl-24.8.0.ebuild30
-rw-r--r--dev-python/pygccxml/files/pygccxml-2.5.0-fix-tests.patch107
-rw-r--r--dev-python/pygccxml/pygccxml-2.5.0.ebuild1
-rw-r--r--dev-python/pypiserver/pypiserver-2.1.1.ebuild2
-rw-r--r--dev-python/pyquery/pyquery-2.0.0-r1.ebuild2
-rw-r--r--dev-python/pytest-bdd/pytest-bdd-7.2.0.ebuild2
-rw-r--r--dev-python/pytest-shell-utilities/Manifest1
-rw-r--r--dev-python/pytest-shell-utilities/pytest-shell-utilities-1.9.3.ebuild41
-rw-r--r--dev-python/rich/Manifest1
-rw-r--r--dev-python/rich/rich-13.8.0.ebuild74
-rw-r--r--dev-python/spyder/Manifest1
-rw-r--r--dev-python/spyder/spyder-5.5.6.ebuild193
-rw-r--r--dev-python/sqlglot/Manifest4
-rw-r--r--dev-python/sqlglot/sqlglot-25.13.0.ebuild121
-rw-r--r--dev-python/sqlglot/sqlglot-25.15.0.ebuild121
-rw-r--r--dev-python/sqlglot/sqlglot-25.17.0.ebuild (renamed from dev-python/sqlglot/sqlglot-25.12.0.ebuild)8
-rw-r--r--dev-python/suds-community/Manifest1
-rw-r--r--dev-python/suds-community/suds-community-1.1.2.ebuild31
-rw-r--r--dev-python/suds-community/suds-community-1.2.0.ebuild2
-rw-r--r--dev-python/uv/Manifest16
-rw-r--r--dev-python/uv/files/uv-0.3.1-test.patch43
-rw-r--r--dev-python/uv/uv-0.2.29.ebuild109
-rw-r--r--dev-python/uv/uv-0.2.30.ebuild109
-rw-r--r--dev-python/uv/uv-0.2.36.ebuild112
-rw-r--r--dev-python/uv/uv-0.3.1.ebuild116
-rw-r--r--dev-python/uv/uv-0.3.4.ebuild (renamed from dev-python/uv/uv-0.3.2.ebuild)8
-rw-r--r--dev-python/waitress/waitress-3.0.0.ebuild2
-rw-r--r--dev-python/watchdog/Manifest1
-rw-r--r--dev-python/watchdog/watchdog-5.0.0.ebuild45
-rw-r--r--dev-python/webob/webob-1.8.8.ebuild2
-rw-r--r--dev-python/webtest/webtest-3.0.0-r1.ebuild2
-rw-r--r--dev-python/wsgiproxy2/wsgiproxy2-0.5.1-r1.ebuild2
-rw-r--r--dev-python/zeroconf/Manifest1
-rw-r--r--dev-python/zeroconf/zeroconf-0.133.0.ebuild56
-rw-r--r--dev-python/zipp/Manifest1
-rw-r--r--dev-python/zipp/zipp-3.20.1.ebuild53
88 files changed, 1862 insertions, 1154 deletions
diff --git a/dev-python/Nuitka/Manifest b/dev-python/Nuitka/Manifest
index 15cdd1811bea..f9f0ce51c6cc 100644
--- a/dev-python/Nuitka/Manifest
+++ b/dev-python/Nuitka/Manifest
@@ -1,3 +1,2 @@
-DIST Nuitka-2.4.4.tar.gz 3719076 BLAKE2B 513a84e9b8ec222f14df253eab53c82edf2a663e97ac4b272481f2c3df306ad4d9c7b7785295718c68aadb02b04c8a31b0dc58f9ed0418ad2e530dbcff1f1cbf SHA512 9cdcb377d3e7c0a64e7bb76fa3b1ca7ef6b1590c91bae82e34638fd2bab8e1497a6683c4db243e51e4653b105af43dd86e071c5c33c3baf15e58ee81e1388ca0
-DIST Nuitka-2.4.5.tar.gz 3718921 BLAKE2B 23549ef422c635c644ff65e2a7f63729d538b6d7149d31b31251cc84232d8069be616a2cdf6878f0c54876dce1296afecdc6b76b0046bdec3c62a24bd5145cf0 SHA512 f582c9b28e673fd152e9a2cc567457412d7d0da64be94d466933c68e50464346657ed107f4042060eb837a8b1d1f0b182c50bd3e665ffe47b636f467a81a5a82
DIST Nuitka-2.4.7.tar.gz 3719215 BLAKE2B afe2aa119db21d36377f41cbd8a20bdfb732ca5dc111ebc4156c9f4e12f3828d8d17ceb5423e49829fa2554a0e8416822af7148efb1efa14b49628f03b9791fc SHA512 08ab175180ed21ae0341cc88c9644351137054476fba00ee0c857c3c30f1a1da6c240fc9af873a9bc92faee657af11bd4108613a9c721ff27c6d73a603021ad0
+DIST Nuitka-2.4.8.tar.gz 3720021 BLAKE2B f3e89107e25baf0490e8dccba9c5e3e167fbdba395d21c8f9666a4f3e094c72fc295a7c57536deabaeb04dc0cb6682dcdf675f1305d5974e49e989c643aa6769 SHA512 da36c84e295f313c76d955498c8d4b46a57c162366dc9374188ae4bf236ad27df8a034c7942f089e1f4e196f44de27ab9d8dedeae991d9c29a51e86018eadb6f
diff --git a/dev-python/Nuitka/Nuitka-2.4.5.ebuild b/dev-python/Nuitka/Nuitka-2.4.5.ebuild
deleted file mode 100644
index 35ccf652e8e3..000000000000
--- a/dev-python/Nuitka/Nuitka-2.4.5.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYPI_NO_NORMALIZE=1
-PYTHON_COMPAT=( python3_{8,9,10,11,12} )
-
-inherit distutils-r1 flag-o-matic optfeature pypi
-
-DESCRIPTION="Python to native compiler"
-HOMEPAGE="
- https://nuitka.net/
- https://github.com/Nuitka/Nuitka/
- https://pypi.org/project/Nuitka/
-"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~loong ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- dev-build/scons[${PYTHON_USEDEP}]
-"
-BDEPEND="
- ${RDEPEND}
- test? ( dev-util/ccache )
-"
-
-distutils-r1_src_prepare() {
- # remove vendored version of SCons that is Python2 only
- # this should be removed when upstream removes support for Python2
- rm -vR "nuitka/build/inline_copy/lib/scons-2.3.2/SCons" || die
- eapply_user
-}
-
-python_install() {
- distutils-r1_python_install
- doman doc/nuitka.1 doc/nuitka-run.1
-}
-
-python_test() {
- append-ldflags -Wl,--no-warn-search-mismatch
- ./tests/basics/run_all.py search || die
-}
-
-pkg_postinst() {
- optfeature "support for stand-alone executables" dev-util/patchelf
-}
diff --git a/dev-python/Nuitka/Nuitka-2.4.4.ebuild b/dev-python/Nuitka/Nuitka-2.4.8.ebuild
index 35ccf652e8e3..35ccf652e8e3 100644
--- a/dev-python/Nuitka/Nuitka-2.4.4.ebuild
+++ b/dev-python/Nuitka/Nuitka-2.4.8.ebuild
diff --git a/dev-python/PyGithub/Manifest b/dev-python/PyGithub/Manifest
index c597c0851392..c989642ae11f 100644
--- a/dev-python/PyGithub/Manifest
+++ b/dev-python/PyGithub/Manifest
@@ -1 +1,2 @@
DIST PyGithub-2.3.0.tar.gz 3455482 BLAKE2B 3638d5a101dcc41196a54f1a1e36dbc2dd53ab21fc2edd1945a036527979939da53dbf1cdd462622e851e891eae1264231b42c9f8a561740087d602a966d11b2 SHA512 7964b8ab1ad989e48b7d4cda42e7690cdd99c7f8d199e0eaa5ff5b2986592cef135e252253bef4f425cf04946ea18d8c83bcce4253914113fc9a21e83dc31166
+DIST pygithub-2.4.0.tar.gz 3476673 BLAKE2B 4f07b68c529d6eb3936768bd64ff3790f794c9c37d0aa1f34496d17f0423ac9501248874ffb954bc8a38c1fe04f43aa040e6cb151f00464effe6b98669459f04 SHA512 647ccc56d6108a5c08321c75552b59e5d7120fd3f45587579384f3a3a1cf500aceadf4e302ccf19d8655645be5d6a76263ec5f337b08b24d94c432bbe1cb5848
diff --git a/dev-python/PyGithub/PyGithub-2.4.0.ebuild b/dev-python/PyGithub/PyGithub-2.4.0.ebuild
new file mode 100644
index 000000000000..5e24f4d7c506
--- /dev/null
+++ b/dev-python/PyGithub/PyGithub-2.4.0.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Python library to access the Github API v3"
+HOMEPAGE="
+ https://github.com/PyGithub/PyGithub/
+ https://pypi.org/project/PyGithub/
+"
+
+LICENSE="LGPL-3+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+# cryptography via pyjwt[crypto]
+RDEPEND="
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ dev-python/deprecated[${PYTHON_USEDEP}]
+ >=dev-python/pyjwt-2.4.0[${PYTHON_USEDEP}]
+ >=dev-python/pynacl-1.4.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.14.0[${PYTHON_USEDEP}]
+ >=dev-python/typing-extensions-4.0.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+ test? (
+ >=dev-python/httpretty-1.0.3[${PYTHON_USEDEP}]
+ >=dev-python/pytest-subtests-0.11.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
diff --git a/dev-python/apsw/Manifest b/dev-python/apsw/Manifest
index ad0fba9c1b09..42e1c2457df9 100644
--- a/dev-python/apsw/Manifest
+++ b/dev-python/apsw/Manifest
@@ -1 +1,2 @@
DIST apsw-3.46.0.1.gh.tar.gz 912632 BLAKE2B b2c89def11102a00dde64fa7d7546f50e302dfe4219394d3d6ddd7f66fec455a60689db61a94230f7ef9578069b08ecd826de82b4e8b019107b9a0b6a36c4271 SHA512 894cf6c49d608d9d8eff369dcf42dd3b2f5174cd98a2c471f41773e2c1474c13d31f08402d053fd0869acb5c038e26543caa345d205c46bd3b3ec6aaecda5089
+DIST apsw-3.46.1.0.gh.tar.gz 913223 BLAKE2B c0ad61e61a97471ef677ffe80f3f91e6520c95f8cece225a8086884f34de497714892e4ce0ca375f2ec66f48b8ecb4d38dd5ebdb57cd94050ef5eaee20d5d3ee SHA512 3cd81ceab03dadf10d9c10d645d33b962ba9ec55075bb193eb076f458dde11d5c5c6ec087ec31fc96d011ca1b339a9ffe07cb5d660b8205f6f156baaa0b18c81
diff --git a/dev-python/apsw/apsw-3.46.1.0.ebuild b/dev-python/apsw/apsw-3.46.1.0.ebuild
new file mode 100644
index 000000000000..cd1426156f2e
--- /dev/null
+++ b/dev-python/apsw/apsw-3.46.1.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_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1
+
+DESCRIPTION="APSW - Another Python SQLite Wrapper"
+HOMEPAGE="
+ https://github.com/rogerbinns/apsw/
+ https://pypi.org/project/apsw/
+"
+SRC_URI="
+ https://github.com/rogerbinns/apsw/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="ZLIB"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+IUSE="doc"
+
+DEPEND="
+ >=dev-db/sqlite-${PV%.*}:3
+"
+RDEPEND="
+ ${DEPEND}
+"
+
+src_configure() {
+ cat >> setup.cfg <<-EOF || die
+ [build_ext]
+ enable=load_extension
+ use_system_sqlite_config=True
+ EOF
+}
+
+python_test() {
+ esetup.py build_test_extension
+ cd "${T}" || die
+ "${EPYTHON}" -m apsw.tests -v || die "Tests failed under ${EPYTHON}"
+}
+
+python_install_all() {
+ use doc && local HTML_DOCS=( doc/. )
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest
index 9c7259943aac..956f6d4088e7 100644
--- a/dev-python/boto3/Manifest
+++ b/dev-python/boto3/Manifest
@@ -1,3 +1,4 @@
DIST boto3-1.34.158.gh.tar.gz 848930 BLAKE2B 5db04b9eee08f5418a595e736f075fbe22b92adada9219e8a8cf2299c723d09e2edf88e5ebb3d09c1613a01e5d0d5c837e9545c6ee3110c430c521da10fa2bde SHA512 03f532e78a1a2b8ec01396f0b7f7bae7059165e35440eda47f4393e99d2a8ded229470cf3269a71c746b8a66dccd8626444f1e429e561df1dc1ec0f6b8653272
DIST boto3-1.35.0.gh.tar.gz 851637 BLAKE2B 485b17616fed53a88280aad92d2e4219d8bcbf469b42cff6113f9596c6b245fad39b403b4fb29ed99b50955baa50940091e9c0f88cc6e350b44c69c4b1df5fdc SHA512 0236748c667ef1baf7484d4808083cb517c19ceae672973ac0cf9ce509a9e4a965c15349876807dc320fc96210ba6c5d16ea66545de19eed33dace058392d85d
DIST boto3-1.35.5.gh.tar.gz 854016 BLAKE2B f94d738e310725cd5f9c7b405a094155f3ecf640f02045662ed94ab3689ea549fde7eee19ae2be450768560ad705b8740fda78b79ed42cf536231626d247e09a SHA512 fc1106abbb306bacb80dce825bf71303e71b0d0698d7e3bb4dcaca4ea6e4f7a97e70753367200294f334b351e764bca57f2316afec854d2e46db4644dfefc25b
+DIST boto3-1.35.6.gh.tar.gz 854351 BLAKE2B 0aea780d070a5a806bcb8196ebc3785eb1a1b5ad3cb9f1598a24bf80b4be5f8757b551a524afed9440deae505e427b97f9b79b1a7c30c7db977319ee317bb58c SHA512 81fce9301003a5b2f67107a7f6ebbd033a43a43c890be7ff3248136c1fcc826fd475f9860d3295f16900f199057e1a7da7be60554dc193826ecef6e64f97341d
diff --git a/dev-python/boto3/boto3-1.35.6.ebuild b/dev-python/boto3/boto3-1.35.6.ebuild
new file mode 100644
index 000000000000..509842b2699d
--- /dev/null
+++ b/dev-python/boto3/boto3-1.35.6.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1
+
+DESCRIPTION="The AWS SDK for Python"
+HOMEPAGE="
+ https://github.com/boto/boto3/
+ https://pypi.org/project/boto3/
+"
+SRC_URI="
+ https://github.com/boto/boto3/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ >=dev-python/botocore-${PV}[${PYTHON_USEDEP}]
+ >=dev-python/jmespath-0.7.1[${PYTHON_USEDEP}]
+ >=dev-python/s3transfer-0.10.0[${PYTHON_USEDEP}]
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ # don't lock versions to narrow ranges
+ sed -e '/botocore/ d' \
+ -e '/jmespath/ d' \
+ -e '/s3transfer/ d' \
+ -i setup.py || die
+
+ # do not rely on bundled deps in botocore (sic!)
+ find -name '*.py' -exec sed -i \
+ -e 's:from botocore[.]vendored import:import:' \
+ -e 's:from botocore[.]vendored[.]:from :' \
+ {} + || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest tests/{functional,unit}
+}
diff --git a/dev-python/botocore/Manifest b/dev-python/botocore/Manifest
index cfc3a45914c6..7af0ffee3fee 100644
--- a/dev-python/botocore/Manifest
+++ b/dev-python/botocore/Manifest
@@ -1,3 +1,4 @@
DIST botocore-1.34.158.gh.tar.gz 13282704 BLAKE2B c244a36093cdaf57ac82dc11a3e9d4268d7cce36b8119674530228825f6ec4053abbc909dd664a1ea10ec48e0c418b90803275aabc89a41a99eaba6e138a5a17 SHA512 b60c743bfd1a1f3806c6ae71158a998587b8e87f43bdbe88c960cee19bcef41a4b3fd2fe5f50408abc97b22200a689990f79cbb6e952347c747e4bc8c21ae368
DIST botocore-1.35.0.gh.tar.gz 13294975 BLAKE2B a0cbafd1b0da5cd7150ea7a2e21b1209b206b7afcb86ad3ff004ca1c96f47da34eff29a43568f0e9a2dca3443516fdb6adf7bd3778835b908fa5fb3a8d22f79a SHA512 7d0c9815703ef49a8958ed1a5159018320108ae86efe20e6dff182db24ceeb67968db7027ee75809a1ebd1c835709d0d758b0699742bca2e435888dbe5e15a97
DIST botocore-1.35.5.gh.tar.gz 13303437 BLAKE2B 0a95351fbc93074bb0398871773120a194fe581a26f9a74c1101a5ea57bb3acb9a33937fc2d5a39a065988cdcc6dbe253bd2227cf93e670602ccc67ab82d8845 SHA512 5527420017a4a23d5593f5b3a0eb8caf15357642ed90cd73e0fe22774cc8f9f3637028286063e3e2810e5dafe52e882928269e5c82f6369be9af99bef18fb365
+DIST botocore-1.35.6.gh.tar.gz 13305231 BLAKE2B 1c3716883b2cc8dd98e4391ff60039f14e0e0fcd076a3780b6ee18c216f004d6f1ed2e916681d28133ae9788fd5c721abbba6c44354442a6d7862074e7f8956a SHA512 6d2ab4264886e231cb0b65ea34d2757b29ba71fe227bf8dbff3474074d612f13b3e9fcfe17b9cb2f8f420bd962f1eefe7b8038ef5017060c6732ec5ed927906e
diff --git a/dev-python/botocore/botocore-1.35.6.ebuild b/dev-python/botocore/botocore-1.35.6.ebuild
new file mode 100644
index 000000000000..64a61a30c80b
--- /dev/null
+++ b/dev-python/botocore/botocore-1.35.6.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Low-level, data-driven core of boto 3"
+HOMEPAGE="
+ https://github.com/boto/botocore/
+ https://pypi.org/project/botocore/
+"
+SRC_URI="
+ https://github.com/boto/botocore/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ <dev-python/jmespath-2[${PYTHON_USEDEP}]
+ dev-python/python-dateutil[${PYTHON_USEDEP}]
+ >=dev-python/urllib3-1.25.4[${PYTHON_USEDEP}]
+"
+# unbundled packages
+RDEPEND+="
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/jsonschema[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+src_prepare() {
+ # unpin deps
+ sed -i -e "s:>=.*':':" setup.py || die
+
+ # unbundle deps
+ rm -r botocore/vendored || die
+ find -name '*.py' -exec sed -i \
+ -e 's:from botocore[.]vendored import:import:' \
+ -e 's:from botocore[.]vendored[.]:from :' \
+ {} + || die
+
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # rely on bundled six
+ tests/functional/test_six_imports.py::test_no_bare_six_imports
+ tests/functional/test_six_threading.py::test_six_thread_safety
+ )
+
+ case ${EPYTHON} in
+ python3.13)
+ EPYTEST_DESELECT+=(
+ # memory use tests, probably fragile
+ tests/functional/leak/test_resource_leaks.py::TestDoesNotLeakMemory
+ )
+ ;;
+ esac
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest tests/{functional,unit}
+}
diff --git a/dev-python/clang-python/Manifest b/dev-python/clang-python/Manifest
index b2c074c06376..f98bf2d3492a 100644
--- a/dev-python/clang-python/Manifest
+++ b/dev-python/clang-python/Manifest
@@ -6,10 +6,6 @@ DIST llvm-project-17.0.6.src.tar.xz 127838860 BLAKE2B d6ede1a9fda8756995c3e06541
DIST llvm-project-17.0.6.src.tar.xz.sig 438 BLAKE2B 186e75b6a0fbfe1e85408589c149e1800fcc47d685b74e4260018e05cd08bc793d1d1197c9c50e177eea941a3d0c65cb0c583ce6dae449099b920adf8a508ef7 SHA512 f78c55053a6450625f3e95f52c305110b4468a9854fec75831b65b8d6ceee3c9206ab9e63c4b5fda8be9bd344f72cfbdaae0520ed240abd505e08ebeaa25d340
DIST llvm-project-18.1.8.src.tar.xz 132067260 BLAKE2B a950492f1dbfb874dff63b1ffef86468169ba2f211a9733ec2d4cf30040f7f277ef00f048bb44dee9f97d7d762f0f241f19e5a2a7b0b49217d3821ddfc8c354f SHA512 25eeee9984c8b4d0fbc240df90f33cbb000d3b0414baff5c8982beafcc5e59e7ef18f6f85d95b3a5f60cb3d4cd4f877c80487b5768bc21bc833f107698ad93db
DIST llvm-project-18.1.8.src.tar.xz.sig 566 BLAKE2B 6ab0efc5b38d4483f4e32e8b85774b2edd5d88fdf29f23b88eb0b5130a7a7f0e80549612b025f927e92de4a08ff7c292cff224dbda91a5d598244e98f7ad0fbd SHA512 ddfd1e8a06756759af6cbe488c82a6d6a62ba91f3e8a0eb4cece561321824f5d165b08ed91010588790b76e19790931d2651b24dba8567e3b151d3cb43bec25b
-DIST llvm-project-19.1.0-rc2.src.tar.xz 141264388 BLAKE2B 690b4912d9e4a8019b7990934dd6486362337ccb303dca119c0e75aa1063ad452222be1ee965e43b160dfcea20e491a20c289344152666b618712a1d76dc4780 SHA512 508a401e8433b1ac9a399246eb1a3c18faed7c3d41d8c118e77cefbb64cc6d6e171bd41a3e5584f6c84df141ba6819f1a1cce75b5c1ef33e3d2ac239e662d07c
-DIST llvm-project-19.1.0-rc2.src.tar.xz.sig 438 BLAKE2B 1eaf10a1419ecf009c033a8f6ecb6eec86107d81621d5b4665c8d929b05f4845ce0c432017343d7b06f33e6ff6384df9e1d8fc7b9c6efe7f10ef69798891b7e5 SHA512 b46e9a1d40f891c5f3544d8cc6295900bff5dda9a4a526b8db55a42a37ae90deb216b316d2117984e82f4e918d15343e75b3b9e6d6c773866707c3398e032826
DIST llvm-project-19.1.0-rc3.src.tar.xz 141250388 BLAKE2B 6530bede000d2e4b8ce10b445bfc1f81dc25c2d7121fc953581cd9b6989b3ba197707cd79d3c7b94c055bf2e21b0d07ab3cb401d3f73d22eefba6da4b71dca7b SHA512 3ee4eab848e5e38c396e6f5addf5eb42570d451fc8e7cd77150dc5542f8f710f4a9db51836f7a799996dd1b8194defe4d58efe7c19e5d5e1c5f3dbdda94c0cf3
DIST llvm-project-19.1.0-rc3.src.tar.xz.sig 438 BLAKE2B 86bad4d4fb805340096473bc603d7a3483f030f62b6f52b64d12c33561fbbb999c2ab69cc94857a32747492c846a5ab631a84da200b03475fd401335373bbccf SHA512 ef0fd2e3e7069fbfd410cbcf71294d1b7182456330ff151348058b5cb0f292edaecb9dcbf613ee4fc979214a23bd3bb8077d71e674635359da36b938dc143266
DIST llvm-project-503907dc505db1e439e7061113bf84dd105f2e35.tar.gz 218750576 BLAKE2B 40904dbf62cffe9cb757cc1382a765d5c89791948e86bfa4fbdc5a78ebc11cc82588bc730e6c5c84b6d84922cd32290df0146733a013ffa4e408b8a7c2313a1f SHA512 a121cca2ef49c6b25f137e66d23d332d2f9e3bd0d349b1202b6869f7c85a141aecfe20a6c4d4eff84e32a243216740f20114968589207d39df229daf6443ba0d
-DIST llvm-project-db8ef6188cbbe2125e6d60bdef77a535105772df.tar.gz 218416682 BLAKE2B 691e3881e4a60c008c6b766b51ecc856122de1f40242ff1d91ebaa12682fea0a22f84783eb930c42d196f50ba0d3b2010f9010ed73ee7e292fe78c93d6e3f324 SHA512 2dc16a603b60607cc3daee2de0126a567a78c4fff72b2fbcb94c82472bc5ec64ac354ba8592b9a643248a5bfd43b34e2a60f2751a0c9e9e28b7f895fc50a5e9d
-DIST llvm-project-fd7d7882e7fa5a38d4bfde426120d4663718beb4.tar.gz 218217769 BLAKE2B a6c2aa012c342e31527b7e9f85e8fea3549d52530d8f87cd699e094a0aa768d099f9fd2631161ff7f53b4a5011937ed6d1f52b8fa1d23aa34183be1f487d4277 SHA512 c4863fab1a3c03f7f9c42f3501d3a75cebb491343515d77d30b26e5cbd720fc3fd628052099d87ed638e8c424bcbe7a1d066ed857f73da6f243d3d5a76b0e6c5
diff --git a/dev-python/clang-python/clang-python-19.1.0_rc2.ebuild b/dev-python/clang-python/clang-python-19.1.0_rc2.ebuild
deleted file mode 100644
index 82c18f7c0f95..000000000000
--- a/dev-python/clang-python/clang-python-19.1.0_rc2.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8,9,10,11,12} )
-inherit llvm.org python-r1
-
-DESCRIPTION="Python bindings for sys-devel/clang"
-HOMEPAGE="https://llvm.org/"
-
-LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
-SLOT="0"
-IUSE="test"
-RESTRICT="!test? ( test )"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-# The module is opening libclang.so directly, and doing some blasphemy
-# on top of it.
-DEPEND="
- >=sys-devel/clang-${PV}:*
- !sys-devel/llvm:0[clang(-),python(-)]
- !sys-devel/clang:0[python(-)]
-"
-RDEPEND="
- ${DEPEND}
- ${PYTHON_DEPS}
-"
-BDEPEND="
- ${PYTHON_DEPS}
- test? (
- sys-devel/clang:${LLVM_MAJOR}
- )
-"
-
-LLVM_COMPONENTS=( clang/bindings/python )
-llvm.org_set_globals
-
-python_test() {
- # tests rely on results from a specific clang version, so override
- # the search path
- local -x CLANG_LIBRARY_PATH=${BROOT}/usr/lib/llvm/${LLVM_MAJOR}/$(get_libdir)
- local -x CLANG_NO_DEFAULT_CONFIG=1
- "${EPYTHON}" -m unittest discover -v || die "Tests fail with ${EPYTHON}"
-}
-
-src_test() {
- python_foreach_impl python_test
-}
-
-src_install() {
- python_foreach_impl python_domodule clang
-}
diff --git a/dev-python/clang-python/clang-python-20.0.0_pre20240808.ebuild b/dev-python/clang-python/clang-python-20.0.0_pre20240808.ebuild
deleted file mode 100644
index 82c18f7c0f95..000000000000
--- a/dev-python/clang-python/clang-python-20.0.0_pre20240808.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8,9,10,11,12} )
-inherit llvm.org python-r1
-
-DESCRIPTION="Python bindings for sys-devel/clang"
-HOMEPAGE="https://llvm.org/"
-
-LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
-SLOT="0"
-IUSE="test"
-RESTRICT="!test? ( test )"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-# The module is opening libclang.so directly, and doing some blasphemy
-# on top of it.
-DEPEND="
- >=sys-devel/clang-${PV}:*
- !sys-devel/llvm:0[clang(-),python(-)]
- !sys-devel/clang:0[python(-)]
-"
-RDEPEND="
- ${DEPEND}
- ${PYTHON_DEPS}
-"
-BDEPEND="
- ${PYTHON_DEPS}
- test? (
- sys-devel/clang:${LLVM_MAJOR}
- )
-"
-
-LLVM_COMPONENTS=( clang/bindings/python )
-llvm.org_set_globals
-
-python_test() {
- # tests rely on results from a specific clang version, so override
- # the search path
- local -x CLANG_LIBRARY_PATH=${BROOT}/usr/lib/llvm/${LLVM_MAJOR}/$(get_libdir)
- local -x CLANG_NO_DEFAULT_CONFIG=1
- "${EPYTHON}" -m unittest discover -v || die "Tests fail with ${EPYTHON}"
-}
-
-src_test() {
- python_foreach_impl python_test
-}
-
-src_install() {
- python_foreach_impl python_domodule clang
-}
diff --git a/dev-python/clang-python/clang-python-20.0.0_pre20240815.ebuild b/dev-python/clang-python/clang-python-20.0.0_pre20240815.ebuild
deleted file mode 100644
index 82c18f7c0f95..000000000000
--- a/dev-python/clang-python/clang-python-20.0.0_pre20240815.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8,9,10,11,12} )
-inherit llvm.org python-r1
-
-DESCRIPTION="Python bindings for sys-devel/clang"
-HOMEPAGE="https://llvm.org/"
-
-LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
-SLOT="0"
-IUSE="test"
-RESTRICT="!test? ( test )"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-# The module is opening libclang.so directly, and doing some blasphemy
-# on top of it.
-DEPEND="
- >=sys-devel/clang-${PV}:*
- !sys-devel/llvm:0[clang(-),python(-)]
- !sys-devel/clang:0[python(-)]
-"
-RDEPEND="
- ${DEPEND}
- ${PYTHON_DEPS}
-"
-BDEPEND="
- ${PYTHON_DEPS}
- test? (
- sys-devel/clang:${LLVM_MAJOR}
- )
-"
-
-LLVM_COMPONENTS=( clang/bindings/python )
-llvm.org_set_globals
-
-python_test() {
- # tests rely on results from a specific clang version, so override
- # the search path
- local -x CLANG_LIBRARY_PATH=${BROOT}/usr/lib/llvm/${LLVM_MAJOR}/$(get_libdir)
- local -x CLANG_NO_DEFAULT_CONFIG=1
- "${EPYTHON}" -m unittest discover -v || die "Tests fail with ${EPYTHON}"
-}
-
-src_test() {
- python_foreach_impl python_test
-}
-
-src_install() {
- python_foreach_impl python_domodule clang
-}
diff --git a/dev-python/cypari2/cypari2-2.2.0.ebuild b/dev-python/cypari2/cypari2-2.2.0.ebuild
index 203af7db1dac..e0402c31972d 100644
--- a/dev-python/cypari2/cypari2-2.2.0.ebuild
+++ b/dev-python/cypari2/cypari2-2.2.0.ebuild
@@ -14,7 +14,7 @@ HOMEPAGE="https://github.com/sagemath/cypari2"
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="~amd64"
+KEYWORDS="~amd64 ~riscv"
DEPEND="sci-mathematics/pari[gmp,doc]
dev-python/cysignals[${PYTHON_USEDEP}]"
diff --git a/dev-python/cysignals/cysignals-1.11.4-r1.ebuild b/dev-python/cysignals/cysignals-1.11.4-r1.ebuild
index a257827a76f3..2cce1aee98ed 100644
--- a/dev-python/cysignals/cysignals-1.11.4-r1.ebuild
+++ b/dev-python/cysignals/cysignals-1.11.4-r1.ebuild
@@ -18,7 +18,7 @@ HOMEPAGE="
# setup.py has "or later"
LICENSE="LGPL-3+"
SLOT="0"
-KEYWORDS="amd64"
+KEYWORDS="amd64 ~riscv"
DEPEND="
sci-mathematics/pari:=
diff --git a/dev-python/fakeredis/Manifest b/dev-python/fakeredis/Manifest
index be5a372ee7f7..ccc68d0f0cd0 100644
--- a/dev-python/fakeredis/Manifest
+++ b/dev-python/fakeredis/Manifest
@@ -1,2 +1,3 @@
DIST fakeredis-2.23.5.tar.gz 132797 BLAKE2B 1314ad46b310d4c1661b86593057afb3d1e9d0e4412146c1b883a17802c681e68062cb89dd89bc7cf3dfaac1eaf713fad7d4860986f50ed585a281208db0778a SHA512 e402cdd881872dc9af2e2b555d89329ba0eea0773f3924936774fc5a3a49d5fc9cba121f9bcddecc6d203f50bb2966aa7576496345966d415852ed8ed96cc8d4
DIST fakeredis-2.24.0.tar.gz 143594 BLAKE2B d14a163f9997b61bfcc156ffc47d5f18c94db9226e961c2bda7d4160d4c80e19db0a3c6a500511ad80f950e0c6ebd6ab160cf11cf6097ca3b26223183a54e889 SHA512 13a42750afd4f6432904aa01a841d7f3d2e8512955751fdf8f638b5e207039fa1b5e07bdcd28b7b9d1c1461a85a0c12cf7a1d663dd287220850575af097d2271
+DIST fakeredis-2.24.1.tar.gz 143606 BLAKE2B 1f89aed8f7a66c9100748946441d6a6876f1e0795337368fc34a9c89f1c256ddebcbd9b9597f4ff75703c78c3bc60031530423ce358dcc95c1567acec1b9856a SHA512 737ccfee02d05325e752d7cac8fb405937406acac9090709ead76ed8db2e1912f1c0d128a8ea354e78acfae317ec6bccb931f784720a3cd4c84693f9f3607a17
diff --git a/dev-python/fakeredis/fakeredis-2.24.1.ebuild b/dev-python/fakeredis/fakeredis-2.24.1.ebuild
new file mode 100644
index 000000000000..460185cf927a
--- /dev/null
+++ b/dev-python/fakeredis/fakeredis-2.24.1.ebuild
@@ -0,0 +1,97 @@
+# Copyright 2020-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Fake implementation of redis API for testing purposes"
+HOMEPAGE="
+ https://github.com/cunla/fakeredis-py/
+ https://pypi.org/project/fakeredis/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+RDEPEND="
+ dev-python/packaging[${PYTHON_USEDEP}]
+ >=dev-python/redis-4.2[${PYTHON_USEDEP}]
+ <dev-python/sortedcontainers-3[${PYTHON_USEDEP}]
+ >=dev-python/sortedcontainers-2[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/typing-extensions[${PYTHON_USEDEP}]
+ ' 3.10)
+"
+BDEPEND="
+ test? (
+ dev-db/redis
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ # https://github.com/cunla/fakeredis-py/issues/320
+ sed -i -e '/LICENSE/d' pyproject.toml || die
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # also lupa
+ test/test_aioredis2.py::test_failed_script_error
+ # TODO
+ "test/test_fakeredis.py::test_set_get_nx[StrictRedis]"
+ "test/test_fakeredis.py::test_lpop_count[StrictRedis]"
+ "test/test_fakeredis.py::test_rpop_count[StrictRedis]"
+ "test/test_fakeredis.py::test_zadd_minus_zero[StrictRedis]"
+ "test/test_mixins/test_pubsub_commands.py::test_pubsub_channels[StrictRedis]"
+ test/test_mixins/test_set_commands.py::test_smismember_wrong_type
+ # new redis-server?
+ "test/test_mixins/test_pubsub_commands.py::test_pubsub_shardnumsub[StrictRedis]"
+ # json ext
+ test/test_json/test_json.py
+ test/test_json/test_json_arr_commands.py
+ # tdigest ext?
+ 'test/test_mixins/test_server_commands.py::test_command[FakeStrictRedis]'
+ )
+ local EPYTEST_IGNORE=(
+ # these tests fail a lot...
+ test/test_hypothesis.py
+ )
+ local args=(
+ # tests requiring lupa (lua support)
+ -k 'not test_eval and not test_lua and not test_script'
+ )
+ # Note: this package is not xdist-friendly
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -p asyncio -p pytest_mock "${args[@]}"
+}
+
+src_test() {
+ local redis_pid="${T}"/redis.pid
+ local redis_port=6380
+
+ einfo "Spawning Redis"
+ einfo "NOTE: Port ${redis_port} must be free"
+ "${EPREFIX}"/usr/sbin/redis-server - <<- EOF || die "Unable to start redis server"
+ daemonize yes
+ pidfile ${redis_pid}
+ port ${redis_port}
+ bind 127.0.0.1
+ EOF
+
+ # Run the tests
+ distutils-r1_src_test
+
+ # Clean up afterwards
+ kill "$(<"${redis_pid}")" || die
+}
diff --git a/dev-python/fpylll/fpylll-0.6.1.ebuild b/dev-python/fpylll/fpylll-0.6.1.ebuild
index b32a79c8b1c5..e232f6eff425 100644
--- a/dev-python/fpylll/fpylll-0.6.1.ebuild
+++ b/dev-python/fpylll/fpylll-0.6.1.ebuild
@@ -18,7 +18,7 @@ HOMEPAGE="
# setup.py says "or later"
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="amd64"
+KEYWORDS="amd64 ~riscv"
IUSE="test"
DEPEND="
diff --git a/dev-python/googleapis-common-protos/Manifest b/dev-python/googleapis-common-protos/Manifest
index 7ea7a283bffd..e28649927e2a 100644
--- a/dev-python/googleapis-common-protos/Manifest
+++ b/dev-python/googleapis-common-protos/Manifest
@@ -1 +1,2 @@
DIST googleapis-common-protos-1.63.2.tar.gz 112890 BLAKE2B c6b5262435e7458721fe63fcdc9f8c6485fda27b417619f597d662624b1be13380669d5467427e3f70755f64a187b320cf5954adc307242ae937830c3774aab9 SHA512 ec987acb6ead40771d69e851ca679e7985532a39821d5a2318f9e5ccfce17b9e6f9d4339266b77cb2e55f2c0de0256c80321677d026f4f2c830bdb435aeff676
+DIST googleapis_common_protos-1.64.0.tar.gz 113350 BLAKE2B 79f578c079956926215489353c5b75542f0a44a27f41d8f36a7459357e4d425dc361cfa437d1dc5bbe3338b9ed8a70667c18fd718b962b41e6489b107fb05222 SHA512 3757083840f1a1a6645836f64be350fd0a7378c97f72ab540342a9cdc733d427179dc49a73b0a97e0ab75544ef1e4f81292b0a83e375829c6082de76a6d02fab
diff --git a/dev-python/googleapis-common-protos/googleapis-common-protos-1.64.0.ebuild b/dev-python/googleapis-common-protos/googleapis-common-protos-1.64.0.ebuild
new file mode 100644
index 000000000000..88f6d138ff4d
--- /dev/null
+++ b/dev-python/googleapis-common-protos/googleapis-common-protos-1.64.0.ebuild
@@ -0,0 +1,32 @@
+# Copyright 2020-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Python classes generated from the common protos in the googleapis repository"
+HOMEPAGE="
+ https://github.com/googleapis/python-api-common-protos/
+ https://pypi.org/project/googleapis-common-protos/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+RDEPEND="
+ <dev-python/protobuf-python-6[${PYTHON_USEDEP}]
+ >=dev-python/protobuf-python-3.15.0[${PYTHON_USEDEP}]
+ !dev-python/namespace-google
+"
+
+distutils_enable_tests pytest
+
+python_compile() {
+ distutils-r1_python_compile
+ find "${BUILD_DIR}" -name '*.pth' -delete || die
+}
diff --git a/dev-python/importlib-resources/importlib-resources-6.4.4.ebuild b/dev-python/importlib-resources/importlib-resources-6.4.4.ebuild
index dfccedc77446..ecffbfa76489 100644
--- a/dev-python/importlib-resources/importlib-resources-6.4.4.ebuild
+++ b/dev-python/importlib-resources/importlib-resources-6.4.4.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
BDEPEND="
dev-python/setuptools-scm[${PYTHON_USEDEP}]
diff --git a/dev-python/jupyterlab/Manifest b/dev-python/jupyterlab/Manifest
index e490452ca451..58eb8ec8938a 100644
--- a/dev-python/jupyterlab/Manifest
+++ b/dev-python/jupyterlab/Manifest
@@ -1 +1,2 @@
DIST jupyterlab-4.2.4.tar.gz 21506914 BLAKE2B b130f91807c96d57d01127a37dcac1589422ef36023e9b02a32ade9c2ceedf128fce49d1a11dfbb5836dd5f40a0828e32f625cb3d99eb0098785b5be6b56eeba SHA512 2327c7d7b63185c9e1a90acfcac4b31224835601ed8e0bb545077e0c68f6cbb612af884fef288b7e28245b83a035542590cbd721b0f9e44af27bb4aa8a00acab
+DIST jupyterlab-4.2.5.tar.gz 21508698 BLAKE2B 9222972e40e60549360d80221b97806e47b70592ffa9a63b3cb030e4b4ad061a8f8eadf295d76ae0302efb3bbf854cde9f5dfcacb6df3c6ad1994bf6ab66d1cc SHA512 7c5c3aab1bf86da0e49742630ece8a311ec351be99bfce3e35b5e92e06e858296e882a47f7a1abe9ab1c63cc92062f21d557f4f6237846a3c8377fc6288bf298
diff --git a/dev-python/jupyterlab/jupyterlab-4.2.5.ebuild b/dev-python/jupyterlab/jupyterlab-4.2.5.ebuild
new file mode 100644
index 000000000000..7e7785d9fc2c
--- /dev/null
+++ b/dev-python/jupyterlab/jupyterlab-4.2.5.ebuild
@@ -0,0 +1,81 @@
+# 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-6.5.0[${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.27.1[${PYTHON_USEDEP}]
+ <dev-python/jupyterlab-server-3[${PYTHON_USEDEP}]
+ >=dev-python/notebook-shim-0.2[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ >=dev-python/setuptools-40.0.1[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ >=dev-python/tomli-1.2.2[${PYTHON_USEDEP}]
+ ' 3.10)
+ >=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/keystoneauth1/Manifest b/dev-python/keystoneauth1/Manifest
index e4af4b8d6fd5..ee31b50c0045 100644
--- a/dev-python/keystoneauth1/Manifest
+++ b/dev-python/keystoneauth1/Manifest
@@ -1 +1,2 @@
DIST keystoneauth1-5.7.0.tar.gz 275942 BLAKE2B 71e94ed879cb79b65ea19cb06718c10268979a4f271e04314b24db648eccf3b0003826e71942854360d3df7563c893ee73590a826337fe1c0aafb67245f58f2e SHA512 529a831b6ec51e780fae09d6368d32eabfc843d019a16101c66a6cf2b8ed6b246e1d9e8def5ed11154115b460e806f29a47cb419e1c72da43b7348480843255b
+DIST keystoneauth1-5.8.0.tar.gz 278617 BLAKE2B 93437140316d1f353c42f3e8face97d9510c4a795f5c5c7c29b7dbd7c66887a819d71a66f35ebbda3851174cc9c738f53d8edc35a940e4c06a0b4cec19db36d8 SHA512 a427c9a6339cce57e53b78ee3e33276a87753e4cee44fe5dfbc85c7d54bc95bbc1e4536a26c8d1be1ef5a392e9095d529fd64df0ce61f1a4a4c0ba8078b2cddd
diff --git a/dev-python/keystoneauth1/keystoneauth1-5.8.0.ebuild b/dev-python/keystoneauth1/keystoneauth1-5.8.0.ebuild
new file mode 100644
index 000000000000..2ed45dc8b40c
--- /dev/null
+++ b/dev-python/keystoneauth1/keystoneauth1-5.8.0.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="This package contains tools for authenticating to an OpenStack-based cloud"
+HOMEPAGE="
+ https://opendev.org/openstack/keystoneauth/
+ https://github.com/openstack/keystoneauth/
+ https://pypi.org/project/keystoneauth1/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+
+RDEPEND="
+ >=dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
+ >=dev-python/iso8601-0.1.11[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
+ >=dev-python/six-1.10.0[${PYTHON_USEDEP}]
+ >=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
+ >=dev-python/os-service-types-1.2.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ >=dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
+ test? (
+ >=dev-python/betamax-0.7.0[${PYTHON_USEDEP}]
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/lxml-4.2.0[${PYTHON_USEDEP}]
+ >=dev-python/oauthlib-0.6.2[${PYTHON_USEDEP}]
+ >=dev-python/oslo-config-5.2.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/pyyaml-3.12[${PYTHON_USEDEP}]
+ >=dev-python/requests-kerberos-0.8.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-mock-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/testresources-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+EPYTEST_DESELECT=(
+ # fragile to test runner name
+ keystoneauth1/tests/unit/test_session.py::SessionTests::test_user_agent
+ # broken betamax
+ keystoneauth1/tests/unit/test_betamax_fixture.py::TestBetamaxFixture::test_keystoneauth_betamax_fixture
+)
+
+EPYTEST_IGNORE=(
+ # require hacking
+ keystoneauth1/tests/unit/test_hacking_checks.py
+)
diff --git a/dev-python/lit/Manifest b/dev-python/lit/Manifest
index b2c074c06376..f98bf2d3492a 100644
--- a/dev-python/lit/Manifest
+++ b/dev-python/lit/Manifest
@@ -6,10 +6,6 @@ DIST llvm-project-17.0.6.src.tar.xz 127838860 BLAKE2B d6ede1a9fda8756995c3e06541
DIST llvm-project-17.0.6.src.tar.xz.sig 438 BLAKE2B 186e75b6a0fbfe1e85408589c149e1800fcc47d685b74e4260018e05cd08bc793d1d1197c9c50e177eea941a3d0c65cb0c583ce6dae449099b920adf8a508ef7 SHA512 f78c55053a6450625f3e95f52c305110b4468a9854fec75831b65b8d6ceee3c9206ab9e63c4b5fda8be9bd344f72cfbdaae0520ed240abd505e08ebeaa25d340
DIST llvm-project-18.1.8.src.tar.xz 132067260 BLAKE2B a950492f1dbfb874dff63b1ffef86468169ba2f211a9733ec2d4cf30040f7f277ef00f048bb44dee9f97d7d762f0f241f19e5a2a7b0b49217d3821ddfc8c354f SHA512 25eeee9984c8b4d0fbc240df90f33cbb000d3b0414baff5c8982beafcc5e59e7ef18f6f85d95b3a5f60cb3d4cd4f877c80487b5768bc21bc833f107698ad93db
DIST llvm-project-18.1.8.src.tar.xz.sig 566 BLAKE2B 6ab0efc5b38d4483f4e32e8b85774b2edd5d88fdf29f23b88eb0b5130a7a7f0e80549612b025f927e92de4a08ff7c292cff224dbda91a5d598244e98f7ad0fbd SHA512 ddfd1e8a06756759af6cbe488c82a6d6a62ba91f3e8a0eb4cece561321824f5d165b08ed91010588790b76e19790931d2651b24dba8567e3b151d3cb43bec25b
-DIST llvm-project-19.1.0-rc2.src.tar.xz 141264388 BLAKE2B 690b4912d9e4a8019b7990934dd6486362337ccb303dca119c0e75aa1063ad452222be1ee965e43b160dfcea20e491a20c289344152666b618712a1d76dc4780 SHA512 508a401e8433b1ac9a399246eb1a3c18faed7c3d41d8c118e77cefbb64cc6d6e171bd41a3e5584f6c84df141ba6819f1a1cce75b5c1ef33e3d2ac239e662d07c
-DIST llvm-project-19.1.0-rc2.src.tar.xz.sig 438 BLAKE2B 1eaf10a1419ecf009c033a8f6ecb6eec86107d81621d5b4665c8d929b05f4845ce0c432017343d7b06f33e6ff6384df9e1d8fc7b9c6efe7f10ef69798891b7e5 SHA512 b46e9a1d40f891c5f3544d8cc6295900bff5dda9a4a526b8db55a42a37ae90deb216b316d2117984e82f4e918d15343e75b3b9e6d6c773866707c3398e032826
DIST llvm-project-19.1.0-rc3.src.tar.xz 141250388 BLAKE2B 6530bede000d2e4b8ce10b445bfc1f81dc25c2d7121fc953581cd9b6989b3ba197707cd79d3c7b94c055bf2e21b0d07ab3cb401d3f73d22eefba6da4b71dca7b SHA512 3ee4eab848e5e38c396e6f5addf5eb42570d451fc8e7cd77150dc5542f8f710f4a9db51836f7a799996dd1b8194defe4d58efe7c19e5d5e1c5f3dbdda94c0cf3
DIST llvm-project-19.1.0-rc3.src.tar.xz.sig 438 BLAKE2B 86bad4d4fb805340096473bc603d7a3483f030f62b6f52b64d12c33561fbbb999c2ab69cc94857a32747492c846a5ab631a84da200b03475fd401335373bbccf SHA512 ef0fd2e3e7069fbfd410cbcf71294d1b7182456330ff151348058b5cb0f292edaecb9dcbf613ee4fc979214a23bd3bb8077d71e674635359da36b938dc143266
DIST llvm-project-503907dc505db1e439e7061113bf84dd105f2e35.tar.gz 218750576 BLAKE2B 40904dbf62cffe9cb757cc1382a765d5c89791948e86bfa4fbdc5a78ebc11cc82588bc730e6c5c84b6d84922cd32290df0146733a013ffa4e408b8a7c2313a1f SHA512 a121cca2ef49c6b25f137e66d23d332d2f9e3bd0d349b1202b6869f7c85a141aecfe20a6c4d4eff84e32a243216740f20114968589207d39df229daf6443ba0d
-DIST llvm-project-db8ef6188cbbe2125e6d60bdef77a535105772df.tar.gz 218416682 BLAKE2B 691e3881e4a60c008c6b766b51ecc856122de1f40242ff1d91ebaa12682fea0a22f84783eb930c42d196f50ba0d3b2010f9010ed73ee7e292fe78c93d6e3f324 SHA512 2dc16a603b60607cc3daee2de0126a567a78c4fff72b2fbcb94c82472bc5ec64ac354ba8592b9a643248a5bfd43b34e2a60f2751a0c9e9e28b7f895fc50a5e9d
-DIST llvm-project-fd7d7882e7fa5a38d4bfde426120d4663718beb4.tar.gz 218217769 BLAKE2B a6c2aa012c342e31527b7e9f85e8fea3549d52530d8f87cd699e094a0aa768d099f9fd2631161ff7f53b4a5011937ed6d1f52b8fa1d23aa34183be1f487d4277 SHA512 c4863fab1a3c03f7f9c42f3501d3a75cebb491343515d77d30b26e5cbd720fc3fd628052099d87ed638e8c424bcbe7a1d066ed857f73da6f243d3d5a76b0e6c5
diff --git a/dev-python/lit/lit-19.1.0_rc2.ebuild b/dev-python/lit/lit-19.1.0_rc2.ebuild
deleted file mode 100644
index 5ed5b5bd096e..000000000000
--- a/dev-python/lit/lit-19.1.0_rc2.ebuild
+++ /dev/null
@@ -1,45 +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} )
-
-inherit distutils-r1 llvm.org
-
-DESCRIPTION="A stand-alone install of the LLVM suite testing tool"
-HOMEPAGE="https://llvm.org/"
-
-LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
-SLOT="0"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-# Tests require 'FileCheck' and 'not' utilities (from llvm)
-BDEPEND="
- test? (
- dev-python/psutil[${PYTHON_USEDEP}]
- sys-devel/llvm
- )
-"
-
-LLVM_COMPONENTS=( llvm/utils/lit )
-llvm.org_set_globals
-
-# TODO: move the manpage generation here (from sys-devel/llvm)
-
-src_prepare() {
- # flaky test
- # https://github.com/llvm/llvm-project/issues/72022
- rm tests/progress-bar.py || die
-
- cd "${WORKDIR}" || die
- distutils-r1_src_prepare
-}
-
-python_test() {
- local -x LIT_PRESERVES_TMP=1
- local litflags=$(get_lit_flags)
- ./lit.py ${litflags//;/ } tests || die
-}
diff --git a/dev-python/lit/lit-20.0.0_pre20240808.ebuild b/dev-python/lit/lit-20.0.0_pre20240808.ebuild
deleted file mode 100644
index 5ed5b5bd096e..000000000000
--- a/dev-python/lit/lit-20.0.0_pre20240808.ebuild
+++ /dev/null
@@ -1,45 +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} )
-
-inherit distutils-r1 llvm.org
-
-DESCRIPTION="A stand-alone install of the LLVM suite testing tool"
-HOMEPAGE="https://llvm.org/"
-
-LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
-SLOT="0"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-# Tests require 'FileCheck' and 'not' utilities (from llvm)
-BDEPEND="
- test? (
- dev-python/psutil[${PYTHON_USEDEP}]
- sys-devel/llvm
- )
-"
-
-LLVM_COMPONENTS=( llvm/utils/lit )
-llvm.org_set_globals
-
-# TODO: move the manpage generation here (from sys-devel/llvm)
-
-src_prepare() {
- # flaky test
- # https://github.com/llvm/llvm-project/issues/72022
- rm tests/progress-bar.py || die
-
- cd "${WORKDIR}" || die
- distutils-r1_src_prepare
-}
-
-python_test() {
- local -x LIT_PRESERVES_TMP=1
- local litflags=$(get_lit_flags)
- ./lit.py ${litflags//;/ } tests || die
-}
diff --git a/dev-python/lit/lit-20.0.0_pre20240815.ebuild b/dev-python/lit/lit-20.0.0_pre20240815.ebuild
deleted file mode 100644
index 5ed5b5bd096e..000000000000
--- a/dev-python/lit/lit-20.0.0_pre20240815.ebuild
+++ /dev/null
@@ -1,45 +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} )
-
-inherit distutils-r1 llvm.org
-
-DESCRIPTION="A stand-alone install of the LLVM suite testing tool"
-HOMEPAGE="https://llvm.org/"
-
-LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
-SLOT="0"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-# Tests require 'FileCheck' and 'not' utilities (from llvm)
-BDEPEND="
- test? (
- dev-python/psutil[${PYTHON_USEDEP}]
- sys-devel/llvm
- )
-"
-
-LLVM_COMPONENTS=( llvm/utils/lit )
-llvm.org_set_globals
-
-# TODO: move the manpage generation here (from sys-devel/llvm)
-
-src_prepare() {
- # flaky test
- # https://github.com/llvm/llvm-project/issues/72022
- rm tests/progress-bar.py || die
-
- cd "${WORKDIR}" || die
- distutils-r1_src_prepare
-}
-
-python_test() {
- local -x LIT_PRESERVES_TMP=1
- local litflags=$(get_lit_flags)
- ./lit.py ${litflags//;/ } tests || die
-}
diff --git a/dev-python/lxml/Manifest b/dev-python/lxml/Manifest
index 8e6b184f8dd6..a9206fd64600 100644
--- a/dev-python/lxml/Manifest
+++ b/dev-python/lxml/Manifest
@@ -1 +1,2 @@
DIST lxml-5.2.2.gh.tar.gz 950650 BLAKE2B d9e3bd96f386a808eca58ffa9a6b5a79e43102b7161fac9b97905de2bd22d21feaddb093e27463f597ef5378d754011c2999a38953e6288595b8dd171976688b SHA512 20b87a2d6e7ac82b6979d6fd18ecd5c224fec6eeee6b69d47a5bf2947ce53e6a517d1b86ab68836a5974f78ce86551ddc2317c1a7255932b418b98dc64d59376
+DIST lxml-5.3.0.gh.tar.gz 951199 BLAKE2B 8317179c524856593b323f665c288ddddd8af7e716e1ddf1222a857c8466cfc62a6c20b21744ca418f809a3c8492216c5c9c38cfa62f2e7d51daea7343b6810b SHA512 514477bf4c865541233d73f20de816b51d265dbd75c56a0d13779e14527c73e85ca890718d06c08728da228d410459016e9cb8abdad4d03b44a81a04a198fb54
diff --git a/dev-python/lxml/files/lxml-5.3.0-pypy.patch b/dev-python/lxml/files/lxml-5.3.0-pypy.patch
new file mode 100644
index 000000000000..c83c73c81934
--- /dev/null
+++ b/dev-python/lxml/files/lxml-5.3.0-pypy.patch
@@ -0,0 +1,177 @@
+From b6ba59657c8c7e169e8eeb763d85ca6136df3eea Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
+Date: Fri, 29 Mar 2024 16:22:00 +0100
+Subject: [PATCH] skip tests that are broken on pypy
+
+---
+ src/lxml/tests/test_http_io.py | 3 ++-
+ src/lxml/tests/test_nsclasses.py | 3 ++-
+ src/lxml/tests/test_objectify.py | 37 ++++++++++++++++++++++++++++++--
+ 3 files changed, 39 insertions(+), 4 deletions(-)
+
+diff --git a/src/lxml/tests/test_http_io.py b/src/lxml/tests/test_http_io.py
+index 8385e393..0b259299 100644
+--- a/src/lxml/tests/test_http_io.py
++++ b/src/lxml/tests/test_http_io.py
+@@ -10,3 +10,3 @@ import gzip
+
+-from .common_imports import etree, HelperTestCase, BytesIO, _bytes
++from .common_imports import etree, HelperTestCase, BytesIO, _bytes, IS_PYPY
+ from .dummy_http_server import webserver, HTTPRequestCollector
+@@ -14,2 +14,3 @@ from .dummy_http_server import webserver, HTTPRequestCollector
+
++@unittest.skipIf(IS_PYPY, "broken on pypy")
+ class HttpIOTestCase(HelperTestCase):
+diff --git a/src/lxml/tests/test_nsclasses.py b/src/lxml/tests/test_nsclasses.py
+index 0c33f20c..08540001 100644
+--- a/src/lxml/tests/test_nsclasses.py
++++ b/src/lxml/tests/test_nsclasses.py
+@@ -8,3 +8,3 @@ import unittest
+
+-from .common_imports import etree, HelperTestCase, _bytes, make_doctest
++from .common_imports import etree, HelperTestCase, _bytes, make_doctest, IS_PYPY
+
+@@ -45,2 +45,3 @@ class ETreeNamespaceClassesTestCase(HelperTestCase):
+
++ @unittest.skipIf(IS_PYPY, "broken on pypy")
+ def test_ns_classes(self):
+diff --git a/src/lxml/tests/test_objectify.py b/src/lxml/tests/test_objectify.py
+index 39fe0098..92c857f8 100644
+--- a/src/lxml/tests/test_objectify.py
++++ b/src/lxml/tests/test_objectify.py
+@@ -10,3 +10,4 @@ import unittest
+ from .common_imports import (
+- etree, HelperTestCase, fileInTestDir, doctest, make_doctest, _bytes, _str, BytesIO
++ etree, HelperTestCase, fileInTestDir, doctest, make_doctest, _bytes, _str, BytesIO,
++ IS_PYPY
+ )
+@@ -383,2 +384,3 @@ class ObjectifyTestCase(HelperTestCase):
+
++ @unittest.skipIf(IS_PYPY, "broken on pypy")
+ def test_setattr(self):
+@@ -818,2 +820,3 @@ class ObjectifyTestCase(HelperTestCase):
+
++ @unittest.skipIf(IS_PYPY, "broken on pypy")
+ def test_build_tree(self):
+@@ -847,2 +850,3 @@ class ObjectifyTestCase(HelperTestCase):
+
++ @unittest.skipIf(IS_PYPY, "broken on pypy")
+ def test_type_bool(self):
+@@ -884,2 +888,3 @@ class ObjectifyTestCase(HelperTestCase):
+
++ @unittest.skipIf(IS_PYPY, "broken on pypy")
+ def test_type_str(self):
+@@ -891,2 +896,3 @@ class ObjectifyTestCase(HelperTestCase):
+
++ @unittest.skipIf(IS_PYPY, "broken on pypy")
+ def test_type_str_intliteral(self):
+@@ -898,2 +904,3 @@ class ObjectifyTestCase(HelperTestCase):
+
++ @unittest.skipIf(IS_PYPY, "broken on pypy")
+ def test_type_str_floatliteral(self):
+@@ -905,2 +912,3 @@ class ObjectifyTestCase(HelperTestCase):
+
++ @unittest.skipIf(IS_PYPY, "broken on pypy")
+ def test_type_str_mul(self):
+@@ -917,2 +925,3 @@ class ObjectifyTestCase(HelperTestCase):
+
++ @unittest.skipIf(IS_PYPY, "broken on pypy")
+ def test_type_str_add(self):
+@@ -992,2 +1001,3 @@ class ObjectifyTestCase(HelperTestCase):
+
++ @unittest.skipIf(IS_PYPY, "broken on pypy")
+ def test_type_ustr(self):
+@@ -999,2 +1009,3 @@ class ObjectifyTestCase(HelperTestCase):
+
++ @unittest.skipIf(IS_PYPY, "broken on pypy")
+ def test_type_ustr_intliteral(self):
+@@ -1006,2 +1017,3 @@ class ObjectifyTestCase(HelperTestCase):
+
++ @unittest.skipIf(IS_PYPY, "broken on pypy")
+ def test_type_ustr_floatliteral(self):
+@@ -1013,2 +1025,3 @@ class ObjectifyTestCase(HelperTestCase):
+
++ @unittest.skipIf(IS_PYPY, "broken on pypy")
+ def test_type_ustr_mul(self):
+@@ -1025,2 +1038,3 @@ class ObjectifyTestCase(HelperTestCase):
+
++ @unittest.skipIf(IS_PYPY, "broken on pypy")
+ def test_type_ustr_add(self):
+@@ -1050,2 +1064,3 @@ class ObjectifyTestCase(HelperTestCase):
+
++ @unittest.skipIf(IS_PYPY, "broken on pypy")
+ def test_type_int(self):
+@@ -1066,2 +1081,3 @@ class ObjectifyTestCase(HelperTestCase):
+
++ @unittest.skipIf(IS_PYPY, "broken on pypy")
+ def test_type_float(self):
+@@ -1082,2 +1098,3 @@ class ObjectifyTestCase(HelperTestCase):
+
++ @unittest.skipIf(IS_PYPY, "broken on pypy")
+ def test_type_float_precision(self):
+@@ -1101,2 +1118,3 @@ class ObjectifyTestCase(HelperTestCase):
+
++ @unittest.skipIf(IS_PYPY, "broken on pypy")
+ def test_type_float_precision_consistency(self):
+@@ -1187,2 +1205,3 @@ class ObjectifyTestCase(HelperTestCase):
+
++ @unittest.skipIf(IS_PYPY, "broken on pypy")
+ def test_type_unregistered(self):
+@@ -1349,2 +1368,3 @@ class ObjectifyTestCase(HelperTestCase):
+
++ @unittest.skipIf(IS_PYPY, "broken on pypy")
+ def test_type_str_cmp(self):
+@@ -1376,2 +1396,3 @@ class ObjectifyTestCase(HelperTestCase):
+
++ @unittest.skipIf(IS_PYPY, "broken on pypy")
+ def test_type_int_cmp(self):
+@@ -1398,2 +1419,3 @@ class ObjectifyTestCase(HelperTestCase):
+
++ @unittest.skipIf(IS_PYPY, "broken on pypy")
+ def test_type_bool_cmp(self):
+@@ -2067,2 +2089,3 @@ class ObjectifyTestCase(HelperTestCase):
+
++ @unittest.skipIf(IS_PYPY, "broken on pypy")
+ def test_registered_type_stringify(self):
+@@ -2537,2 +2560,3 @@ class ObjectifyTestCase(HelperTestCase):
+ # type-looked-up as ObjectifiedElement (no annotations)
++ @unittest.skipIf(IS_PYPY, "broken on pypy")
+ def test_efactory_int(self):
+@@ -2542,2 +2566,3 @@ class ObjectifyTestCase(HelperTestCase):
+
++ @unittest.skipIf(IS_PYPY, "broken on pypy")
+ def test_efactory_float(self):
+@@ -2547,2 +2572,3 @@ class ObjectifyTestCase(HelperTestCase):
+
++ @unittest.skipIf(IS_PYPY, "broken on pypy")
+ def test_efactory_str(self):
+@@ -2552,2 +2578,3 @@ class ObjectifyTestCase(HelperTestCase):
+
++ @unittest.skipIf(IS_PYPY, "broken on pypy")
+ def test_efactory_unicode(self):
+@@ -2557,2 +2584,3 @@ class ObjectifyTestCase(HelperTestCase):
+
++ @unittest.skipIf(IS_PYPY, "broken on pypy")
+ def test_efactory_bool(self):
+@@ -2562,2 +2590,3 @@ class ObjectifyTestCase(HelperTestCase):
+
++ @unittest.skipIf(IS_PYPY, "broken on pypy")
+ def test_efactory_none(self):
+@@ -2567,2 +2596,3 @@ class ObjectifyTestCase(HelperTestCase):
+
++ @unittest.skipIf(IS_PYPY, "broken on pypy")
+ def test_efactory_value_concatenation(self):
+@@ -2577,2 +2607,3 @@ class ObjectifyTestCase(HelperTestCase):
+
++ @unittest.skipIf(IS_PYPY, "broken on pypy")
+ def test_efactory_nested(self):
+@@ -2745,3 +2776,5 @@ def test_suite():
+ suite.addTests(doctest.DocTestSuite(objectify))
+- suite.addTests([make_doctest('objectify.txt')])
++ if not IS_PYPY:
++ suite.addTests([make_doctest('objectify.txt')])
++ suite.addTests([make_doctest('../../../doc/objectify.txt')])
+ return suite
+--
+2.46.0
+
diff --git a/dev-python/lxml/lxml-5.3.0.ebuild b/dev-python/lxml/lxml-5.3.0.ebuild
new file mode 100644
index 000000000000..0cc969fdea0d
--- /dev/null
+++ b/dev-python/lxml/lxml-5.3.0.ebuild
@@ -0,0 +1,119 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+
+inherit distutils-r1 optfeature toolchain-funcs
+
+DESCRIPTION="A Pythonic binding for the libxml2 and libxslt libraries"
+HOMEPAGE="
+ https://lxml.de/
+ https://pypi.org/project/lxml/
+ https://github.com/lxml/lxml/
+"
+SRC_URI="
+ https://github.com/lxml/lxml/archive/${P}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+S=${WORKDIR}/lxml-${P}
+
+LICENSE="BSD ElementTree GPL-2 PSF-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc examples +threads test"
+RESTRICT="!test? ( test )"
+
+# Note: lib{xml2,xslt} are used as C libraries, not Python modules.
+DEPEND="
+ >=dev-libs/libxml2-2.10.3
+ >=dev-libs/libxslt-1.1.38
+"
+RDEPEND="
+ ${DEPEND}
+"
+BDEPEND="
+ virtual/pkgconfig
+ >=dev-python/cython-3.0.10[${PYTHON_USEDEP}]
+ doc? (
+ $(python_gen_any_dep '
+ dev-python/docutils[${PYTHON_USEDEP}]
+ dev-python/pygments[${PYTHON_USEDEP}]
+ dev-python/sphinx[${PYTHON_USEDEP}]
+ dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]
+ ')
+ )
+ test? (
+ dev-python/cssselect[${PYTHON_USEDEP}]
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-5.3.0-pypy.patch"
+)
+
+python_check_deps() {
+ use doc || return 0
+ python_has_version -b "dev-python/docutils[${PYTHON_USEDEP}]" &&
+ python_has_version -b "dev-python/pygments[${PYTHON_USEDEP}]" &&
+ python_has_version -b "dev-python/sphinx[${PYTHON_USEDEP}]" &&
+ python_has_version -b "dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]"
+}
+
+python_prepare_all() {
+ # don't use some random SDK on Darwin
+ sed -i -e '/_ldflags =/s/=.*isysroot.*darwin.*None/= None/' \
+ setupinfo.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_compile() {
+ local DISTUTILS_ARGS=(
+ # by default it adds -w to CFLAGS
+ --warnings
+ )
+ tc-export PKG_CONFIG
+ distutils-r1_python_compile
+}
+
+python_compile_all() {
+ use doc && emake html
+}
+
+python_test() {
+ local dir=${BUILD_DIR}/test$(python_get_sitedir)/lxml
+ local -x PATH=${BUILD_DIR}/test/usr/bin:${PATH}
+
+ cp -al "${BUILD_DIR}"/{install,test} || die
+ cp -al src/lxml/tests "${dir}/" || die
+ cp -al src/lxml/html/tests "${dir}/html/" || die
+ mkdir "${dir}"/../../doc || die
+ # this one needs to be copied, because upstream uses doc/../../../doc
+ cp -r "${S}"/doc "${dir}"/../../ || die
+ ln -s "${S}"/doc "${dir}"/../../../../ || die
+
+ "${EPYTHON}" test.py --no-src -vv --all-levels -p ||
+ die "Tests fail on ${EPYTHON}"
+}
+
+python_install_all() {
+ if use doc; then
+ local DOCS=( README.rst *.txt doc/*.txt )
+ local HTML_DOCS=( doc/html/. )
+ fi
+ if use examples; then
+ dodoc -r samples
+ fi
+
+ distutils-r1_python_install_all
+}
+
+pkg_postinst() {
+ optfeature "Support for BeautifulSoup as a parser backend" dev-python/beautifulsoup4
+ optfeature "Translates CSS selectors to XPath 1.0 expressions" dev-python/cssselect
+ optfeature "Support for lxml.html.clean sanitizer" dev-python/lxml-html-clean
+}
diff --git a/dev-python/memory-allocator/memory-allocator-0.1.4.ebuild b/dev-python/memory-allocator/memory-allocator-0.1.4.ebuild
index f840f18a55ec..c2231c4f25e7 100644
--- a/dev-python/memory-allocator/memory-allocator-0.1.4.ebuild
+++ b/dev-python/memory-allocator/memory-allocator-0.1.4.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="GPL-3"
SLOT="0"
-KEYWORDS="amd64"
+KEYWORDS="amd64 ~riscv"
BDEPEND="
dev-python/cython[${PYTHON_USEDEP}]
diff --git a/dev-python/numpy/Manifest b/dev-python/numpy/Manifest
index 0de418321b0a..2f3afa0c959d 100644
--- a/dev-python/numpy/Manifest
+++ b/dev-python/numpy/Manifest
@@ -1,5 +1,6 @@
DIST numpy-1.26.4.tar.gz 15786129 BLAKE2B ee759d3a857111bc494d5e989a7b005375d942b2a89cda69be4a3bd7c6cb195003fd2a8a0535f1858d8977ff688b0ec36360dcba9c3160206eedce5e28f191ef SHA512 f7121ab4099fa0686f9c095d456baa4a5869d651d7b7a06385f885f329cf08f11024b5df5e7b4ee705970062a8102ec4f709512eabbfd5c9fccce4ef83b9c208
DIST numpy-2.0.0.tar.gz 18326228 BLAKE2B e3d1084b79e0e55cd9087bb34dc116e6c9d6ab14a416a07f727b9f5d5a9db236ecf74a53b7e758d078781c5e565e5557912962f2ddbfff7251ec5b231fabe01d SHA512 cd5612ce2db4be87afa8479c508c256c9ff7f1b15a6b010eb06ba962759cc26552b512ec82711680bab1ebedeb06dfc8d7bff9cec63c94efacaadd719448b287
DIST numpy-2.0.1.tar.gz 18872007 BLAKE2B dd1d4658466057892f10cdc29a764b324dbf5ef800b8e9781ce7131935d12ddefbc9fa691021cc06a7efd5ec5874113e6f1d5616eb1a7a833c0f63a0e7a5e534 SHA512 4f638c17b44317b0000000b729726a5a4e9519af11d254b0e2daf32c6ff0cfdd56723a9cbee67c9145088f429f1f0cce79240f968211c2fb5ac08378e86dccfe
+DIST numpy-2.0.2.tar.gz 18902015 BLAKE2B 63f993e3429bff1dac1ff79fad23a36a2493fd2c8a825ef96b6b87d82b0e68393d2829c5ecd9065df345c8bfbb1f8f385077f154264f7d2810d311d1d6672bd7 SHA512 d769fd4f07e082fae1661c6856d6d726e189f6931f3028c6819f9806aa9dfd15ab2b49c48b94bfd925eb3f74fddb6f044c9ba93bbb785b5476440dd1cf0b4999
DIST numpy-2.1.0.tar.gz 18868922 BLAKE2B 3255ae5e077fec597935d0719b2d82b4f654bf3acf927d502d37e205995468a6fb9713563d437f90b00dafc061cf68d623517fd175a7bcc2c9a151d6e589cf97 SHA512 d0948aa8bb7406b91d79cdd1d5019632e00c60aefbbf5c0884dd91ec8dda6a5369538ab20ef6a201595eeba98bf3a19a407e58a3d4e4e2f412420e65400d7bdd
DIST numpy-2.1.0rc1.tar.gz 18868567 BLAKE2B 1100dfa558ce6cfe608fc792c692c40b61d31854560d18cb6ea4a32b3e03179bb3d81cd080a56683cd00e5e5d073e4628f7daf75635bc0830af76749fd30d34c SHA512 cdf6df68ffbf256215114e48064088c71cb1a0522ab6d29eb1adf45760d6b58a3852755f2ab005e78ad8cbe2fb331fa7362d404150b68425d38e68a5e851d492
diff --git a/dev-python/numpy/numpy-2.0.2.ebuild b/dev-python/numpy/numpy-2.0.2.ebuild
new file mode 100644
index 000000000000..58e522b5473a
--- /dev/null
+++ b/dev-python/numpy/numpy-2.0.2.ebuild
@@ -0,0 +1,132 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=meson-python
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+PYTHON_REQ_USE="threads(+)"
+FORTRAN_NEEDED=lapack
+
+inherit distutils-r1 flag-o-matic fortran-2 pypi
+
+DESCRIPTION="Fast array and numerical python library"
+HOMEPAGE="
+ https://numpy.org/
+ https://github.com/numpy/numpy/
+ https://pypi.org/project/numpy/
+"
+
+LICENSE="BSD"
+SLOT="0/2"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+# +lapack because the internal fallbacks are pretty slow. Building without blas
+# is barely supported anyway, see bug #914358.
+IUSE="+lapack"
+
+RDEPEND="
+ lapack? (
+ >=virtual/cblas-3.8
+ >=virtual/lapack-3.8
+ )
+"
+BDEPEND="
+ ${RDEPEND}
+ >=dev-build/meson-1.1.0
+ >=dev-python/cython-3.0.6[${PYTHON_USEDEP}]
+ lapack? (
+ virtual/pkgconfig
+ )
+ test? (
+ $(python_gen_cond_dep '
+ >=dev-python/cffi-1.14.0[${PYTHON_USEDEP}]
+ ' 'python*')
+ dev-python/charset-normalizer[${PYTHON_USEDEP}]
+ >=dev-python/hypothesis-5.8.0[${PYTHON_USEDEP}]
+ >=dev-python/pytz-2019.3[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ # bug #922457
+ filter-lto
+ # https://github.com/numpy/numpy/issues/25004
+ append-flags -fno-strict-aliasing
+
+ distutils-r1_python_prepare_all
+}
+
+python_configure_all() {
+ DISTUTILS_ARGS=(
+ -Dallow-noblas=$(usex !lapack true false)
+ -Dblas=$(usev lapack cblas)
+ -Dlapack=$(usev lapack lapack)
+ # TODO: cpu-* options
+ )
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # Very disk-and-memory-hungry
+ lib/tests/test_io.py::TestSaveTxt::test_large_zip
+ lib/tests/test_io.py::TestSavezLoad::test_closing_fid
+ lib/tests/test_io.py::TestSavezLoad::test_closing_zipfile_after_load
+
+ # Precision problems
+ _core/tests/test_umath_accuracy.py::TestAccuracy::test_validate_transcendentals
+
+ # Runs the whole test suite recursively, that's just crazy
+ core/tests/test_mem_policy.py::test_new_policy
+
+ typing/tests/test_typing.py
+ # Uses huge amount of memory
+ core/tests/test_mem_overlap.py
+ 'core/tests/test_multiarray.py::TestDot::test_huge_vectordot[complex128]'
+ )
+
+ if [[ $(uname -m) == armv8l ]]; then
+ # Degenerate case of arm32 chroot on arm64, bug #774108
+ EPYTEST_DESELECT+=(
+ core/tests/test_cpu_features.py::Test_ARM_Features::test_features
+ )
+ fi
+
+ case ${EPYTHON} in
+ python3.13)
+ EPYTEST_DESELECT+=(
+ _core/tests/test_nditer.py::test_iter_refcount
+ _core/tests/test_limited_api.py::test_limited_api
+ )
+ ;&
+ python3.12)
+ EPYTEST_DESELECT+=(
+ # flaky
+ f2py/tests/test_crackfortran.py
+ f2py/tests/test_data.py::TestData::test_crackedlines
+ f2py/tests/test_data.py::TestDataF77::test_crackedlines
+ f2py/tests/test_f2py2e.py::test_gen_pyf
+ f2py/tests/test_f2py2e.py::test_gh22819_cli
+ )
+ ;;
+ esac
+
+ if ! has_version -b "~${CATEGORY}/${P}[${PYTHON_USEDEP}]" ; then
+ # depends on importing numpy.random from system namespace
+ EPYTEST_DESELECT+=(
+ 'random/tests/test_extending.py::test_cython'
+ )
+ fi
+
+ rm -rf numpy || die
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest --pyargs numpy
+}
+
+python_install_all() {
+ local DOCS=( LICENSE.txt README.md THANKS.txt )
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/oslo-config/Manifest b/dev-python/oslo-config/Manifest
index 16dd266ea64e..ddaed0ef51d9 100644
--- a/dev-python/oslo-config/Manifest
+++ b/dev-python/oslo-config/Manifest
@@ -1 +1,2 @@
DIST oslo.config-9.5.0.tar.gz 161655 BLAKE2B 7844729658ddd13ff89b4c14983cfeeb3f6352f99a190058bd924592d9183459ea2da5caead7a77ed6c4a4e395aac2dd53f56847d81ce911ce76a04fa69f5b7d SHA512 517bb9fe416451eb791087216facd8643d77affb738aa2623817302dfc9dbd242d1aa2ba8c542fee437f91b2049129fa097fe37fec8c6a28e0092fc4d64c0c4f
+DIST oslo.config-9.6.0.tar.gz 164859 BLAKE2B 251e75d3ed919f2fce1efcd3aa5695da6e7911972ac89065813ef0c5b2b96fc02c436362875bf965b70e149d4436080ab23092f8f17568324e30eec7befe25cb SHA512 ebf31035bdf6f4ac8a9ce6bef14ca52fcad4418696520f0c199058211dbaa37723273a7c07eded03b139426392d7df6b192381af23e2324a92632029b1031292
diff --git a/dev-python/oslo-config/files/oslo-config-9.6.0-py312.patch b/dev-python/oslo-config/files/oslo-config-9.6.0-py312.patch
new file mode 100644
index 000000000000..f105b7719199
--- /dev/null
+++ b/dev-python/oslo-config/files/oslo-config-9.6.0-py312.patch
@@ -0,0 +1,43 @@
+From 972d304bb23baef538ce759004410a20d8109ccb Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
+Date: Tue, 27 Aug 2024 15:54:45 +0200
+Subject: [PATCH] Fix test_sub_command_multiple on Python 3.12.5+
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Update the expectations in test_sub_command_multiple for different
+argparse error handling in Python 3.12.5 and newer. Previously,
+the 'cannot have multiple subparser arguments' error would be output
+to stderr and cause the parser to exit; now it raises an ArgumentError
+instead.
+
+Closes-Bug: 2074130
+Change-Id: I83de6b6943b14f1f6df86a55603e6867dce680d3
+Signed-off-by: Michał Górny <mgorny@gentoo.org>
+---
+ oslo_config/tests/test_cfg.py | 8 ++++++--
+ 1 file changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/oslo_config/tests/test_cfg.py b/oslo_config/tests/test_cfg.py
+index 1759ae7..383b70f 100644
+--- a/oslo_config/tests/test_cfg.py
++++ b/oslo_config/tests/test_cfg.py
+@@ -4385,8 +4385,12 @@ class SubCommandTestCase(BaseTestCase):
+ self.conf.register_cli_opt(cfg.SubCommandOpt('cmd1'))
+ self.conf.register_cli_opt(cfg.SubCommandOpt('cmd2'))
+ self.useFixture(fixtures.MonkeyPatch('sys.stderr', io.StringIO()))
+- self.assertRaises(SystemExit, self.conf, [])
+- self.assertIn('multiple', sys.stderr.getvalue())
++ if sys.version_info >= (3, 12, 5):
++ self.assertRaisesRegex(argparse.ArgumentError, 'multiple',
++ self.conf, [])
++ else:
++ self.assertRaises(SystemExit, self.conf, [])
++ self.assertIn('multiple', sys.stderr.getvalue())
+
+
+ class SetDefaultsTestCase(BaseTestCase):
+--
+2.46.0
+
diff --git a/dev-python/oslo-config/oslo-config-9.6.0.ebuild b/dev-python/oslo-config/oslo-config-9.6.0.ebuild
new file mode 100644
index 000000000000..eb78df6b038a
--- /dev/null
+++ b/dev-python/oslo-config/oslo-config-9.6.0.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+PYPI_PN=${PN/-/.}
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Oslo Configuration API"
+HOMEPAGE="
+ https://opendev.org/openstack/oslo.config/
+ https://github.com/openstack/oslo.config/
+ https://pypi.org/project/oslo.config/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86 ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ >=dev-python/pbr-1.3[${PYTHON_USEDEP}]
+ >=dev-python/debtcollector-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/netaddr-0.7.18[${PYTHON_USEDEP}]
+ >=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
+ >=dev-python/rfc3986-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/pyyaml-5.1[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.18.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ >=dev-python/pbr-1.3[${PYTHON_USEDEP}]
+ test? (
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-log-3.36.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-mock-1.5.0[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests unittest
+
+src_prepare() {
+ local PATCHES=(
+ # https://review.opendev.org/c/openstack/oslo.config/+/927273
+ "${FILESDIR}/${P}-py312.patch"
+ )
+
+ # broken by some dep upgrade
+ sed -i -e '/DeprecationWarningTestsNoOsloLog/,$d' \
+ oslo_config/tests/test_cfg.py || die
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local -x COLUMNS=80
+ eunittest -b
+}
diff --git a/dev-python/parse_type/Manifest b/dev-python/parse-type/Manifest
index eb79399eb3d8..a30d1098240c 100644
--- a/dev-python/parse_type/Manifest
+++ b/dev-python/parse-type/Manifest
@@ -1 +1,2 @@
DIST parse_type-0.6.2.tar.gz 69720 BLAKE2B 76deaacc1824f701db74fbdd971b1dd8131f6d45f329e64f6eae993d6a41cebebb44c0653813bcb625e335bae5a81853c8c3704c0f102ebad96a38f43826059c SHA512 d614b105696baf135a7f8c84f751a2491dc7558cadf1c3891f1223f6196a7b041c499f3df4902b04daca5e6507522ec0f99533b6b1d027773a15f7738a574958
+DIST parse_type-0.6.3.tar.gz 78224 BLAKE2B 079930e12abbc5e01ad29a92dfd4eabcd4ab80803084875cf63e8812e75ec4d469496e0416c5699da89e8c4da56c1a3ab10a48f9920a926aa6ab988ca52131e9 SHA512 babcc8e47cb1933fcd07e1860b07cdefe2e236c2900b1a3eac7982d32b0320b02647a813d4d20def7df1fab8ba9621d5a5c02fa2147f6fff880d1449f61ef38f
diff --git a/dev-python/parse_type/metadata.xml b/dev-python/parse-type/metadata.xml
index 786658643d66..786658643d66 100644
--- a/dev-python/parse_type/metadata.xml
+++ b/dev-python/parse-type/metadata.xml
diff --git a/dev-python/parse_type/parse_type-0.6.2.ebuild b/dev-python/parse-type/parse-type-0.6.2.ebuild
index 62f3fb63e97f..62f3fb63e97f 100644
--- a/dev-python/parse_type/parse_type-0.6.2.ebuild
+++ b/dev-python/parse-type/parse-type-0.6.2.ebuild
diff --git a/dev-python/parse-type/parse-type-0.6.3.ebuild b/dev-python/parse-type/parse-type-0.6.3.ebuild
new file mode 100644
index 000000000000..93ade0e5d1fa
--- /dev/null
+++ b/dev-python/parse-type/parse-type-0.6.3.ebuild
@@ -0,0 +1,31 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+inherit distutils-r1 pypi
+
+DESCRIPTION="Extension to the parse module"
+HOMEPAGE="https://pypi.org/project/parse-type/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+RDEPEND="
+ dev-python/parse[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
+
+DOCS=( CHANGES.txt README.rst )
+
+python_prepare_all() {
+ distutils-r1_python_prepare_all
+
+ # disable unnecessary html test report and its pytest-html dependency
+ sed -i '/^addopts/,/report.xml$/d' pytest.ini || die
+}
diff --git a/dev-python/paste/paste-3.10.1.ebuild b/dev-python/paste/paste-3.10.1.ebuild
index 52958a032e2f..57a2fb0d4f75 100644
--- a/dev-python/paste/paste-3.10.1.ebuild
+++ b/dev-python/paste/paste-3.10.1.ebuild
@@ -18,7 +18,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos"
distutils_enable_tests pytest
distutils_enable_sphinx docs
diff --git a/dev-python/pastedeploy/pastedeploy-3.1.ebuild b/dev-python/pastedeploy/pastedeploy-3.1.ebuild
index 5b73d9f6cdfb..3f42155ec192 100644
--- a/dev-python/pastedeploy/pastedeploy-3.1.ebuild
+++ b/dev-python/pastedeploy/pastedeploy-3.1.ebuild
@@ -22,7 +22,7 @@ SRC_URI="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos"
RDEPEND="
!dev-python/namespace-paste
diff --git a/dev-python/phonenumbers/Manifest b/dev-python/phonenumbers/Manifest
index 42a93a1e6efb..2183075c2d3e 100644
--- a/dev-python/phonenumbers/Manifest
+++ b/dev-python/phonenumbers/Manifest
@@ -1 +1,2 @@
DIST python-phonenumbers-8.13.43.gh.tar.gz 4916529 BLAKE2B 78f904af583fe4390ddd0d8f0838634a1e898ee93187a676b9bf409301c03e392d6e7404f30ae5d3b36d36809db647f749d48ea5e0b48f2db904a47513952433 SHA512 80df3d5bdb4ad7a32d4e1c1b3f7a4db473e21b9ff7e260fba5bc814e96067e042c81e805c3eb8494b31d2ecf3a0a73689ba2fc9714a9e8e7fe8098a7d13beb5b
+DIST python-phonenumbers-8.13.44.gh.tar.gz 4912993 BLAKE2B d579e9c17e8c78390ce93832d53a50e9aaed0c186a1430119c54a22ef6af65ad2bac42cd082278bdca0f0e32762c7d0b7e90d28f1998fdf8b5cc2544b241e7f0 SHA512 64eec22c997d1f0d775445a829d63c7568e943411522f4d55fdf4fd18b1c680c48396b056492f27f6275e83c7bcd53ecc5c6258beeb24d5a7e218011c50b5a35
diff --git a/dev-python/phonenumbers/phonenumbers-8.13.44.ebuild b/dev-python/phonenumbers/phonenumbers-8.13.44.ebuild
new file mode 100644
index 000000000000..062c56c77784
--- /dev/null
+++ b/dev-python/phonenumbers/phonenumbers-8.13.44.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1
+
+MY_P=python-${P}
+DESCRIPTION="Python port of Google's libphonenumber"
+HOMEPAGE="
+ https://github.com/daviddrysdale/python-phonenumbers/
+ https://pypi.org/project/phonenumbers/
+"
+SRC_URI="
+ https://github.com/daviddrysdale/python-phonenumbers/archive/v${PV}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}/python
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ test? (
+ dev-python/protobuf-python[${PYTHON_USEDEP}]
+ )
+"
+
+DOCS=( ../README.md )
+
+python_test() {
+ "${EPYTHON}" testwrapper.py -v || die "Tests failed with ${EPYTHON}"
+}
diff --git a/dev-python/pipx/Manifest b/dev-python/pipx/Manifest
index 34cc341788fc..ad65ee5494b7 100644
--- a/dev-python/pipx/Manifest
+++ b/dev-python/pipx/Manifest
@@ -1,3 +1,6 @@
DIST pip-23.3.2-py3-none-any.whl 2109393 BLAKE2B 278b9941f93951508ae2f508b1b5a9fddd4ca11fac1d5b0c2ac994f8e8457226a4e8c4501078776476e0bae56fd82b989ebaf4f5f484ffe7b0ee79789e34aca8 SHA512 a1449fe400787f73ac26cb48acaae71208a2e696f9ce4992b44e11da29646b018c2f6c27a95b12e42531236fe658e0605e20d5dfa740c43e005c01da3db802da
+DIST pip-24.0-py3-none-any.whl 2110226 BLAKE2B 6a0c8c9796cd574ef1d709de40a8530a15e50158143e332b79e5ad3edceda6ce93c5ef4df49b169062598618dcc6967c2115ac2c10b05abf345318204f1eeffc SHA512 5d7462a584105bccaa9cf376f5a8c5827ead099c813c8af7392d478a4398f373d9e8cac7bbad2db51b335411ab966b21e119b1b1234c9a7ab70c6ddfc9306da6
DIST pipx-1.6.0-test-shim.tar.xz 71508 BLAKE2B f6625796b733911aeee7157d726888ef251ef43a806008a07dadcc290a22d331494ab6906ab1f5e06bf11180d295c1c6445c1a3c4d20eafb0f19fdacef02becb SHA512 a30adb15c78c8f6f9febedf4a899c665bd185ae0e9dbb5278b962fab9d47164601e7f354f61dd600df856a16d9620a586f9f5795a2985172f938fc376c840a6c
DIST pipx-1.6.0.gh.tar.gz 389164 BLAKE2B 07b603202a44136892e196066fa6d1b85fce2c7d91d798f75edf3f2a18e2924e55487dbd63747948cfc82ea3ca600bdd09e6995a9ee5954c1f4287a4f255a43b SHA512 ae241bb518b240348b5811ee9d278c927cc0e703e6cd0da6225b2e47d727ac1ab54b5ac8fc207da849afc383cfe77ca6a95a62efcb33edc238bb607eada8b00b
+DIST pipx-1.7.1-test-shim.tar.xz 72696 BLAKE2B 276db812b311774d1ad5177402084eec5d3287f72416a8bd67db99530b0ee3ba538e196b8f6ce4ade8bd73b81be238d656366c2048abb90e584be1565b25e33b SHA512 e7c6d604487e1d9a7a7b5c1cd35e758e056d7cc8f9ca4a79ad45617d44d0e857ef336cf012ea08a7e0aa0773ca4c3f9995fe3bdcd3baff048281473464c39256
+DIST pipx-1.7.1.gh.tar.gz 391902 BLAKE2B eb2801c8b2a12a8096ff2fb6882b970cce154cf3f65a87e59ab321d36ce05a9bba03ac818e2148136e00e86fe44d6efd5a39d1c535e4e135feb48b7487f1dde3 SHA512 6375d413974477f488eb8c8d95594f39cf7c54e4c09639c95cb82ed58467266c0124259b1a1fc07596ac0fbffc9fd2ff2fffe58083d78e67ca9f056f2353852f
diff --git a/dev-python/pipx/pipx-1.7.1.ebuild b/dev-python/pipx/pipx-1.7.1.ebuild
new file mode 100644
index 000000000000..b6aa6ec6495c
--- /dev/null
+++ b/dev-python/pipx/pipx-1.7.1.ebuild
@@ -0,0 +1,108 @@
+# 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
+
+# To update test shim, use https://github.com/projg2/pipx-repack-wheels
+TEST_SHIM=pipx-1.7.1-test-shim
+DESCRIPTION="Install and Run Python Applications in Isolated Environments"
+HOMEPAGE="
+ https://pipx.pypa.io/stable/
+ https://pypi.org/project/pipx/
+ https://github.com/pypa/pipx/
+"
+# no tests in sdist
+SRC_URI="
+ https://github.com/pypa/pipx/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+ test? (
+ https://dev.gentoo.org/~mgorny/dist/${TEST_SHIM}.tar.xz
+ $(pypi_wheel_url pip 23.3.2)
+ $(pypi_wheel_url pip 24.0)
+ )
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/argcomplete-1.9.4[${PYTHON_USEDEP}]
+ >=dev-python/packaging-20.0[${PYTHON_USEDEP}]
+ >=dev-python/platformdirs-2.1[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/tomli[${PYTHON_USEDEP}]
+ ' 3.10)
+ >=dev-python/userpath-1.9.1[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/hatch-vcs[${PYTHON_USEDEP}]
+ test? (
+ dev-python/ensurepip-pip
+ dev-python/ensurepip-setuptools
+ dev-python/ensurepip-wheel
+ dev-python/pypiserver[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
+
+src_prepare() {
+ if use test; then
+ cp -vs "${BROOT}"/usr/lib/python/ensurepip/{pip,setuptools,wheel}-*.whl \
+ "${WORKDIR}/${TEST_SHIM}/" || die
+ # needed for pinned pin version test
+ cp -vs "${DISTDIR}"/pip-23.3.2-py3-none-any.whl \
+ "${WORKDIR}/${TEST_SHIM}/" || die
+ cp -vs "${DISTDIR}"/pip-24.0-py3-none-any.whl \
+ "${WORKDIR}/${TEST_SHIM}/" || die
+ mkdir -p .pipx_tests/package_cache || die
+
+ > scripts/update_package_cache.py || die
+ # sigh
+ sed -e 's:server = str.*:server = "pypi-server":' \
+ -i tests/conftest.py || die
+ fi
+
+ distutils-r1_src_prepare
+}
+
+python_configure() {
+ if use test; then
+ local v=$(
+ "${EPYTHON}" - <<-EOF
+ import sys
+ print(".".join(str(x) for x in sys.version_info[:2]))
+ EOF
+ )
+ if [[ ! -e .pipx_tests/package_cache/${v} ]]; then
+ ln -s "${WORKDIR}/${TEST_SHIM}" \
+ ".pipx_tests/package_cache/${v}" || die
+ fi
+ fi
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # Internet
+ tests/test_run.py::test_run_ensure_null_pythonpath
+ tests/test_run.py::test_run_script_from_internet
+ 'tests/test_install.py::test_install_package_specs[pycowsay-git+https://github.com/cs01/pycowsay.git@master]'
+ tests/test_install.py::test_force_install_changes
+ 'tests/test_install.py::test_install_package_specs[nox-https://github.com/wntrblm/nox/archive/2022.1.7.zip]'
+ tests/test_interpreter.py::test_fetch_missing_python
+ tests/test_list.py::test_list_standalone_interpreter
+ tests/test_standalone_interpreter.py
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -o tmp_path_retention_policy=all
+}
diff --git a/dev-python/pplpy/pplpy-0.8.10.ebuild b/dev-python/pplpy/pplpy-0.8.10.ebuild
index 9f3c3a4a1b86..5b30392cc74a 100644
--- a/dev-python/pplpy/pplpy-0.8.10.ebuild
+++ b/dev-python/pplpy/pplpy-0.8.10.ebuild
@@ -19,7 +19,7 @@ HOMEPAGE="
LICENSE="GPL-3+"
# API/ABI changes in point releases
SLOT="0/${PV}"
-KEYWORDS="amd64"
+KEYWORDS="amd64 ~riscv"
IUSE="doc"
DEPEND="
diff --git a/dev-python/pulsectl/Manifest b/dev-python/pulsectl/Manifest
index 272844960854..b5e815ff0d0b 100644
--- a/dev-python/pulsectl/Manifest
+++ b/dev-python/pulsectl/Manifest
@@ -1 +1,2 @@
DIST pulsectl-24.4.0.tar.gz 41166 BLAKE2B 3b2d41b3077f050104e7b416cb8dbba47f4282bb90ee58c855f4f5a1e1b1183b131879e6965edf8d8b5a2466ce3381e45c7a6b92f2b64fc336d311d3d7625440 SHA512 b17fd577f9c336f762925bd423fdca665afa92a88b0dae076ca016d7c5b2b3d9ef11efd27f7339031accadef00d513f972c216a23f26cfd049516f3dbcc63d01
+DIST pulsectl-24.8.0.tar.gz 41171 BLAKE2B 58a16b07fcec68f21fd573cf781f2ac09ccdf2faa3e7afa84a4f8cf9f28111e94bf41e0f8a8740434edeace78156f56ac428a87d669cbc947e331b8d555dd2e1 SHA512 4638bb41611e8d7a00f2daeec7e7783789d5d1d94841206b4052e53897e6547c21f8410c3400e1bd301e237b3a72143fb6ff3d67cbafd06bada0a1d0da007c96
diff --git a/dev-python/pulsectl/pulsectl-24.8.0.ebuild b/dev-python/pulsectl/pulsectl-24.8.0.ebuild
new file mode 100644
index 000000000000..e59a535bd4c7
--- /dev/null
+++ b/dev-python/pulsectl/pulsectl-24.8.0.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=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/pygccxml/files/pygccxml-2.5.0-fix-tests.patch b/dev-python/pygccxml/files/pygccxml-2.5.0-fix-tests.patch
new file mode 100644
index 000000000000..5a65fd826fff
--- /dev/null
+++ b/dev-python/pygccxml/files/pygccxml-2.5.0-fix-tests.patch
@@ -0,0 +1,107 @@
+diff --git a/unittests/test_cpp_standards.py b/unittests/test_cpp_standards.py
+index eb28418..7c76c73 100644
+--- a/unittests/test_cpp_standards.py
++++ b/unittests/test_cpp_standards.py
+@@ -23,7 +23,8 @@ class Test(parser_test_case.parser_test_case_t):
+ if "gccxml" in self.config.xml_generator:
+ return True
+
+- parser.parse(["cpp_standards.hpp"], self.config)
++ parser.parse(["cpp_standards.hpp"], self.config,
++ parser.COMPILATION_MODE.ALL_AT_ONCE)
+
+ if platform.system() != 'Windows':
+ self.config.cflags = "-std=c++98"
+@@ -33,7 +34,8 @@ class Test(parser_test_case.parser_test_case_t):
+ parser.parse(["cpp_standards.hpp"], self.config)
+
+ self.config.cflags = "-std=c++11"
+- parser.parse(["cpp_standards.hpp"], self.config)
++ parser.parse(["cpp_standards.hpp"], self.config,
++ parser.COMPILATION_MODE.ALL_AT_ONCE)
+
+ # This is broken with llvm 3.6.2 (the one from homebrew)
+ # It should work with never llvms but I keep the test disabled
+diff --git a/unittests/test_non_copyable_recursive.py b/unittests/test_non_copyable_recursive.py
+index cd78a9a..e18d58f 100644
+--- a/unittests/test_non_copyable_recursive.py
++++ b/unittests/test_non_copyable_recursive.py
+@@ -27,7 +27,7 @@ class Test(parser_test_case.parser_test_case_t):
+ RuntimeError: maximum recursion depth exceeded while
+ calling a Python object
+ """
+- decls = parser.parse([self.header], self.config)
++ decls = parser.parse([self.header], self.config, parser.COMPILATION_MODE.ALL_AT_ONCE)
+ global_ns = declarations.get_global_namespace(decls)
+
+ # Description of the problem (before the fix):
+@@ -52,7 +52,7 @@ class Test(parser_test_case.parser_test_case_t):
+ RuntimeError: maximum recursion depth exceeded while
+ calling a Python object
+ """
+- decls = parser.parse([self.header], self.config)
++ decls = parser.parse([self.header], self.config, parser.COMPILATION_MODE.ALL_AT_ONCE)
+ global_ns = declarations.get_global_namespace(decls)
+
+ # Real life example of the bug. This leads to a similar error,
+diff --git a/unittests/test_null_comparison.py b/unittests/test_null_comparison.py
+index 51caf4a..787ae79 100644
+--- a/unittests/test_null_comparison.py
++++ b/unittests/test_null_comparison.py
+@@ -22,7 +22,7 @@ class Test(parser_test_case.parser_test_case_t):
+ Test for None comparisons with default arguments
+ """
+
+- decls = parser.parse([self.header], self.config)
++ decls = parser.parse([self.header], self.config, parser.COMPILATION_MODE.ALL_AT_ONCE)
+ global_ns = declarations.get_global_namespace(decls)
+
+ ns = global_ns.namespace("ns")
+diff --git a/unittests/test_overrides.py b/unittests/test_overrides.py
+index 9204efc..5ac1b25 100644
+--- a/unittests/test_overrides.py
++++ b/unittests/test_overrides.py
+@@ -23,7 +23,7 @@ class Test(parser_test_case.parser_test_case_t):
+ def setUp(self):
+
+ if not self.global_ns:
+- decls = parser.parse([self.header], self.config)
++ decls = parser.parse([self.header], self.config, parser.COMPILATION_MODE.ALL_AT_ONCE)
+ Test.global_ns = declarations.get_global_namespace(decls)
+ Test.xml_generator_from_xml_file = \
+ self.config.xml_generator_from_xml_file
+diff --git a/unittests/test_pattern_parser.py b/unittests/test_pattern_parser.py
+index 00a6805..4882c26 100644
+--- a/unittests/test_pattern_parser.py
++++ b/unittests/test_pattern_parser.py
+@@ -27,7 +27,7 @@ class Test(parser_test_case.parser_test_case_t):
+ if self.config.xml_generator == "gccxml":
+ return
+
+- decls = parser.parse([self.header], self.config)
++ decls = parser.parse([self.header], self.config, parser.COMPILATION_MODE.ALL_AT_ONCE)
+
+ for decl in declarations.make_flatten(decls):
+ if "myClass" in decl.name:
+@@ -44,7 +44,7 @@ class Test(parser_test_case.parser_test_case_t):
+ if self.config.xml_generator == "gccxml":
+ return
+
+- decls = parser.parse([self.header], self.config)
++ decls = parser.parse([self.header], self.config, parser.COMPILATION_MODE.ALL_AT_ONCE)
+ global_ns = declarations.get_global_namespace(decls)
+ criteria = declarations.declaration_matcher(name="myClass")
+ _ = declarations.matcher.find(criteria, global_ns)
+diff --git a/unittests/test_smart_pointer.py b/unittests/test_smart_pointer.py
+index e9183b7..4a85860 100644
+--- a/unittests/test_smart_pointer.py
++++ b/unittests/test_smart_pointer.py
+@@ -22,7 +22,7 @@ class Test(parser_test_case.parser_test_case_t):
+ def setUp(self):
+ if self.config.xml_generator == "gccxml":
+ return
+- decls = parser.parse([self.header], self.config)
++ decls = parser.parse([self.header], self.config, parser.COMPILATION_MODE.ALL_AT_ONCE)
+ self.global_ns = declarations.get_global_namespace(decls)
+
+ def test_is_smart_pointer(self):
diff --git a/dev-python/pygccxml/pygccxml-2.5.0.ebuild b/dev-python/pygccxml/pygccxml-2.5.0.ebuild
index 5f53d68f5a38..9336ae3298d1 100644
--- a/dev-python/pygccxml/pygccxml-2.5.0.ebuild
+++ b/dev-python/pygccxml/pygccxml-2.5.0.ebuild
@@ -40,6 +40,7 @@ EPYTEST_DESELECT=(
python_prepare_all() {
local PATCHES=(
+ "${FILESDIR}/${PN}-2.5.0-fix-tests.patch"
"${FILESDIR}/${PN}-2.4.0-doc.patch"
# https://github.com/CastXML/pygccxml/pull/179
"${FILESDIR}/${P}-which.patch"
diff --git a/dev-python/pypiserver/pypiserver-2.1.1.ebuild b/dev-python/pypiserver/pypiserver-2.1.1.ebuild
index e0980d2542f3..94f2ecb35101 100644
--- a/dev-python/pypiserver/pypiserver-2.1.1.ebuild
+++ b/dev-python/pypiserver/pypiserver-2.1.1.ebuild
@@ -20,7 +20,7 @@ SRC_URI="
LICENSE="ZLIB"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
RDEPEND="
dev-python/bottle[${PYTHON_USEDEP}]
diff --git a/dev-python/pyquery/pyquery-2.0.0-r1.ebuild b/dev-python/pyquery/pyquery-2.0.0-r1.ebuild
index 39e64a0701a7..3456ab47e3a7 100644
--- a/dev-python/pyquery/pyquery-2.0.0-r1.ebuild
+++ b/dev-python/pyquery/pyquery-2.0.0-r1.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="BSD"
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 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos"
RDEPEND="
>=dev-python/lxml-2.1[${PYTHON_USEDEP}]
diff --git a/dev-python/pytest-bdd/pytest-bdd-7.2.0.ebuild b/dev-python/pytest-bdd/pytest-bdd-7.2.0.ebuild
index 0a02c7cb9f12..92aef053b605 100644
--- a/dev-python/pytest-bdd/pytest-bdd-7.2.0.ebuild
+++ b/dev-python/pytest-bdd/pytest-bdd-7.2.0.ebuild
@@ -22,7 +22,7 @@ RDEPEND="
dev-python/mako[${PYTHON_USEDEP}]
dev-python/packaging[${PYTHON_USEDEP}]
dev-python/parse[${PYTHON_USEDEP}]
- dev-python/parse_type[${PYTHON_USEDEP}]
+ dev-python/parse-type[${PYTHON_USEDEP}]
dev-python/pytest[${PYTHON_USEDEP}]
dev-python/typing-extensions[${PYTHON_USEDEP}]
"
diff --git a/dev-python/pytest-shell-utilities/Manifest b/dev-python/pytest-shell-utilities/Manifest
index 057a06f646b9..2df0205fbd5e 100644
--- a/dev-python/pytest-shell-utilities/Manifest
+++ b/dev-python/pytest-shell-utilities/Manifest
@@ -1 +1,2 @@
DIST pytest-shell-utilities-1.9.0.gh.tar.gz 79526 BLAKE2B e17b3903b8b3b9c2a8b3d708a1031c5b18beb4741006cec5cf2b8586fb1a86c0034e374927f09786dd036d01ae8811f4eacdaa28053d3205d19bb122211b6437 SHA512 532d82754d0133cc49e8f88e700b1e7469e32a829079536b886358ba15caa18ff30a8ed88e258116ce4302c4220dc986c0f254cef10561ffee81d1e399107dbf
+DIST pytest-shell-utilities-1.9.3.gh.tar.gz 79651 BLAKE2B 1506f7d2fb3b988d55006a8429b6428cb73e969ec72eac5baf944d7e4fc708aaa8e474493ac3e226608c43ece75d2f6070d094f3b656a49bde11bf46a81998d1 SHA512 5ff40043d4f597623bcc61b2c87f00a59fc1882ae6ecda223c82fadc64ae8b5670d07e8e2df54cfcb8b3bdb9483f331a314f4a683760e5ebe843d68ae4067895
diff --git a/dev-python/pytest-shell-utilities/pytest-shell-utilities-1.9.3.ebuild b/dev-python/pytest-shell-utilities/pytest-shell-utilities-1.9.3.ebuild
new file mode 100644
index 000000000000..6ef3b0fb26a3
--- /dev/null
+++ b/dev-python/pytest-shell-utilities/pytest-shell-utilities-1.9.3.ebuild
@@ -0,0 +1,41 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1
+
+DESCRIPTION="pytest plugin: fixtures and code to help with running shell commands on tests"
+HOMEPAGE="
+ https://pypi.org/project/pytest-shell-utilities/
+ https://github.com/saltstack/pytest-shell-utilities/
+"
+SRC_URI="
+ https://github.com/saltstack/pytest-shell-utilities/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+
+RDEPEND="
+ >=dev-python/attrs-22.1.0[${PYTHON_USEDEP}]
+ >=dev-python/pytest-7.4.0[${PYTHON_USEDEP}]
+ dev-python/psutil[${PYTHON_USEDEP}]
+ dev-python/pytest-helpers-namespace[${PYTHON_USEDEP}]
+ dev-python/pytest-skip-markers[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+ test? (
+ dev-python/pytest-subtests[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
diff --git a/dev-python/rich/Manifest b/dev-python/rich/Manifest
index f37f2db2d0c5..0e813ab9dfbc 100644
--- a/dev-python/rich/Manifest
+++ b/dev-python/rich/Manifest
@@ -1,2 +1,3 @@
DIST rich-13.4.2.gh.tar.gz 15063000 BLAKE2B f65079440bc7d89a3ff03be01fa71e076493ae50f22ae8781be2448a7ff2769c174d6654db3a835d34720c34cd8cbecfdd6b13e3064cf7fdcade71806563309d SHA512 17052a9fb0e1d89b31a00d8a719214719891d048fd805185b2d4258c8766130f44bf2280c9567bc162f3b34d9bf2eb7d747d6a37d910c81cd53d3003b51f70bd
DIST rich-13.7.1.gh.tar.gz 15058064 BLAKE2B 6fad18bf0a4e4f72e530c78db7a498f27dd8c9a7b9b17ca5ef12a94bbe513857f3c42d4903f8ebbfe8907727cddaf290f08862c27efb29db8aaf70c7bcb13ace SHA512 0c69101bc6c2a238a4c516812cda08299115b903b8282ee348b45b212a88fcbfbf69d11a3705a97bdb6192988ee3047804bb5b52b7950d860542cde8ce2d4bd2
+DIST rich-13.8.0.gh.tar.gz 15062770 BLAKE2B e319018387ff27f4ec2bce1d272ff7fe676d224a14798fa585c0d72fcdedd084c3e1d4b73d3d2db45a113e0c5433c7103382c7134ff6e1c8e580ff2c3fa444ae SHA512 d20545689b6acd14a5010f0dbb38a2dbc1fd551619198d098e6bf68628e194f3b5450c11b77feb190ea4b4bb2c22a9a6b619b17c9f7815a4e69e1c431750ab60
diff --git a/dev-python/rich/rich-13.8.0.ebuild b/dev-python/rich/rich-13.8.0.ebuild
new file mode 100644
index 000000000000..f3a04c41e2fc
--- /dev/null
+++ b/dev-python/rich/rich-13.8.0.ebuild
@@ -0,0 +1,74 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+
+inherit distutils-r1 optfeature
+
+DESCRIPTION="Python library for rendering rich text, tables, etc. to the terminal"
+HOMEPAGE="
+ https://github.com/Textualize/rich/
+ https://pypi.org/project/rich/
+"
+SRC_URI="
+ https://github.com/Textualize/rich/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ dev-python/colorama[${PYTHON_USEDEP}]
+ >=dev-python/markdown-it-py-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/pygments-2.13.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ >=dev-python/attrs-21.4.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # TODO
+ tests/test_console.py::test_size_can_fall_back_to_std_descriptors
+ # TODO: segfault in recursion (PyQt6 interfering?)
+ tests/test_traceback.py::test_recursive
+ )
+ # version-specific output -- the usual deal
+ case ${EPYTHON} in
+ pypy3)
+ EPYTEST_DESELECT+=(
+ # pypy3.10, to be more precise
+ tests/test_inspect.py::test_inspect_integer_with_methods_python310only
+ )
+ ;;
+ python3.13)
+ EPYTEST_DESELECT+=(
+ tests/test_inspect.py::test_inspect_builtin_function_except_python311
+ tests/test_inspect.py::test_inspect_integer_with_methods_python38_and_python39
+ tests/test_inspect.py::test_inspect_integer_with_methods_python310only
+ tests/test_inspect.py::test_inspect_integer_with_methods_python311
+ tests/test_pretty.py::test_pretty_dataclass
+ tests/test_pretty.py::test_reference_cycle_dataclass
+ tests/test_pretty.py::test_max_depth_dataclass
+ tests/test_pretty.py::test_attrs_broken
+ )
+ ;;
+ esac
+
+ local -x COLUMNS=80
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
+
+pkg_postinst() {
+ optfeature "integration with HTML widgets for Jupyter" dev-python/ipywidgets
+}
diff --git a/dev-python/spyder/Manifest b/dev-python/spyder/Manifest
index 2eba2af9c9d8..fe88f9c9ff6e 100644
--- a/dev-python/spyder/Manifest
+++ b/dev-python/spyder/Manifest
@@ -1,4 +1,5 @@
DIST spyder-5.5.5.gh.tar.gz 16258487 BLAKE2B 3fa3ea611fc3267918e4314027c0825905f256a7fe070534c7608a4a42938c3934f34f4dc06fe0cfc0ac32e03fbdc294974672b010aaf9bc32512b817af62e6b SHA512 5f5d25822f20f8ae8767402b037cca78b760768b9bc53ef74ed95839aa59e1c24206457fd4c71003bb9ebffe8daf8ad3bda8dd40e71cc15d3d3ee2030b284b42
+DIST spyder-5.5.6.gh.tar.gz 16304234 BLAKE2B 9d14b96901276ced1644eef8dd57539036aecb067ee361b6581368b371d56b2008350969224992a35fe10ee177babca7f3e941f43b4cc3f432f6d0dec9104ead SHA512 93ce6ac2e71bd4e81ca4a630a6fe152d1bf3c83d6e5c01dda8f3e5ad2735de1948a86642f5bc589c90616935e997526b26367ce178905ad2b80faf81f36f9164
DIST spyder-6.0.0_rc2.gh.tar.gz 15675811 BLAKE2B 1f6c8a3a952a3b6b1a89b434bd41fbe2e793562f03463c1c95b62997d46c99b8d722620ec4355815f91a8fc57fa559f4ae15b88a058fb41516718d86f9ea6e3a SHA512 3f50ac8eb8594d8a74b885e185e1f46617e63ee726e903d01f97529c48fd0020ac045a495fa0367824a9ca9148d3aa368e03a27c44a42903bb5ad4b1aab38d82
DIST spyder-docs-32efdaebc11dab0b8e0767717342b7d306dc06ea.gh.tar.gz 94897009 BLAKE2B 30e0b42e34bddb60d8fc986183a363b71455067bc7f4411cb75a00c5758e87501ee07ad0b484caed2aa3cf91153be814c7faf935be8665b6984bce38ebcd0be2 SHA512 9f9aa56ab27aed8d27c3d653119d5c5454b4317a78a7ff27715d91cac9dec79143db85d4f1c87b10fa821eb33abc043912df308fa6c84ade59539bd633eefbd2
DIST spyder-docs-6951e02799fc7cd1f29456f1d93cfdcb570dad27.gh.tar.gz 93033557 BLAKE2B 395dd2a8ddb6e1b1408ba46cbe0fa452c1f2e69da1f3b6176401ff7395ace1463e63c696e13ee0b79f992b0ceca86228ad113f95ed7873db1b970452bc679f89 SHA512 c631e720e3ca49413482df294fb032285cf217ba94de299c37cb073e4e2bdeb629d16a139db17c569c74c628c50789c90d6085383886d32fa26b942711ccedc0
diff --git a/dev-python/spyder/spyder-5.5.6.ebuild b/dev-python/spyder/spyder-5.5.6.ebuild
new file mode 100644
index 000000000000..7daafb57f8f3
--- /dev/null
+++ b/dev-python/spyder/spyder-5.5.6.ebuild
@@ -0,0 +1,193 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+DISTUTILS_USE_PEP517=setuptools
+
+inherit distutils-r1 optfeature virtualx xdg
+
+# Commit of documentation to fetch
+DOCS_PV="6951e02799fc7cd1f29456f1d93cfdcb570dad27"
+
+DESCRIPTION="The Scientific Python Development Environment"
+HOMEPAGE="
+ https://www.spyder-ide.org/
+ https://github.com/spyder-ide/spyder/
+ https://pypi.org/project/spyder/
+"
+SRC_URI="
+ https://github.com/spyder-ide/${PN}/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz
+ https://github.com/spyder-ide/${PN}-docs/archive/${DOCS_PV}.tar.gz -> ${PN}-docs-${DOCS_PV}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+RDEPEND="
+ >=dev-python/atomicwrites-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/chardet-2.0.0[${PYTHON_USEDEP}]
+ >=dev-util/cookiecutter-1.6.0[${PYTHON_USEDEP}]
+ >=dev-python/diff-match-patch-20181111[${PYTHON_USEDEP}]
+ >=dev-python/intervaltree-3.0.2[${PYTHON_USEDEP}]
+ >=dev-python/jellyfish-0.7[${PYTHON_USEDEP}]
+ >=dev-python/jsonschema-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/keyring-17.0.0[${PYTHON_USEDEP}]
+ >=dev-python/nbconvert-4.0[${PYTHON_USEDEP}]
+ >=dev-python/numpydoc-0.6.0[${PYTHON_USEDEP}]
+ >=dev-python/pexpect-4.4.0[${PYTHON_USEDEP}]
+ >=dev-python/pickleshare-0.4[${PYTHON_USEDEP}]
+ >=dev-python/psutil-5.3[${PYTHON_USEDEP}]
+ >=dev-python/pygments-2.0[${PYTHON_USEDEP}]
+ >=dev-python/pylint-venv-3.0.2[${PYTHON_USEDEP}]
+ >=dev-python/python-lsp-black-2.0.0[${PYTHON_USEDEP}]
+ <dev-python/python-lsp-black-3[${PYTHON_USEDEP}]
+ >=dev-python/pyls-spyder-0.4.0[${PYTHON_USEDEP}]
+ >=dev-python/pyxdg-0.26[${PYTHON_USEDEP}]
+ >=dev-python/pyzmq-24.0.0[${PYTHON_USEDEP}]
+ >=dev-python/qdarkstyle-3.2[${PYTHON_USEDEP}]
+ <dev-python/qdarkstyle-3.3[${PYTHON_USEDEP}]
+ >=dev-python/qstylizer-0.2.2[${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.1.0[${PYTHON_USEDEP},pyqt5,svg,webengine]
+ >=dev-python/rtree-0.9.7[${PYTHON_USEDEP}]
+ >=dev-python/sphinx-0.6.6[${PYTHON_USEDEP}]
+ >=dev-python/spyder-kernels-2.5.2[${PYTHON_USEDEP}]
+ <dev-python/spyder-kernels-2.6.0[${PYTHON_USEDEP}]
+ >=dev-python/textdistance-4.2.0[${PYTHON_USEDEP}]
+ >=dev-python/three-merge-0.1.1[${PYTHON_USEDEP}]
+ >=dev-python/watchdog-0.10.3[${PYTHON_USEDEP}]
+"
+
+BDEPEND="
+ test? (
+ dev-python/cython[${PYTHON_USEDEP}]
+ dev-python/flaky[${PYTHON_USEDEP}]
+ dev-python/matplotlib[tk,${PYTHON_USEDEP}]
+ dev-python/pandas[${PYTHON_USEDEP}]
+ dev-python/pillow[${PYTHON_USEDEP}]
+ dev-python/pytest-lazy-fixture[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ dev-python/pytest-order[${PYTHON_USEDEP}]
+ dev-python/pytest-qt[${PYTHON_USEDEP}]
+ dev-python/pytest-timeout[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-python/QtPy[${PYTHON_USEDEP},pyside2,pyqt5]
+ dev-python/scipy[${PYTHON_USEDEP}]
+ dev-python/sympy[${PYTHON_USEDEP}]
+ )"
+
+# Based on the courtesy of Arfrever
+# This patch removes a call to update-desktop-database during build
+# This fails because access is denied to this command during build
+PATCHES=(
+ "${FILESDIR}/${PN}-5.0.0-build.patch"
+)
+
+DOCS=(
+ "AUTHORS.txt"
+ "Announcements.md"
+ "CHANGELOG.md"
+ "CODE_OF_CONDUCT.md"
+ "CONTRIBUTING.md"
+ "NOTICE.txt"
+ "README.md"
+ "RELEASE.md"
+)
+
+distutils_enable_tests pytest
+# TODO: Package sphinx-design
+# distutils_enable_sphinx docs/doc \
+# dev-python/sphinx-panels \
+# dev-python/pydata-sphinx-theme \
+# dev-python/sphinx-multiversion
+
+python_prepare_all() {
+ # move docs into workdir
+ mv ../spyder-docs-${DOCS_PV}* docs || die
+
+ # these dependencies are packaged separately:
+ # dev-python/spyder-kernels,
+ # dev-python/python-lsp-server,
+ # dev-python/qdarkstyle
+ rm -r external-deps/* || die
+ # runs against things packaged in external-deps dir
+ rm conftest.py || die
+
+ # Do not depend on pyqt5<5.16, this dependency is carried by QtPy[pyqt5]
+ # Do not depend on pyqtwebengine<5.16, this dependency is carried by QtPy[webengine]
+ # Do not depend on parso and jedi, this is dependency is carried in python-lsp-server
+ # Do not depend on python-lsp-server, this dependency is carried in pyls-spyder
+ # Do not depend on ipython, this dependency is carried in spyder-kernels
+ # The explicit version requirements only make things more complicated, if e.g.
+ # pyls-spyder gains compatibility with a newer version of python-lsp-server
+ # in a new release it will take time for this information to propagate into
+ # the next spyder release. So just remove the dependency and let the other
+ # ebuilds handle the version requirements to speed things up and prevent
+ # issues such as Bug 803269.
+ sed -i \
+ -e "/'pyqt5[ 0-9<=>.,]*',/d" \
+ -e "/'pyqtwebengine[ 0-9<=>.,]*',/d" \
+ -e "/'python-lsp-server\[all\][ 0-9<=>.,]*',/d" \
+ -e "/'parso[ 0-9<=>.,]*',/d" \
+ -e "/'jedi[ 0-9<=>.,]*',/d" \
+ -e "/'pylint[ 0-9<=>.,]*',/d" \
+ setup.py || die
+ # -e "/'ipython[ 0-9<=>.,]*',/d" \
+
+ sed -i \
+ -e "/^PYLS_REQVER/c\PYLS_REQVER = '>=0.0.1'" \
+ -e "/^PYLSP_REQVER/c\PYLSP_REQVER = '>=0.0.1'" \
+ -e "/^PARSO_REQVER/c\PARSO_REQVER = '>=0.0.1'" \
+ -e "/^JEDI_REQVER/c\JEDI_REQVER = '>=0.0.1'" \
+ -e "/^PYLINT_REQVER/c\PYLINT_REQVER = '>=0.0.1'" \
+ spyder/dependencies.py || die
+ # -e "/^IPYTHON_REQVER/c\IPYTHON_REQVER = '>=0.0.1'" \
+
+ # do not check deps, fails because we removed dependencies above
+ sed -i -e 's:test_dependencies_for_spyder_setup_install_requires_in_sync:_&:' \
+ spyder/tests/test_dependencies_in_sync.py || die
+
+ # can't check for update, need network
+ rm spyder/workers/tests/test_update.py || die
+
+ # skip online test
+ rm spyder/widgets/github/tests/test_github_backend.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+# Calling pytest directly somehow passes the pytest arguments to spyder
+# causing an invalid argument error
+python_test() {
+ virtx "${EPYTHON}" runtests.py
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+
+ optfeature "2D/3D plotting in the Python and IPython consoles" dev-python/matplotlib
+ optfeature "View and edit DataFrames and Series in the Variable Explorer" dev-python/pandas
+ optfeature "View and edit two or three dimensional arrays in the Variable Explorer" dev-python/numpy
+ optfeature "Symbolic mathematics in the IPython console" dev-python/sympy
+ optfeature "Import Matlab workspace files in the Variable Explorer" dev-python/scipy
+ optfeature "Run Cython files in the IPython console" dev-python/cython
+ optfeature "The hdf5/h5py plugin" dev-python/h5py
+ optfeature "The line profiler plugin" dev-python/spyder-line-profiler
+ optfeature "Vim key bindings" dev-python/spyder-vim
+ optfeature "Unittest support" dev-python/spyder-unittest
+ optfeature "System terminal inside spyder" dev-python/spyder-terminal
+ optfeature "Jupyter notebook support" dev-python/spyder-notebook
+ # spyder-memory-profiler is not compatible with spyder-5.2+ yet
+ # optfeature "The memory profiler plugin" dev-python/spyder-memory-profiler
+ # spyder-reports not yet updated to >=spyder-4.0.0
+ # optfeature "Markdown reports using Pweave" dev-python/spyder-reports
+ # Plugins with no release yet:
+ # optfeature "Manage virtual environments and packages" dev-python/spyder-env-manager
+ # optfeature "VCS (e.g. git) integration" dev-python/spyder-vcs
+}
diff --git a/dev-python/sqlglot/Manifest b/dev-python/sqlglot/Manifest
index 5d6359639f62..c650d0321e72 100644
--- a/dev-python/sqlglot/Manifest
+++ b/dev-python/sqlglot/Manifest
@@ -19,10 +19,8 @@ DIST quote-1.0.33.crate 28090 BLAKE2B 77c4b166f1200e1ee2ab94a5014acd334c1fe4b7d7
DIST redox_syscall-0.4.1.crate 24858 BLAKE2B c3301137a0b84e03b09d28dfa377ab3bea74d574a08cee21d35713b278d8b5b30ca2a1d73a0981baeb4644cbb88c86c8eb15ab3bb2692e38b93e6b35fab4e0da SHA512 073ed9d96090cf46eab9877742277a013c62d8da86d9caf2310b4fa868af306511936553579e01309f27067d344226cc8dc5e3aef01d9b900da2febd33848f8d
DIST scopeguard-1.2.0.crate 11619 BLAKE2B 8b7e9ed6cefef9ee55407fb9690d57a2a98bb93e5105aeebdb475a52485e9e185255249e1dce8f83cd80534e7402d485aac3efa7e8493b13135de27550cd4bc4 SHA512 6247719a15fe1e4e2d179127b9a934bd2f99367724f41175ed9522f58824b6bc69b35002eae66b35880375ff61d77ac43ddaa78cbde7160a35183a1da32d3fbb
DIST smallvec-1.11.2.crate 34801 BLAKE2B 58645e99db8f02db64d02c75860c7ea41836c427c03ee3b0b23365e73a406e4fd6ac312bf13fc5faef8bb6111c10fcfd5f839d5b3686e9b34d1626f8469fc327 SHA512 5cfb427c3b99b0dbd71f6154ed899abcde9d7d2992977ac7b2ef3a4c3ff51e4efafd133071a69609b4ed6cb269bdc26b79eb72e1988f10dfcaef8185d950cd1d
-DIST sqlglot-25.12.0.tar.gz 19158536 BLAKE2B 33c6fee914163c7de2c3ec4b478463d31daee8090718563c0878377204d4a831e44fea5eea30ec34e1ebba22c0e4bdcb3f75783aefc010717fd10dfb27bf78b9 SHA512 51f2a637018b5f92aaf6829569977a55f0471e37e71428b5630e88f775e610d93c43b0b8978720589da5087175c38b87355c932a9da926b2b6e8cde6054efe5c
-DIST sqlglot-25.13.0.tar.gz 19167499 BLAKE2B 0d54e5f1902ccbf93be372d6017f616add8285f0f02e5d56bd0deabbebe812012d6f582e4176683b786ac9bdc258450a6d25675ede4423dce894f69d387e9c6a SHA512 f242135d6df8c220ab3b569ebd80d4bfad27c95f92aeff28c87ba6e0a2488ab924198a4eaf9c50ad6dd675ae3f529f49416bfb6d8c3634629f6aabc02002edcd
-DIST sqlglot-25.15.0.tar.gz 19179420 BLAKE2B e444b5b4d9d85ac305743d9b2f49e292f1f41bd580d0f71ecba374e87f76d4e0d19022eb812b9fb53bfb2bf9446ab71b2875f60de29d7d6e5a6ac9adda52a78f SHA512 d7ac140506548c3aee7c87ba86cf146c5d485d212cb3d49cf74da6b163cfa2bf2905f150e59fe0363796c3aa330d1ba64e1492608c5a093e1739fc219fb90f7c
DIST sqlglot-25.16.1.tar.gz 19302632 BLAKE2B 07498e10667f2c6e79c89b201c0397bdbeb765e69e4e2f4a44dc386523851ed8ecfab702fbb72fbd15a2c0d9cda011160a01ff879c7e28314dd09a3878dcd408 SHA512 0f4c63c8602078697b7c6bc39e8c9a7bd93c7094b632956acfd787f6d7aa82b54bd0901721a90755f7d9405f941233328d06b362c3d9ff4ab84d918d0e31a874
+DIST sqlglot-25.17.0.tar.gz 19304298 BLAKE2B ed8d7a7a217ff0b63508225d25da146db347e8d37d76cbf4c408eaec8cc28f22a6c8249f2373a32bb039240181e14942cf0c10134bc44a6f393fb165136f4ffc SHA512 d4b0f5209eb63f210fe9a1ad531921bb5db13328e3c6a7f375ee29314b68ce0632f106fd4b38f3b9a229bf9229d121115fcbcac8a25105e321f8a4f8ecc33208
DIST syn-2.0.41.crate 246016 BLAKE2B 9d389f2e2a0acb4c84c309456e8ffcc88c5d4d541535ed136832d7a6054dde45a598bb68e8a6f3062ca2a96e1ceae947d54b3aec9bad65b0c51d6733aa6c80db SHA512 6bbaf69ca783025dfb81ac3612ac60bfbed31b2d87792909b35c12892dadebdaff2ddf9463105e536b671dce5870610ab90fe29471284bbd3014dca8d6993f1a
DIST target-lexicon-0.12.12.crate 25156 BLAKE2B f3803596c75f6c89438592a1176c3748fc2c0524d7d50a20056de1cd26d40c572b05bafcdf6dd702752864bea37c8b4f28f96dadc12a5b3bb1d279b25e489f85 SHA512 6147295c43ba1b7b087a3c5ab51534b2985e4e77e5e15687978cfb9d07e21c4fd9bc7191576d6cabd268d08a44dc733c4a957e59dba8b948c2055d8bb433aeca
DIST unicode-ident-1.0.12.crate 42168 BLAKE2B 4cede03c08758ccd6bf53a0d0057d7542dfdd0c93d342e89f3b90460be85518a9fd24958d8b1da2b5a09b5ddbee8a4263982194158e171c2bba3e394d88d6dac SHA512 bc1824e1e4452a40732fc69874d7e1a66f7803717a314790dcf48867eba34bc9441331ef031e386912e52c385645c25b6ed39d4f149973b5b97371b1b96b1920
diff --git a/dev-python/sqlglot/sqlglot-25.13.0.ebuild b/dev-python/sqlglot/sqlglot-25.13.0.ebuild
deleted file mode 100644
index c040bab3734b..000000000000
--- a/dev-python/sqlglot/sqlglot-25.13.0.ebuild
+++ /dev/null
@@ -1,121 +0,0 @@
-# Copyright 2023-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{8,9,10,11,12} )
-
-CARGO_OPTIONAL=1
-CRATES="
- autocfg@1.1.0
- bitflags@1.3.2
- cfg-if@1.0.0
- heck@0.4.1
- indoc@2.0.4
- libc@0.2.150
- lock_api@0.4.11
- memoffset@0.9.0
- once_cell@1.19.0
- parking_lot@0.12.1
- parking_lot_core@0.9.9
- proc-macro2@1.0.70
- pyo3-build-config@0.20.0
- pyo3-ffi@0.20.0
- pyo3-macros-backend@0.20.0
- pyo3-macros@0.20.0
- pyo3@0.20.0
- quote@1.0.33
- redox_syscall@0.4.1
- scopeguard@1.2.0
- smallvec@1.11.2
- syn@2.0.41
- target-lexicon@0.12.12
- unicode-ident@1.0.12
- unindent@0.2.3
- windows-targets@0.48.5
- windows_aarch64_gnullvm@0.48.5
- windows_aarch64_msvc@0.48.5
- windows_i686_gnu@0.48.5
- windows_i686_msvc@0.48.5
- windows_x86_64_gnu@0.48.5
- windows_x86_64_gnullvm@0.48.5
- windows_x86_64_msvc@0.48.5
-"
-
-inherit cargo distutils-r1 pypi optfeature
-
-DESCRIPTION="An easily customizable SQL parser and transpiler"
-HOMEPAGE="
- https://sqlglot.com/
- https://github.com/tobymao/sqlglot/
- https://pypi.org/project/sqlglot/
-"
-SRC_URI+="
- native-extensions? (
- ${CARGO_CRATE_URIS}
- )
-"
-
-LICENSE="MIT"
-LICENSE+=" native-extensions? ("
-# Dependent crate licenses
-LICENSE+=" Apache-2.0-with-LLVM-exceptions MIT Unicode-DFS-2016"
-LICENSE+=" )"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="+native-extensions"
-
-BDEPEND="
- native-extensions? (
- ${RUST_DEPEND}
- dev-util/maturin[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-
-QA_FLAGS_IGNORED="usr/lib.*/py.*/site-packages/sqlglotrs/sqlglotrs.*.so"
-
-src_unpack() {
- cargo_src_unpack
-}
-
-src_prepare() {
- # remove fragile timing check
- sed -i -e '/assertLessEqual(time\.time/d' tests/test_parser.py || die
- distutils-r1_src_prepare
-}
-
-python_compile() {
- distutils-r1_python_compile
-
- if use native-extensions; then
- local DISTUTILS_USE_PEP517=maturin
- cd sqlglotrs || die
- distutils-r1_python_compile
- cd - >/dev/null || die
- fi
-}
-
-python_test() {
- local EPYTEST_IGNORE=(
- # Tests require pyspark or duckdb which aren't in the tree.
- # Pandas would be a requirement normally, but it gets ignored by proxy.
- "tests/dataframe/integration/test_dataframe.py"
- "tests/dataframe/integration/test_grouped_data.py"
- "tests/dataframe/integration/test_session.py"
- "tests/test_executor.py"
- "tests/test_optimizer.py"
- )
-
- # make sure not to use an earlier installed version
- local -x SQLGLOTRS_TOKENIZER=$(usex native-extensions 1 0)
- rm -rf sqlglotrs || die
- epytest
-}
-
-pkg_postinst() {
- optfeature "simplifying timedelta expressions" dev-python/python-dateutil
-}
diff --git a/dev-python/sqlglot/sqlglot-25.15.0.ebuild b/dev-python/sqlglot/sqlglot-25.15.0.ebuild
deleted file mode 100644
index c040bab3734b..000000000000
--- a/dev-python/sqlglot/sqlglot-25.15.0.ebuild
+++ /dev/null
@@ -1,121 +0,0 @@
-# Copyright 2023-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{8,9,10,11,12} )
-
-CARGO_OPTIONAL=1
-CRATES="
- autocfg@1.1.0
- bitflags@1.3.2
- cfg-if@1.0.0
- heck@0.4.1
- indoc@2.0.4
- libc@0.2.150
- lock_api@0.4.11
- memoffset@0.9.0
- once_cell@1.19.0
- parking_lot@0.12.1
- parking_lot_core@0.9.9
- proc-macro2@1.0.70
- pyo3-build-config@0.20.0
- pyo3-ffi@0.20.0
- pyo3-macros-backend@0.20.0
- pyo3-macros@0.20.0
- pyo3@0.20.0
- quote@1.0.33
- redox_syscall@0.4.1
- scopeguard@1.2.0
- smallvec@1.11.2
- syn@2.0.41
- target-lexicon@0.12.12
- unicode-ident@1.0.12
- unindent@0.2.3
- windows-targets@0.48.5
- windows_aarch64_gnullvm@0.48.5
- windows_aarch64_msvc@0.48.5
- windows_i686_gnu@0.48.5
- windows_i686_msvc@0.48.5
- windows_x86_64_gnu@0.48.5
- windows_x86_64_gnullvm@0.48.5
- windows_x86_64_msvc@0.48.5
-"
-
-inherit cargo distutils-r1 pypi optfeature
-
-DESCRIPTION="An easily customizable SQL parser and transpiler"
-HOMEPAGE="
- https://sqlglot.com/
- https://github.com/tobymao/sqlglot/
- https://pypi.org/project/sqlglot/
-"
-SRC_URI+="
- native-extensions? (
- ${CARGO_CRATE_URIS}
- )
-"
-
-LICENSE="MIT"
-LICENSE+=" native-extensions? ("
-# Dependent crate licenses
-LICENSE+=" Apache-2.0-with-LLVM-exceptions MIT Unicode-DFS-2016"
-LICENSE+=" )"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="+native-extensions"
-
-BDEPEND="
- native-extensions? (
- ${RUST_DEPEND}
- dev-util/maturin[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-
-QA_FLAGS_IGNORED="usr/lib.*/py.*/site-packages/sqlglotrs/sqlglotrs.*.so"
-
-src_unpack() {
- cargo_src_unpack
-}
-
-src_prepare() {
- # remove fragile timing check
- sed -i -e '/assertLessEqual(time\.time/d' tests/test_parser.py || die
- distutils-r1_src_prepare
-}
-
-python_compile() {
- distutils-r1_python_compile
-
- if use native-extensions; then
- local DISTUTILS_USE_PEP517=maturin
- cd sqlglotrs || die
- distutils-r1_python_compile
- cd - >/dev/null || die
- fi
-}
-
-python_test() {
- local EPYTEST_IGNORE=(
- # Tests require pyspark or duckdb which aren't in the tree.
- # Pandas would be a requirement normally, but it gets ignored by proxy.
- "tests/dataframe/integration/test_dataframe.py"
- "tests/dataframe/integration/test_grouped_data.py"
- "tests/dataframe/integration/test_session.py"
- "tests/test_executor.py"
- "tests/test_optimizer.py"
- )
-
- # make sure not to use an earlier installed version
- local -x SQLGLOTRS_TOKENIZER=$(usex native-extensions 1 0)
- rm -rf sqlglotrs || die
- epytest
-}
-
-pkg_postinst() {
- optfeature "simplifying timedelta expressions" dev-python/python-dateutil
-}
diff --git a/dev-python/sqlglot/sqlglot-25.12.0.ebuild b/dev-python/sqlglot/sqlglot-25.17.0.ebuild
index c040bab3734b..2a3db897240e 100644
--- a/dev-python/sqlglot/sqlglot-25.12.0.ebuild
+++ b/dev-python/sqlglot/sqlglot-25.17.0.ebuild
@@ -72,6 +72,9 @@ BDEPEND="
${RUST_DEPEND}
dev-util/maturin[${PYTHON_USEDEP}]
)
+ test? (
+ dev-python/pytz[${PYTHON_USEDEP}]
+ )
"
distutils_enable_tests pytest
@@ -100,6 +103,11 @@ python_compile() {
}
python_test() {
+ local EPYTEST_DESELECT=(
+ # timing, sigh
+ # https://github.com/tobymao/sqlglot/issues/3961
+ tests/test_generator.py::TestGenerator::test_generate_nested_binary
+ )
local EPYTEST_IGNORE=(
# Tests require pyspark or duckdb which aren't in the tree.
# Pandas would be a requirement normally, but it gets ignored by proxy.
diff --git a/dev-python/suds-community/Manifest b/dev-python/suds-community/Manifest
index c0cfa3ffb78c..73c8293a3177 100644
--- a/dev-python/suds-community/Manifest
+++ b/dev-python/suds-community/Manifest
@@ -1,2 +1 @@
-DIST suds-community-1.1.2.tar.gz 285409 BLAKE2B 6cf047bb6fa6aed147fa519fee4300f52195c94a409aaa769feffaaf4d43552a566efb0162e440092c3dcb8ec21cf441325db449e5417b81a5f859133a078b83 SHA512 9f26ebbf36fcbd915281f3c3afd4ea776ca409ede4ba9e487b746ef4e527171ee2fdb44075100d52b5bba0658fafec817eea2cbf64b8d2851bdc974aee430d57
DIST suds_community-1.2.0.tar.gz 271408 BLAKE2B 4699ee3bc28f758484425cda5c9a6e6d036d7bc364f0456ec2180726269afcb8c2f62004d2d9441ebb6aec0fea3f4b83d19f5a0df736be2e6bf61a15951f3290 SHA512 8955ad288fbd9d472b8aa4b4a016da66616436bb41b44d7935f4c14ae897c127e0d6c14457f2303ead671f92edc51454701c9658aec32f6af44882526ed86aeb
diff --git a/dev-python/suds-community/suds-community-1.1.2.ebuild b/dev-python/suds-community/suds-community-1.1.2.ebuild
deleted file mode 100644
index ba2548bc8877..000000000000
--- a/dev-python/suds-community/suds-community-1.1.2.ebuild
+++ /dev/null
@@ -1,31 +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_REQ_USE="xml(+)"
-PYTHON_COMPAT=( python3_{8,9,10,11,12} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="Lightweight SOAP client"
-HOMEPAGE="
- https://github.com/suds-community/suds/
- https://pypi.org/project/suds-community/
-"
-
-LICENSE="LGPL-3"
-SLOT="0"
-KEYWORDS="amd64 arm64 x86 ~amd64-linux ~x86-linux"
-
-DOCS=( README.md notes/. )
-
-BDEPEND="
- test? (
- dev-python/six[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
diff --git a/dev-python/suds-community/suds-community-1.2.0.ebuild b/dev-python/suds-community/suds-community-1.2.0.ebuild
index d661efa28827..640f4d4f1fd5 100644
--- a/dev-python/suds-community/suds-community-1.2.0.ebuild
+++ b/dev-python/suds-community/suds-community-1.2.0.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="LGPL-3"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86 ~amd64-linux ~x86-linux"
+KEYWORDS="amd64 arm64 x86 ~amd64-linux ~x86-linux"
DOCS=( README.md notes/. )
diff --git a/dev-python/uv/Manifest b/dev-python/uv/Manifest
index 9f86fc05390c..8004d1037a0a 100644
--- a/dev-python/uv/Manifest
+++ b/dev-python/uv/Manifest
@@ -1,18 +1,8 @@
-DIST pubgrub-2fac39371a47e7cb821e510aaa4de25405413d29.gh.tar.gz 86987 BLAKE2B cbb08901aca46816279ca748a2d96e841b7a570cd674e4d96ef907a968050f5919a2d41fef240bb715050cf8df7dd6755e3d7f74fc79085bfc1ac2daf0665b09 SHA512 eda3539933dab8961120f1989365f8d5b5900aac5dc22606169e3f5d726bea54d3e8179377884d581941baf6bc57c2d41590477d9d3051923504d3b67824a17f
DIST pubgrub-388685a8711092971930986644cfed152d1a1f6c.gh.tar.gz 87945 BLAKE2B 7c10db2eff97656a379e8beff9f77bf09b4ab2fdd0d5c171e36babc6f3bff08d05774c55a51a23d79144c4110a942764cefa8a1baf7c36174809d2e648f2d12d SHA512 15539076de8fe9a459f70efcf07ccb7f61ced2be9832c4eb7123e7baa2bb85f3263fd4cb5d8b277c28a70ba316d5128d74d59d6f1de96b6e55ef04321a42c4dc
-DIST pubgrub-3f0ba760951ab0deeac874b98bb18fc90103fcf7.gh.tar.gz 87050 BLAKE2B d76bc40a71ead4c535eff493901247f2ee2f0a213d12db17bf96c89008be482829ff9b0d47196bb04ffc8c20842f15a2c7a4aa663d4c3f6c3eb82461250853ce SHA512 cd55d4512590eb86628d933598bd3f276a09018dce8dd720496f4314872afe1ad8d0b79d16f1b358e4a77a8613c1d06c742117d3a2a9c39e4f34d0ccd86eb536
-DIST pubgrub-aaef464c1b0d8eea4ff9ffaee4f3458c236d10da.gh.tar.gz 87820 BLAKE2B a73f6a3b14fcfccd61ba753e16dfdd38c2424e9608b4e177440b50461b5a2886da7982a73abdc3c8b76ad6c796f96906d2db131425aac5c036ff63d0ccb2b644 SHA512 feec9955227f75e7a914af9b0197b2aae13e5d2e4bba9df1328ba7fe6e0edb9b508ffdbe9f6c7ff8e88d3c7a355964c10186776f4c4ec436689cebbcd92e8f07
-DIST reqwest-middleware-21ceec9a5fd2e8d6f71c3ea2999078fecbd13cbe.gh.tar.gz 39176 BLAKE2B 00b2d0f51e4bbe29649fea50a8cc41c7b4d534f87440dd0bf487e8f7104077ad2cde824673b6624ff71924512b8a6b33ed4ac548f64bfbf78a5e0fb1366a446f SHA512 29f80816d054838af330a0ccfb8509ab22469aaecdb369d4a63c03eb3ed2aea3cc113458dd29c649e5bf7c33dbf5ef8b1e5d5a89e1cca72f9eab212f000c594f
DIST reqwest-middleware-5e3eaf254b5bd481c75d2710eed055f95b756913.gh.tar.gz 40049 BLAKE2B d284947a108e2d3233a4fa7c9eb5e1a959bc5b569e754861daef076672672b0500cb737b85871d1fc0587bdbf6d5020e03e7c906cb5de34ff2f81c05b66918d1 SHA512 540a71e59a8b57e5e0bd7fad18fed265552bdae4518690a9823c94dcf23ee1d436f91b9cecf21129917b25e78b91d8d7290760edaea68053666e28af7223476e
DIST rs-async-zip-011b24604fa7bc223daaad7712c0694bac8f0a87.gh.tar.gz 51706 BLAKE2B 354eb52c95ea355521e1e6a7c841102424c47c156fdb0efb62e3cac666ecf289806aeefab8a0273a7c3283429ac81502283bdb5424d5f925621e5c2b1430fd4d SHA512 6650eef354e84daf41a8572b98b29f2873b7f071dd1d6983292c70b2f580fdc50cd26762d2228a70c2b200eae2f40476e6604702aa62cc97558301195bf19eb8
-DIST rs-async-zip-1dcb40cfe1bf5325a6fd4bfcf9894db40241f585.gh.tar.gz 96766 BLAKE2B f9efab73c65394e33e090a6292875ebf35e6669b15c356f102eb109784a4503606ae39106cd0ebe3d7d479cb0b30806d7baaaebf22d826836a24f7ed49100934 SHA512 3b845b05d97c5ab5cea286a7c11846838b40bb1fac98a51782600849a53231be8fa205094c6bdd00f6e193c807b10b28f947698696382be99cae0a8d681dabdc
-DIST uv-0.2.29-crates.tar.xz 48592012 BLAKE2B 57492ede8b970171fc00c4f07ff3e9cb39dcd8bbf52433ed966963838bb9af14bfc9fc52ef5ec7e7a01af74598f066bfb5461d683a69390256fab3b69f08360a SHA512 aef3ee357dfc66a2b04967cd4526a5f07ce09e6ea949641ef1934fb774133b93b106c8e5f255bba92fd375b3f1996b7b016682e9e8f1c9afa871781af163e095
-DIST uv-0.2.29.gh.tar.gz 1468793 BLAKE2B b69397a9fa0fb855a876d5c0322c53c01c400f023bae681e9347a5dde13e5d844da06b9016af5aab7ccc1e3482f2a2004f5efcad4887291ee28c455f6198ac31 SHA512 83b34496868cdd903122140ed28d8cf4e503f7be1848ce711aa98e9019a62ce82607b9a7eba189194024f21e376f61805e42d6b8c4544ff7d1a14212e99f5bc1
-DIST uv-0.2.30.gh.tar.gz 1475670 BLAKE2B f497c59a79d50d3a189621139923914dc83a230ae519c93ea5084ed0e01a1caefaa1052d0609f8583deb2192a4f5220d4df72755e7ea95ffbbe96601d56edd14 SHA512 67871699365e38c17dc7a2b10973f5e07a214c48f38187d6cf28541ca650d5107da1049aa1c9eea01ee7ba4acafb3493e175ed3246abb6b5b21838699669e5f2
-DIST uv-0.2.36-crates.tar.xz 49805804 BLAKE2B d9f71866b180e45ddad94432c5e1aad51d3ab82101899a32cb2c571882a7497cca8135f14bc6e5b6e7fc508774e81b525015a445fbda0f880f194e0cd49a4e87 SHA512 34860fc8cc17a959d9d556e25cf134f18a1e9f00f2db604a7225c1f22b6e5051e4dadb502582b3fa03b3ae1be6e4a70ebdd94c08f4a1f18baef8c44b32932123
-DIST uv-0.2.36.gh.tar.gz 2301352 BLAKE2B 93476b89a0896efa87ebf9f49e6c225750ec9cc900dde253edb6f6070cc9ac3f71c7c1f9fd81e09ebe7bb6287a5881e78a63a87c0eeb469bdf3d75f3b77f96a0 SHA512 84de22e464b8e467588ceebdda23089233d42e3080090b2fc0fd7aec2f4b76eee1788f8b23b6e7b9c4e99182ca3ea175b76fb5dedf87767fe3ec534b3264c9b6
-DIST uv-0.3.1-crates.tar.xz 50235904 BLAKE2B 9deb7ee2d99786dbec4b91c020bab2d32fdb696c39ea35b42e8c2380d563c756e1a7044372b1e9cc82d82e18b8c3bebd19cb7c71bccb6bd3f01ae294f2c1878d SHA512 438e1d7cc94bd1214f6fe77852a9d4ec6a1a69561cc16c175ba22f9d1840021d41c8735079f522c29beaf17ac883ecbd9805d4f15e0845483bfede634e40413b
-DIST uv-0.3.1.gh.tar.gz 2400493 BLAKE2B e094acd1753e66beee369f6931b520a53515364774a1affb45c57f9eaeeb19cfc5fce8f40725173dd0d43fe664cfd55b904eb6de585c809aaab5ae6c54db7901 SHA512 145b3926e7fb0e4d14eecf6140e16a59afaf4a34a3881d8798bf87144849bd5b47b5100ed479eaf8c0e4675d1cbfb6bee509f20d1e24d25605f4dd4b2be8b24d
-DIST uv-0.3.2.gh.tar.gz 2414989 BLAKE2B 0d1de7aa6a97e58abef1edf8becb1527e0fb2381fc335a61b2205ab5de5f5a5df8817679d73d6603f065df4a8942080bbb2fc1d9344e8429d118006463efe672 SHA512 2737d6b10d26a075e9a2365782ff07aea3cfbfc01420ba5b9edec5499bb39881eae78e56b01f71d84013c1f358fe5a91d175dfc70d5273ccdae5ca98bb45abb3
+DIST tl-6e25b2ee2513d75385101a8ff9f591ef51f314ec.gh.tar.gz 37106 BLAKE2B c30d1c33f6f52e2bc83823eb6319f8a3e462b7c7408fb6a08f995747857ef234f81db4135a04f9d183095fe473a4087f8f0cb89d8f87ef4400285d2ce034ec22 SHA512 4abbc4240ed129c92da8d616e27a6df0f24cdc85a0803acfdae588ca91f9e5b8d482e3ac88b2e657ff68917b1b43cef1e7ef3c887f624659b231fa5a13fcae68
DIST uv-0.3.3-crates.tar.xz 50333232 BLAKE2B 01e0bf8a8fe6f73aea3e77580bfae1d632ce02aa547a9b8db0f9c08bd244e579f360712b2971450eb63ec6687cae0fb7d1fd29304fd30f3b30f78f1dc0e08bbd SHA512 08f35fc25060b61cd1a33a3e4c8631de25614b883922e39eef0ef2782b15b25ef9679f6f5fbc4f765205a52279f2f124de77d418a476fe91b8f376841e0c1a96
DIST uv-0.3.3.gh.tar.gz 2452105 BLAKE2B c4d1b0c1a4ef0439ec8d0187b2e77d44c020cd1284729c50c99b8e345b8338e6e551a286165674240d2d4b562476504425f0726b746b9821ba2683f9176f131d SHA512 cf79574a0ec3468daca7a7a6af39e5eb38f646837043bf783f69c60edc9af16fc90b65ef97dfe65b7ca4381d13caacf222a6a38d2c8f7ede90679fff8be9a009
+DIST uv-0.3.4-crates.tar.xz 48658524 BLAKE2B 51a3a4883f8c435355ebb6da3da5bdc8d2dbccbf215c13a9cea394db431db0cde27d008323a711da3d11342fc9f84427ad83d3b70b478bce317e1b6316afe1da SHA512 fa3315832b3e5252a709d1250e4ad81e6aa963216871f0a0a99422424c2009e455a29836703e207279e06ad607187d209b9443791bbcfcfd3860156fa5de871a
+DIST uv-0.3.4.gh.tar.gz 2458698 BLAKE2B 89db8580a2b3e04546a82bdeb916660cd25344ce604f4201f71bad047ec2e8af651a81d8793207e43755f06e9d69c2fa3afe7386113c0fd79e683964f4a8dd56 SHA512 a99e6963f0ccd6becfdd6802b6195d5ebf5e2563d3fbad3d09ca5302d1d3fcf4fcdf9d2c5837023fef09ea89f5cf736ac61005d4c0e6f824d5a0c64160183686
diff --git a/dev-python/uv/files/uv-0.3.1-test.patch b/dev-python/uv/files/uv-0.3.1-test.patch
deleted file mode 100644
index bd5ccaa40fe0..000000000000
--- a/dev-python/uv/files/uv-0.3.1-test.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From 783eaf5963b22d2d47c1a3ece7e022ee4f85b29d Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
-Date: Thu, 22 Aug 2024 07:34:21 +0200
-Subject: [PATCH] Mark emit_marker_expression* tests as requiring python-patch
-
-Mark the new tests requiring Python 3.12.1 specifically as requiring
-python-patch feature. This makes the test suite pass again on systems
-not having this specific version (and disabling the feature).
----
- crates/uv/tests/pip_compile.rs | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/crates/uv/tests/pip_compile.rs b/crates/uv/tests/pip_compile.rs
-index 7b6af57dbd44..ef87fbc5cafc 100644
---- a/crates/uv/tests/pip_compile.rs
-+++ b/crates/uv/tests/pip_compile.rs
-@@ -9974,7 +9974,7 @@ fn dynamic_dependencies() -> Result<()> {
- /// Since this test was developed on Linux, the marker expression generated is
- /// coupled with the Linux platform. Other tests for other platforms could be
- /// added.
--#[cfg(target_os = "linux")]
-+#[cfg(all(target_os = "linux", feature = "python-patch"))]
- #[test]
- fn emit_marker_expression_exciting_linux() -> Result<()> {
- let context = TestContext::new("3.12.1");
-@@ -10011,7 +10011,7 @@ fn emit_marker_expression_exciting_linux() -> Result<()> {
- ///
- /// NOTE: This test runs on `linux` only because it requires that `sys_platform
- /// == 'linux'` evaluates to `true`.
--#[cfg(target_os = "linux")]
-+#[cfg(all(target_os = "linux", feature = "python-patch"))]
- #[test]
- fn emit_marker_expression_direct() -> Result<()> {
- let context = TestContext::new("3.12.1");
-@@ -10091,7 +10091,7 @@ fn emit_marker_expression_conditional() -> Result<()> {
- /// not clear why. The `tzdata` dependency appears to be an unconditional
- /// dependency. And if anything, I'd expect it to be included on Windows and
- /// excluded everywhere else... Odd.)
--#[cfg(target_os = "linux")]
-+#[cfg(all(target_os = "linux", feature = "python-patch"))]
- #[test]
- fn emit_marker_expression_pypy() -> Result<()> {
- let context = TestContext::new("3.12.1");
diff --git a/dev-python/uv/uv-0.2.29.ebuild b/dev-python/uv/uv-0.2.29.ebuild
deleted file mode 100644
index f3cf0860cc38..000000000000
--- a/dev-python/uv/uv-0.2.29.ebuild
+++ /dev/null
@@ -1,109 +0,0 @@
-# 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;3f0ba760951ab0deeac874b98bb18fc90103fcf7;pubgrub-%commit%'
- [reqwest-middleware]='https://github.com/astral-sh/reqwest-middleware;21ceec9a5fd2e8d6f71c3ea2999078fecbd13cbe;reqwest-middleware-%commit%/reqwest-middleware'
- [reqwest-retry]='https://github.com/astral-sh/reqwest-middleware;21ceec9a5fd2e8d6f71c3ea2999078fecbd13cbe;reqwest-middleware-%commit%/reqwest-retry'
-)
-
-inherit cargo check-reqs
-
-CRATE_PV=0.2.29
-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
- SRC_URI+="
- https://dev.gentoo.org/~mgorny/dist/uv-${CRATE_PV}-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 ~loong ~ppc ~ppc64 ~riscv ~x86"
-IUSE="test"
-RESTRICT="test"
-PROPERTIES="test_network"
-
-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/.*"
-
-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_prepare() {
- default
-
- # remove patch.* that breaks GIT_CRATES
- sed -i -e "/^\[patch/,\$s@^\(reqwest-middleware = \).*@\1 { path = \"${WORKDIR}/reqwest-middleware-21ceec9a5fd2e8d6f71c3ea2999078fecbd13cbe/reqwest-middleware\" }@" Cargo.toml || die
-
- # https://github.com/vorot93/tokio-tar/pull/23
- # (fortunately uv already depends on portable-atomic, so we don't
- # have to fight Cargo.lock)
- cd "${ECARGO_VENDOR}/tokio-tar-0.3.1" || die
- eapply "${FILESDIR}/tokio-tar-0.3.1-ppc.patch"
-}
-
-src_compile() {
- cd crates/uv || die
- cargo_src_compile
-}
-
-src_test() {
- # work around https://github.com/astral-sh/uv/issues/4376
- local -x PATH=${BROOT}/usr/lib/python-exec/python3.12:${PATH}
- local -x COLUMNS=100
-
- cd crates/uv || die
- cargo_src_test --no-fail-fast
-}
-
-src_install() {
- cd crates/uv || die
- cargo_src_install
-}
diff --git a/dev-python/uv/uv-0.2.30.ebuild b/dev-python/uv/uv-0.2.30.ebuild
deleted file mode 100644
index f3cf0860cc38..000000000000
--- a/dev-python/uv/uv-0.2.30.ebuild
+++ /dev/null
@@ -1,109 +0,0 @@
-# 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;3f0ba760951ab0deeac874b98bb18fc90103fcf7;pubgrub-%commit%'
- [reqwest-middleware]='https://github.com/astral-sh/reqwest-middleware;21ceec9a5fd2e8d6f71c3ea2999078fecbd13cbe;reqwest-middleware-%commit%/reqwest-middleware'
- [reqwest-retry]='https://github.com/astral-sh/reqwest-middleware;21ceec9a5fd2e8d6f71c3ea2999078fecbd13cbe;reqwest-middleware-%commit%/reqwest-retry'
-)
-
-inherit cargo check-reqs
-
-CRATE_PV=0.2.29
-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
- SRC_URI+="
- https://dev.gentoo.org/~mgorny/dist/uv-${CRATE_PV}-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 ~loong ~ppc ~ppc64 ~riscv ~x86"
-IUSE="test"
-RESTRICT="test"
-PROPERTIES="test_network"
-
-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/.*"
-
-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_prepare() {
- default
-
- # remove patch.* that breaks GIT_CRATES
- sed -i -e "/^\[patch/,\$s@^\(reqwest-middleware = \).*@\1 { path = \"${WORKDIR}/reqwest-middleware-21ceec9a5fd2e8d6f71c3ea2999078fecbd13cbe/reqwest-middleware\" }@" Cargo.toml || die
-
- # https://github.com/vorot93/tokio-tar/pull/23
- # (fortunately uv already depends on portable-atomic, so we don't
- # have to fight Cargo.lock)
- cd "${ECARGO_VENDOR}/tokio-tar-0.3.1" || die
- eapply "${FILESDIR}/tokio-tar-0.3.1-ppc.patch"
-}
-
-src_compile() {
- cd crates/uv || die
- cargo_src_compile
-}
-
-src_test() {
- # work around https://github.com/astral-sh/uv/issues/4376
- local -x PATH=${BROOT}/usr/lib/python-exec/python3.12:${PATH}
- local -x COLUMNS=100
-
- cd crates/uv || die
- cargo_src_test --no-fail-fast
-}
-
-src_install() {
- cd crates/uv || die
- cargo_src_install
-}
diff --git a/dev-python/uv/uv-0.2.36.ebuild b/dev-python/uv/uv-0.2.36.ebuild
deleted file mode 100644
index 3ccf2c32a218..000000000000
--- a/dev-python/uv/uv-0.2.36.ebuild
+++ /dev/null
@@ -1,112 +0,0 @@
-# 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;011b24604fa7bc223daaad7712c0694bac8f0a87;rs-async-zip-%commit%'
- [pubgrub]='https://github.com/astral-sh/pubgrub;2fac39371a47e7cb821e510aaa4de25405413d29;pubgrub-%commit%'
- [reqwest-middleware]='https://github.com/astral-sh/reqwest-middleware;21ceec9a5fd2e8d6f71c3ea2999078fecbd13cbe;reqwest-middleware-%commit%/reqwest-middleware'
- [reqwest-retry]='https://github.com/astral-sh/reqwest-middleware;21ceec9a5fd2e8d6f71c3ea2999078fecbd13cbe;reqwest-middleware-%commit%/reqwest-retry'
-)
-
-inherit cargo check-reqs
-
-CRATE_PV=${PV}
-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
- SRC_URI+="
- https://dev.gentoo.org/~mgorny/dist/uv-${CRATE_PV}-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 ~loong ~ppc ~ppc64 ~riscv ~x86"
-IUSE="test"
-RESTRICT="test"
-PROPERTIES="test_network"
-
-BDEPEND="
- >=virtual/rust-1.80
- 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/.*"
-
-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_prepare() {
- default
-
- # remove patch.* that breaks GIT_CRATES
- local reqmw=${GIT_CRATES[reqwest-middleware]}
- reqmw=${reqmw#*;}
- reqmw=${reqmw%;*}
- sed -i -e "/^\[patch/,\$s@^\(reqwest-middleware = \).*@\1 { path = \"${WORKDIR}/reqwest-middleware-${reqmw}/reqwest-middleware\" }@" Cargo.toml || die
-
- # https://github.com/vorot93/tokio-tar/pull/23
- # (fortunately uv already depends on portable-atomic, so we don't
- # have to fight Cargo.lock)
- cd "${ECARGO_VENDOR}/tokio-tar-0.3.1" || die
- eapply "${FILESDIR}/tokio-tar-0.3.1-ppc.patch"
-}
-
-src_compile() {
- cd crates/uv || die
- cargo_src_compile
-}
-
-src_test() {
- # work around https://github.com/astral-sh/uv/issues/4376
- local -x PATH=${BROOT}/usr/lib/python-exec/python3.12:${PATH}
- local -x COLUMNS=100
-
- cd crates/uv || die
- cargo_src_test --no-fail-fast
-}
-
-src_install() {
- cd crates/uv || die
- cargo_src_install
-}
diff --git a/dev-python/uv/uv-0.3.1.ebuild b/dev-python/uv/uv-0.3.1.ebuild
deleted file mode 100644
index 8fbaceba01a6..000000000000
--- a/dev-python/uv/uv-0.3.1.ebuild
+++ /dev/null
@@ -1,116 +0,0 @@
-# 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;011b24604fa7bc223daaad7712c0694bac8f0a87;rs-async-zip-%commit%'
- [pubgrub]='https://github.com/astral-sh/pubgrub;aaef464c1b0d8eea4ff9ffaee4f3458c236d10da;pubgrub-%commit%'
- [reqwest-middleware]='https://github.com/astral-sh/reqwest-middleware;5e3eaf254b5bd481c75d2710eed055f95b756913;reqwest-middleware-%commit%/reqwest-middleware'
- [reqwest-retry]='https://github.com/astral-sh/reqwest-middleware;5e3eaf254b5bd481c75d2710eed055f95b756913;reqwest-middleware-%commit%/reqwest-retry'
-)
-
-inherit cargo check-reqs
-
-CRATE_PV=${PV}
-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
- SRC_URI+="
- https://dev.gentoo.org/~mgorny/dist/uv-${CRATE_PV}-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 ~loong ~ppc ~ppc64 ~riscv ~x86"
-IUSE="test"
-RESTRICT="test"
-PROPERTIES="test_network"
-
-BDEPEND="
- >=virtual/rust-1.80
- 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/.*"
-
-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_prepare() {
- local PATCHES=(
- # https://github.com/astral-sh/uv/pull/6411
- "${FILESDIR}/${P}-test.patch"
- )
-
- default
-
- # remove patch.* that breaks GIT_CRATES
- local reqmw=${GIT_CRATES[reqwest-middleware]}
- reqmw=${reqmw#*;}
- reqmw=${reqmw%;*}
- sed -i -e "/^\[patch/,\$s@^\(reqwest-middleware = \).*@\1 { path = \"${WORKDIR}/reqwest-middleware-${reqmw}/reqwest-middleware\" }@" Cargo.toml || die
-
- # https://github.com/vorot93/tokio-tar/pull/23
- # (fortunately uv already depends on portable-atomic, so we don't
- # have to fight Cargo.lock)
- cd "${ECARGO_VENDOR}/tokio-tar-0.3.1" || die
- eapply "${FILESDIR}/tokio-tar-0.3.1-ppc.patch"
-}
-
-src_compile() {
- cd crates/uv || die
- cargo_src_compile
-}
-
-src_test() {
- # work around https://github.com/astral-sh/uv/issues/4376
- local -x PATH=${BROOT}/usr/lib/python-exec/python3.12:${PATH}
- local -x COLUMNS=100
-
- cd crates/uv || die
- cargo_src_test --no-fail-fast
-}
-
-src_install() {
- cd crates/uv || die
- cargo_src_install
-}
diff --git a/dev-python/uv/uv-0.3.2.ebuild b/dev-python/uv/uv-0.3.4.ebuild
index 9c8574186cf3..cc1431965df1 100644
--- a/dev-python/uv/uv-0.3.2.ebuild
+++ b/dev-python/uv/uv-0.3.4.ebuild
@@ -3,18 +3,20 @@
EAPI=8
-CRATES=""
+CRATES="
+"
declare -A GIT_CRATES=(
[async_zip]='https://github.com/charliermarsh/rs-async-zip;011b24604fa7bc223daaad7712c0694bac8f0a87;rs-async-zip-%commit%'
- [pubgrub]='https://github.com/astral-sh/pubgrub;aaef464c1b0d8eea4ff9ffaee4f3458c236d10da;pubgrub-%commit%'
+ [pubgrub]='https://github.com/astral-sh/pubgrub;388685a8711092971930986644cfed152d1a1f6c;pubgrub-%commit%'
[reqwest-middleware]='https://github.com/astral-sh/reqwest-middleware;5e3eaf254b5bd481c75d2710eed055f95b756913;reqwest-middleware-%commit%/reqwest-middleware'
[reqwest-retry]='https://github.com/astral-sh/reqwest-middleware;5e3eaf254b5bd481c75d2710eed055f95b756913;reqwest-middleware-%commit%/reqwest-retry'
+ [tl]='https://github.com/charliermarsh/tl;6e25b2ee2513d75385101a8ff9f591ef51f314ec;tl-%commit%'
)
inherit cargo check-reqs
-CRATE_PV=0.3.1
+CRATE_PV=0.3.4
DESCRIPTION="A Python package installer and resolver, written in Rust"
HOMEPAGE="
https://github.com/astral-sh/uv/
diff --git a/dev-python/waitress/waitress-3.0.0.ebuild b/dev-python/waitress/waitress-3.0.0.ebuild
index 6327b366d138..f230d0bfecb7 100644
--- a/dev-python/waitress/waitress-3.0.0.ebuild
+++ b/dev-python/waitress/waitress-3.0.0.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="ZPL"
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 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos"
distutils_enable_tests pytest
diff --git a/dev-python/watchdog/Manifest b/dev-python/watchdog/Manifest
index 21e3d17957ab..cb5f01ed43cc 100644
--- a/dev-python/watchdog/Manifest
+++ b/dev-python/watchdog/Manifest
@@ -1,2 +1,3 @@
DIST watchdog-4.0.1.tar.gz 126583 BLAKE2B fb2499181b466d50e46b4cc18f78bbee0234d4ca533e92d006411475b6795a90e184335a8523d6b08dbf40d65c4c7807484791d6f243206d046dfad7139bd797 SHA512 0d759d1f9e97a6bc4b5578dbee5cdee01fc3a0f684ac1cb9e3f14c9b5f9a1353b992d690e3ac9801d73f2425b48b1320b20ee0b4d1101f0e80a9f6a7a25da01d
DIST watchdog-4.0.2.tar.gz 126587 BLAKE2B 7de82f861f16a23ca9d6d7dfd32df7a2498fd0cf82e24077d3a21b998e2e5ff789ce60b20d5491a93e63018050714a3815bb7f2fba75aec2efd25a1b36e6255f SHA512 9fe63309ae818ac37d44a75f8635691621da49d95d1ec5d7cdab044f2fd296eb9e970cb5e46ad92029533ab384e3e3d7f5d297ca25c9c9dd99aec96efa3ecb94
+DIST watchdog-5.0.0.tar.gz 127192 BLAKE2B 956009f661cc2a1c604799e3d3c727750bf6d65cf418edcfca268bfefd94ceaf251d18f175f69e0a23ec50ab2349f86706a1a6f1691345968a60d8217609cdc3 SHA512 0dc96f1c89ddc196e54dcaaff2c55c78aa856138fe7a27be5f7aceb7b13c825c4e83e07575fe0fd22aa233be57acbedb5f5dc0d5cd12654fe01815e36d3a3383
diff --git a/dev-python/watchdog/watchdog-5.0.0.ebuild b/dev-python/watchdog/watchdog-5.0.0.ebuild
new file mode 100644
index 000000000000..07fb5c940df6
--- /dev/null
+++ b/dev-python/watchdog/watchdog-5.0.0.ebuild
@@ -0,0 +1,45 @@
+# 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 optfeature pypi
+
+DESCRIPTION="Python API and shell utilities to monitor file system events"
+HOMEPAGE="
+ https://github.com/gorakhargosh/watchdog/
+ https://pypi.org/project/watchdog/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ >=dev-python/pytest-timeout-0.3[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # known flaky
+ tests/test_emitter.py::test_close
+ # requires root powers via sudo (yes, seriously)
+ tests/test_inotify_buffer.py::test_unmount_watched_directory_filesystem
+ )
+
+ epytest -o addopts= -p no:django
+}
+
+pkg_postinst() {
+ optfeature "Bash completion" dev-python/argcomplete
+}
diff --git a/dev-python/webob/webob-1.8.8.ebuild b/dev-python/webob/webob-1.8.8.ebuild
index a13e7a1f56bd..ccaa2421df33 100644
--- a/dev-python/webob/webob-1.8.8.ebuild
+++ b/dev-python/webob/webob-1.8.8.ebuild
@@ -18,7 +18,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
RDEPEND="
$(python_gen_cond_dep '
diff --git a/dev-python/webtest/webtest-3.0.0-r1.ebuild b/dev-python/webtest/webtest-3.0.0-r1.ebuild
index ccfd08850a5d..287ec6bcd00f 100644
--- a/dev-python/webtest/webtest-3.0.0-r1.ebuild
+++ b/dev-python/webtest/webtest-3.0.0-r1.ebuild
@@ -19,7 +19,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 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos"
RDEPEND="
dev-python/paste[${PYTHON_USEDEP}]
diff --git a/dev-python/wsgiproxy2/wsgiproxy2-0.5.1-r1.ebuild b/dev-python/wsgiproxy2/wsgiproxy2-0.5.1-r1.ebuild
index c0d26603835d..ecdbb69f5d53 100644
--- a/dev-python/wsgiproxy2/wsgiproxy2-0.5.1-r1.ebuild
+++ b/dev-python/wsgiproxy2/wsgiproxy2-0.5.1-r1.ebuild
@@ -18,7 +18,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 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos"
RDEPEND="
dev-python/requests[${PYTHON_USEDEP}]
diff --git a/dev-python/zeroconf/Manifest b/dev-python/zeroconf/Manifest
index b74d654ade46..dd0c30a8b50d 100644
--- a/dev-python/zeroconf/Manifest
+++ b/dev-python/zeroconf/Manifest
@@ -1 +1,2 @@
DIST zeroconf-0.132.2.tar.gz 170698 BLAKE2B 7c76e2a00571a19b23f288dc1183da6ce274ebdf3f64f323e282f444011f7cbf90a63e02a991936a2cfa2d227568b31444b8f61f1110588638d4e888dd8749a6 SHA512 686cdfd2f32c6bad03fb5fd287b1e22f2f0b5099a8971dcff1d9fca7e63bc8069b195feb97be710c20fae8c524ab92143e395cdfec26ede103295d1aa4d32a8f
+DIST zeroconf-0.133.0.tar.gz 171328 BLAKE2B 2a32186bf17120d2448383af252a4a47e83c5900187e841974fa7b1fc4ae70b1227cf5baf556f7d24650f75e6f27a6a4a5b4f2f797b47c55d5016d20a1263c1e SHA512 06ec5f4face3578a16a38ebd750c9f74cc38932e840c8615d597807a3b5781adf9bd5bf2f8b438df165993de4f429c45efe9f4751baf7d00b4ebabc348984b41
diff --git a/dev-python/zeroconf/zeroconf-0.133.0.ebuild b/dev-python/zeroconf/zeroconf-0.133.0.ebuild
new file mode 100644
index 000000000000..4068af29f913
--- /dev/null
+++ b/dev-python/zeroconf/zeroconf-0.133.0.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Pure Python Multicast DNS Service Discovery Library (Bonjour/Avahi compatible)"
+HOMEPAGE="
+ https://github.com/python-zeroconf/python-zeroconf/
+ https://pypi.org/project/zeroconf/
+"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86 ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ >=dev-python/ifaddr-0.1.7[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ >=dev-python/async-timeout-3.0.0[${PYTHON_USEDEP}]
+ ' 3.10)
+"
+# the build system uses custom build script that uses distutils to build
+# C extensions, sigh
+BDEPEND="
+ >=dev-python/cython-3.0.8[${PYTHON_USEDEP}]
+ >=dev-python/setuptools-65.6.3[${PYTHON_USEDEP}]
+ test? (
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+export REQUIRE_CYTHON=1
+
+python_test() {
+ local -x SKIP_IPV6=1
+ local EPYTEST_DESELECT=(
+ # network
+ tests/test_core.py::Framework::test_close_multiple_times
+ tests/test_core.py::Framework::test_launch_and_close
+ tests/test_core.py::Framework::test_launch_and_close_context_manager
+
+ # fragile to timeouts (?)
+ tests/services/test_browser.py::test_service_browser_expire_callbacks
+ tests/utils/test_asyncio.py::test_run_coro_with_timeout
+ )
+
+ epytest -o addopts=
+}
diff --git a/dev-python/zipp/Manifest b/dev-python/zipp/Manifest
index 02c296f3185e..91ccad42e64e 100644
--- a/dev-python/zipp/Manifest
+++ b/dev-python/zipp/Manifest
@@ -1,3 +1,4 @@
DIST zipp-3.19.2.tar.gz 22922 BLAKE2B 8f4a115079b6faa730a3502592983c13b2db27541cdbd91723fd20f320d22678f3740b01f24b46f7049607c49953ea64fa8e4855d26f28f0683d330b625a2d0b SHA512 3f1b663c4befef774e076845a8a2d2fc414cb768af0e3bccc57b6b694e9ef28e8dd8ae59b596b269f610b082e9c7a92ec3dcd465aad4e5ebe250ea96df89b2cf
DIST zipp-3.19.3.tar.gz 23169 BLAKE2B be8ab50de2edb2262e78a7047fd06a10a31414b534a649b0ae3297d4ed843fb33141d1fc563accb4dd71b23b7ef7d161f16045139a90349dc757a72d1cf9320a SHA512 a76d50e6405b40dab4806662a26aaf0cff096a8d2462e0da9d81abd1675d64d8c520391277e8225e912a220f1e7965c754e8db24e9917343f2a0808b51a4f69e
DIST zipp-3.20.0.tar.gz 23244 BLAKE2B cc7d336089b4659ac884658f93246045a617d223cc3db538160cef1d705e781d341f6384ab32928e7ef2c6644cf6a0656f2b6fa23077da5df0ec66d9b2337b8f SHA512 c141c4b8bdaf2ff7639cfb85ba36735da1ca33e68b9fdcb7f350e5bd677ca39def00178aa3d481c733162beed4aa70f93525800f1af0618529ff36ca7e32327e
+DIST zipp-3.20.1.tar.gz 23848 BLAKE2B 53c29d156bc3be25c59057079f26e9a02b426c5d8424ef721c6cebe4927ede8f1c5aadb405c70f57635fc1ad3abe5d511b2cdab32415c47e8faf13162ac72b5d SHA512 ed89c46d39ce703e233929146ce78332bfdd40cfad204c070247882f144fd0ec370c7499ce682ede938593b18870fa1dce8d746a0457e93c38be485378d6b546
diff --git a/dev-python/zipp/zipp-3.20.1.ebuild b/dev-python/zipp/zipp-3.20.1.ebuild
new file mode 100644
index 000000000000..7bfa53c7edbd
--- /dev/null
+++ b/dev-python/zipp/zipp-3.20.1.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# please keep this ebuild at EAPI 8 -- sys-apps/portage dep
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Backport of pathlib-compatible object wrapper for zip files"
+HOMEPAGE="
+ https://github.com/jaraco/zipp/
+ https://pypi.org/project/zipp/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+# big_o is only used in test_complexity, that we ignore
+BDEPEND="
+ test? (
+ dev-python/jaraco-functools[${PYTHON_USEDEP}]
+ dev-python/jaraco-itertools[${PYTHON_USEDEP}]
+ dev-python/jaraco-test[${PYTHON_USEDEP}]
+ dev-python/more-itertools[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+EPYTEST_IGNORE=(
+ # performance tests are flaky by design
+ tests/test_complexity.py
+)
+
+src_configure() {
+ grep -q 'build-backend = "setuptools' pyproject.toml ||
+ die "Upstream changed build-backend, recheck"
+ # write a custom pyproject.toml to ease setuptools bootstrap
+ cat > pyproject.toml <<-EOF || die
+ [build-system]
+ requires = ["flit_core >=3.2,<4"]
+ build-backend = "flit_core.buildapi"
+
+ [project]
+ name = "zipp"
+ version = "${PV}"
+ description = "Backport of pathlib-compatible object wrapper for zip files"
+ EOF
+}