summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2023-10-03 19:38:13 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2023-10-03 19:38:13 +0000
commita6355a4fa6436f293389847a20219ddf0ecad095 (patch)
tree827de4a818623741ba70ef9a9f61a36921eeb43a /dev-python
parent1fdedb03cef0f4e233244a383d3347bca36ee3a8 (diff)
downloadbaldeagleos-repo-a6355a4fa6436f293389847a20219ddf0ecad095.tar.gz
baldeagleos-repo-a6355a4fa6436f293389847a20219ddf0ecad095.tar.xz
baldeagleos-repo-a6355a4fa6436f293389847a20219ddf0ecad095.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/flask-restx/Manifest1
-rw-r--r--dev-python/flask-restx/flask-restx-1.1.0.ebuild48
-rw-r--r--dev-python/grpc-stubs/Manifest2
-rw-r--r--dev-python/grpc-stubs/files/grpc-stubs-1.53.0.3-die-on-missing-import.patch12
-rw-r--r--dev-python/grpc-stubs/grpc-stubs-1.53.0.2.ebuild37
-rw-r--r--dev-python/grpc-stubs/grpc-stubs-1.53.0.3.ebuild40
-rw-r--r--dev-python/grpcio-tools/Manifest2
-rw-r--r--dev-python/grpcio-tools/grpcio-tools-1.59.0.ebuild (renamed from dev-python/grpcio-tools/grpcio-tools-1.57.0.ebuild)2
-rw-r--r--dev-python/grpcio/Manifest2
-rw-r--r--dev-python/grpcio/grpcio-1.59.0.ebuild (renamed from dev-python/grpcio/grpcio-1.57.0.ebuild)2
-rw-r--r--dev-python/guidata/Manifest1
-rw-r--r--dev-python/guidata/guidata-3.0.5.ebuild26
-rw-r--r--dev-python/jupyter-server/jupyter-server-2.7.3.ebuild2
-rw-r--r--dev-python/langdetect/Manifest2
-rw-r--r--dev-python/langdetect/metadata.xml10
-rw-r--r--dev-python/overrides/overrides-7.4.0.ebuild2
-rw-r--r--dev-python/pyside2/pyside2-5.15.10-r1.ebuild (renamed from dev-python/pyside2/pyside2-5.15.10.ebuild)2
-rw-r--r--dev-python/pyside6-tools/Manifest1
-rw-r--r--dev-python/pyside6-tools/pyside6-tools-6.5.1.1.ebuild64
-rw-r--r--dev-python/pyside6/Manifest1
-rw-r--r--dev-python/pyside6/pyside6-6.5.2-r1.ebuild223
-rw-r--r--dev-python/pyside6/pyside6-6.5.2-r2.ebuild (renamed from dev-python/pyside6/pyside6-6.5.1.1-r1.ebuild)2
-rw-r--r--dev-python/pytest-flask/Manifest1
-rw-r--r--dev-python/pytest-flask/pytest-flask-1.2.0.ebuild9
-rw-r--r--dev-python/python-evdev/python-evdev-1.6.0.ebuild2
-rw-r--r--dev-python/python-telegram-bot/files/python-telegram-bot-20.2-no-internet-tests.patch667
-rw-r--r--dev-python/python-telegram-bot/python-telegram-bot-9999.ebuild77
-rw-r--r--dev-python/shiboken2/Manifest1
-rw-r--r--dev-python/shiboken2/shiboken2-5.15.10-r1.ebuild (renamed from dev-python/shiboken2/shiboken2-5.15.10.ebuild)2
-rw-r--r--dev-python/shiboken2/shiboken2-5.15.9.ebuild175
-rw-r--r--dev-python/shiboken6/Manifest1
-rw-r--r--dev-python/shiboken6/shiboken6-6.5.2-r1.ebuild (renamed from dev-python/shiboken6/shiboken6-6.5.1.1.ebuild)2
-rw-r--r--dev-python/shiboken6/shiboken6-6.5.2.ebuild169
-rw-r--r--dev-python/types-requests/Manifest3
-rw-r--r--dev-python/types-requests/types-requests-2.31.0.6.ebuild (renamed from dev-python/types-requests/types-requests-2.31.0.5.ebuild)1
-rw-r--r--dev-python/types-requests/types-requests-2.31.0.7.ebuild23
-rw-r--r--dev-python/widgetsnbextension/widgetsnbextension-4.0.8.ebuild4
-rw-r--r--dev-python/widgetsnbextension/widgetsnbextension-4.0.9.ebuild4
38 files changed, 221 insertions, 1404 deletions
diff --git a/dev-python/flask-restx/Manifest b/dev-python/flask-restx/Manifest
index 7fe71e9d3f93..52b760f31af1 100644
--- a/dev-python/flask-restx/Manifest
+++ b/dev-python/flask-restx/Manifest
@@ -1 +1,2 @@
DIST flask-restx-0.5.1.tar.gz 398653 BLAKE2B 605c66decc83d8d7fc3449d3b7053cc2bb589d23f4db22d3a61b9422a97ceefdc0335af8c002762ec7693844b005f5562fdfda09e95c1e83fa266709af640a9d SHA512 0e4ca95a6bb45f7dfba1758387aded6215ec64fa55060889e6843fb50eed09fda96ba936eacd0d8f27b29f5dec2468d4945386f25ff4de6a51f571e16617cf52
+DIST flask-restx-1.1.0.tar.gz 398890 BLAKE2B 0268d0173e35bd36e3cd7c8eb40b1083370eed9cad3fe0cd0c55c548481844f14fa68b80f7d0461ef98074ca384cb880c1c9c30fb8d1bf0ca5e497b0cfc134b2 SHA512 83c0319591078827fe7ad2db04833817df13b5e808e3137b309b6b994908c9ae40c665aa8f10def5e06a7d1f41d9b4dc03be35c46b6403e03ef28684cc512380
diff --git a/dev-python/flask-restx/flask-restx-1.1.0.ebuild b/dev-python/flask-restx/flask-restx-1.1.0.ebuild
new file mode 100644
index 000000000000..7c9db611e165
--- /dev/null
+++ b/dev-python/flask-restx/flask-restx-1.1.0.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2022 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} )
+inherit distutils-r1
+
+DESCRIPTION="Framework API development with Flask"
+HOMEPAGE="https://flask-restx.readthedocs.io"
+SRC_URI="https://github.com/python-restx/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+
+RDEPEND="
+ dev-python/aniso8601[${PYTHON_USEDEP}]
+ dev-python/flask[${PYTHON_USEDEP}]
+ dev-python/jsonschema[${PYTHON_USEDEP}]
+ dev-python/pytz[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+ dev-python/werkzeug[${PYTHON_USEDEP}]
+"
+
+DEPEND="${RDEPEND}
+ test? (
+ dev-python/blinker[${PYTHON_USEDEP}]
+ dev-python/Faker[${PYTHON_USEDEP}]
+ dev-python/pytest-flask[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ dev-python/tzlocal[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ skip_tests=" \
+ not ReqParseTest and \
+ not EmailTest and \
+ not URLTest and \
+ not LoggingTest"
+
+ epytest tests/test_*.py -k "${skip_tests}"
+}
diff --git a/dev-python/grpc-stubs/Manifest b/dev-python/grpc-stubs/Manifest
index 1e5e0b65abe2..563d498fc079 100644
--- a/dev-python/grpc-stubs/Manifest
+++ b/dev-python/grpc-stubs/Manifest
@@ -1 +1 @@
-DIST grpc-stubs-1.53.0.2.gh.tar.gz 14607 BLAKE2B a18f17d1fe31133f7bafb4728b1748537db11b5d11f7da9364fb595c86afcfb47199d069e7eb3e05b89b92757b1080dfd443d0ee2006e85e49c75e5ad188e41a SHA512 ea8343231d12a34927bab56ddfdad69233c4e09502cd072db9ed21ec79726a600e9dc31a0b3ecbae47ea5f4357ddb0840e022fb385f6e1296665406254c59fba
+DIST grpc-stubs-1.53.0.3.gh.tar.gz 14667 BLAKE2B 58f1ff46f6e4ad96fafa7583158e8a3be1ac5fc991f50dde34899fad919fbfb46afe5da8846aa7ef98cdc4de34609ee93a06d137630d505460d34ecaa3a47837 SHA512 dbcf9882b4ad986bcf17ed613c233cfd889d46340b91534d9ef33a11e1ce25db5e81a747c57b55a1e174012c81da94d29769706a1b3932ca13b020506235ccbd
diff --git a/dev-python/grpc-stubs/files/grpc-stubs-1.53.0.3-die-on-missing-import.patch b/dev-python/grpc-stubs/files/grpc-stubs-1.53.0.3-die-on-missing-import.patch
new file mode 100644
index 000000000000..7b7a8e9f0b82
--- /dev/null
+++ b/dev-python/grpc-stubs/files/grpc-stubs-1.53.0.3-die-on-missing-import.patch
@@ -0,0 +1,12 @@
+Tests should fail if mypy fails to find the stubs that are to be tested.
+--- a/setup.cfg
++++ b/setup.cfg
+@@ -1,7 +1,7 @@
+ [mypy]
+ check_untyped_defs = True
+ ignore_errors = False
+-ignore_missing_imports = True
++ignore_missing_imports = False
+ strict_optional = True
+ no_error_summary = True
+ no_color_output = True
diff --git a/dev-python/grpc-stubs/grpc-stubs-1.53.0.2.ebuild b/dev-python/grpc-stubs/grpc-stubs-1.53.0.2.ebuild
deleted file mode 100644
index 18a87d0a6a36..000000000000
--- a/dev-python/grpc-stubs/grpc-stubs-1.53.0.2.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8,9,10,11} )
-inherit distutils-r1
-
-DESCRIPTION="gRPC typing stubs for Python"
-HOMEPAGE="
- https://pypi.org/project/grpc-stubs/
- https://github.com/shabbyrobe/grpc-stubs/
-"
-
-SRC_URI="https://github.com/shabbyrobe/grpc-stubs/archive/refs/tags/${PV}.tar.gz
- -> ${P}.gh.tar.gz"
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND="
- dev-python/grpcio[${PYTHON_USEDEP}]
- dev-python/protobuf-python[${PYTHON_USEDEP}]
-"
-BDEPEND="
- test? (
- dev-python/mypy[${PYTHON_USEDEP}]
- dev-python/pytest-mypy-plugins[${PYTHON_USEDEP}]
- dev-python/types-protobuf[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-
-python_test() {
- epytest --mypy-ini-file=setup.cfg
-}
diff --git a/dev-python/grpc-stubs/grpc-stubs-1.53.0.3.ebuild b/dev-python/grpc-stubs/grpc-stubs-1.53.0.3.ebuild
new file mode 100644
index 000000000000..f38246e950c2
--- /dev/null
+++ b/dev-python/grpc-stubs/grpc-stubs-1.53.0.3.ebuild
@@ -0,0 +1,40 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8,9,10,11} )
+inherit distutils-r1
+
+DESCRIPTION="gRPC typing stubs for Python"
+HOMEPAGE="
+ https://pypi.org/project/grpc-stubs/
+ https://github.com/shabbyrobe/grpc-stubs/
+"
+
+SRC_URI="https://github.com/shabbyrobe/grpc-stubs/archive/refs/tags/${PV}.tar.gz
+ -> ${P}.gh.tar.gz"
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+RDEPEND="dev-python/types-protobuf[${PYTHON_USEDEP}]"
+BDEPEND="test? (
+ dev-python/pytest-mypy-plugins[${PYTHON_USEDEP}]
+ ${RDEPEND}
+ )"
+
+distutils_enable_tests pytest
+
+PATCHES="${FILESDIR}/"${P}-die-on-missing-import.patch
+
+python_test() {
+ # Gentoo's PEP 517 mode runs tests in a venv-like environment.
+ # Pytest-mypy-plugins checks the PATH for mypy, we provide a venv-aware
+ # variant.
+ printf "#!/bin/bash\n $(which python) -m mypy \$@" > \
+ "${BUILD_DIR}"/install/usr/bin/mypy || die
+ chmod +x "${BUILD_DIR}"/install/usr/bin/mypy || die
+ epytest --mypy-ini-file=setup.cfg
+ rm "${BUILD_DIR}"/install/usr/bin/mypy || die
+}
diff --git a/dev-python/grpcio-tools/Manifest b/dev-python/grpcio-tools/Manifest
index b400211ff345..3736262cced5 100644
--- a/dev-python/grpcio-tools/Manifest
+++ b/dev-python/grpcio-tools/Manifest
@@ -1,2 +1,2 @@
-DIST grpcio-tools-1.57.0.tar.gz 4488020 BLAKE2B 24002e9825a6d0a2ae157baf1af066e677c905e90111dc77d3d7d22fc94256911a35e70bd1238cef1a9bd23a08851b89d85f93131595cc56fff72443cfd05eb0 SHA512 83601467b6d09b702fd549b964e8486c9585d7d6377676a4b9e13f1e9d4b86c85601819e3620e59e84ad2da9b68679350dc3c9920b6e544ef6e3e286bd78746b
DIST grpcio-tools-1.58.0.tar.gz 4525422 BLAKE2B 52b7e7d6f6b7c3afba6191597d00ba8fbe570de27c94d15f07c7826c2309e4f4f0297eed2799d584db1badaeac5bc6625f4f9dffc68d49b1729a0bc0c868bc07 SHA512 02a9ca5d08a8ec99b5327b0d1baba0f2f6312a8e25349a854f5314856aba465e9d9fd864adcd47e6ccfcfe14833f3c39250a8b00b0d36c25a18cbbb6dfa9dad9
+DIST grpcio-tools-1.59.0.tar.gz 4622547 BLAKE2B 1d6cd5f375a4139bc977f04b2b0f18689e4df58d29f6ca5f05ea8fb1e47ba455d7e6c0c65ee11467d878fe12f584a641d75153f0ae59aa8ec28289a0c102cddc SHA512 15686fb90c2c228875792a580a2637098ec07a7f715302af7efb28b28c19c0083616786c1b526984a225035652372c5898256cb17536225c313797a1d0c85675
diff --git a/dev-python/grpcio-tools/grpcio-tools-1.57.0.ebuild b/dev-python/grpcio-tools/grpcio-tools-1.59.0.ebuild
index fe2081bcad1f..117d718b0f86 100644
--- a/dev-python/grpcio-tools/grpcio-tools-1.57.0.ebuild
+++ b/dev-python/grpcio-tools/grpcio-tools-1.59.0.ebuild
@@ -9,7 +9,7 @@ inherit distutils-r1 multiprocessing prefix
DESCRIPTION="Protobuf code generator for gRPC"
HOMEPAGE="https://grpc.io https://pypi.org/project/grpcio-tools/"
-SRC_URI="https://files.pythonhosted.org/packages/35/48/d02fe574fd3d20e61671d49a0e7f9dd687497feabb49b20575d82de2400c/grpcio-tools-1.57.0.tar.gz"
+SRC_URI="https://files.pythonhosted.org/packages/b8/62/bac5143fd2629d611c03832737040d1bb168ad52d59cab41131df0e06ead/grpcio-tools-1.59.0.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
diff --git a/dev-python/grpcio/Manifest b/dev-python/grpcio/Manifest
index d28086f58be0..eff71b999436 100644
--- a/dev-python/grpcio/Manifest
+++ b/dev-python/grpcio/Manifest
@@ -1,2 +1,2 @@
-DIST grpcio-1.57.0.tar.gz 24737546 BLAKE2B 61cca75c6c39b90caebee51d587828c5ef831dabeaf914e68dc1d52667aafd41104bca3d7a9815fff76c05a097f1b9869d094de4a061307f005723714700ae16 SHA512 d4564d52f5155385391e4a8529ea8aa570c670aafb7211267891000406345d4a5576424e70e0694d270d936e00221a527fb58481e9b3af07817a6302c1043c9d
DIST grpcio-1.58.0.tar.gz 24784339 BLAKE2B 6b0d80aab3599f6f3633c4fd222aec550bef5aa6205007cb1dfee7704582cecaad51f78a15931480154e30a453df13ee26352429dc0b98bcb217b321c0e19aa4 SHA512 6c2de8de216c5059e8c7842e491be3e4c6fe9f3c40d3980560cacaa11c9fb066634a59540cc61a882be1976e8b3e0f1be7f272740b025aaeb96d8f47eee1cc35
+DIST grpcio-1.59.0.tar.gz 24842974 BLAKE2B d883d9800f5b2025774c37a6c076500e113121b7e1254368d9c4b95c1170593969af4568492744527f909f828121630dd870210d2e2de718ba907be09f9b826b SHA512 1b345c2b87593934aa15e8019d858c6f7000d3e66ffd20ae538028aa109d8553ccff819ad8796b19c51d647851139d13b9158c9f2639b0b9506347ceff646637
diff --git a/dev-python/grpcio/grpcio-1.57.0.ebuild b/dev-python/grpcio/grpcio-1.59.0.ebuild
index 8efafbdd0c81..09238574cb50 100644
--- a/dev-python/grpcio/grpcio-1.57.0.ebuild
+++ b/dev-python/grpcio/grpcio-1.59.0.ebuild
@@ -8,7 +8,7 @@ inherit distutils-r1 multiprocessing prefix
DESCRIPTION="High-performance RPC framework (python libraries)"
HOMEPAGE="https://grpc.io https://pypi.org/project/grpcio/"
-SRC_URI="https://files.pythonhosted.org/packages/18/b5/3ebe1bd133f472640e2d8941d2208b8de63706ebc08b09e1bb988d7f0071/grpcio-1.57.0.tar.gz"
+SRC_URI="https://files.pythonhosted.org/packages/38/98/ca2cb5a81e0e2f3e3a00ebf91338fd3278ea0673e156a7ff2de30fe17113/grpcio-1.59.0.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
diff --git a/dev-python/guidata/Manifest b/dev-python/guidata/Manifest
index a800ab419052..37544c3379d2 100644
--- a/dev-python/guidata/Manifest
+++ b/dev-python/guidata/Manifest
@@ -1 +1,2 @@
DIST guidata-2.3.1.tar.gz 504812 BLAKE2B 4b2e5e07ee76bbeb95a9a55a4cde1d409d2438fe5273a0f154d34e8beb9934f810b29a33ef508009e38c589d57402aef55d346b93856fc744e7a8236748f5e86 SHA512 7488ca8c761394dfd9d58a8ac3c96dc963adab6df278823fb1a7d9132febc16e275908034ef48381d696668add43f62438fab1ba22f70f5e08f33b14a81082c5
+DIST guidata-3.0.5.tar.gz 963433 BLAKE2B 83b9745035c5c7ef549006fe500a2cef48e6b8a45e5d16b27d0a763ac8aad591d6fe455b661c586eea0ce0e12a5988c2a0309df8ea62506d20ab2c3fda1ca120 SHA512 2abcbc6eed502ebc9830863ef98966f7689aa59f468aa41b0438403d4604e4521041d2d908ec7fc9b8363470753606a364ac9e91d9ecd15c2d243db1ec1f885e
diff --git a/dev-python/guidata/guidata-3.0.5.ebuild b/dev-python/guidata/guidata-3.0.5.ebuild
new file mode 100644
index 000000000000..8d8afc662fef
--- /dev/null
+++ b/dev-python/guidata/guidata-3.0.5.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8,9,10,11} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Library for user interfaces for easy dataset editing and display"
+HOMEPAGE="https://pypi.python.org/pypi/guidata"
+LICENSE="BSD"
+
+SLOT="0"
+IUSE=""
+
+# No automated tests can be performed afaik
+RESTRICT="test"
+
+RDEPEND="
+ dev-python/PyQt5[${PYTHON_USEDEP}]
+ dev-python/QtPy[${PYTHON_USEDEP}]
+"
+
+KEYWORDS="~amd64 ~x86"
diff --git a/dev-python/jupyter-server/jupyter-server-2.7.3.ebuild b/dev-python/jupyter-server/jupyter-server-2.7.3.ebuild
index 7800b9ffa7bb..ff9d7b22ce8e 100644
--- a/dev-python/jupyter-server/jupyter-server-2.7.3.ebuild
+++ b/dev-python/jupyter-server/jupyter-server-2.7.3.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="BSD"
SLOT="0"
-KEYWORDS="amd64 arm arm64 ~loong ppc64 ~riscv ~s390"
+KEYWORDS="amd64 arm arm64 ~loong ~ppc ppc64 ~riscv ~s390 ~x86"
RDEPEND="
>=dev-python/anyio-3.1.0[${PYTHON_USEDEP}]
diff --git a/dev-python/langdetect/Manifest b/dev-python/langdetect/Manifest
index a11d7c268c91..e9da2ac43cac 100644
--- a/dev-python/langdetect/Manifest
+++ b/dev-python/langdetect/Manifest
@@ -1 +1,3 @@
DIST langdetect-1.0.9.tar.gz 981474 BLAKE2B ea8a9c3f16a2987c080742473bff4f2c1503f53fb3c2b40b0b1d6212bb6133ea22dce7864ffcfb8968c3a46b157d45cb3e2cf6f84bdbed0266cc716a853b032c SHA512 7558d674c47b080c79e43a00a25d2c7f77188cf60bea2cecb3bebb803d75e1aa42b43c74bd26ea1b541f4cb927421908882cbec01a91f0913984217e71ccc8db
+EBUILD langdetect-1.0.9.ebuild 493 BLAKE2B 0df8bce19bc80f79f8e76bcef5a4c2caf333365fe0cb9a3c076b7858bceded5a3e58921474f866a2709dd657b7ed330c1ec4a7f9d7bab0fcf1bc92d77cabc32d SHA512 ea2a1adcb133ac5fc951ba1aa90ef1ce3dfcc424e59727591763d4875aa044a74188be2d15fd89c6b2e83ed6ea04ec3d9851ed584ae79d2c2c127bde7d994b48
+MISC metadata.xml 457 BLAKE2B 630128a3e982b6d60cc7b9f74c79fcb5ee47a71a02c73a50af9da8cedb6fad8e20a7f74b881e5b25c6483b92c9edbd56552cd38b2d9cbfa8b3eb4530facea969 SHA512 674f4f5cd809c6c77bc14e0f5687fa972bef14bdfa0b3343c5d66b7163eef1906eb87d060c8288732f825de71dce291ad0b841a5f2f0dd230f957b5687e45d45
diff --git a/dev-python/langdetect/metadata.xml b/dev-python/langdetect/metadata.xml
index ddb5b0f1787e..020e07f2a3dd 100644
--- a/dev-python/langdetect/metadata.xml
+++ b/dev-python/langdetect/metadata.xml
@@ -2,9 +2,11 @@
<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <email>cyber+gentoo@sysrq.in</email>
- <name>Anna</name>
+ <email>marcin.deranek@slonko.net</email>
+ <name>Marcin Deranek</name>
</maintainer>
-
- <origin>gentoo-guru-overlay</origin>
+ <upstream>
+ <bugs-to>https://github.com/Mimino666/langdetect/issues</bugs-to>
+ </upstream>
+ <origin>slonko-overlay</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-python/overrides/overrides-7.4.0.ebuild b/dev-python/overrides/overrides-7.4.0.ebuild
index 78f20f41e621..c571d7945f6a 100644
--- a/dev-python/overrides/overrides-7.4.0.ebuild
+++ b/dev-python/overrides/overrides-7.4.0.ebuild
@@ -16,6 +16,6 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="amd64 arm arm64 ~loong ppc64 ~riscv ~s390"
+KEYWORDS="amd64 arm arm64 ~loong ~ppc ppc64 ~riscv ~s390 ~x86"
distutils_enable_tests pytest
diff --git a/dev-python/pyside2/pyside2-5.15.10.ebuild b/dev-python/pyside2/pyside2-5.15.10-r1.ebuild
index 113e1ed4e500..d54aed04846d 100644
--- a/dev-python/pyside2/pyside2-5.15.10.ebuild
+++ b/dev-python/pyside2/pyside2-5.15.10-r1.ebuild
@@ -81,7 +81,7 @@ REQUIRED_USE="${PYTHON_REQUIRED_USE}
RESTRICT="test"
# Minimal supported version of Qt.
-QT_PV="$(ver_cut 1-2)*:5"
+QT_PV="$(ver_cut 1-3)*:5"
RDEPEND="${PYTHON_DEPS}
~dev-python/shiboken2-${PV}[${PYTHON_USEDEP}]
diff --git a/dev-python/pyside6-tools/Manifest b/dev-python/pyside6-tools/Manifest
index 4e27687b1364..94251ca94c20 100644
--- a/dev-python/pyside6-tools/Manifest
+++ b/dev-python/pyside6-tools/Manifest
@@ -1,2 +1 @@
-DIST pyside-setup-everywhere-src-6.5.1.1.tar.xz 13565304 BLAKE2B 55b221142f5e112a39c0b5df7f7b200f65cfd30da2884340b9bef5e7cb1bcfe2e8ed7aeb0cf7ef5f894f43f6ad582b35e649b7c6430bdba8719e70cca3c29c2d SHA512 fe99ad09b4e0b238175594bbff94453a84c56f21b004477fdab2a2435b4b4148b0b99b26e1b1e1671b71656f4cfb03c3913aa6d85084e3eb8200ff906535a5eb
DIST pyside-setup-everywhere-src-6.5.2.tar.xz 13576204 BLAKE2B 3e1d62e6d877140137896552184c8fe56fd62056a1ea506ab474256ee0e2f16d3e10ddb84965602650bb466f3563555c3c344698b6877a45f9130d1e919aba21 SHA512 ca677645579fc6b82285dd6c294909ca5e91a8c8efbc53bd103aff64e3ef89eff67820bfc9100cf50f043015d41c49d4ff86b3008f02505941a09bd54621f403
diff --git a/dev-python/pyside6-tools/pyside6-tools-6.5.1.1.ebuild b/dev-python/pyside6-tools/pyside6-tools-6.5.1.1.ebuild
deleted file mode 100644
index dde4bc5692d2..000000000000
--- a/dev-python/pyside6-tools/pyside6-tools-6.5.1.1.ebuild
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright 1999-2023 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} )
-CMAKE_IN_SOURCE_BUILD=1
-
-inherit cmake 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}-$(ver_cut 1-3)/sources/pyside-tools"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-RDEPEND="${PYTHON_DEPS}
- ~dev-python/pyside6-${PV}[${PYTHON_USEDEP}]
-"
-DEPEND="${RDEPEND}"
-
-src_prepare() {
- cmake_src_prepare
-
- python_copy_sources
-}
-
-src_configure() {
- pyside-tools_configure() {
- local mycmakeargs=(
- # the tools conflict with tools from Qt
- -DNO_QT_TOOLS=yes
- )
- CMAKE_USE_DIR="${BUILD_DIR}" cmake_src_configure
- }
-
- python_foreach_impl pyside-tools_configure
-}
-
-src_compile() {
- pyside-tools_compile() {
- CMAKE_USE_DIR="${BUILD_DIR}" cmake_src_compile
- }
-
- python_foreach_impl pyside-tools_compile
-}
-
-src_install() {
- pyside-tools_install() {
- python_doexe "${BUILD_DIR}/"*.py
- }
-
- python_foreach_impl pyside-tools_install
-
- einstalldocs
-}
diff --git a/dev-python/pyside6/Manifest b/dev-python/pyside6/Manifest
index 4e27687b1364..94251ca94c20 100644
--- a/dev-python/pyside6/Manifest
+++ b/dev-python/pyside6/Manifest
@@ -1,2 +1 @@
-DIST pyside-setup-everywhere-src-6.5.1.1.tar.xz 13565304 BLAKE2B 55b221142f5e112a39c0b5df7f7b200f65cfd30da2884340b9bef5e7cb1bcfe2e8ed7aeb0cf7ef5f894f43f6ad582b35e649b7c6430bdba8719e70cca3c29c2d SHA512 fe99ad09b4e0b238175594bbff94453a84c56f21b004477fdab2a2435b4b4148b0b99b26e1b1e1671b71656f4cfb03c3913aa6d85084e3eb8200ff906535a5eb
DIST pyside-setup-everywhere-src-6.5.2.tar.xz 13576204 BLAKE2B 3e1d62e6d877140137896552184c8fe56fd62056a1ea506ab474256ee0e2f16d3e10ddb84965602650bb466f3563555c3c344698b6877a45f9130d1e919aba21 SHA512 ca677645579fc6b82285dd6c294909ca5e91a8c8efbc53bd103aff64e3ef89eff67820bfc9100cf50f043015d41c49d4ff86b3008f02505941a09bd54621f403
diff --git a/dev-python/pyside6/pyside6-6.5.2-r1.ebuild b/dev-python/pyside6/pyside6-6.5.2-r1.ebuild
deleted file mode 100644
index 44a5a18cc521..000000000000
--- a/dev-python/pyside6/pyside6-6.5.2-r1.ebuild
+++ /dev/null
@@ -1,223 +0,0 @@
-# Copyright 1999-2023 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} )
-
-inherit cmake 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}-$(ver_cut 1-3)/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="0"
-KEYWORDS="~amd64"
-IUSE="
- +dbus charts +concurrent designer gles2-only +gui help multimedia
- +network network-auth +opengl positioning +printsupport qml quick
- quick3d serialport +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}
- charts? ( gui widgets )
- designer? ( widgets )
- gles2-only? ( gui )
- gui? ( dbus opengl )
- help? ( network sql widgets )
- multimedia? ( gui network )
- network-auth? ( network )
- opengl? ( gui )
- printsupport? ( widgets )
- qml? ( network )
- quick? ( gui network opengl qml )
- quick3d? ( gui network opengl qml quick )
- 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-2)*:6"
-
-RDEPEND="${PYTHON_DEPS}
- ~dev-python/shiboken6-${PV}[${PYTHON_USEDEP}]
- =dev-qt/qtbase-${QT_PV}[concurrent?,dbus?,gles2-only=,network?,opengl?,sql?,widgets?,xml?]
- 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] )
- multimedia? ( =dev-qt/qtmultimedia-${QT_PV} )
- network-auth? ( =dev-qt/qtnetworkauth-${QT_PV} )
- 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} )
- 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}[widgets?] )
- websockets? ( =dev-qt/qtwebsockets-${QT_PV} )
-"
-DEPEND="${RDEPEND}
- 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"
- "${FILESDIR}/${PN}-6.3.1-fix-designer-plugin-install-location.patch"
-)
-
-src_configure() {
- # See collect_module_if_found macros in PySideHelpers.cmake
- local mycmakeargs=(
- -DBUILD_TESTS=$(usex test)
- -DCMAKE_DISABLE_FIND_PACKAGE_Qt63DAnimation=yes
- -DCMAKE_DISABLE_FIND_PACKAGE_Qt63DCore=yes
- -DCMAKE_DISABLE_FIND_PACKAGE_Qt63DExtras=yes
- -DCMAKE_DISABLE_FIND_PACKAGE_Qt63DInput=yes
- -DCMAKE_DISABLE_FIND_PACKAGE_Qt63DLogic=yes
- -DCMAKE_DISABLE_FIND_PACKAGE_Qt63DRender=yes
- #-DCMAKE_DISABLE_FIND_PACKAGE_Qt6AxContainer=yes
- -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Bluetooth=yes
- -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=yes
- -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=yes
- -DCMAKE_DISABLE_FIND_PACKAGE_Qt6OpenGL=$(usex !opengl)
- -DCMAKE_DISABLE_FIND_PACKAGE_Qt6OpenGLWidgets=$(usex !opengl yes $(usex !widgets))
- -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Pdf=yes
- -DCMAKE_DISABLE_FIND_PACKAGE_Qt6PdfWidgets=yes
- -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=yes
- -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Sensors=yes
- -DCMAKE_DISABLE_FIND_PACKAGE_Qt6SerialPort=$(usex !serialport)
- -DCMAKE_DISABLE_FIND_PACKAGE_Qt6SpatialAudio=yes
- -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=yes
- -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_EXECUTABLE="${PYTHON}"
- -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/pyside6/pyside6-6.5.1.1-r1.ebuild b/dev-python/pyside6/pyside6-6.5.2-r2.ebuild
index 44a5a18cc521..c092cafff39c 100644
--- a/dev-python/pyside6/pyside6-6.5.1.1-r1.ebuild
+++ b/dev-python/pyside6/pyside6-6.5.2-r2.ebuild
@@ -75,7 +75,7 @@ REQUIRED_USE="${PYTHON_REQUIRED_USE}
RESTRICT="test"
# Minimal supported version of Qt.
-QT_PV="$(ver_cut 1-2)*:6"
+QT_PV="$(ver_cut 1-3)*:6"
RDEPEND="${PYTHON_DEPS}
~dev-python/shiboken6-${PV}[${PYTHON_USEDEP}]
diff --git a/dev-python/pytest-flask/Manifest b/dev-python/pytest-flask/Manifest
new file mode 100644
index 000000000000..fe3e97c594a1
--- /dev/null
+++ b/dev-python/pytest-flask/Manifest
@@ -0,0 +1 @@
+DIST pytest-flask-1.2.0.tar.gz 32446 BLAKE2B c0cbfdcf843573eba07cd009dc33b5f651dc859f94bd2059dccbf81ce6cc4c56870004b393254d9aa1beb5ff6225e3184ce26f71d74189eb6cb81b3ce0e3b219 SHA512 858ef198299f0cb5761bedcd98219fe8245abbd635630d6fe42f6b268db9029413c92cf163bc055387b0449cdcca695a1e7768cc3753c90f43373d8fa4e39e25
diff --git a/dev-python/pytest-flask/pytest-flask-1.2.0.ebuild b/dev-python/pytest-flask/pytest-flask-1.2.0.ebuild
index 031c368f7b85..a565bb993b14 100644
--- a/dev-python/pytest-flask/pytest-flask-1.2.0.ebuild
+++ b/dev-python/pytest-flask/pytest-flask-1.2.0.ebuild
@@ -4,19 +4,16 @@
EAPI=8
DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
PYTHON_COMPAT=( python3_{8,9,10,11} pypy3 )
-inherit distutils-r1
+inherit distutils-r1 pypi
DESCRIPTION="A set of pytest fixtures to test Flask applications "
HOMEPAGE="http://pytest-flask.readthedocs.org"
-inherit git-r3
-EGIT_REPO_URI="https://github.com/pytest-dev/${PN}.git"
-EGI_COMMIT="1.2.0"
-
LICENSE="MIT"
SLOT="0"
-KEYWORDS=""
+KEYWORDS="~amd64"
IUSE="test"
RDEPEND="
diff --git a/dev-python/python-evdev/python-evdev-1.6.0.ebuild b/dev-python/python-evdev/python-evdev-1.6.0.ebuild
index 10932169d4d4..d54918b37f7a 100644
--- a/dev-python/python-evdev/python-evdev-1.6.0.ebuild
+++ b/dev-python/python-evdev/python-evdev-1.6.0.ebuild
@@ -22,7 +22,7 @@ SRC_URI="
LICENSE="BSD"
SLOT="0"
-KEYWORDS="amd64 ~arm x86"
+KEYWORDS="amd64 ~arm ~arm64 x86"
distutils_enable_tests pytest
diff --git a/dev-python/python-telegram-bot/files/python-telegram-bot-20.2-no-internet-tests.patch b/dev-python/python-telegram-bot/files/python-telegram-bot-20.2-no-internet-tests.patch
deleted file mode 100644
index b904751a8c72..000000000000
--- a/dev-python/python-telegram-bot/files/python-telegram-bot-20.2-no-internet-tests.patch
+++ /dev/null
@@ -1,667 +0,0 @@
-From: Pedro Arizmendi <dwosky@pm.me>
-Skip all tests that require an internet connection.
-
---- a/tests/_files/test_animation.py
-+++ b/tests/_files/test_animation.py
-@@ -66,11 +66,13 @@ class TestAnimationBase:
-
-
- class TestAnimationWithoutRequest(TestAnimationBase):
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_slot_behaviour(self, animation):
- for attr in animation.__slots__:
- assert getattr(animation, attr, "err") != "err", f"got extra slot '{attr}'"
- assert len(mro_slots(animation)) == len(set(mro_slots(animation))), "duplicate slot"
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_creation(self, animation):
- assert isinstance(animation, Animation)
- assert isinstance(animation.file_id, str)
-@@ -78,6 +80,7 @@ class TestAnimationWithoutRequest(TestAnimationBase):
- assert animation.file_id != ""
- assert animation.file_unique_id != ""
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_expected_values(self, animation):
- assert animation.mime_type == self.mime_type
- assert animation.file_name.startswith("game.gif") == self.file_name.startswith("game.gif")
-@@ -95,6 +98,7 @@ class TestAnimationWithoutRequest(TestAnimationBase):
- assert animation.thumb is animation.thumbnail
- check_thumb_deprecation_warnings_for_args_and_attrs(recwarn, __file__)
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_de_json(self, bot, animation):
- json_dict = {
- "file_id": self.animation_file_id,
-@@ -115,6 +119,7 @@ class TestAnimationWithoutRequest(TestAnimationBase):
- assert animation.mime_type == self.mime_type
- assert animation.file_size == self.file_size
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_to_dict(self, animation):
- animation_dict = animation.to_dict()
-
-@@ -184,6 +189,7 @@ class TestAnimationWithoutRequest(TestAnimationBase):
- finally:
- bot._local_mode = False
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- async def test_send_with_animation(self, monkeypatch, bot, chat_id, animation):
- async def make_assertion(url, request_data: RequestData, *args, **kwargs):
- return request_data.json_parameters["animation"] == animation.file_id
-@@ -200,6 +206,7 @@ class TestAnimationWithoutRequest(TestAnimationBase):
- with pytest.raises(ValueError, match="different entities as 'thumb' and 'thumbnail'"):
- await bot.send_animation(chat_id, file, thumbnail=file, thumb=different_file)
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- async def test_get_file_instance_method(self, monkeypatch, animation):
- async def make_assertion(*_, **kwargs):
- return kwargs["file_id"] == animation.file_id
---- a/tests/_files/test_audio.py
-+++ b/tests/_files/test_audio.py
-@@ -67,11 +67,13 @@ class TestAudioBase:
-
-
- class TestAudioWithoutRequest(TestAudioBase):
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_slot_behaviour(self, audio):
- for attr in audio.__slots__:
- assert getattr(audio, attr, "err") != "err", f"got extra slot '{attr}'"
- assert len(mro_slots(audio)) == len(set(mro_slots(audio))), "duplicate slot"
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_creation(self, audio):
- # Make sure file has been uploaded.
- assert isinstance(audio, Audio)
-@@ -80,6 +82,7 @@ class TestAudioWithoutRequest(TestAudioBase):
- assert audio.file_id != ""
- assert audio.file_unique_id != ""
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_expected_values(self, audio):
- assert audio.duration == self.duration
- assert audio.performer is None
-@@ -95,6 +98,7 @@ class TestAudioWithoutRequest(TestAudioBase):
- assert audio.thumb is audio.thumbnail
- check_thumb_deprecation_warnings_for_args_and_attrs(recwarn, __file__)
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_de_json(self, bot, audio):
- json_dict = {
- "file_id": self.audio_file_id,
-@@ -120,6 +124,7 @@ class TestAudioWithoutRequest(TestAudioBase):
- assert json_audio.file_size == self.file_size
- assert json_audio.thumbnail == audio.thumbnail
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_to_dict(self, audio):
- audio_dict = audio.to_dict()
-
-@@ -131,6 +136,7 @@ class TestAudioWithoutRequest(TestAudioBase):
- assert audio_dict["file_size"] == audio.file_size
- assert audio_dict["file_name"] == audio.file_name
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_equality(self, audio):
- a = Audio(audio.file_id, audio.file_unique_id, audio.duration)
- b = Audio("", audio.file_unique_id, audio.duration)
-@@ -151,6 +157,7 @@ class TestAudioWithoutRequest(TestAudioBase):
- assert a != e
- assert hash(a) != hash(e)
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- async def test_send_with_audio(self, monkeypatch, bot, chat_id, audio):
- async def make_assertion(url, request_data: RequestData, *args, **kwargs):
- return request_data.json_parameters["audio"] == audio.file_id
-@@ -198,6 +205,7 @@ class TestAudioWithoutRequest(TestAudioBase):
- with pytest.raises(ValueError, match="different entities as 'thumb' and 'thumbnail'"):
- await bot.send_audio(chat_id, file, thumbnail=file, thumb=different_file)
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- async def test_get_file_instance_method(self, monkeypatch, audio):
- async def make_assertion(*_, **kwargs):
- return kwargs["file_id"] == audio.file_id
---- a/tests/_files/test_chatphoto.py
-+++ b/tests/_files/test_chatphoto.py
-@@ -61,11 +61,13 @@ class TestChatPhotoBase:
-
-
- class TestChatPhotoWithoutRequest(TestChatPhotoBase):
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_slot_behaviour(self, chat_photo):
- for attr in chat_photo.__slots__:
- assert getattr(chat_photo, attr, "err") != "err", f"got extra slot '{attr}'"
- assert len(mro_slots(chat_photo)) == len(set(mro_slots(chat_photo))), "duplicate slot"
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_de_json(self, bot, chat_photo):
- json_dict = {
- "small_file_id": self.chatphoto_small_file_id,
-@@ -80,6 +82,7 @@ class TestChatPhotoWithoutRequest(TestChatPhotoBase):
- assert chat_photo.small_file_unique_id == self.chatphoto_small_file_unique_id
- assert chat_photo.big_file_unique_id == self.chatphoto_big_file_unique_id
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- async def test_to_dict(self, chat_photo):
- chat_photo_dict = chat_photo.to_dict()
-
-@@ -121,6 +124,7 @@ class TestChatPhotoWithoutRequest(TestChatPhotoBase):
- assert a != e
- assert hash(a) != hash(e)
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- async def test_send_with_chat_photo(self, monkeypatch, bot, super_group_id, chat_photo):
- async def make_assertion(url, request_data: RequestData, *args, **kwargs):
- return request_data.parameters["photo"] == chat_photo.to_dict()
-@@ -129,6 +133,7 @@ class TestChatPhotoWithoutRequest(TestChatPhotoBase):
- message = await bot.set_chat_photo(photo=chat_photo, chat_id=super_group_id)
- assert message
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- async def test_get_small_file_instance_method(self, monkeypatch, chat_photo):
- async def make_assertion(*_, **kwargs):
- return kwargs["file_id"] == chat_photo.small_file_id
-@@ -142,6 +147,7 @@ class TestChatPhotoWithoutRequest(TestChatPhotoBase):
- monkeypatch.setattr(chat_photo.get_bot(), "get_file", make_assertion)
- assert await chat_photo.get_small_file()
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- async def test_get_big_file_instance_method(self, monkeypatch, chat_photo):
- async def make_assertion(*_, **kwargs):
- return kwargs["file_id"] == chat_photo.big_file_id
---- a/tests/_files/test_document.py
-+++ b/tests/_files/test_document.py
-@@ -62,11 +62,13 @@ class TestDocumentBase:
-
-
- class TestDocumentWithoutRequest(TestDocumentBase):
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_slot_behaviour(self, document):
- for attr in document.__slots__:
- assert getattr(document, attr, "err") != "err", f"got extra slot '{attr}'"
- assert len(mro_slots(document)) == len(set(mro_slots(document))), "duplicate slot"
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_creation(self, document):
- assert isinstance(document, Document)
- assert isinstance(document.file_id, str)
-@@ -74,6 +76,7 @@ class TestDocumentWithoutRequest(TestDocumentBase):
- assert document.file_id != ""
- assert document.file_unique_id != ""
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_expected_values(self, document):
- assert document.file_size == self.file_size
- assert document.mime_type == self.mime_type
-@@ -87,6 +90,7 @@ class TestDocumentWithoutRequest(TestDocumentBase):
- assert document.thumb is document.thumbnail
- check_thumb_deprecation_warnings_for_args_and_attrs(recwarn, __file__)
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_de_json(self, bot, document):
- json_dict = {
- "file_id": self.document_file_id,
-@@ -106,6 +110,7 @@ class TestDocumentWithoutRequest(TestDocumentBase):
- assert test_document.mime_type == self.mime_type
- assert test_document.file_size == self.file_size
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_to_dict(self, document):
- document_dict = document.to_dict()
-
-@@ -116,6 +121,7 @@ class TestDocumentWithoutRequest(TestDocumentBase):
- assert document_dict["mime_type"] == document.mime_type
- assert document_dict["file_size"] == document.file_size
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_equality(self, document):
- a = Document(document.file_id, document.file_unique_id)
- b = Document("", document.file_unique_id)
-@@ -137,6 +143,7 @@ class TestDocumentWithoutRequest(TestDocumentBase):
- await bot.send_document(chat_id=chat_id)
-
- @pytest.mark.parametrize("disable_content_type_detection", [True, False, None])
-+ @pytest.mark.skip(reason="Requires internet connection")
- async def test_send_with_document(
- self, monkeypatch, bot, chat_id, document, disable_content_type_detection
- ):
-@@ -192,6 +199,7 @@ class TestDocumentWithoutRequest(TestDocumentBase):
- with pytest.raises(ValueError, match="different entities as 'thumb' and 'thumbnail'"):
- await bot.send_document(chat_id, file, thumbnail=file, thumb=different_file)
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- async def test_get_file_instance_method(self, monkeypatch, document):
- async def make_assertion(*_, **kwargs):
- return kwargs["file_id"] == document.file_id
---- a/tests/_files/test_inputmedia.py
-+++ b/tests/_files/test_inputmedia.py
-@@ -186,6 +186,7 @@ class TestInputMediaVideoWithoutRequest(TestInputMediaVideoBase):
- assert input_media_video_dict["supports_streaming"] == input_media_video.supports_streaming
- assert input_media_video_dict["has_spoiler"] == input_media_video.has_spoiler
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_with_video(self, video): # noqa: F811
- # fixture found in test_video
- input_media_video = InputMediaVideo(video, caption="test 3")
-@@ -258,6 +259,7 @@ class TestInputMediaPhotoWithoutRequest(TestInputMediaPhotoBase):
- ]
- assert input_media_photo_dict["has_spoiler"] == input_media_photo.has_spoiler
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_with_photo(self, photo): # noqa: F811
- # fixture found in test_photo
- input_media_photo = InputMediaPhoto(photo, caption="test 2")
-@@ -329,6 +331,7 @@ class TestInputMediaAnimationWithoutRequest(TestInputMediaAnimationBase):
- assert input_media_animation_dict["duration"] == input_media_animation.duration
- assert input_media_animation_dict["has_spoiler"] == input_media_animation.has_spoiler
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_with_animation(self, animation): # noqa: F811
- # fixture found in test_animation
- input_media_animation = InputMediaAnimation(animation, caption="test 2")
-@@ -411,6 +414,7 @@ class TestInputMediaAudioWithoutRequest(TestInputMediaAudioBase):
- ce.to_dict() for ce in input_media_audio.caption_entities
- ]
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_with_audio(self, audio): # noqa: F811
- # fixture found in test_audio
- input_media_audio = InputMediaAudio(audio, caption="test 3")
-@@ -496,6 +500,7 @@ class TestInputMediaDocumentWithoutRequest(TestInputMediaDocumentBase):
- == input_media_document.disable_content_type_detection
- )
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_with_document(self, document): # noqa: F811
- # fixture found in test_document
- input_media_document = InputMediaDocument(document, caption="test 3")
-@@ -559,6 +564,7 @@ def media_group_no_caption_only_parse_mode(photo, thumb): # noqa: F811
-
-
- class TestSendMediaGroupWithoutRequest:
-+ @pytest.mark.skip(reason="Requires internet connection")
- async def test_send_media_group_throws_error_with_group_caption_and_individual_captions(
- self,
- bot,
---- a/tests/_files/test_photo.py
-+++ b/tests/_files/test_photo.py
-@@ -74,11 +74,13 @@ class TestPhotoBase:
-
-
- class TestPhotoWithoutRequest(TestPhotoBase):
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_slot_behaviour(self, photo):
- for attr in photo.__slots__:
- assert getattr(photo, attr, "err") != "err", f"got extra slot '{attr}'"
- assert len(mro_slots(photo)) == len(set(mro_slots(photo))), "duplicate slot"
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_creation(self, thumb, photo):
- # Make sure file has been uploaded.
- assert isinstance(photo, PhotoSize)
-@@ -93,6 +95,7 @@ class TestPhotoWithoutRequest(TestPhotoBase):
- assert thumb.file_id != ""
- assert thumb.file_unique_id != ""
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_expected_values(self, photo, thumb):
- assert photo.width == self.width
- assert photo.height == self.height
-@@ -101,6 +104,7 @@ class TestPhotoWithoutRequest(TestPhotoBase):
- assert thumb.height == 90
- assert thumb.file_size == 1477
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_de_json(self, bot, photo):
- json_dict = {
- "file_id": photo.file_id,
-@@ -118,6 +122,7 @@ class TestPhotoWithoutRequest(TestPhotoBase):
- assert json_photo.height == self.height
- assert json_photo.file_size == self.file_size
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_to_dict(self, photo):
- photo_dict = photo.to_dict()
-
-@@ -128,6 +133,7 @@ class TestPhotoWithoutRequest(TestPhotoBase):
- assert photo_dict["height"] == photo.height
- assert photo_dict["file_size"] == photo.file_size
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_equality(self, photo):
- a = PhotoSize(photo.file_id, photo.file_unique_id, self.width, self.height)
- b = PhotoSize("", photo.file_unique_id, self.width, self.height)
-@@ -189,6 +195,7 @@ class TestPhotoWithoutRequest(TestPhotoBase):
- finally:
- bot._local_mode = False
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- async def test_send_with_photosize(self, monkeypatch, bot, chat_id, photo):
- async def make_assertion(url, request_data: RequestData, *args, **kwargs):
- return request_data.json_parameters["photo"] == photo.file_id
-@@ -196,6 +203,7 @@ class TestPhotoWithoutRequest(TestPhotoBase):
- monkeypatch.setattr(bot.request, "post", make_assertion)
- assert await bot.send_photo(photo=photo, chat_id=chat_id)
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- async def test_get_file_instance_method(self, monkeypatch, photo):
- async def make_assertion(*_, **kwargs):
- return kwargs["file_id"] == photo.file_id
---- a/tests/_files/test_sticker.py
-+++ b/tests/_files/test_sticker.py
-@@ -116,11 +116,13 @@ class TestStickerBase:
-
-
- class TestStickerWithoutRequest(TestStickerBase):
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_slot_behaviour(self, sticker):
- for attr in sticker.__slots__:
- assert getattr(sticker, attr, "err") != "err", f"got extra slot '{attr}'"
- assert len(mro_slots(sticker)) == len(set(mro_slots(sticker))), "duplicate slot"
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_creation(self, sticker):
- # Make sure file has been uploaded.
- assert isinstance(sticker, Sticker)
-@@ -135,6 +137,7 @@ class TestStickerWithoutRequest(TestStickerBase):
- assert sticker.thumbnail.file_unique_id != ""
- assert isinstance(sticker.needs_repainting, bool)
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_expected_values(self, sticker):
- assert sticker.width == self.width
- assert sticker.height == self.height
-@@ -163,6 +166,7 @@ class TestStickerWithoutRequest(TestStickerBase):
- assert sticker.thumb is sticker.thumbnail
- check_thumb_deprecation_warnings_for_args_and_attrs(recwarn, __file__)
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_to_dict(self, sticker):
- sticker_dict = sticker.to_dict()
-
-@@ -178,6 +182,7 @@ class TestStickerWithoutRequest(TestStickerBase):
- assert sticker_dict["type"] == sticker.type
- assert sticker_dict["needs_repainting"] == sticker.needs_repainting
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_de_json(self, bot, sticker):
- json_dict = {
- "file_id": self.sticker_file_id,
-@@ -211,6 +216,7 @@ class TestStickerWithoutRequest(TestStickerBase):
- assert json_sticker.custom_emoji_id == self.custom_emoji_id
- assert json_sticker.needs_repainting == self.needs_repainting
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_equality(self, sticker):
- a = Sticker(
- sticker.file_id,
-@@ -273,6 +279,7 @@ class TestStickerWithoutRequest(TestStickerBase):
- with pytest.raises(TypeError):
- await bot.send_sticker(chat_id)
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- async def test_send_with_sticker(self, monkeypatch, bot, chat_id, sticker):
- async def make_assertion(url, request_data: RequestData, *args, **kwargs):
- return request_data.json_parameters["sticker"] == sticker.file_id
-@@ -564,6 +571,7 @@ class TestStickerSetWithoutRequest(TestStickerSetBase):
- assert sticker_set.thumb is sticker_set.thumbnail
- check_thumb_deprecation_warnings_for_args_and_attrs(recwarn, __file__)
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_de_json(self, bot, sticker):
- name = f"test_by_{bot.username}"
- json_dict = {
-@@ -587,6 +595,7 @@ class TestStickerSetWithoutRequest(TestStickerSetBase):
- assert sticker_set.sticker_type == self.sticker_type
- assert sticker_set.api_kwargs == {"contains_masks": self.contains_masks}
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_sticker_set_to_dict(self, sticker_set):
- sticker_set_dict = sticker_set.to_dict()
-
-@@ -927,6 +936,7 @@ class TestStickerSetWithoutRequest(TestStickerSetBase):
- assert recwarn[0].filename == __file__, f"incorrect stacklevel for class {cls_name}!"
- recwarn.clear()
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- async def test_get_file_instance_method(self, monkeypatch, sticker):
- async def make_assertion(*_, **kwargs):
- return kwargs["file_id"] == sticker.file_id
---- a/tests/_files/test_video.py
-+++ b/tests/_files/test_video.py
-@@ -66,11 +66,13 @@ class TestVideoBase:
-
-
- class TestVideoWithoutRequest(TestVideoBase):
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_slot_behaviour(self, video):
- for attr in video.__slots__:
- assert getattr(video, attr, "err") != "err", f"got extra slot '{attr}'"
- assert len(mro_slots(video)) == len(set(mro_slots(video))), "duplicate slot"
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_creation(self, video):
- # Make sure file has been uploaded.
- assert isinstance(video, Video)
-@@ -85,6 +87,7 @@ class TestVideoWithoutRequest(TestVideoBase):
- assert video.thumbnail.file_id != ""
- assert video.thumbnail.file_unique_id != ""
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_expected_values(self, video):
- assert video.width == self.width
- assert video.height == self.height
-@@ -127,6 +130,7 @@ class TestVideoWithoutRequest(TestVideoBase):
- assert json_video.file_size == self.file_size
- assert json_video.file_name == self.file_name
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_to_dict(self, video):
- video_dict = video.to_dict()
-
-@@ -140,6 +144,7 @@ class TestVideoWithoutRequest(TestVideoBase):
- assert video_dict["file_size"] == video.file_size
- assert video_dict["file_name"] == video.file_name
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_equality(self, video):
- a = Video(video.file_id, video.file_unique_id, self.width, self.height, self.duration)
- b = Video("", video.file_unique_id, self.width, self.height, self.duration)
-@@ -164,6 +169,7 @@ class TestVideoWithoutRequest(TestVideoBase):
- with pytest.raises(TypeError):
- await bot.send_video(chat_id=chat_id)
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- async def test_send_with_video(self, monkeypatch, bot, chat_id, video):
- async def make_assertion(url, request_data: RequestData, *args, **kwargs):
- return request_data.json_parameters["video"] == video.file_id
-@@ -212,6 +218,7 @@ class TestVideoWithoutRequest(TestVideoBase):
- with pytest.raises(ValueError, match="different entities as 'thumb' and 'thumbnail'"):
- await bot.send_video(chat_id, file, thumbnail=file, thumb=different_file)
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- async def test_get_file_instance_method(self, monkeypatch, video):
- async def make_assertion(*_, **kwargs):
- return kwargs["file_id"] == video.file_id
---- a/tests/_files/test_videonote.py
-+++ b/tests/_files/test_videonote.py
-@@ -60,11 +60,13 @@ class TestVideoNoteBase:
-
-
- class TestVideoNoteWithoutRequest(TestVideoNoteBase):
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_slot_behaviour(self, video_note):
- for attr in video_note.__slots__:
- assert getattr(video_note, attr, "err") != "err", f"got extra slot '{attr}'"
- assert len(mro_slots(video_note)) == len(set(mro_slots(video_note))), "duplicate slot"
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_creation(self, video_note):
- # Make sure file has been uploaded.
- assert isinstance(video_note, VideoNote)
-@@ -79,6 +81,7 @@ class TestVideoNoteWithoutRequest(TestVideoNoteBase):
- assert video_note.thumbnail.file_id != ""
- assert video_note.thumbnail.file_unique_id != ""
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_expected_values(self, video_note):
- assert video_note.length == self.length
- assert video_note.duration == self.duration
-@@ -108,6 +111,7 @@ class TestVideoNoteWithoutRequest(TestVideoNoteBase):
- assert json_video_note.duration == self.duration
- assert json_video_note.file_size == self.file_size
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_to_dict(self, video_note):
- video_note_dict = video_note.to_dict()
-
-@@ -118,6 +122,7 @@ class TestVideoNoteWithoutRequest(TestVideoNoteBase):
- assert video_note_dict["duration"] == video_note.duration
- assert video_note_dict["file_size"] == video_note.file_size
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_equality(self, video_note):
- a = VideoNote(video_note.file_id, video_note.file_unique_id, self.length, self.duration)
- b = VideoNote("", video_note.file_unique_id, self.length, self.duration)
-@@ -142,6 +147,7 @@ class TestVideoNoteWithoutRequest(TestVideoNoteBase):
- with pytest.raises(TypeError):
- await bot.send_video_note(chat_id=chat_id)
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- async def test_send_with_video_note(self, monkeypatch, bot, chat_id, video_note):
- async def make_assertion(url, request_data: RequestData, *args, **kwargs):
- return request_data.json_parameters["video_note"] == video_note.file_id
-@@ -194,6 +200,7 @@ class TestVideoNoteWithoutRequest(TestVideoNoteBase):
- with pytest.raises(ValueError, match="different entities as 'thumb' and 'thumbnail'"):
- await bot.send_video_note(chat_id, file, thumbnail=file, thumb=different_file)
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- async def test_get_file_instance_method(self, monkeypatch, video_note):
- async def make_assertion(*_, **kwargs):
- return kwargs["file_id"] == video_note.file_id
---- a/tests/_files/test_voice.py
-+++ b/tests/_files/test_voice.py
-@@ -58,11 +58,13 @@ class TestVoiceBase:
-
-
- class TestVoiceWithoutRequest(TestVoiceBase):
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_slot_behaviour(self, voice):
- for attr in voice.__slots__:
- assert getattr(voice, attr, "err") != "err", f"got extra slot '{attr}'"
- assert len(mro_slots(voice)) == len(set(mro_slots(voice))), "duplicate slot"
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- async def test_creation(self, voice):
- # Make sure file has been uploaded.
- assert isinstance(voice, Voice)
-@@ -71,6 +73,7 @@ class TestVoiceWithoutRequest(TestVoiceBase):
- assert voice.file_id != ""
- assert voice.file_unique_id != ""
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_expected_values(self, voice):
- assert voice.duration == self.duration
- assert voice.mime_type == self.mime_type
-@@ -93,6 +96,7 @@ class TestVoiceWithoutRequest(TestVoiceBase):
- assert json_voice.mime_type == self.mime_type
- assert json_voice.file_size == self.file_size
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_to_dict(self, voice):
- voice_dict = voice.to_dict()
-
-@@ -103,6 +107,7 @@ class TestVoiceWithoutRequest(TestVoiceBase):
- assert voice_dict["mime_type"] == voice.mime_type
- assert voice_dict["file_size"] == voice.file_size
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_equality(self, voice):
- a = Voice(voice.file_id, voice.file_unique_id, self.duration)
- b = Voice("", voice.file_unique_id, self.duration)
-@@ -135,6 +140,7 @@ class TestVoiceWithoutRequest(TestVoiceBase):
-
- assert await bot.send_voice(chat_id, voice_file, filename="custom_filename")
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- async def test_send_with_voice(self, monkeypatch, bot, chat_id, voice):
- async def make_assertion(url, request_data: RequestData, *args, **kwargs):
- return request_data.json_parameters["voice"] == voice.file_id
-@@ -164,6 +170,7 @@ class TestVoiceWithoutRequest(TestVoiceBase):
- finally:
- bot._local_mode = False
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- async def test_get_file_instance_method(self, monkeypatch, voice):
- async def make_assertion(*_, **kwargs):
- return kwargs["file_id"] == voice.file_id
---- a/tests/request/test_request.py
-+++ b/tests/request/test_request.py
-@@ -411,6 +411,7 @@ class TestHTTPXRequestWithoutRequest:
- assert self.test_flag["init"] == 1
- assert self.test_flag["shutdown"] == 1
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- async def test_multiple_init_cycles(self):
- # nothing really to assert - this should just not fail
- httpx_request = HTTPXRequest()
-@@ -423,6 +424,7 @@ class TestHTTPXRequestWithoutRequest:
- with pytest.raises(ValueError, match="`http_version` must be either"):
- HTTPXRequest(http_version="1.0")
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- async def test_http_1_response(self):
- httpx_request = HTTPXRequest(http_version="1.1")
- async with httpx_request:
---- a/tests/test_bot.py
-+++ b/tests/test_bot.py
-@@ -302,6 +302,7 @@ class TestBotWithoutRequest:
-
- assert self.test_flag == "stop"
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- async def test_equality(self):
- async with make_bot(token=FALLBACKS[0]["token"]) as a, make_bot(
- token=FALLBACKS[0]["token"]
-@@ -343,6 +344,7 @@ class TestBotWithoutRequest:
- finally:
- await bot.shutdown()
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- async def test_get_me_and_properties(self, bot):
- get_me_bot = await ExtBot(bot.token).get_me()
-
-@@ -377,6 +379,7 @@ class TestBotWithoutRequest:
- re.match(rf"\s*\@\_log\s*async def {bot_method_name}", source)
- ), f"{bot_method_name} is missing the @_log decorator"
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- async def test_log_decorator(self, bot: PytestExtBot, caplog):
- # Second argument makes sure that we ignore logs from e.g. httpx
- with caplog.at_level(logging.DEBUG, logger="telegram"):
-@@ -1361,6 +1364,7 @@ class TestBotWithoutRequest:
-
- @pytest.mark.parametrize("json_keyboard", [True, False])
- @pytest.mark.parametrize("caption", ["<b>Test</b>", "", None])
-+ @pytest.mark.skip(reason="Requires internet connection")
- async def test_copy_message(
- self, monkeypatch, bot, chat_id, media_message, json_keyboard, caption
- ):
---- a/tests/test_forum.py
-+++ b/tests/test_forum.py
-@@ -73,6 +73,7 @@ async def real_topic(bot, emoji_id, forum_group_id):
- assert result is True, "Topic was not deleted"
-
-
-+@pytest.mark.skip(reason="Requires internet connection")
- class TestForumTopicWithoutRequest:
- def test_slot_behaviour(self, forum_topic_object):
- inst = forum_topic_object
-@@ -336,6 +337,7 @@ class TestForumTopicCreatedWithoutRequest:
- assert action_dict["name"] == TEST_TOPIC_NAME
- assert action_dict["icon_color"] == TEST_TOPIC_ICON_COLOR
-
-+ @pytest.mark.skip(reason="Requires internet connection")
- def test_equality(self, emoji_id):
- a = ForumTopicCreated(name=TEST_TOPIC_NAME, icon_color=TEST_TOPIC_ICON_COLOR)
- b = ForumTopicCreated(
diff --git a/dev-python/python-telegram-bot/python-telegram-bot-9999.ebuild b/dev-python/python-telegram-bot/python-telegram-bot-9999.ebuild
index a9daa2f8df45..01b17e71e33b 100644
--- a/dev-python/python-telegram-bot/python-telegram-bot-9999.ebuild
+++ b/dev-python/python-telegram-bot/python-telegram-bot-9999.ebuild
@@ -1,68 +1,61 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
+DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{8,9,10,11} )
-
-inherit distutils-r1
+inherit distutils-r1 optfeature
DESCRIPTION="Python wrapper of telegram bots API"
-HOMEPAGE="https://python-telegram-bot.org https://github.com/python-telegram-bot/python-telegram-bot"
+HOMEPAGE="https://docs.python-telegram-bot.org https://github.com/python-telegram-bot/python-telegram-bot"
if [[ ${PV} == *9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/python-telegram-bot/python-telegram-bot"
else
SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
KEYWORDS="~amd64 ~x86"
fi
-LICENSE="GPL-3"
+LICENSE="LGPL-3"
SLOT="0"
-
-# This error is really strange
-# UserWarning: python-telegram-bot is using upstream urllib3. This is allowed but not supported by python-telegram-bot maintainers.
-RESTRICT="test"
+IUSE=""
RDEPEND="
- dev-python/certifi[${PYTHON_USEDEP}]
- dev-python/cryptography[${PYTHON_USEDEP}]
- dev-python/decorator[${PYTHON_USEDEP}]
- dev-python/future[${PYTHON_USEDEP}]
- dev-python/PySocks[${PYTHON_USEDEP}]
- dev-python/ujson[${PYTHON_USEDEP}]
- dev-python/urllib3[${PYTHON_USEDEP}]
- dev-python/tornado[${PYTHON_USEDEP}]
+ >=dev-python/cachetools-5.3.0[${PYTHON_USEDEP}]
+ >=dev-python/cryptography-39.0.1[${PYTHON_USEDEP}]
+ >=dev-python/httpx-0.24.0[${PYTHON_USEDEP}]
+ >=dev-python/tornado-6.2[${PYTHON_USEDEP}]
+ dev-python/setuptools[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/beautifulsoup4[${PYTHON_USEDEP}]
+ dev-python/flaky[${PYTHON_USEDEP}]
+ dev-python/pytest[${PYTHON_USEDEP}]
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/pytz[${PYTHON_USEDEP}]
+ >=dev-python/tornado-6.2[${PYTHON_USEDEP}]
+ )
"
-DEPEND="test? (
- dev-python/APScheduler[${PYTHON_USEDEP}]
- dev-python/attrs[${PYTHON_USEDEP}]
- dev-python/beautifulsoup4[${PYTHON_USEDEP}]
- dev-python/flaky[${PYTHON_USEDEP}]
- dev-python/pytest-timeout[${PYTHON_USEDEP}]
- dev-python/pytz[${PYTHON_USEDEP}]
- dev-python/yapf[${PYTHON_USEDEP}]
-)"
+PATCHES=(
+ "${FILESDIR}/${P}-no-internet-tests.patch"
+)
distutils_enable_tests pytest
-distutils_enable_sphinx docs/source dev-python/sphinx-rtd-theme
-
-python_prepare_all() {
- # do not make a test flaky report
- sed -i -e '/addopts/d' setup.cfg || die
- sed -i 's/from telegram.vendor.ptb_urllib3 //g' tests/test_*.py
- sed -i 's/telegram.vendor.ptb_urllib3.urllib3/urllib3/g' tests/test_*.py
-
- # Remove tests files that require network access
- rm tests/test_{animation,audio,bot,commandhandler,constants,conversationhandler}.py || die
- rm tests/test_{dispatcher,document,forcereply,inlinekeyboardmarkup,inputmedia}.py || die
- rm tests/test_{invoice,jobqueue,official,parsemode,persistence,photo,sticker,updater}.py || die
- rm tests/test_replykeyboard{markup,remove}.py || die
- rm tests/test_{video,videonote,voice}.py || die
+# Run only the tests that don't require a connection
+python_test() {
+ epytest -m no_req
+}
+python_prepare_all() {
distutils-r1_python_prepare_all
}
+
+pkg_postinst() {
+ optfeature_header "Optional package dependencies:"
+ optfeature "using telegram.ext.JobQueue" dev-python/APScheduler
+}
diff --git a/dev-python/shiboken2/Manifest b/dev-python/shiboken2/Manifest
index 44289e185b45..5ec5cb3e888e 100644
--- a/dev-python/shiboken2/Manifest
+++ b/dev-python/shiboken2/Manifest
@@ -1,2 +1 @@
DIST pyside-setup-opensource-src-5.15.10.tar.xz 3583764 BLAKE2B 7e19e8f8460582012d3fec09ac99f826298cbfcd0887339c2adababb7a21bfc67a2918e91858888e89eca0a6f780929b2a7fa70c28d72ece24b7ea939ca76f56 SHA512 dc548ab870fcc5cc637de1bcb2f428527c650287fdb3720a3ade4638cc0bb12bc4a1ed87e7f6a4ec730a26742e08ceec806bcac6af91c7a01ddc0ce7980a79d2
-DIST pyside-setup-opensource-src-5.15.9.tar.xz 3581660 BLAKE2B 65d5317f9ea55385bbe093cf43c214655effd877feed6409acc4f6f65768dcde8c94c4f29157f8d7dcb36d442c649290764706834885b08ecf9934b383b3e2a4 SHA512 cc63d64b909f1fd98b64a0bba61b278b1a5b60059168287546ee36204ede2df4317eb4ce5638a268d387e6db40fec203631fc4a48e4116a6b4a30d675bf876d3
diff --git a/dev-python/shiboken2/shiboken2-5.15.10.ebuild b/dev-python/shiboken2/shiboken2-5.15.10-r1.ebuild
index 5404f8fd66bf..1d8ee386e979 100644
--- a/dev-python/shiboken2/shiboken2-5.15.10.ebuild
+++ b/dev-python/shiboken2/shiboken2-5.15.10-r1.ebuild
@@ -37,7 +37,7 @@ REQUIRED_USE="${PYTHON_REQUIRED_USE}"
RESTRICT="test"
# Minimal supported version of Qt.
-QT_PV="$(ver_cut 1-2)*:5"
+QT_PV="$(ver_cut 1-3)*:5"
# Since Clang is required at both build- and runtime, BDEPEND is omitted here.
LLVM_MAX_SLOT=15
diff --git a/dev-python/shiboken2/shiboken2-5.15.9.ebuild b/dev-python/shiboken2/shiboken2-5.15.9.ebuild
deleted file mode 100644
index b35677e46116..000000000000
--- a/dev-python/shiboken2/shiboken2-5.15.9.ebuild
+++ /dev/null
@@ -1,175 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# TODO: Split the "/usr/bin/shiboken2" binding generator from the
-# "/usr/lib64/libshiboken2-*.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/shiboken2/faq.html#is-there-any-runtime-dependency-on-the-generated-binding
-# Once split, the PySide2 ebuild should be revised to require
-# "/usr/bin/shiboken2" at build time and "libshiboken2-*.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} )
-
-inherit cmake llvm python-r1 toolchain-funcs
-
-MY_P=pyside-setup-opensource-src-${PV}
-
-DESCRIPTION="Python binding generator for C++ libraries"
-HOMEPAGE="https://wiki.qt.io/PySide2"
-SRC_URI="https://download.qt.io/official_releases/QtForPython/pyside2/PySide2-${PV}-src/${MY_P}.tar.xz"
-S="${WORKDIR}/${MY_P}/sources/shiboken2"
-
-# The "sources/shiboken2/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 shiboken2 output to be
-# arbitrarily relicensed. (TODO)
-LICENSE="|| ( GPL-2 GPL-3+ LGPL-3 ) GPL-3"
-SLOT="0"
-KEYWORDS="amd64 ~arm arm64 x86"
-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-2)*:5"
-
-# Since Clang is required at both build- and runtime, BDEPEND is omitted here.
-LLVM_MAX_SLOT=15
-RDEPEND="${PYTHON_DEPS}
- =dev-qt/qtcore-${QT_PV}
- <sys-devel/clang-16:=
- <sys-devel/clang-runtime-16:=
- docstrings? (
- >=dev-libs/libxml2-2.6.32
- >=dev-libs/libxslt-1.1.19
- =dev-qt/qtxml-${QT_PV}
- =dev-qt/qtxmlpatterns-${QT_PV}
- )
- numpy? ( dev-python/numpy[${PYTHON_USEDEP}] )
- vulkan? ( dev-util/vulkan-headers )
-"
-DEPEND="${RDEPEND}
- test? ( =dev-qt/qttest-${QT_PV} )
-"
-
-DOCS=( AUTHORS )
-
-PATCHES=(
- "${FILESDIR}"/${PN}-5.15.5-python311-1.patch
- "${FILESDIR}"/${PN}-5.15.5-python311-2.patch
- "${FILESDIR}"/${PN}-5.15.5-python311-3.patch
- "${FILESDIR}"/${PN}-5.15.6-fix-pyside2-compile.patch
- "${FILESDIR}"/${PN}-5.15.8-py-limited-api.patch
- "${FILESDIR}"/${PN}-5.15.5-add-numpy-1.23-compatibility.patch
-)
-
-# Ensure the path returned by get_llvm_prefix() contains clang as well.
-llvm_check_deps() {
- has_version "sys-devel/clang:${LLVM_SLOT}"
-}
-
-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
-
- # Shiboken2 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
-
- # Shiboken2 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.
- # PySide2 does *NOT* care whether the end user has done so or not, as
- # PySide2 unconditionally requires Clang in either case. See also:
- # https://bugs.gentoo.org/619490
- sed -i -e 's~(findClangBuiltInIncludesDir())~(QStringLiteral("'"${EPREFIX}"'/usr/lib/clang/'$(CPP=clang clang-fullversion)'/include"))~' \
- ApiExtractor/clangparser/compilersupport.cpp || die
-
- cmake_src_prepare
-}
-
-src_configure() {
- # 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)
- )
-
- shiboken2_configure() {
- local mycmakeargs=(
- "${mycmakeargs[@]}"
- -DPYTHON_CONFIG_SUFFIX="-${EPYTHON}"
- -DPYTHON_EXECUTABLE="${PYTHON}"
- -DUSE_PYTHON_VERSION="${EPYTHON#python}"
- )
- # CMakeLists.txt expects LLVM_INSTALL_DIR as an environment variable.
- local -x LLVM_INSTALL_DIR="$(get_llvm_prefix "${LLVM_MAX_SLOT}")"
- cmake_src_configure
- }
- python_foreach_impl shiboken2_configure
-}
-
-src_compile() {
- python_foreach_impl cmake_src_compile
-}
-
-src_test() {
- python_foreach_impl cmake_src_test
-}
-
-src_install() {
- shiboken2_install() {
- cmake_src_install
- python_optimize
-
- # Uniquify the "shiboken2" executable for the current Python target,
- # preserving an unversioned "shiboken2" file arbitrarily associated
- # with the last Python target.
- cp "${ED}"/usr/bin/${PN}{,-${EPYTHON}} || die
-
- # Uniquify the Shiboken2 pkgconfig file for the current Python target,
- # preserving an unversioned "shiboken2.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 shiboken2_install
-
- # CMakeLists.txt installs a "Shiboken2Targets-gentoo.cmake" file forcing
- # downstream consumers (e.g., PySide2) to target one "libshiboken2-*.so"
- # library and one "shiboken2" 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~shiboken2-python[[:digit:]]\+\.[[:digit:]]\+~shiboken2${PYTHON_CONFIG_SUFFIX}~g' \
- -e 's~/bin/shiboken2~/bin/shiboken2${PYTHON_CONFIG_SUFFIX}~g' \
- "${ED}/usr/$(get_libdir)"/cmake/Shiboken2*/Shiboken2Targets-${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/shiboken6/Manifest b/dev-python/shiboken6/Manifest
index 4e27687b1364..94251ca94c20 100644
--- a/dev-python/shiboken6/Manifest
+++ b/dev-python/shiboken6/Manifest
@@ -1,2 +1 @@
-DIST pyside-setup-everywhere-src-6.5.1.1.tar.xz 13565304 BLAKE2B 55b221142f5e112a39c0b5df7f7b200f65cfd30da2884340b9bef5e7cb1bcfe2e8ed7aeb0cf7ef5f894f43f6ad582b35e649b7c6430bdba8719e70cca3c29c2d SHA512 fe99ad09b4e0b238175594bbff94453a84c56f21b004477fdab2a2435b4b4148b0b99b26e1b1e1671b71656f4cfb03c3913aa6d85084e3eb8200ff906535a5eb
DIST pyside-setup-everywhere-src-6.5.2.tar.xz 13576204 BLAKE2B 3e1d62e6d877140137896552184c8fe56fd62056a1ea506ab474256ee0e2f16d3e10ddb84965602650bb466f3563555c3c344698b6877a45f9130d1e919aba21 SHA512 ca677645579fc6b82285dd6c294909ca5e91a8c8efbc53bd103aff64e3ef89eff67820bfc9100cf50f043015d41c49d4ff86b3008f02505941a09bd54621f403
diff --git a/dev-python/shiboken6/shiboken6-6.5.1.1.ebuild b/dev-python/shiboken6/shiboken6-6.5.2-r1.ebuild
index ad463a27c70b..f21566936d2d 100644
--- a/dev-python/shiboken6/shiboken6-6.5.1.1.ebuild
+++ b/dev-python/shiboken6/shiboken6-6.5.2-r1.ebuild
@@ -37,7 +37,7 @@ REQUIRED_USE="${PYTHON_REQUIRED_USE}"
RESTRICT="test"
# Minimal supported version of Qt.
-QT_PV="$(ver_cut 1-2)*:6"
+QT_PV="$(ver_cut 1-3)*:6"
# Since Clang is required at both build- and runtime, BDEPEND is omitted here.
LLVM_MAX_SLOT=15
diff --git a/dev-python/shiboken6/shiboken6-6.5.2.ebuild b/dev-python/shiboken6/shiboken6-6.5.2.ebuild
deleted file mode 100644
index ad463a27c70b..000000000000
--- a/dev-python/shiboken6/shiboken6-6.5.2.ebuild
+++ /dev/null
@@ -1,169 +0,0 @@
-# Copyright 1999-2023 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} )
-
-inherit cmake llvm 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}-$(ver_cut 1-3)/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="0"
-KEYWORDS="~amd64"
-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-2)*:6"
-
-# Since Clang is required at both build- and runtime, BDEPEND is omitted here.
-LLVM_MAX_SLOT=15
-RDEPEND="${PYTHON_DEPS}
- =dev-qt/qtbase-${QT_PV}
- <sys-devel/clang-16:=
- <sys-devel/clang-runtime-16:=
- docstrings? (
- >=dev-libs/libxml2-2.6.32
- >=dev-libs/libxslt-1.1.19
- )
- numpy? ( dev-python/numpy[${PYTHON_USEDEP}] )
- vulkan? ( dev-util/vulkan-headers )
-"
-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"
-)
-
-# Ensure the path returned by get_llvm_prefix() contains clang as well.
-llvm_check_deps() {
- has_version "sys-devel/clang:${LLVM_SLOT}"
-}
-
-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
-
- # 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/'$(CPP=clang clang-fullversion)'/include"))~' \
- ApiExtractor/clangparser/compilersupport.cpp || die
-
- cmake_src_prepare
-}
-
-src_configure() {
- # 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}"
- -DPYTHON_EXECUTABLE="${PYTHON}"
- -DUSE_PYTHON_VERSION="${EPYTHON#python}"
- )
- # CMakeLists.txt expects LLVM_INSTALL_DIR as an environment variable.
- local -x LLVM_INSTALL_DIR="$(get_llvm_prefix "${LLVM_MAX_SLOT}")"
- 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/types-requests/Manifest b/dev-python/types-requests/Manifest
index 91a68b94b6c9..7f38906d4df6 100644
--- a/dev-python/types-requests/Manifest
+++ b/dev-python/types-requests/Manifest
@@ -1 +1,2 @@
-DIST types-requests-2.31.0.5.tar.gz 15474 BLAKE2B d1fc25eb9003f47bca74c21d9791aae2830b2242da387e0627e7509a3a52cb417f780fd6c4d5808314000a00b7f0385e1a275d0aaa23e9ecbcfe112290bead7a SHA512 a6df779ddfdc0ad3389d9c5c200bc1b14aefa3d6baf622879789c22230fbd5a3c0a71c0660ddc7abe75a57902abfb356b5c7107136919642d403e6da398c8489
+DIST types-requests-2.31.0.6.tar.gz 15535 BLAKE2B 165bbedb94cf39b271a32c37e58333d0f59b053a3c882c964e5c46f8fe95fba4ce158434714f4352fc426b6c6fcc98e31caf79407d1778c4e514c0a8a6dfe457 SHA512 e35dc869c6192cea6408407fe024c9dcaeac7baa208df250671f0d99d31e36aa20647d3d1823069bdae27b899d1278010ebfc4ad19ef00a922cd1f64636bd521
+DIST types-requests-2.31.0.7.tar.gz 15689 BLAKE2B 98006bfa2da460772ccdd9fe23f25c12a7b1bc6d6cdfe64fb0f0b7114702529cb0caef334cdd91c367c6c0c67dbea32e9b6d2a1c4f757181b9b59f1066e59165 SHA512 57ab649bb0f30d2bfb790eb1e5875779a6fa5708291db2a7e18beac4b436eeb3a19de163095926d907f4e78589082ee677b1e4d68430fd2aa82dbefdaa89666b
diff --git a/dev-python/types-requests/types-requests-2.31.0.5.ebuild b/dev-python/types-requests/types-requests-2.31.0.6.ebuild
index fdbb24fa1e13..9de6aae8956f 100644
--- a/dev-python/types-requests/types-requests-2.31.0.5.ebuild
+++ b/dev-python/types-requests/types-requests-2.31.0.6.ebuild
@@ -19,4 +19,5 @@ SLOT="0"
LICENSE="Apache-2.0"
KEYWORDS="~amd64"
+# Depends on _typeshed util stub module bundled with mypy and other type checkers.
RDEPEND="dev-python/types-urllib3"
diff --git a/dev-python/types-requests/types-requests-2.31.0.7.ebuild b/dev-python/types-requests/types-requests-2.31.0.7.ebuild
new file mode 100644
index 000000000000..fd4e1a304d12
--- /dev/null
+++ b/dev-python/types-requests/types-requests-2.31.0.7.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+PYTHON_COMPAT=( python3_{8,9,10,11} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Typing stubs for requests"
+HOMEPAGE="
+ https://pypi.org/project/types-requests/
+ https://github.com/python/typeshed/tree/master/stubs/requests
+"
+
+SLOT="0"
+LICENSE="Apache-2.0"
+KEYWORDS="~amd64"
+
+# Depends on _typeshed util stub module bundled with mypy and other type checkers.
+RDEPEND=">=dev-python/urllib3-2"
diff --git a/dev-python/widgetsnbextension/widgetsnbextension-4.0.8.ebuild b/dev-python/widgetsnbextension/widgetsnbextension-4.0.8.ebuild
index a52f0d4e2b5d..d64f81f72a58 100644
--- a/dev-python/widgetsnbextension/widgetsnbextension-4.0.8.ebuild
+++ b/dev-python/widgetsnbextension/widgetsnbextension-4.0.8.ebuild
@@ -19,6 +19,10 @@ LICENSE="BSD"
SLOT="0"
KEYWORDS="amd64 arm arm64 hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
+BDEPEND="
+ dev-python/jupyter-packaging[${PYTHON_USEDEP}]
+"
+
RDEPEND="
dev-python/notebook[${PYTHON_USEDEP}]
"
diff --git a/dev-python/widgetsnbextension/widgetsnbextension-4.0.9.ebuild b/dev-python/widgetsnbextension/widgetsnbextension-4.0.9.ebuild
index 58c81fdac1d3..6475c5410277 100644
--- a/dev-python/widgetsnbextension/widgetsnbextension-4.0.9.ebuild
+++ b/dev-python/widgetsnbextension/widgetsnbextension-4.0.9.ebuild
@@ -19,6 +19,10 @@ LICENSE="BSD"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+BDEPEND="
+ dev-python/jupyter-packaging[${PYTHON_USEDEP}]
+"
+
RDEPEND="
dev-python/notebook[${PYTHON_USEDEP}]
"