summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2024-06-19 17:57:13 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2024-06-19 17:57:13 +0000
commite1c9903c2437d5675f5c254f8d7088e934cb8cba (patch)
tree7073c5912a0d2f08b2de204d18c829c57181c09a /dev-python
parenteeb28740cf2d79d0aae7699cb48b0b724821af15 (diff)
downloadbaldeagleos-repo-e1c9903c2437d5675f5c254f8d7088e934cb8cba.tar.gz
baldeagleos-repo-e1c9903c2437d5675f5c254f8d7088e934cb8cba.tar.xz
baldeagleos-repo-e1c9903c2437d5675f5c254f8d7088e934cb8cba.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/ConfigArgParse/ConfigArgParse-1.7.ebuild3
-rw-r--r--dev-python/Nuitka/Manifest1
-rw-r--r--dev-python/Nuitka/Nuitka-2.3.7.ebuild52
-rw-r--r--dev-python/Pyro5/Pyro5-5.15-r1.ebuild2
-rw-r--r--dev-python/cattrs/cattrs-23.2.3-r1.ebuild2
-rw-r--r--dev-python/cbor2/cbor2-5.6.3.ebuild2
-rw-r--r--dev-python/clikit/clikit-0.6.2-r1.ebuild2
-rw-r--r--dev-python/cloudflare/Manifest2
-rw-r--r--dev-python/cloudflare/cloudflare-3.0.0_beta10.ebuild92
-rw-r--r--dev-python/djangorestframework/Manifest2
-rw-r--r--dev-python/djangorestframework/djangorestframework-3.15.2.ebuild (renamed from dev-python/djangorestframework/djangorestframework-3.15.0.ebuild)7
-rw-r--r--dev-python/kerberos/kerberos-1.3.1-r2.ebuild2
-rw-r--r--dev-python/langdetect/Manifest2
-rw-r--r--dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch13
-rw-r--r--dev-python/langdetect/langdetect-1.0.9.ebuild4
-rw-r--r--dev-python/langdetect/metadata.xml10
-rw-r--r--dev-python/msgpack/msgpack-1.0.8.ebuild2
-rw-r--r--dev-python/psutil/Manifest2
-rw-r--r--dev-python/psutil/psutil-6.0.0.ebuild47
-rw-r--r--dev-python/pycares/pycares-4.4.0.ebuild2
-rw-r--r--dev-python/pydantic-core/pydantic-core-2.18.4.ebuild2
-rw-r--r--dev-python/pydantic/pydantic-2.7.3.ebuild2
-rw-r--r--dev-python/pyeclib/pyeclib-1.6.1.ebuild2
-rw-r--r--dev-python/pygame/pygame-2.5.2-r3.ebuild2
-rw-r--r--dev-python/pylev/pylev-1.4.0-r1.ebuild2
-rw-r--r--dev-python/pymongo/pymongo-4.7.2.ebuild2
-rw-r--r--dev-python/pyotp/pyotp-2.9.0.ebuild2
-rw-r--r--dev-python/pyside6-tools/Manifest1
-rw-r--r--dev-python/pyside6-tools/pyside6-tools-6.7.2.ebuild80
-rw-r--r--dev-python/pyside6/Manifest1
-rw-r--r--dev-python/pyside6/pyside6-6.7.2.ebuild248
-rw-r--r--dev-python/restructuredtext-lint/restructuredtext-lint-1.4.0.ebuild2
-rw-r--r--dev-python/scikit-image/Manifest2
-rw-r--r--dev-python/scikit-image/scikit-image-0.24.0.ebuild (renamed from dev-python/scikit-image/scikit-image-0.23.1.ebuild)0
-rw-r--r--dev-python/serpent/serpent-1.41.ebuild2
-rw-r--r--dev-python/shiboken6/Manifest1
-rw-r--r--dev-python/shiboken6/shiboken6-6.7.2.ebuild180
-rw-r--r--dev-python/spyder-kernels/Manifest2
-rw-r--r--dev-python/spyder-kernels/spyder-kernels-3.0.0_beta7.ebuild (renamed from dev-python/spyder-kernels/spyder-kernels-3.0.0_beta6.ebuild)0
-rw-r--r--dev-python/spyder/Manifest2
-rw-r--r--dev-python/spyder/spyder-6.0.0_beta2.ebuild (renamed from dev-python/spyder/spyder-6.0.0_beta1.ebuild)7
-rw-r--r--dev-python/sqlalchemy/Manifest1
-rw-r--r--dev-python/sqlalchemy/sqlalchemy-2.0.31.ebuild117
-rw-r--r--dev-python/wxpython/wxpython-4.2.1-r1.ebuild127
-rw-r--r--dev-python/wxpython/wxpython-4.2.1-r2.ebuild2
-rw-r--r--dev-python/wxpython/wxpython-4.2.1.ebuild126
46 files changed, 876 insertions, 290 deletions
diff --git a/dev-python/ConfigArgParse/ConfigArgParse-1.7.ebuild b/dev-python/ConfigArgParse/ConfigArgParse-1.7.ebuild
index 41b9856747da..a0b88cc7b497 100644
--- a/dev-python/ConfigArgParse/ConfigArgParse-1.7.ebuild
+++ b/dev-python/ConfigArgParse/ConfigArgParse-1.7.ebuild
@@ -1,9 +1,10 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=setuptools
+# py3.13: https://github.com/bw2/ConfigArgParse/issues/294
PYTHON_COMPAT=( python3_{8,9,10,11,12} )
inherit distutils-r1
diff --git a/dev-python/Nuitka/Manifest b/dev-python/Nuitka/Manifest
index 38a715c28665..7fd03f2daca8 100644
--- a/dev-python/Nuitka/Manifest
+++ b/dev-python/Nuitka/Manifest
@@ -1,2 +1,3 @@
DIST Nuitka-2.3.3.tar.gz 3668441 BLAKE2B 0e661948185490a4e47e71eca8c2cecb116bdea1f3ef2d0a477bae33bcfe5612d262e5fb8c3c9b0e192c8c41c3eee019dbb96a429eb072f05b0b5aeaae46a0f7 SHA512 1ea8f644f84d28bf4720f0fdc49204e93607a233c7e921eb006d1c09d6893d299d67d623ced0cd0b57bbe5056d108155f43e1de3d481c5c18f392dca321e9c4b
DIST Nuitka-2.3.4.tar.gz 3702705 BLAKE2B b67718cf4258a22e6f1d66abeaa293fb134a1726d03b40e7e00f5948765786afb92a317b718c4832be59f3821e5ce744755e06baf171180ca3c98a7cfd9cff0e SHA512 8794da550c31d488763c9c40304232b050a9647481f387b1d4ac1e3adadd794332004ec1152e650fb37725b2c0ecd00faedb5b0f1c4958fc294a61c28602e01a
+DIST Nuitka-2.3.7.tar.gz 3701490 BLAKE2B e898d23d3bee8d390a81798d3c351e2c208e7e8831a9dbaaa3de848fbad11f71aa5698f1dbe8f8a7b6a78baa9ce74f95c9be5c1c59054873d4091f5e5167b942 SHA512 5fc22f5f530a63a90fe3387d9c337008331a6099f2810ad9513d99fc7ef2c91c7780bd3fded111c9ca0cde63519fecc91a08f15eb0dbddefe0605e631520e682
diff --git a/dev-python/Nuitka/Nuitka-2.3.7.ebuild b/dev-python/Nuitka/Nuitka-2.3.7.ebuild
new file mode 100644
index 000000000000..35ccf652e8e3
--- /dev/null
+++ b/dev-python/Nuitka/Nuitka-2.3.7.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1 flag-o-matic optfeature pypi
+
+DESCRIPTION="Python to native compiler"
+HOMEPAGE="
+ https://nuitka.net/
+ https://github.com/Nuitka/Nuitka/
+ https://pypi.org/project/Nuitka/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~loong ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-build/scons[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ ${RDEPEND}
+ test? ( dev-util/ccache )
+"
+
+distutils-r1_src_prepare() {
+ # remove vendored version of SCons that is Python2 only
+ # this should be removed when upstream removes support for Python2
+ rm -vR "nuitka/build/inline_copy/lib/scons-2.3.2/SCons" || die
+ eapply_user
+}
+
+python_install() {
+ distutils-r1_python_install
+ doman doc/nuitka.1 doc/nuitka-run.1
+}
+
+python_test() {
+ append-ldflags -Wl,--no-warn-search-mismatch
+ ./tests/basics/run_all.py search || die
+}
+
+pkg_postinst() {
+ optfeature "support for stand-alone executables" dev-util/patchelf
+}
diff --git a/dev-python/Pyro5/Pyro5-5.15-r1.ebuild b/dev-python/Pyro5/Pyro5-5.15-r1.ebuild
index def9ec8a2ee4..1a34de92494c 100644
--- a/dev-python/Pyro5/Pyro5-5.15-r1.ebuild
+++ b/dev-python/Pyro5/Pyro5-5.15-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2021-2023 Gentoo Authors
+# Copyright 2021-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
diff --git a/dev-python/cattrs/cattrs-23.2.3-r1.ebuild b/dev-python/cattrs/cattrs-23.2.3-r1.ebuild
index 49ff55d5b232..27b2b71b8a49 100644
--- a/dev-python/cattrs/cattrs-23.2.3-r1.ebuild
+++ b/dev-python/cattrs/cattrs-23.2.3-r1.ebuild
@@ -20,7 +20,7 @@ SRC_URI="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="test-rust"
RDEPEND="
diff --git a/dev-python/cbor2/cbor2-5.6.3.ebuild b/dev-python/cbor2/cbor2-5.6.3.ebuild
index 9460829f5b22..22a8b47dffef 100644
--- a/dev-python/cbor2/cbor2-5.6.3.ebuild
+++ b/dev-python/cbor2/cbor2-5.6.3.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="+native-extensions"
BDEPEND="
diff --git a/dev-python/clikit/clikit-0.6.2-r1.ebuild b/dev-python/clikit/clikit-0.6.2-r1.ebuild
index 923c1509dfb5..19ba9b1ddedd 100644
--- a/dev-python/clikit/clikit-0.6.2-r1.ebuild
+++ b/dev-python/clikit/clikit-0.6.2-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2022-2023 Gentoo Authors
+# Copyright 2022-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
diff --git a/dev-python/cloudflare/Manifest b/dev-python/cloudflare/Manifest
index 84a9ae7abf3c..d8d975fefba9 100644
--- a/dev-python/cloudflare/Manifest
+++ b/dev-python/cloudflare/Manifest
@@ -1,2 +1,4 @@
DIST cloudflare-2.19.2.gh.tar.gz 145051 BLAKE2B cd7c9d9352b055b115af443341dcc4d0a446aaf1ac7b7f8030dce0ff19da185b1effc9a679b8018920ade98cafaaf599af8aea8c57a924e59eb40670a3854b70 SHA512 eac9601f9cb9ea5dc140e48fb0f0e042396f6a7ec354f18b815d6c51094799dc3f25e1e69e78f87ec5c612f4304d15f779090962a8f96282d9b2fe8a9abfb690
DIST cloudflare-2.19.4.gh.tar.gz 151397 BLAKE2B c91c95f52314c5177d823ef8f827ea2f76f6cc703260449aea12d54c1b77d061feca15d4bb845f84cfb4fd80789e5064e54d7530daf546d54d17054b9e0b4fda SHA512 8ae11e73760c57b610abfe5e2c8fdc83c2e0b9e07340884925ec9ac3bf5b40b4edf39b2b8ce7330538369d7573146a2ddac195efb0efb4ff657f75fdacb31aed
+DIST cloudflare-3.0.0_beta10.gh.tar.gz 1445435 BLAKE2B 1717f36194ce5e8a292f4026463d9b05b12808ee2c8fbbae7d4817523a4c37d13d2935eef58fe83cebe64c6e7684018154482ee3e51538e7a5724179a2b280c0 SHA512 c7150c0cc056869a600cb440f6cd68801d4032d401192e156101cdf82484ba9b3a03649a2c0569c42c396b653517ad19ec841c3baab067709b4736bcc15e9be6
+DIST cloudflare-python-v3.0.0_beta10-prism.tar.gz 10658021 BLAKE2B 930259e5e1b967ca056804ede3f40d40b57602640d8ae308cc466f38c10eacb95dfb639309ea0b3d2a79fb6c0da6f4cc9dedae08f9a356a4c52ff4bf458d193d SHA512 60c8cb768cb18099c2f9384fd80ff34e2e2511b56433ca0aae02f4be949c2ac9ab72ea879c53aa1e7aaae284afe5547abb909dc733274d50154179a174429b53
diff --git a/dev-python/cloudflare/cloudflare-3.0.0_beta10.ebuild b/dev-python/cloudflare/cloudflare-3.0.0_beta10.ebuild
new file mode 100644
index 000000000000..06bfd7179a64
--- /dev/null
+++ b/dev-python/cloudflare/cloudflare-3.0.0_beta10.ebuild
@@ -0,0 +1,92 @@
+# 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="hatchling"
+inherit distutils-r1
+DESCRIPTION="Python wrapper for the Cloudflare v4 API"
+HOMEPAGE="https://pypi.org/project/cloudflare/"
+if [ "${PV}" == 9999 ]; then
+ EGIT_REPO_URI="https://github.com/cloudflare/cloudflare-python"
+ inherit git-r3
+else
+ MYPV=$(ver_rs 3 -)
+ MYPV=${MYPV/beta/beta.}
+ MYPN="cloudflare-python"
+ SRC_URI="https://github.com/cloudflare/cloudflare-python/archive/refs/tags/v${MYPV}.tar.gz -> ${P}.gh.tar.gz
+ test? ( https://github.com/Phoenix591/${MYPN}/releases/download/v${PV}/${MYPN}-v${PV}-prism.tar.gz )"
+ #Prism archive generated by workflow
+ # https://github.com/Phoenix591/cloudflare-python/blob/v3.0.0_beta10/.github/workflows/test-tar.yml
+ S="${WORKDIR}/${MYPN}-${MYPV}"
+ KEYWORDS="~amd64 ~arm64"
+fi
+LICENSE="MIT test? ( ISC Apache-2.0 MIT BSD CC0-1.0 0BSD )"
+# nodejs package and deps used to test
+SLOT="3"
+RDEPEND=" ${DEPEND}
+ >=dev-python/httpx-0.23.0[${PYTHON_USEDEP}]
+ >=dev-python/pydantic-1.9.0[${PYTHON_USEDEP}]
+ >=dev-python/typing-extensions-4.7.0[${PYTHON_USEDEP}]
+ >=dev-python/anyio-4.3.0[${PYTHON_USEDEP}]
+ >=dev-python/distro-1.7.0[${PYTHON_USEDEP}]
+ >=dev-python/sniffio-1.3.1[${PYTHON_USEDEP}]
+ "
+
+BDEPEND="test? (
+ >=net-libs/nodejs-18.20.1
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/time-machine[${PYTHON_USEDEP}]
+ dev-python/dirty-equals[${PYTHON_USEDEP}]
+ dev-python/respx[${PYTHON_USEDEP}]
+ ${RDEPEND}
+)"
+
+distutils_enable_tests pytest
+RESTRICT="mirror" #mirror restricted only because overlay
+RESTRICT+=" !test? ( test )"
+
+src_unpack() {
+ unpack "${P}.gh.tar.gz"
+ use test && cd "${S}" && unpack "cloudflare-python-v${PV}-prism.tar.gz"
+}
+
+#python_prepare_all() {
+# # don't install tests or examples
+# sed -i -e "s/'cli4', 'examples'/'cli4'/" \
+# -e "s#'CloudFlare/tests',##" \
+# setup.py || die
+# sed -i -e "/def test_ips7_should_fail():/i@pytest.mark.xfail(reason='Now fails upstream')" \
+# -e "2s/^/import pytest/" \
+# CloudFlare/tests/test_cloudflare_calls.py || die
+# distutils-r1_python_prepare_all
+#}
+
+python_test() {
+ # these 2 tests fail in an ebuild environment for some reason
+ # help appreciated
+ local EPYTEST_DESELECT=(
+ tests/test_client.py::TestCloudflare::test_validate_headers
+ tests/test_client.py::TestAsyncCloudflare::test_validate_headers )
+
+ epytest
+}
+
+src_test() {
+ # Run prism mock api server, this is what needs nodejs
+ node --no-warnings node_modules/@stoplight/prism-cli/dist/index.js mock \
+ "cloudflare-spec.yml" >prism.log &
+ local MOCK_PID=$!
+ # Wait for server to come online
+ echo -n "Waiting for mockserver"
+ while ! grep -q "✖ fatal\|Prism is listening" "prism.log" ; do
+ echo -n "."
+ sleep 0.5
+ done
+ if grep -q "✖ fatal" prism.log; then
+ die "Prism mock server failed"
+ fi
+ distutils-r1_src_test
+ kill "${MOCK_PID}"
+}
diff --git a/dev-python/djangorestframework/Manifest b/dev-python/djangorestframework/Manifest
index dc457fb9c030..473e112edc36 100644
--- a/dev-python/djangorestframework/Manifest
+++ b/dev-python/djangorestframework/Manifest
@@ -1,2 +1,2 @@
-DIST django-rest-framework-3.15.0.gh.tar.gz 9293419 BLAKE2B c6884185b8a11ca044956ec15bf3d31c3c46d8a911128f37ab305d89540a223e4b04ac4c13fc107333e9774ee048505f6cd0c66989f9f3cc9511239354572d25 SHA512 1b283fea0a94d64ea29bef59f18b5cb309627b7b927d80cdaad11d1fa9c4df2e2059d619ca5a73f382fa21bf847a266926542c1a1f5764bd6404d7c11861efab
DIST django-rest-framework-3.15.1.gh.tar.gz 9291840 BLAKE2B daf672a1fb01494f08dd54af7369bd464d4fc1e22ff3c90c0fe787408d4f327710c5e6394e33546a4df2da752dbd774980f092108f2f4e395795af3aead18f89 SHA512 e44c3d861973928194035364fb6b5ddffbcacab959072b2c549971dd6675b5a5f1be13b55856154dbffaefb48dcbd4a63fd9ffbce5456507b52fd5e4648706b9
+DIST django-rest-framework-3.15.2.gh.tar.gz 9290406 BLAKE2B 588aebbdd89f749bacd4244707f6b4b0e2a6aef0759973e5451ebcc4acb4d2e1c2d9773ab576e33442f5123ce860cae087622a26d1d208edc70df04057c4d401 SHA512 a24322fb09398ee1608900ae623d8ba44c3cb066fc7921e38f847a93513d3ca549d933da6cfc045a556edfe50dae3431b6782d0241a9f53ac3dbc0caf48fa520
diff --git a/dev-python/djangorestframework/djangorestframework-3.15.0.ebuild b/dev-python/djangorestframework/djangorestframework-3.15.2.ebuild
index e3f8a83df64d..3987875aeaa6 100644
--- a/dev-python/djangorestframework/djangorestframework-3.15.0.ebuild
+++ b/dev-python/djangorestframework/djangorestframework-3.15.2.ebuild
@@ -26,11 +26,12 @@ SLOT="0"
KEYWORDS="~amd64 ~arm64 ~x86"
RDEPEND="
- >=dev-python/django-3.0[${PYTHON_USEDEP}]
+ >=dev-python/django-4.2[${PYTHON_USEDEP}]
dev-python/pytz[${PYTHON_USEDEP}]
"
BDEPEND="
test? (
+ dev-python/inflection[${PYTHON_USEDEP}]
dev-python/pytest-django[${PYTHON_USEDEP}]
dev-python/pyyaml[${PYTHON_USEDEP}]
)
@@ -45,4 +46,8 @@ EPYTEST_DESELECT=(
tests/schemas/test_managementcommand.py::GenerateSchemaTests::test_coreapi_renders_default_schema_with_custom_title_url_and_desc
tests/schemas/test_managementcommand.py::GenerateSchemaTests::test_coreapi_renders_openapi_json_schema
tests/schemas/test_managementcommand.py::GenerateSchemaTests::test_renders_corejson_schema
+
+ # upstream is removing pytz, apparently it's not tested anymore
+ # https://github.com/encode/django-rest-framework/discussions/9342
+ tests/test_fields.py::TestPytzNaiveDayLightSavingTimeTimeZoneDateTimeField::test_invalid_inputs
)
diff --git a/dev-python/kerberos/kerberos-1.3.1-r2.ebuild b/dev-python/kerberos/kerberos-1.3.1-r2.ebuild
index 085e787217d2..96d2720df4c9 100644
--- a/dev-python/kerberos/kerberos-1.3.1-r2.ebuild
+++ b/dev-python/kerberos/kerberos-1.3.1-r2.ebuild
@@ -24,7 +24,7 @@ S=${WORKDIR}/${MY_P}
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 ~ppc ppc64 ~riscv ~s390 sparc x86"
# test environment is non-trivial to set up, so just use docker
# (see python_test below)
# also for alpha/beta Python releases support:
diff --git a/dev-python/langdetect/Manifest b/dev-python/langdetect/Manifest
index 37a64204a00a..a11d7c268c91 100644
--- a/dev-python/langdetect/Manifest
+++ b/dev-python/langdetect/Manifest
@@ -1,3 +1 @@
DIST langdetect-1.0.9.tar.gz 981474 BLAKE2B ea8a9c3f16a2987c080742473bff4f2c1503f53fb3c2b40b0b1d6212bb6133ea22dce7864ffcfb8968c3a46b157d45cb3e2cf6f84bdbed0266cc716a853b032c SHA512 7558d674c47b080c79e43a00a25d2c7f77188cf60bea2cecb3bebb803d75e1aa42b43c74bd26ea1b541f4cb927421908882cbec01a91f0913984217e71ccc8db
-EBUILD langdetect-1.0.9.ebuild 494 BLAKE2B 9b3521c5721afa49a58e0c35267f7d82bb56bd7e1d6d3152be0d36cd220180a526cb20b90b1113fbf0fff4a512137570f0b3bcf864498b7b7cc00403cb61ca27 SHA512 16d311400bf84a5f04e15f3da4b68b2810e4b005009f4d03dc8a487176dfc294403c976c412c83dcfa8084a49ef7b7d5389b43fb2ba446ce107ce4595e3558c6
-MISC metadata.xml 457 BLAKE2B 630128a3e982b6d60cc7b9f74c79fcb5ee47a71a02c73a50af9da8cedb6fad8e20a7f74b881e5b25c6483b92c9edbd56552cd38b2d9cbfa8b3eb4530facea969 SHA512 674f4f5cd809c6c77bc14e0f5687fa972bef14bdfa0b3343c5d66b7163eef1906eb87d060c8288732f825de71dce291ad0b841a5f2f0dd230f957b5687e45d45
diff --git a/dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch b/dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch
new file mode 100644
index 000000000000..637368d2f237
--- /dev/null
+++ b/dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch
@@ -0,0 +1,13 @@
+Fix "Package 'langdetect.profiles' is absent from the `packages` configuration."
+
+--- a/setup.py
++++ b/setup.py
+@@ -18,7 +18,7 @@ setup(
+ author_email='michal.danilak@gmail.com',
+ url='https://github.com/Mimino666/langdetect',
+ keywords='language detection library',
+- packages=['langdetect', 'langdetect.utils', 'langdetect.tests'],
++ packages=['langdetect', 'langdetect.utils', 'langdetect.tests', 'langdetect.profiles'],
+ include_package_data=True,
+ install_requires=['six'],
+ license='MIT',
diff --git a/dev-python/langdetect/langdetect-1.0.9.ebuild b/dev-python/langdetect/langdetect-1.0.9.ebuild
index c09b7356f549..630fe63c6f53 100644
--- a/dev-python/langdetect/langdetect-1.0.9.ebuild
+++ b/dev-python/langdetect/langdetect-1.0.9.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2022 Gentoo Authors
+# Copyright 2022-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -19,4 +19,6 @@ KEYWORDS="~amd64"
RDEPEND="dev-python/six[${PYTHON_USEDEP}]"
+PATCHES=( "${FILESDIR}/${P}-explicit-config.patch" )
+
distutils_enable_tests unittest
diff --git a/dev-python/langdetect/metadata.xml b/dev-python/langdetect/metadata.xml
index 020e07f2a3dd..736a1167c898 100644
--- a/dev-python/langdetect/metadata.xml
+++ b/dev-python/langdetect/metadata.xml
@@ -1,12 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>marcin.deranek@slonko.net</email>
- <name>Marcin Deranek</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/Mimino666/langdetect/issues</bugs-to>
- </upstream>
- <origin>slonko-overlay</origin>
+
+ <origin>gentoo-guru-overlay</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-python/msgpack/msgpack-1.0.8.ebuild b/dev-python/msgpack/msgpack-1.0.8.ebuild
index 1d3b1c3168e1..fdfd94091b2a 100644
--- a/dev-python/msgpack/msgpack-1.0.8.ebuild
+++ b/dev-python/msgpack/msgpack-1.0.8.ebuild
@@ -18,7 +18,7 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos"
IUSE="+native-extensions"
# extension code is relying on CPython implementation details
diff --git a/dev-python/psutil/Manifest b/dev-python/psutil/Manifest
index d9b502ad1d8e..f53a8a83b5fb 100644
--- a/dev-python/psutil/Manifest
+++ b/dev-python/psutil/Manifest
@@ -1,2 +1,4 @@
DIST psutil-5.9.8-tests.patch.xz 3716 BLAKE2B cf33173a0d5c6537b0de1c4858beb9ec59c0361c6249f8a5cb3d55edc025578ddc0285a062083d28fcd4ece223728376dd64e9232aed1d761786b772a4cc7778 SHA512 5c9539a9716e25dc3cc5f2ce4373911a6c4524941838aff7aa08cc482d15aba6ec40b7904593723a785284410bcded2595c78a6c186d8af5b5f664c2d77e9220
DIST psutil-5.9.8.tar.gz 503247 BLAKE2B 192812d9006b9eb1a856ff8d322e6cfb320462e5dc5ee7b88869ce7f4f2277050c4867b5e3f64468bb42de0b5bde85b715b84b37842bd3f605216acf89a62a4c SHA512 6ddeed937119a930bb7b9556ff329f054e9429b8457c9a15d99cb105271297117abba587a974d02760bb8b6b244734973a676bdff6b533a53ce587858e48f337
+DIST psutil-6.0.0-tests.patch.xz 3748 BLAKE2B 6e78418de8ee052e7e9f5d6bc74b8fc79e5216ed4d5fa8eb89532b19298955c388e158770b4af7b42fddc2a03b292e6d8ce9ed98c441179fb7c4a640014f2112 SHA512 3947337dbdddc29c85697d6140fc0fdcfb2b5ce7d84438e5763ad240ccd954e97fbf5dabf03ca17e959273a2c11794a41b2293434e85d2fe4d38d696c7de3900
+DIST psutil-6.0.0.tar.gz 508067 BLAKE2B a4c80d1cead17ab73c99a25c4e1712cc2dd0b4220521d8dacafb905ab27393c49a8ee20790a89ebfc6c1d53779e98fe126c50f9299db1ab9a9c3df6d0a99ec48 SHA512 78ef1abe109c985ad3dd3865de5b4a7682fbad0085e5ca5bc1f2f90f03853775554b6c810cd54543cb7a1238efe345b3dcc9f5191270e03bc6a2f4088dd007ba
diff --git a/dev-python/psutil/psutil-6.0.0.ebuild b/dev-python/psutil/psutil-6.0.0.ebuild
new file mode 100644
index 000000000000..4b58810e6193
--- /dev/null
+++ b/dev-python/psutil/psutil-6.0.0.ebuild
@@ -0,0 +1,47 @@
+# 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 pypi
+
+TEST_PATCH=psutil-6.0.0-tests.patch
+DESCRIPTION="Retrieve information on running processes and system utilization"
+HOMEPAGE="
+ https://github.com/giampaolo/psutil/
+ https://pypi.org/project/psutil/
+"
+SRC_URI+="
+ https://dev.gentoo.org/~mgorny/dist/${TEST_PATCH}.xz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+PATCHES=(
+ "${WORKDIR}/${TEST_PATCH}"
+)
+
+python_test() {
+ # Since we are running in an environment a bit similar to CI,
+ # let's skip the tests that are disabled for CI
+ local -x TRAVIS=1
+ local -x APPVEYOR=1
+ local -x GITHUB_ACTIONS=1
+ local -x GENTOO_TESTING=1
+ "${EPYTHON}" psutil/tests/runner.py ||
+ die "tests failed with ${EPYTHON}"
+}
+
+python_compile() {
+ # Force -j1 to avoid .o linking race conditions
+ local MAKEOPTS=-j1
+ distutils-r1_python_compile
+}
diff --git a/dev-python/pycares/pycares-4.4.0.ebuild b/dev-python/pycares/pycares-4.4.0.ebuild
index a48d971ef002..ba12637457c4 100644
--- a/dev-python/pycares/pycares-4.4.0.ebuild
+++ b/dev-python/pycares/pycares-4.4.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
diff --git a/dev-python/pydantic-core/pydantic-core-2.18.4.ebuild b/dev-python/pydantic-core/pydantic-core-2.18.4.ebuild
index dfc4166892ca..90e7293c08f5 100644
--- a/dev-python/pydantic-core/pydantic-core-2.18.4.ebuild
+++ b/dev-python/pydantic-core/pydantic-core-2.18.4.ebuild
@@ -112,7 +112,7 @@ LICENSE+="
|| ( Apache-2.0 Boost-1.0 )
"
SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ~loong ppc ppc64 ~riscv ~s390 ~sparc x86"
+KEYWORDS="amd64 arm arm64 ~loong ppc ppc64 ~riscv ~s390 ~sparc x86"
RDEPEND="
>=dev-python/typing-extensions-4.7.1[${PYTHON_USEDEP}]
diff --git a/dev-python/pydantic/pydantic-2.7.3.ebuild b/dev-python/pydantic/pydantic-2.7.3.ebuild
index 1af3dbe97901..5a119d7bbd4d 100644
--- a/dev-python/pydantic/pydantic-2.7.3.ebuild
+++ b/dev-python/pydantic/pydantic-2.7.3.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ~loong ppc ppc64 ~riscv ~s390 ~sparc x86"
+KEYWORDS="amd64 arm arm64 ~loong ppc ppc64 ~riscv ~s390 ~sparc x86"
RDEPEND="
>=dev-python/annotated-types-0.4.0[${PYTHON_USEDEP}]
diff --git a/dev-python/pyeclib/pyeclib-1.6.1.ebuild b/dev-python/pyeclib/pyeclib-1.6.1.ebuild
index 4a8ee176f7e1..a517b4adc17e 100644
--- a/dev-python/pyeclib/pyeclib-1.6.1.ebuild
+++ b/dev-python/pyeclib/pyeclib-1.6.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
diff --git a/dev-python/pygame/pygame-2.5.2-r3.ebuild b/dev-python/pygame/pygame-2.5.2-r3.ebuild
index eeaf046faf3e..44a0ed2ea6f7 100644
--- a/dev-python/pygame/pygame-2.5.2-r3.ebuild
+++ b/dev-python/pygame/pygame-2.5.2-r3.ebuild
@@ -22,7 +22,7 @@ SRC_URI="
LICENSE="LGPL-2.1"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv ~x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv ~x86"
IUSE="examples opengl test X"
RESTRICT="!test? ( test )"
diff --git a/dev-python/pylev/pylev-1.4.0-r1.ebuild b/dev-python/pylev/pylev-1.4.0-r1.ebuild
index f96c9988f6a6..d51abc18dd9b 100644
--- a/dev-python/pylev/pylev-1.4.0-r1.ebuild
+++ b/dev-python/pylev/pylev-1.4.0-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2022-2023 Gentoo Authors
+# Copyright 2022-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
diff --git a/dev-python/pymongo/pymongo-4.7.2.ebuild b/dev-python/pymongo/pymongo-4.7.2.ebuild
index 64aceb6b19ef..c09f0d85d1e3 100644
--- a/dev-python/pymongo/pymongo-4.7.2.ebuild
+++ b/dev-python/pymongo/pymongo-4.7.2.ebuild
@@ -23,7 +23,7 @@ S=${WORKDIR}/${MY_P}
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 ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="doc kerberos +native-extensions +test-full"
RDEPEND="
diff --git a/dev-python/pyotp/pyotp-2.9.0.ebuild b/dev-python/pyotp/pyotp-2.9.0.ebuild
index 6ad9bc74c72c..0768effbd18c 100644
--- a/dev-python/pyotp/pyotp-2.9.0.ebuild
+++ b/dev-python/pyotp/pyotp-2.9.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
diff --git a/dev-python/pyside6-tools/Manifest b/dev-python/pyside6-tools/Manifest
index be66ff5b4dac..a847fdbd896f 100644
--- a/dev-python/pyside6-tools/Manifest
+++ b/dev-python/pyside6-tools/Manifest
@@ -1 +1,2 @@
DIST pyside-setup-everywhere-src-6.7.1.tar.xz 14400976 BLAKE2B 1f6e2705aedc4151147e259da2a8fbab19a1815f19f1a36ea46dbf0bf2282a453e85a33ea8c6862072bb22699be39ab8375b48cd6d5b879de8bed5fad8cf60cb SHA512 6ca73f0b16ef43bc018aeb9e0f51d8ae91b13b79ebdfd71f5524bc0e8ef78322ba0aca81203cc5532e5096a55441fb4dabf3b628de3234b876b7a70327b714d4
+DIST pyside-setup-everywhere-src-6.7.2.tar.xz 14402156 BLAKE2B 321717ba46c7ed29404ee326f852cd4032f93e23b6b32a16e4e05305ff04a00a2029ee7c1d50ad7191a836ffd9a3ae858483bac35e8254bdcaeb474e2c92df60 SHA512 4376aba85867b5a04dab9d8889f5e32cb503cb8010757c1e810e60d29755f15a002b582594d0737a4119c030b48ede26964e8b1392700a6c061d7d631cdfe73e
diff --git a/dev-python/pyside6-tools/pyside6-tools-6.7.2.ebuild b/dev-python/pyside6-tools/pyside6-tools-6.7.2.ebuild
new file mode 100644
index 000000000000..e81d23eca307
--- /dev/null
+++ b/dev-python/pyside6-tools/pyside6-tools-6.7.2.ebuild
@@ -0,0 +1,80 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# TODO: Add PyPy once officially supported. See also:
+# https://bugreports.qt.io/browse/PYSIDE-535
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+LLVM_COMPAT=( {15..18} )
+
+inherit cmake llvm-r1 python-r1
+
+MY_PN="pyside-setup-everywhere-src"
+
+DESCRIPTION="PySide development tools (pyside6-lupdate with support for Python)"
+HOMEPAGE="https://wiki.qt.io/PySide6"
+SRC_URI="https://download.qt.io/official_releases/QtForPython/pyside6/PySide6-${PV}-src/${MY_PN}-${PV}.tar.xz"
+S="${WORKDIR}/${MY_PN}-${PV}/sources/pyside-tools"
+
+LICENSE="GPL-2"
+SLOT="6/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+# Minimal supported version of Qt.
+QT_PV="$(ver_cut 1-3)*:6"
+
+RDEPEND="${PYTHON_DEPS}
+ =dev-python/shiboken6-${QT_PV}[${PYTHON_USEDEP},${LLVM_USEDEP}]
+ =dev-python/pyside6-${QT_PV}[quick,${PYTHON_USEDEP},${LLVM_USEDEP}]
+ !dev-python/pyside6-tools:0
+"
+DEPEND="${RDEPEND}
+ $(llvm_gen_dep '
+ sys-devel/clang:${LLVM_SLOT}
+ sys-devel/llvm:${LLVM_SLOT}
+ ')
+"
+
+src_prepare() {
+ cmake_src_prepare
+
+ python_copy_sources
+}
+
+src_configure() {
+ pyside-tools_configure() {
+ local mycmakeargs=(
+ # If this is enabled cmake just makes copies of /lib64/qt6/bin/*
+ -DNO_QT_TOOLS=yes
+ )
+ cmake_src_configure
+ }
+
+ python_foreach_impl pyside-tools_configure
+}
+
+src_compile() {
+ pyside-tools_compile() {
+ cmake_src_compile
+ }
+
+ python_foreach_impl pyside-tools_compile
+}
+
+src_install() {
+ pyside-tools_install() {
+ # This replicates the contents of the PySide6 pypi wheel
+ DESTDIR="${BUILD_DIR}" cmake_build install
+ cp __init__.py "${BUILD_DIR}/usr/bin" || die
+ rm -r "${BUILD_DIR}/usr/bin/qtpy2cpp_lib/tests" || die
+ python_moduleinto PySide6/scripts
+ python_domodule "${BUILD_DIR}/usr/bin/."
+ }
+
+ python_foreach_impl pyside-tools_install
+
+ einstalldocs
+}
diff --git a/dev-python/pyside6/Manifest b/dev-python/pyside6/Manifest
index be66ff5b4dac..a847fdbd896f 100644
--- a/dev-python/pyside6/Manifest
+++ b/dev-python/pyside6/Manifest
@@ -1 +1,2 @@
DIST pyside-setup-everywhere-src-6.7.1.tar.xz 14400976 BLAKE2B 1f6e2705aedc4151147e259da2a8fbab19a1815f19f1a36ea46dbf0bf2282a453e85a33ea8c6862072bb22699be39ab8375b48cd6d5b879de8bed5fad8cf60cb SHA512 6ca73f0b16ef43bc018aeb9e0f51d8ae91b13b79ebdfd71f5524bc0e8ef78322ba0aca81203cc5532e5096a55441fb4dabf3b628de3234b876b7a70327b714d4
+DIST pyside-setup-everywhere-src-6.7.2.tar.xz 14402156 BLAKE2B 321717ba46c7ed29404ee326f852cd4032f93e23b6b32a16e4e05305ff04a00a2029ee7c1d50ad7191a836ffd9a3ae858483bac35e8254bdcaeb474e2c92df60 SHA512 4376aba85867b5a04dab9d8889f5e32cb503cb8010757c1e810e60d29755f15a002b582594d0737a4119c030b48ede26964e8b1392700a6c061d7d631cdfe73e
diff --git a/dev-python/pyside6/pyside6-6.7.2.ebuild b/dev-python/pyside6/pyside6-6.7.2.ebuild
new file mode 100644
index 000000000000..a983d5962321
--- /dev/null
+++ b/dev-python/pyside6/pyside6-6.7.2.ebuild
@@ -0,0 +1,248 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# TODO: Add PyPy once officially supported. See also:
+# https://bugreports.qt.io/browse/PYSIDE-535
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+LLVM_COMPAT=( {15..18} )
+
+inherit cmake llvm-r1 python-r1 virtualx
+
+# TODO: Add conditional support for "QtRemoteObjects" via a new "remoteobjects"
+# USE flag after an external "dev-qt/qtremoteobjects" package has been created.
+# TODO: Add conditional support for apidoc generation via a new "doc" USE flag.
+# Note that doing so requires the Qt source tree, sphinx, and graphviz. Once
+# ready, pass the ${QT_SRC_DIR} variable to cmake to enable this support.
+# TODO: Disable GLES support if the "gles2-only" USE flag is disabled. Note
+# that the "PySide6/QtGui/CMakeLists.txt" and
+# "PySide6/QtOpenGLFunctions/CMakeLists.txt" files test for GLES support by
+# testing whether the "Qt5::Gui" list property defined by
+# "/usr/lib64/cmake/Qt5Gui/Qt5GuiConfig.cmake" at "dev-qt/qtgui" installation
+# time contains the substring "opengles2". Since cmake does not permit
+# properties to be overridden from the command line, these files must instead
+# be conditionally patched to avoid these tests. An issue should be filed with
+# upstream requesting a CLI-settable variable to control this.
+
+MY_PN="pyside-setup-everywhere-src"
+
+DESCRIPTION="Python bindings for the Qt framework"
+HOMEPAGE="https://wiki.qt.io/PySide6"
+SRC_URI="https://download.qt.io/official_releases/QtForPython/pyside6/PySide6-${PV}-src/${MY_PN}-${PV}.tar.xz"
+S="${WORKDIR}/${MY_PN}-${PV}/sources/pyside6"
+
+# See "sources/pyside6/PySide6/licensecomment.txt" for licensing details.
+# Shall we allow essential modules to be disabled? They are:
+# (core), gui, widgets, printsupport, sql, network, testlib, concurrent,
+# x11extras (for X)
+LICENSE="|| ( GPL-2 GPL-3+ LGPL-3 )"
+SLOT="6/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64"
+IUSE="
+ 3d bluetooth charts +concurrent +dbus designer gles2-only +gui help location
+ multimedia +network network-auth nfc positioning +opengl pdfium positioning
+ +printsupport qml quick quick3d serialport scxml sensors spatialaudio speech
+ +sql svg test +testlib webchannel webengine websockets +widgets +xml
+"
+
+# Manually reextract these requirements on version bumps by running the
+# following one-liner from within "${S}":
+# $ grep 'set.*_deps' PySide6/Qt*/CMakeLists.txt
+# Note that the "designer" USE flag corresponds to the "Qt6UiTools" module.
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+ 3d? ( gui network )
+ charts? ( gui widgets )
+ designer? ( widgets )
+ gles2-only? ( gui )
+ gui? ( dbus opengl )
+ help? ( network sql widgets )
+ location? ( gui network positioning quick )
+ multimedia? ( gui network )
+ network-auth? ( network )
+ opengl? ( gui )
+ pdfium? ( gui )
+ printsupport? ( widgets )
+ qml? ( network )
+ quick? ( gui network opengl qml )
+ quick3d? ( gui network opengl qml quick )
+ spatialaudio? ( multimedia )
+ speech? ( multimedia )
+ sql? ( widgets )
+ svg? ( gui )
+ testlib? ( widgets )
+ webchannel? ( qml )
+ webengine? ( network gui printsupport quick webchannel )
+ websockets? ( network )
+ widgets? ( gui )
+"
+
+# Tests fail pretty bad and I'm not fixing them right now
+RESTRICT="test"
+
+# Minimal supported version of Qt.
+QT_PV="$(ver_cut 1-3)*:6"
+
+RDEPEND="${PYTHON_DEPS}
+ =dev-python/shiboken6-${QT_PV}[${PYTHON_USEDEP},${LLVM_USEDEP}]
+ =dev-qt/qtbase-${QT_PV}[concurrent?,dbus?,gles2-only=,network?,opengl?,sql?,widgets?,xml?]
+ 3d? ( =dev-qt/qt3d-${QT_PV}[qml?,gles2-only=] )
+ bluetooth? ( =dev-qt/qtconnectivity-${QT_PV}[bluetooth] )
+ charts? ( =dev-qt/qtcharts-${QT_PV} )
+ designer? ( =dev-qt/qttools-${QT_PV}[designer] )
+ gui? (
+ =dev-qt/qtbase-${QT_PV}[gui,jpeg(+)]
+ x11-libs/libxkbcommon
+ )
+ help? ( =dev-qt/qttools-${QT_PV}[assistant] )
+ location? ( =dev-qt/qtlocation-${QT_PV} )
+ multimedia? ( =dev-qt/qtmultimedia-${QT_PV} )
+ network? ( =dev-qt/qtbase-${QT_PV}[ssl] )
+ network-auth? ( =dev-qt/qtnetworkauth-${QT_PV} )
+ nfc? ( =dev-qt/qtconnectivity-${QT_PV}[nfc] )
+ pdfium? ( =dev-qt/qtwebengine-${QT_PV}[pdfium(-),widgets?] )
+ positioning? ( =dev-qt/qtpositioning-${QT_PV} )
+ printsupport? ( =dev-qt/qtbase-${QT_PV}[gui,widgets] )
+ qml? ( =dev-qt/qtdeclarative-${QT_PV}[widgets?] )
+ quick3d? ( =dev-qt/qtquick3d-${QT_PV} )
+ scxml? ( =dev-qt/qtscxml-${QT_PV} )
+ sensors? ( =dev-qt/qtsensors-${QT_PV}[qml?] )
+ speech? ( =dev-qt/qtspeech-${QT_PV} )
+ serialport? ( =dev-qt/qtserialport-${QT_PV} )
+ svg? ( =dev-qt/qtsvg-${QT_PV} )
+ testlib? ( =dev-qt/qtbase-${QT_PV}[gui] )
+ webchannel? ( =dev-qt/qtwebchannel-${QT_PV} )
+ webengine? ( || (
+ =dev-qt/qtwebengine-${QT_PV}[alsa,widgets?]
+ =dev-qt/qtwebengine-${QT_PV}[pulseaudio,widgets?]
+ )
+ )
+ websockets? ( =dev-qt/qtwebsockets-${QT_PV} )
+ !dev-python/pyside6:0
+"
+DEPEND="${RDEPEND}
+ $(llvm_gen_dep '
+ sys-devel/clang:${LLVM_SLOT}
+ sys-devel/llvm:${LLVM_SLOT}
+ ')
+ test? ( =dev-qt/qtbase-${QT_PV}[gui] )
+"
+# testlib is toggled by the gui flag on qtbase
+
+PATCHES=(
+ "${FILESDIR}/${PN}-6.3.1-no-strip.patch"
+ # References files not present in our dev-qt/qtbase
+ "${FILESDIR}/${PN}-6.6.0-no-qtexampleicons.patch"
+)
+
+src_configure() {
+ # See collect_module_if_found macros in PySideHelpers.cmake
+ local mycmakeargs=(
+ -DBUILD_TESTS=$(usex test)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt63DAnimation=$(usex !3d)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt63DCore=$(usex !3d)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt63DExtras=$(usex !3d)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt63DInput=$(usex !3d)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt63DLogic=$(usex !3d)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt63DRender=$(usex !3d)
+ #-DCMAKE_DISABLE_FIND_PACKAGE_Qt6AxContainer=yes
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Bluetooth=$(usex !bluetooth)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Charts=$(usex !charts)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Concurrent=$(usex !concurrent)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6DataVisualization=yes
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6DBus=$(usex !dbus)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Designer=$(usex !designer)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Gui=$(usex !gui)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Help=$(usex !help)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6HttpServer=yes
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Location=$(usex !location)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Multimedia=$(usex !multimedia)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6MultimediaWidgets=$(usex !multimedia yes $(usex !widgets))
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6NetworkAuth=$(usex !network-auth)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Network=$(usex !network)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Nfc=$(usex !nfc)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6OpenGL=$(usex !opengl)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6OpenGLWidgets=$(usex !opengl yes $(usex !widgets))
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Pdf=$(usex !pdfium)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6PdfWidgets=$(usex !pdfium yes $(usex !widgets))
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Positioning=$(usex !positioning)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6PrintSupport=$(usex !printsupport)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Qml=$(usex !qml)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Quick3D=$(usex !quick3d)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Quick=$(usex !quick)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6QuickControls2=yes
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6QuickWidgets=$(usex !quick yes $(usex !widgets))
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6RemoteObjects=yes
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Scxml=$(usex !scxml)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Sensors=$(usex !sensors)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6SerialPort=$(usex !serialport)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6SpatialAudio=$(usex !spatialaudio)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Sql=$(usex !sql)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6StateMachine=yes
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Svg=$(usex !svg)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6SvgWidgets=$(usex !svg yes $(usex !widgets))
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Test=$(usex !testlib)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6TextToSpeech=$(usex !speech)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6UiTools=$(usex !designer)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6WebChannel=$(usex !webchannel)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6WebEngineCore=$(usex !webengine)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6WebEngineQuick=$(usex !webengine yes $(usex !quick))
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6WebEngineWidgets=$(usex !webengine yes $(usex !widgets))
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6WebSockets=$(usex !websockets)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Widgets=$(usex !widgets)
+ #-DCMAKE_DISABLE_FIND_PACKAGE_Qt6WinExtras=yes
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Xml=$(usex !xml)
+ # try to avoid pre-stripping
+ -DQFP_NO_OVERRIDE_OPTIMIZATION_FLAGS=yes
+ -DQFP_NO_STRIP=yes
+
+ )
+
+ pyside6_configure() {
+ local mycmakeargs=(
+ "${mycmakeargs[@]}"
+ -DPYTHON_CONFIG_SUFFIX="-${EPYTHON}"
+ -DPYTHON_SITE_PACKAGES="$(python_get_sitedir)"
+ -DSHIBOKEN_PYTHON_SHARED_LIBRARY_SUFFIX="-${EPYTHON}"
+ )
+ cmake_src_configure
+ }
+ python_foreach_impl pyside6_configure
+}
+
+src_compile() {
+ python_foreach_impl cmake_src_compile
+}
+
+src_test() {
+ local -x PYTHONDONTWRITEBYTECODE
+ python_foreach_impl virtx cmake_src_test
+}
+
+src_install() {
+ pyside6_install() {
+ cmake_src_install
+ python_optimize
+
+ # Uniquify the shiboken6 pkgconfig dependency in the PySide6 pkgconfig
+ # file for the current Python target. See also:
+ # https://github.com/leycec/raiagent/issues/73
+ sed -i -e 's~^Requires: shiboken6$~&-'${EPYTHON}'~' \
+ "${ED}/usr/$(get_libdir)"/pkgconfig/${PN}.pc || die
+
+ # Uniquify the PySide6 pkgconfig file for the current Python target,
+ # preserving an unversioned "pyside6.pc" file arbitrarily associated
+ # with the last Python target. (See the previously linked issue.)
+ cp "${ED}/usr/$(get_libdir)"/pkgconfig/${PN}{,-${EPYTHON}}.pc || die
+ }
+ python_foreach_impl pyside6_install
+
+ # CMakeLists.txt installs a "PySide6Targets-gentoo.cmake" file forcing
+ # downstream consumers (e.g., pyside6-tools) to target one
+ # "libpyside6-*.so" library linked to one Python interpreter. See also:
+ # https://bugreports.qt.io/browse/PYSIDE-1053
+ # https://github.com/leycec/raiagent/issues/74
+ sed -i -e 's~pyside6-python[[:digit:]]\+\.[[:digit:]]\+~pyside6${PYTHON_CONFIG_SUFFIX}~g' \
+ "${ED}/usr/$(get_libdir)/cmake/PySide6/PySide6Targets-${CMAKE_BUILD_TYPE,,}.cmake" || die
+}
diff --git a/dev-python/restructuredtext-lint/restructuredtext-lint-1.4.0.ebuild b/dev-python/restructuredtext-lint/restructuredtext-lint-1.4.0.ebuild
index fe9cb08e2341..4369065bab62 100644
--- a/dev-python/restructuredtext-lint/restructuredtext-lint-1.4.0.ebuild
+++ b/dev-python/restructuredtext-lint/restructuredtext-lint-1.4.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
diff --git a/dev-python/scikit-image/Manifest b/dev-python/scikit-image/Manifest
index 4b094ea850c7..640af69cc674 100644
--- a/dev-python/scikit-image/Manifest
+++ b/dev-python/scikit-image/Manifest
@@ -1,3 +1,3 @@
DIST scikit-image-data-15735b54e85c02427f07c71e6456723495034805.tar.bz2 143900901 BLAKE2B c1352e76337250fe1a9d6e07f08b6c9b1e0aed922ab8e0a3a4a1ea175f593b3375522e59550d30a22d392c34fef26d638c007c2af3d991887e02e7c68e56ebbb SHA512 d113dd258b35be710d841f9900cfbfe7103d1190b042489de88dd504b56277edac9a98fed5517e57725c5292fe26528267a06ff313bf6500b669d872c4481146
-DIST scikit_image-0.23.1.tar.gz 22676819 BLAKE2B 2d02bab4f8d6217c842f428a6758d467393a73a05ac741a49cd27fa6ee48335cf8fed4cc104296388d0e23c61ac3603f72d7bab44986c0d3d4073da383f89726 SHA512 7450387c3adcac15148c3ae4f43fd7da97ceabf3522302b7f3ab4cd02e5a9ec2cd9623f29e4aec3bb47668a231e0900724804619bb91aaaf97283d29c34392e6
DIST scikit_image-0.23.2.tar.gz 22678261 BLAKE2B 11c44676e9f7bce7735e85d8416175a55b1808807b99597d60495dc2b0c961a05a514b5ec456665a25d31cc09a20e430c331cfd5bc10afa01ca4070722aa03f8 SHA512 8abf6c2bb92a75524d254265822cdc49db636a482efe0d6459fc113f6898bc5c19ad58905a5020a9c4262f55993ad2e8d13810023c62d06c5ee9854666f5337f
+DIST scikit_image-0.24.0.tar.gz 22693928 BLAKE2B f165f702908fe446b459de3db0ec056a4b79d7266f85bc81c991569c1e492c22d238e8553d8f035abd83d4d3c4b449304e74b55d8bf558cac977c3ea5f0c864a SHA512 becb062725b4c1f64e12a1f775175e48dbce1b989c1e8f40ec04ff79cb926740be514b9a0a68e3f9e17fb0d3c7b860c7451b91eb178bbae93521e02e3e8e92db
diff --git a/dev-python/scikit-image/scikit-image-0.23.1.ebuild b/dev-python/scikit-image/scikit-image-0.24.0.ebuild
index 653c97c7f60c..653c97c7f60c 100644
--- a/dev-python/scikit-image/scikit-image-0.23.1.ebuild
+++ b/dev-python/scikit-image/scikit-image-0.24.0.ebuild
diff --git a/dev-python/serpent/serpent-1.41.ebuild b/dev-python/serpent/serpent-1.41.ebuild
index 02d19fa33ba8..f56476797805 100644
--- a/dev-python/serpent/serpent-1.41.ebuild
+++ b/dev-python/serpent/serpent-1.41.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
diff --git a/dev-python/shiboken6/Manifest b/dev-python/shiboken6/Manifest
index be66ff5b4dac..a847fdbd896f 100644
--- a/dev-python/shiboken6/Manifest
+++ b/dev-python/shiboken6/Manifest
@@ -1 +1,2 @@
DIST pyside-setup-everywhere-src-6.7.1.tar.xz 14400976 BLAKE2B 1f6e2705aedc4151147e259da2a8fbab19a1815f19f1a36ea46dbf0bf2282a453e85a33ea8c6862072bb22699be39ab8375b48cd6d5b879de8bed5fad8cf60cb SHA512 6ca73f0b16ef43bc018aeb9e0f51d8ae91b13b79ebdfd71f5524bc0e8ef78322ba0aca81203cc5532e5096a55441fb4dabf3b628de3234b876b7a70327b714d4
+DIST pyside-setup-everywhere-src-6.7.2.tar.xz 14402156 BLAKE2B 321717ba46c7ed29404ee326f852cd4032f93e23b6b32a16e4e05305ff04a00a2029ee7c1d50ad7191a836ffd9a3ae858483bac35e8254bdcaeb474e2c92df60 SHA512 4376aba85867b5a04dab9d8889f5e32cb503cb8010757c1e810e60d29755f15a002b582594d0737a4119c030b48ede26964e8b1392700a6c061d7d631cdfe73e
diff --git a/dev-python/shiboken6/shiboken6-6.7.2.ebuild b/dev-python/shiboken6/shiboken6-6.7.2.ebuild
new file mode 100644
index 000000000000..232cc3a43a39
--- /dev/null
+++ b/dev-python/shiboken6/shiboken6-6.7.2.ebuild
@@ -0,0 +1,180 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# TODO: Split the "/usr/bin/shiboken6" binding generator from the
+# "/usr/lib64/libshiboken6-*.so" family of shared libraries. The former
+# requires everything (including Clang) at runtime; the latter only requires
+# Qt and Python at runtime. Note that "pip" separates these two as well. See:
+# https://doc.qt.io/qtforpython/shiboken6/faq.html#is-there-any-runtime-dependency-on-the-generated-binding
+# Once split, the PySide6 ebuild should be revised to require
+# "/usr/bin/shiboken6" at build time and "libshiboken6-*.so" at runtime.
+# TODO: Add PyPy once officially supported. See also:
+# https://bugreports.qt.io/browse/PYSIDE-535
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+LLVM_COMPAT=( {15..18} )
+
+inherit cmake flag-o-matic llvm-r1 python-r1 toolchain-funcs
+
+MY_PN="pyside-setup-everywhere-src"
+
+DESCRIPTION="Python binding generator for C++ libraries"
+HOMEPAGE="https://wiki.qt.io/PySide6"
+SRC_URI="https://download.qt.io/official_releases/QtForPython/pyside6/PySide6-${PV}-src/${MY_PN}-${PV}.tar.xz"
+S="${WORKDIR}/${MY_PN}-${PV}/sources/shiboken6"
+
+# The "sources/shiboken6/libshiboken" directory is triple-licensed under the
+# GPL v2, v3+, and LGPL v3. All remaining files are licensed under the GPL v3
+# with version 1.0 of a Qt-specific exception enabling shiboken6 output to be
+# arbitrarily relicensed. (TODO)
+LICENSE="|| ( GPL-2 GPL-3+ LGPL-3 ) GPL-3"
+SLOT="6/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64"
+IUSE="+docstrings numpy test vulkan"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+# Tests fail pretty bad and I'm not fixing them right now
+RESTRICT="test"
+
+# Minimal supported version of Qt.
+QT_PV="$(ver_cut 1-3)*:6"
+
+# Since Clang is required at both build- and runtime, BDEPEND is omitted here.
+RDEPEND="${PYTHON_DEPS}
+ =dev-qt/qtbase-${QT_PV}
+ $(llvm_gen_dep '
+ sys-devel/clang:${LLVM_SLOT}
+ sys-devel/llvm:${LLVM_SLOT}
+ ')
+ docstrings? (
+ >=dev-libs/libxml2-2.6.32
+ >=dev-libs/libxslt-1.1.19
+ )
+ numpy? ( dev-python/numpy[${PYTHON_USEDEP}] )
+ vulkan? ( dev-util/vulkan-headers )
+ !dev-python/shiboken6:0
+"
+DEPEND="${RDEPEND}
+ test? ( =dev-qt/qtbase-${QT_PV}[gui] )
+"
+# testlib is toggled by the gui flag on qtbase
+
+DOCS=( AUTHORS )
+
+PATCHES=(
+ "${FILESDIR}/${PN}-6.3.1-no-strip.patch"
+)
+
+src_prepare() {
+ # TODO: File upstream issue requesting a sane way to disable NumPy support.
+ if ! use numpy; then
+ sed -i -e '/\bprint(os\.path\.realpath(numpy))/d' \
+ libshiboken/CMakeLists.txt || die
+ fi
+
+ # Shiboken6 assumes Vulkan headers live under either "$VULKAN_SDK/include"
+ # or "$VK_SDK_PATH/include" rather than "${EPREFIX}/usr/include/vulkan".
+ if use vulkan; then
+ sed -i -e "s~\bdetectVulkan(&headerPaths);~headerPaths.append(HeaderPath{QByteArrayLiteral(\"${EPREFIX}/usr/include/vulkan\"), HeaderType::System});~" \
+ ApiExtractor/clangparser/compilersupport.cpp || die
+ fi
+
+ local clangver="$(CPP=clang clang-major-version)"
+
+ # Clang 15 and older used the full version as a directory name.
+ if [[ ${clangver} -lt 16 ]]; then
+ clangver="$(CPP=clang clang-fullversion)"
+ fi
+
+ # Shiboken6 assumes the "/usr/lib/clang/${CLANG_NEWEST_VERSION}/include/"
+ # subdirectory provides Clang builtin includes (e.g., "stddef.h") for the
+ # currently installed version of Clang, where ${CLANG_NEWEST_VERSION} is
+ # the largest version specifier that exists under the "/usr/lib/clang/"
+ # subdirectory. This assumption is false in edge cases, including when
+ # users downgrade from newer Clang versions but fail to remove those
+ # versions with "emerge --depclean". See also:
+ # https://github.com/leycec/raiagent/issues/85
+ #
+ # Sadly, the clang-* family of functions exported by the "toolchain-funcs"
+ # eclass are defective, returning nonsensical placeholder strings if the
+ # end user has *NOT* explicitly configured their C++ compiler to be Clang.
+ # PySide6 does *NOT* care whether the end user has done so or not, as
+ # PySide6 unconditionally requires Clang in either case. See also:
+ # https://bugs.gentoo.org/619490
+ sed -i -e 's~(findClangBuiltInIncludesDir())~(QStringLiteral("'"${EPREFIX}"'/usr/lib/clang/'"${clangver}"'/include"))~' \
+ ApiExtractor/clangparser/compilersupport.cpp || die
+
+ cmake_src_prepare
+}
+
+src_configure() {
+ # -Werror=odr
+ # https://bugs.gentoo.org/925479
+ # https://bugreports.qt.io/browse/PYSIDE-2619
+ filter-lto
+
+ # Minimal tests for now, 2 failing with the extended version
+ # FIXME Subscripted generics cannot be used with class and instance checks
+ local mycmakeargs=(
+ -DBUILD_TESTS=$(usex test)
+ -DDISABLE_DOCSTRINGS=$(usex !docstrings)
+ )
+
+ shiboken6_configure() {
+ local mycmakeargs=(
+ "${mycmakeargs[@]}"
+ -DPYTHON_CONFIG_SUFFIX="-${EPYTHON}"
+ -DUSE_PYTHON_VERSION="${EPYTHON#python}"
+ -DFORCE_LIMITED_API=OFF
+ )
+ # CMakeLists.txt expects LLVM_INSTALL_DIR as an environment variable.
+ local -x LLVM_INSTALL_DIR="$(get_llvm_prefix)"
+ cmake_src_configure
+ }
+ python_foreach_impl shiboken6_configure
+}
+
+src_compile() {
+ python_foreach_impl cmake_src_compile
+}
+
+src_test() {
+ python_foreach_impl cmake_src_test
+}
+
+src_install() {
+ shiboken6_install() {
+ cmake_src_install
+ python_optimize
+
+ # Uniquify the "shiboken6" executable for the current Python target,
+ # preserving an unversioned "shiboken6" file arbitrarily associated
+ # with the last Python target.
+ cp "${ED}"/usr/bin/${PN}{,-${EPYTHON}} || die
+
+ # Uniquify the Shiboken6 pkgconfig file for the current Python target,
+ # preserving an unversioned "shiboken6.pc" file arbitrarily associated
+ # with the last Python target. See also:
+ # https://github.com/leycec/raiagent/issues/73
+ cp "${ED}/usr/$(get_libdir)"/pkgconfig/${PN}{,-${EPYTHON}}.pc || die
+ }
+ python_foreach_impl shiboken6_install
+
+ # CMakeLists.txt installs a "Shiboken6Targets-gentoo.cmake" file forcing
+ # downstream consumers (e.g., PySide6) to target one "libshiboken6-*.so"
+ # library and one "shiboken6" executable linked to one Python interpreter.
+ # See also:
+ # https://bugreports.qt.io/browse/PYSIDE-1053
+ # https://github.com/leycec/raiagent/issues/74
+ sed -i \
+ -e 's~shiboken6-python[[:digit:]]\+\.[[:digit:]]\+~shiboken6${PYTHON_CONFIG_SUFFIX}~g' \
+ -e 's~/bin/shiboken6~/bin/shiboken6${PYTHON_CONFIG_SUFFIX}~g' \
+ "${ED}/usr/$(get_libdir)"/cmake/Shiboken6/Shiboken6Targets-${CMAKE_BUILD_TYPE,,}.cmake || die
+
+ # Remove the broken "shiboken_tool.py" script. By inspection, this script
+ # reduces to a noop. Moreover, this script raises the following exception:
+ # FileNotFoundError: [Errno 2] No such file or directory: '/usr/bin/../shiboken_tool.py': '/usr/bin/../shiboken_tool.py'
+ rm "${ED}"/usr/bin/shiboken_tool.py || die
+}
diff --git a/dev-python/spyder-kernels/Manifest b/dev-python/spyder-kernels/Manifest
index a96daa3e81c8..9605fd7130fb 100644
--- a/dev-python/spyder-kernels/Manifest
+++ b/dev-python/spyder-kernels/Manifest
@@ -1,3 +1,3 @@
DIST spyder-kernels-2.5.1.tar.gz 99906 BLAKE2B 50cae2744ea2bb2d59046423f084d8e29385a82fe05c5d18fa15a64261c4ae0bef6e6f0427c8053ea6cc622d87660f98dc55613d954818a72babc92a119e3dc2 SHA512 bd855e95fb84014cf86dd062aeffc580ce23db7f1c5c1b4ba6d5386d0be4a4bcde625a6bc3a6d126b07a66ef720860019bab5f245a383fd0b2c7975f6d331598
DIST spyder_kernels-2.5.2.tar.gz 99972 BLAKE2B 178f175fe03fd2b7871681ae30d10b62a4daf9ee606477eab4f88a4d81d2692b80cdcf4f9b6d46c4cfc0394b98d798e93dda870a3f1cbe6f77e243fd2b06d97c SHA512 4cf5462d6a6e72bf13f9890fbc5a4008788e132ee3315b0ad01a00beff6b78c63f47b7b5d19be601b64984196cc1a5c4706a4c5bbe878d938e487ae9ddd9f1fc
-DIST spyder_kernels-3.0.0b6.tar.gz 238208 BLAKE2B 2d1e227e876eec6ea6435d581892a3f76845164b4c4c2835ace859394f95813ea2630fc5c03bdec827e025680478184831328530d6b56373e220fe52d219d386 SHA512 f3a18731850d5a7f2ad9c45a706c4526b9d22f357a0175b4f67954c3d1912640a5871157373575ed8b0f044bdb618548c8d0a3f8fff44492d06dceab43efc6ad
+DIST spyder_kernels-3.0.0b7.tar.gz 239483 BLAKE2B 216f240555d5bccfc2d0a6b19a32af7ebae85dcd2b6165837df63207c4472f5d738a35ada55e68ffed5888f8370b1e93f42b16316b04638a18d3056a6d5f0a32 SHA512 c361b11623b57d0951e49297a84f43112c9e6c0f60849dccb914a0737a65fcbbfe1ce1583f637fc1fa3bf16f548e74f16987bec0ffc2f7a1dad38691e330d362
diff --git a/dev-python/spyder-kernels/spyder-kernels-3.0.0_beta6.ebuild b/dev-python/spyder-kernels/spyder-kernels-3.0.0_beta7.ebuild
index 33432d39a653..33432d39a653 100644
--- a/dev-python/spyder-kernels/spyder-kernels-3.0.0_beta6.ebuild
+++ b/dev-python/spyder-kernels/spyder-kernels-3.0.0_beta7.ebuild
diff --git a/dev-python/spyder/Manifest b/dev-python/spyder/Manifest
index 0263bbaf420b..0edd8dfe4ced 100644
--- a/dev-python/spyder/Manifest
+++ b/dev-python/spyder/Manifest
@@ -1,4 +1,4 @@
DIST spyder-5.5.4.gh.tar.gz 16258160 BLAKE2B 4f29db0805e1d7eed33497df0b28754cd873cfa5c6bd6c7955efc881000498a7527e413de5107ca4414f2dcbf0aa55903b1bf496626e7b470942cc5142abc152 SHA512 4f68d1edc2901b4cffb67943c782ccd89e923722579ec4144064de2ec1b6bbf89f831feb3eb58a7adf7c403efc7d2529c38017b423bb32709170915792f4deb2
DIST spyder-5.5.5.gh.tar.gz 16258487 BLAKE2B 3fa3ea611fc3267918e4314027c0825905f256a7fe070534c7608a4a42938c3934f34f4dc06fe0cfc0ac32e03fbdc294974672b010aaf9bc32512b817af62e6b SHA512 5f5d25822f20f8ae8767402b037cca78b760768b9bc53ef74ed95839aa59e1c24206457fd4c71003bb9ebffe8daf8ad3bda8dd40e71cc15d3d3ee2030b284b42
-DIST spyder-6.0.0_beta1.gh.tar.gz 15555385 BLAKE2B 5ae3a174929c2044f8e351d4edcb018f16133d63de1cb1aae0749509da1c350fa4fff54fd5067e8af58377e111ec7434f5aaa56728565826f31fe3c791800349 SHA512 d89385525054740b8c6aaf1e7d769cac6c6c102aad7cc32199b5667b06ad96e22838f5416ca2a77af68529032519fdf383c41f964b66a8a7db9252c2835bfdaf
+DIST spyder-6.0.0_beta2.gh.tar.gz 15574412 BLAKE2B 886a257323714d9176479db8466e00f963eb787eb4ebe21f12d1ac0af1b890671b2ae90121508f7f700b1e1545e4f73428a924ec6861411e74504f29a62662ef SHA512 85c19e7e490b35d52ae228353f966a4cc0b36a906aecdaca6b01a6c051047cc3e84a8c9149738f2156ff9c8c2cfff4bb16bbc069e748728a00feeb56c2a82679
DIST spyder-docs-32efdaebc11dab0b8e0767717342b7d306dc06ea.gh.tar.gz 94897009 BLAKE2B 30e0b42e34bddb60d8fc986183a363b71455067bc7f4411cb75a00c5758e87501ee07ad0b484caed2aa3cf91153be814c7faf935be8665b6984bce38ebcd0be2 SHA512 9f9aa56ab27aed8d27c3d653119d5c5454b4317a78a7ff27715d91cac9dec79143db85d4f1c87b10fa821eb33abc043912df308fa6c84ade59539bd633eefbd2
diff --git a/dev-python/spyder/spyder-6.0.0_beta1.ebuild b/dev-python/spyder/spyder-6.0.0_beta2.ebuild
index 075e6a461e3f..39f7c1722532 100644
--- a/dev-python/spyder/spyder-6.0.0_beta1.ebuild
+++ b/dev-python/spyder/spyder-6.0.0_beta2.ebuild
@@ -44,6 +44,7 @@ RDEPEND="
>=dev-python/pexpect-4.4.0[${PYTHON_USEDEP}]
>=dev-python/pickleshare-0.4[${PYTHON_USEDEP}]
>=dev-python/psutil-5.3[${PYTHON_USEDEP}]
+ >=dev-python/PyGithub-2.3.0[${PYTHON_USEDEP}]
>=dev-python/pygments-2.0[${PYTHON_USEDEP}]
>=dev-python/pylint-venv-3.0.2[${PYTHON_USEDEP}]
>=dev-python/python-lsp-black-1.2.0[${PYTHON_USEDEP}]
@@ -59,8 +60,8 @@ RDEPEND="
>=dev-python/QtPy-2.4.0[${PYTHON_USEDEP},svg,webengine]
>=sci-libs/rtree-0.9.7[${PYTHON_USEDEP}]
>=dev-python/sphinx-0.6.6[${PYTHON_USEDEP}]
- >=dev-python/spyder-kernels-3.0.0_beta6[${PYTHON_USEDEP}]
- <dev-python/spyder-kernels-3.0.0_beta7[${PYTHON_USEDEP}]
+ >=dev-python/spyder-kernels-3.0.0_beta7[${PYTHON_USEDEP}]
+ <dev-python/spyder-kernels-3.0.0_beta8[${PYTHON_USEDEP}]
>=dev-python/superqt-0.6.1[${PYTHON_USEDEP}]
<dev-python/superqt-1.0.0[${PYTHON_USEDEP}]
>=dev-python/textdistance-4.2.0[${PYTHON_USEDEP}]
@@ -82,7 +83,7 @@ BDEPEND="
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/QtPy[${PYTHON_USEDEP}]
dev-python/scipy[${PYTHON_USEDEP}]
dev-python/sympy[${PYTHON_USEDEP}]
)"
diff --git a/dev-python/sqlalchemy/Manifest b/dev-python/sqlalchemy/Manifest
index 3d0e9e8fa3d2..6e880152ab18 100644
--- a/dev-python/sqlalchemy/Manifest
+++ b/dev-python/sqlalchemy/Manifest
@@ -1,3 +1,4 @@
DIST SQLAlchemy-1.4.52.tar.gz 8514200 BLAKE2B b41fccb885ce6761e29621a654c97537610a1875d66302ba56fac560f5c85db35b14595efd903aebfd0186ee39b75a8666e1304cdee6a6ec6eb9923bc602b9e5 SHA512 afda6a3503c9d2baba8c1dd9e7216d5ac1561f52f5f11009c41a1a98ac998643c980c60cf8ba4d84c4af8808be26ead9fd2e7a2c8bf15b2fdb521b4e5de7748e
DIST SQLAlchemy-2.0.29.tar.gz 9543967 BLAKE2B 04425618b6e0bcf98a7a32a4a6b1c092120a9f3eb55761879b072ac3a3e08c8f1b97fb4d2df4b35b2fd810e11146f4d83cf67cd8ec23fb4d96c5d6cfff7657af SHA512 d1143c65fb26335d652083b9a90afaecf78ed312cea5c26f989380204e909c341c1bc3bb1e07274353e1c409d21737fad4d7391f186b2d2373814582d3baaf78
DIST SQLAlchemy-2.0.30.tar.gz 9579500 BLAKE2B 3c1711ee72a355eb5e6a71d6581d951ffe3ddab459ac4bb4c36a8640ed5f6298a80847e9bb66dd700622fa9275bf77c4c18be5e324092a576d1b35983371730a SHA512 b39275a7312609fd0a78ac5bb4fb0f29f2948d7fc81007587c01f38849ff28bff273182a06c8ec830b7e1ba4cd30aea2cd7214bbf971a61125c9b56c6ddbbe52
+DIST SQLAlchemy-2.0.31.tar.gz 9524110 BLAKE2B 521137ceaedd91a063bd336001e25a2946a3fefbc61c619b9b18c32f6e4dd2ff541e7cf3f0e0144024c0a6fe2c7aec743d1315b66c7da752d47abd81a6ab8ab4 SHA512 2e5f559ee2d1f28003a7436a6cb1997f22348447765422f4847adb3c5fc20b759d8c5c99ad4dae1c1f7863f3bc72f699e19b48d7797917a9a64ff4050e61d3d1
diff --git a/dev-python/sqlalchemy/sqlalchemy-2.0.31.ebuild b/dev-python/sqlalchemy/sqlalchemy-2.0.31.ebuild
new file mode 100644
index 000000000000..ff4aad3e7094
--- /dev/null
+++ b/dev-python/sqlalchemy/sqlalchemy-2.0.31.ebuild
@@ -0,0 +1,117 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+PYPI_PN=SQLAlchemy
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+PYTHON_REQ_USE="sqlite?"
+
+inherit distutils-r1 optfeature pypi
+
+DESCRIPTION="Python SQL toolkit and Object Relational Mapper"
+HOMEPAGE="
+ https://www.sqlalchemy.org/
+ https://pypi.org/project/SQLAlchemy/
+ https://github.com/sqlalchemy/sqlalchemy/
+"
+
+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"
+IUSE="examples +sqlite test"
+
+RDEPEND="
+ >=dev-python/typing-extensions-4.6.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/cython[${PYTHON_USEDEP}]
+ test? (
+ $(python_gen_impl_dep sqlite)
+ dev-python/pytest-rerunfailures[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+src_prepare() {
+ sed -i -e '/greenlet/d' setup.cfg || die
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local EPYTEST_IGNORE=(
+ test/ext/mypy/test_mypy_plugin_py3k.py
+ test/typing/test_mypy.py
+ # hardcode call counts specific to Python versions
+ test/aaa_profiling
+ )
+ local EPYTEST_DESELECT=(
+ # warning tests are unreliable
+ test/base/test_warnings.py
+ )
+ local sqlite_version=$(sqlite3 --version | cut -d' ' -f1)
+ case ${EPYTHON} in
+ pypy3)
+ EPYTEST_DESELECT+=(
+ test/ext/test_associationproxy.py::ProxyHybridTest::test_msg_fails_on_cls_access
+ test/ext/test_associationproxy.py::DictOfTupleUpdateTest::test_update_multi_elem_varg
+ test/ext/test_associationproxy.py::DictOfTupleUpdateTest::test_update_one_elem_varg
+ test/engine/test_processors.py::PyDateProcessorTest::test_date_invalid_string
+ test/engine/test_processors.py::PyDateProcessorTest::test_datetime_invalid_string
+ test/engine/test_processors.py::PyDateProcessorTest::test_time_invalid_string
+ "test/dialect/test_sqlite.py::TestTypes_sqlite+pysqlite_${sqlite_version//./_}::test_cant_parse_datetime_message"
+ "test/dialect/test_suite.py::ReturningGuardsTest_sqlite+pysqlite_${sqlite_version//./_}"::test_{delete,insert,update}_single
+ test/base/test_utils.py::ImmutableDictTest::test_pep584
+ )
+ ;;
+ python3.13)
+ EPYTEST_DESELECT+=(
+ # deprecated and broken with py3.13
+ test/ext/test_serializer.py
+ # TODO
+ test/orm/test_mapper.py::MapperTest::test_synonym_nonexistent_attr
+ )
+ ;;
+ esac
+ if ! has_version "dev-python/greenlet[${PYTHON_USEDEP}]"; then
+ EPYTEST_DESELECT+=(
+ test/ext/asyncio/test_engine_py3k.py::TextSyncDBAPI::test_sync_driver_execution
+ test/ext/asyncio/test_engine_py3k.py::TextSyncDBAPI::test_sync_driver_run_sync
+ "test/engine/test_pool.py::PoolEventsTest::test_checkin_event_gc[False-True]"
+ "test/engine/test_pool.py::PoolEventsTest::test_checkin_event_gc[True-True]"
+ "test/engine/test_pool.py::PoolEventsTest::test_checkin_event_gc[has_terminate-is_asyncio]"
+ "test/engine/test_pool.py::PoolEventsTest::test_checkin_event_gc[not_has_terminate-is_asyncio]"
+ "test/engine/test_pool.py::QueuePoolTest::test_userspace_disconnectionerror_weakref_finalizer[True-_exclusions0]"
+ "test/engine/test_pool.py::QueuePoolTest::test_userspace_disconnectionerror_weakref_finalizer[True]"
+ )
+ fi
+
+ # upstream's test suite is horribly hacky; it relies on disabling
+ # the warnings plugin and turning warnings into errors; this also
+ # means that any DeprecationWarnings from third-party plugins cause
+ # everything to explode
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -p rerunfailures --reruns=10 --reruns-delay=2
+}
+
+python_install_all() {
+ if use examples; then
+ docompress -x "/usr/share/doc/${PF}/examples"
+ dodoc -r examples
+ fi
+
+ distutils-r1_python_install_all
+}
+
+pkg_postinst() {
+ optfeature "asyncio support" dev-python/greenlet
+ optfeature "MySQL support" \
+ dev-python/mysqlclient \
+ dev-python/pymysql
+ optfeature "postgresql support" dev-python/psycopg:2
+}
diff --git a/dev-python/wxpython/wxpython-4.2.1-r1.ebuild b/dev-python/wxpython/wxpython-4.2.1-r1.ebuild
deleted file mode 100644
index 5364e1b56160..000000000000
--- a/dev-python/wxpython/wxpython-4.2.1-r1.ebuild
+++ /dev/null
@@ -1,127 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-DISTUTILS_IN_SOURCE_BUILD="1"
-PYTHON_COMPAT=( python3_{10..12} )
-PYPI_NO_NORMALIZE=1
-PYPI_PN="wxPython"
-WX_GTK_VER="3.2-gtk3"
-
-inherit distutils-r1 multiprocessing virtualx wxwidgets pypi
-
-DESCRIPTION="A blending of the wxWindows C++ class library with Python"
-HOMEPAGE="
- https://www.wxpython.org/
- https://github.com/wxWidgets/Phoenix/
- https://pypi.org/project/wxPython/
-"
-
-LICENSE="wxWinLL-3"
-SLOT="4.0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
-IUSE="test webkit"
-RESTRICT="!test? ( test )"
-
-# wxPython doesn't seem to be able to optionally disable features. webkit is
-# optionally patched out because it's so huge, but other elements are not,
-# which makes us have to require all features from wxGTK
-DEPEND="
- >=x11-libs/wxGTK-3.0.4-r301:${WX_GTK_VER}=[gstreamer,libnotify,opengl,sdl,tiff,webkit?,X]
- media-libs/libpng:=
- media-libs/tiff:=
- media-libs/libjpeg-turbo:=
-"
-RDEPEND="
- ${DEPEND}
-"
-BDEPEND="
- app-text/doxygen
- dev-python/cython[${PYTHON_USEDEP}]
- dev-python/setuptools[${PYTHON_USEDEP}]
- >=dev-python/sip-6.6.2[${PYTHON_USEDEP}]
- dev-python/six[${PYTHON_USEDEP}]
- test? (
- ${VIRTUALX_DEPEND}
- dev-python/appdirs[${PYTHON_USEDEP}]
- dev-python/numpy[${PYTHON_USEDEP}]
- dev-python/pillow[${PYTHON_USEDEP}]
- dev-python/pytest[${PYTHON_USEDEP}]
- dev-python/pytest-forked[${PYTHON_USEDEP}]
- dev-python/pytest-xdist[${PYTHON_USEDEP}]
- )
-"
-
-PATCHES=(
- "${FILESDIR}/${PN}-4.2.0-flags.patch"
- "${FILESDIR}/${PN}-4.2.0-cython-3.patch"
- "${FILESDIR}/${PN}-4.2.1-integer-division-for-randint.patch"
-)
-
-python_prepare_all() {
- if ! use webkit; then
- eapply "${FILESDIR}/${PN}-4.2.0-no-webkit.patch"
- fi
-
- distutils-r1_python_prepare_all
-}
-
-src_configure() {
- setup-wxwidgets
-}
-
-python_compile() {
- DOXYGEN="$(type -P doxygen)" ${PYTHON} build.py dox etg --nodoc || die
-
- # Refresh the bundled/pregenerated sip files
- "${EPYTHON}" build.py sip || die
-
- # Build the bindings
- "${EPYTHON}" build.py build_py \
- --use_syswx \
- --no_magic \
- --jobs="$(makeopts_jobs)" \
- --verbose \
- --release || die
-}
-
-python_test() {
- local EPYTEST_DESELECT=(
- # virtx probably
- unittests/test_display.py::display_Tests::test_display
- unittests/test_frame.py::frame_Tests::test_frameRestore
- unittests/test_mousemanager.py::mousemanager_Tests::test_mousemanager1
- unittests/test_uiaction.py::uiaction_KeyboardTests::test_uiactionKeyboardChar
- unittests/test_uiaction.py::uiaction_KeyboardTests::test_uiactionKeyboardKeyDownUp
- unittests/test_uiaction.py::uiaction_MouseTests
-
- # assertion (TODO)
- unittests/test_aboutdlg.py::aboutdlg_Tests::test_aboutdlgGeneric
- unittests/test_lib_agw_piectrl.py::lib_agw_piectrl_Tests::test_lib_agw_piectrlCtor
-
- # seems to rely on state from a previous test (sigh)
- unittests/test_lib_agw_persist_persistencemanager.py::lib_agw_persist_persistencemanager_Tests::test_persistencemanagerRestore
-
- # requires Spanish localization
- unittests/test_intl.py::intl_Tests::test_intlGetString
-
- # TODO
- unittests/test_tipwin.py::tipwin_Tests::test_tipwinCtor
- unittests/test_lib_pubsub_provider.py::lib_pubsub_Except::test1
- unittests/test_windowid.py::IdManagerTest::test_newIdRef03
- )
- local EPYTEST_IGNORE=()
- if ! use webkit; then
- EPYTEST_IGNORE+=( unittests/test_webview.py )
- fi
-
- # We use pytest-forked as opensuse does to avoid tests corrupting each
- # other.
- virtx epytest --forked -n "$(makeopts_jobs)" unittests
-}
-
-python_install() {
- distutils-r1_python_install --skip-build
-}
diff --git a/dev-python/wxpython/wxpython-4.2.1-r2.ebuild b/dev-python/wxpython/wxpython-4.2.1-r2.ebuild
index 2e58fca2a380..ffdc1114156b 100644
--- a/dev-python/wxpython/wxpython-4.2.1-r2.ebuild
+++ b/dev-python/wxpython/wxpython-4.2.1-r2.ebuild
@@ -21,7 +21,7 @@ HOMEPAGE="
LICENSE="wxWinLL-3"
SLOT="4.0"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm arm64 ~loong ppc ppc64 ~riscv ~sparc x86"
IUSE="test webkit"
RESTRICT="!test? ( test )"
diff --git a/dev-python/wxpython/wxpython-4.2.1.ebuild b/dev-python/wxpython/wxpython-4.2.1.ebuild
deleted file mode 100644
index 494ce3d38f4c..000000000000
--- a/dev-python/wxpython/wxpython-4.2.1.ebuild
+++ /dev/null
@@ -1,126 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-DISTUTILS_IN_SOURCE_BUILD="1"
-PYTHON_COMPAT=( python3_{10..11} )
-PYPI_NO_NORMALIZE=1
-PYPI_PN="wxPython"
-WX_GTK_VER="3.2-gtk3"
-
-inherit distutils-r1 multiprocessing virtualx wxwidgets pypi
-
-DESCRIPTION="A blending of the wxWindows C++ class library with Python"
-HOMEPAGE="
- https://www.wxpython.org/
- https://github.com/wxWidgets/Phoenix/
- https://pypi.org/project/wxPython/
-"
-
-LICENSE="wxWinLL-3"
-SLOT="4.0"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~loong ppc ppc64 ~riscv ~sparc ~x86"
-IUSE="test webkit"
-RESTRICT="!test? ( test )"
-
-# wxPython doesn't seem to be able to optionally disable features. webkit is
-# optionally patched out because it's so huge, but other elements are not,
-# which makes us have to require all features from wxGTK
-DEPEND="
- >=x11-libs/wxGTK-3.0.4-r301:${WX_GTK_VER}=[gstreamer,libnotify,opengl,sdl,tiff,webkit?,X]
- media-libs/libpng:=
- media-libs/tiff:=
- media-libs/libjpeg-turbo:=
-"
-RDEPEND="
- ${DEPEND}
-"
-BDEPEND="
- app-text/doxygen
- dev-python/cython[${PYTHON_USEDEP}]
- dev-python/setuptools[${PYTHON_USEDEP}]
- >=dev-python/sip-6.6.2[${PYTHON_USEDEP}]
- dev-python/six[${PYTHON_USEDEP}]
- test? (
- ${VIRTUALX_DEPEND}
- dev-python/appdirs[${PYTHON_USEDEP}]
- dev-python/numpy[${PYTHON_USEDEP}]
- dev-python/pillow[${PYTHON_USEDEP}]
- dev-python/pytest[${PYTHON_USEDEP}]
- dev-python/pytest-forked[${PYTHON_USEDEP}]
- dev-python/pytest-xdist[${PYTHON_USEDEP}]
- )
-"
-
-PATCHES=(
- "${FILESDIR}/${PN}-4.2.0-flags.patch"
- "${FILESDIR}/${PN}-4.2.0-cython-3.patch"
-)
-
-python_prepare_all() {
- if ! use webkit; then
- eapply "${FILESDIR}/${PN}-4.2.0-no-webkit.patch"
- fi
-
- distutils-r1_python_prepare_all
-}
-
-src_configure() {
- setup-wxwidgets
-}
-
-python_compile() {
- DOXYGEN="$(type -P doxygen)" ${PYTHON} build.py dox etg --nodoc || die
-
- # Refresh the bundled/pregenerated sip files
- "${EPYTHON}" build.py sip || die
-
- # Build the bindings
- "${EPYTHON}" build.py build_py \
- --use_syswx \
- --no_magic \
- --jobs="$(makeopts_jobs)" \
- --verbose \
- --release || die
-}
-
-python_test() {
- local EPYTEST_DESELECT=(
- # virtx probably
- unittests/test_display.py::display_Tests::test_display
- unittests/test_frame.py::frame_Tests::test_frameRestore
- unittests/test_mousemanager.py::mousemanager_Tests::test_mousemanager1
- unittests/test_uiaction.py::uiaction_KeyboardTests::test_uiactionKeyboardChar
- unittests/test_uiaction.py::uiaction_KeyboardTests::test_uiactionKeyboardKeyDownUp
- unittests/test_uiaction.py::uiaction_MouseTests
-
- # assertion (TODO)
- unittests/test_aboutdlg.py::aboutdlg_Tests::test_aboutdlgGeneric
- unittests/test_lib_agw_piectrl.py::lib_agw_piectrl_Tests::test_lib_agw_piectrlCtor
-
- # seems to rely on state from a previous test (sigh)
- unittests/test_lib_agw_persist_persistencemanager.py::lib_agw_persist_persistencemanager_Tests::test_persistencemanagerRestore
-
- # requires Spanish localization
- unittests/test_intl.py::intl_Tests::test_intlGetString
-
- # TODO
- unittests/test_tipwin.py::tipwin_Tests::test_tipwinCtor
- unittests/test_lib_pubsub_provider.py::lib_pubsub_Except::test1
- unittests/test_windowid.py::IdManagerTest::test_newIdRef03
- )
- local EPYTEST_IGNORE=()
- if ! use webkit; then
- EPYTEST_IGNORE+=( unittests/test_webview.py )
- fi
-
- # We use pytest-forked as opensuse does to avoid tests corrupting each
- # other.
- virtx epytest --forked -n "$(makeopts_jobs)" unittests
-}
-
-python_install() {
- distutils-r1_python_install --skip-build
-}