diff options
| author | BaldEagleOS Migration <dev@baldeagleos.com> | 2026-06-03 18:00:25 -0500 |
|---|---|---|
| committer | BaldEagleOS Migration <dev@baldeagleos.com> | 2026-06-03 18:00:25 -0500 |
| commit | df30352066a4373a912bc395b250b0b1fa2cf696 (patch) | |
| tree | 49c2c47431ac4c977b3f5b849123cfd4b767944f /dev-python | |
| parent | 46b253445e4dc73ee69188755ecbd45f6782960c (diff) | |
| download | baldeagleos-repo-df30352066a4373a912bc395b250b0b1fa2cf696.tar.gz baldeagleos-repo-df30352066a4373a912bc395b250b0b1fa2cf696.tar.xz baldeagleos-repo-df30352066a4373a912bc395b250b0b1fa2cf696.zip | |
Adding metadata
Diffstat (limited to 'dev-python')
30 files changed, 319 insertions, 839 deletions
diff --git a/dev-python/channels/Manifest b/dev-python/channels/Manifest index b58c0c2009cc..93bbf2713782 100644 --- a/dev-python/channels/Manifest +++ b/dev-python/channels/Manifest @@ -1,5 +1 @@ -DIST channels-3.0.5.gh.tar.gz 200118 BLAKE2B 7a7653f986face1e87369917317db013e5c9fc912c6e2d7c737054ffef167bd01feb48f7e2d00d0d331e7a16093478e5416645717aed59e46dfec8f9b3641a2e SHA512 b12d1aec9602b702b5a097e9ca52dccad49940f82fcbe5594890c9bd1f1879a2fcf0f29630ca53e4972a26853df8f71d07d7b2cccd876abbf2417a76dee281bf -DIST channels-4.2.2.gh.tar.gz 197010 BLAKE2B 321bf62c68038ce511145acd43c036dd298d58056f20ab2d676c3e3a8d6360a86a4f07c8f9ed6c123f888c012d69da22cfae4fb477dd5422cf326bf2de6a4c8f SHA512 8f7c8f27981988fed8ec254db91ce0a130b24842949ef94cc9ae21b4a259a7003654ec86c4e18aa81924e26d9b81b6a2aafaac404e490cbdda6b4a100476917a -EBUILD channels-3.0.5.ebuild 936 BLAKE2B 788d0e9a2822dd9d0ed2d1d1a62135aeb5f244710b66f7591962518a5204cde5b8e779280783dd1d1a1b1a3fa9b272a0eb457f1d88d62c8ecefc8f67384929ef SHA512 89003fa68c7ab1cdd1a329f4389ba6fe28f491217a70c03b2979a992b450d8aa1a02f024f073ad5fc0aa1d093d81c6c8b1adaa45bdc9a179f5bd1607d85c13ef -EBUILD channels-4.2.2.ebuild 829 BLAKE2B e5946c4a0eaf9fb3ffa2092a3d5d49d3d6ee16f151483fa2b716c8bab3350eca5e330a22822f881421d8882ffb970f4c56154c613477d094319e46addf1a5537 SHA512 84ce30d87a654c1a89ac299fb0f6447ca9c736e4b63497d83fc2687384e9cbe8094ba8f5021a19f726f9bae97c6b6d11eddef6a9ee5c275efe827bf95d3848ec -MISC metadata.xml 445 BLAKE2B b4c0a41d6caadfbc53cbba3c41f8b7689a286b3f8d285c37a88a1f79d8dc350b82fea255048c022b92091a1e0cc67bf19645d6c32183b82a6dd49cccadf5078f SHA512 380c8b98efe8d9a2513c51899b7de90b115d4a51f104f46b552ff8929c322850e511e245a2ba0e976213416ae7241a17292ca98248caacfc891fcdcf5cea5d44 +DIST channels-4.3.2.gh.tar.gz 206077 BLAKE2B c0913d67dc74bc728dd828584cf803b4ad175bab717de71ccf1e1c5b6aaca296fd15d011deb07b2876e63b7daaefab5e5ee24c323e907b3c563f5358759f14b8 SHA512 29d9c91aca721fad44143978863c45812bf596bb65cf99084803f78d85c664d5cc7ca1015df151cdc27754b822c9cfd18102989b6e5f59bc50257f6c9d8b8b3e diff --git a/dev-python/channels/channels-3.0.5.ebuild b/dev-python/channels/channels-3.0.5.ebuild deleted file mode 100644 index 766ae0056090..000000000000 --- a/dev-python/channels/channels-3.0.5.ebuild +++ /dev/null @@ -1,41 +0,0 @@ -# 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_{13..14} ) - -inherit distutils-r1 - -DESCRIPTION="Extends Django abilities beyond HTTP protocol" -HOMEPAGE="https://github.com/django/channels" -SRC_URI="https://github.com/django/${PN}/archive/${PV}.tar.gz -> ${P}.gh.tar.gz" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="~amd64" - -DEPEND=" - >=dev-python/django-2.2[${PYTHON_USEDEP}] -" -BDEPEND=" - test? ( - dev-python/async-timeout[${PYTHON_USEDEP}] - >=dev-python/daphne-3.0[${PYTHON_USEDEP}] - <dev-python/daphne-4.0[${PYTHON_USEDEP}] - dev-python/pytest-asyncio[${PYTHON_USEDEP}] - dev-python/pytest-django[${PYTHON_USEDEP}] - ) -" - -DOCS=( README.rst ) - -distutils_enable_tests pytest - -python_prepare_all() { - # https://github.com/django/channels/issues/1915 - echo 'asyncio_mode = auto' >> setup.cfg - - distutils-r1_python_prepare_all -} diff --git a/dev-python/channels/channels-4.2.2.ebuild b/dev-python/channels/channels-4.2.2.ebuild deleted file mode 100644 index ffab2647a7c1..000000000000 --- a/dev-python/channels/channels-4.2.2.ebuild +++ /dev/null @@ -1,34 +0,0 @@ -# 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_{13..14} ) - -inherit distutils-r1 - -DESCRIPTION="Extends Django abilities beyond HTTP protocol" -HOMEPAGE="https://github.com/django/channels" -SRC_URI="https://github.com/django/${PN}/archive/${PV}.tar.gz -> ${P}.gh.tar.gz" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="~amd64" - -DEPEND=" - >=dev-python/asgiref-3.5.0[${PYTHON_USEDEP}] - >=dev-python/django-4.2[${PYTHON_USEDEP}] -" -BDEPEND=" - test? ( - dev-python/async-timeout[${PYTHON_USEDEP}] - >=dev-python/daphne-4.0.0[${PYTHON_USEDEP}] - dev-python/pytest-asyncio[${PYTHON_USEDEP}] - dev-python/pytest-django[${PYTHON_USEDEP}] - ) -" - -distutils_enable_tests pytest -distutils_enable_sphinx docs \ - dev-python/sphinx-rtd-theme diff --git a/dev-python/channels/channels-4.3.2.ebuild b/dev-python/channels/channels-4.3.2.ebuild new file mode 100644 index 000000000000..25cc4a8f26a1 --- /dev/null +++ b/dev-python/channels/channels-4.3.2.ebuild @@ -0,0 +1,62 @@ +# Copyright 2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{13..14} ) + +inherit distutils-r1 #pypi + +DESCRIPTION="Brings async, event-driven capabilities to Django" +HOMEPAGE=" + https://channels.readthedocs.io/ + https://github.com/django/channels/ + https://pypi.org/project/channels/ +" +# no tests in sdist +SRC_URI=" + https://github.com/django/channels/archive/refs/tags/${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64" + +RDEPEND=" + <dev-python/asgiref-4[${PYTHON_USEDEP}] + >=dev-python/asgiref-3.9.0[${PYTHON_USEDEP}] + >=dev-python/django-4.2[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/async-timeout[${PYTHON_USEDEP}] + dev-python/selenium[${PYTHON_USEDEP}] + ) +" + +EPYTEST_IGNORE=( + # avoid daphne as it requires autobahn + tests/sample_project/tests/test_selenium.py + tests/security/test_websocket.py + tests/test_database.py + tests/test_generic_http.py + tests/test_generic_websocket.py + tests/test_http.py + tests/test_testing.py +) + +EPYTEST_PLUGINS=( pytest-django pytest-asyncio ) +distutils_enable_tests pytest + +PATCHES=( + "${FILESDIR}"/channels-4.3.2-fix-install.patch +) + +python_prepare_all() { + # avoid daphne as it requires autobahn + sed -e '/"daphne"/d' -i tests/sample_project/config/settings.py || die + + distutils-r1_python_prepare_all +} diff --git a/dev-python/channels/files/channels-4.3.2-fix-install.patch b/dev-python/channels/files/channels-4.3.2-fix-install.patch new file mode 100644 index 000000000000..18eca8f75445 --- /dev/null +++ b/dev-python/channels/files/channels-4.3.2-fix-install.patch @@ -0,0 +1,14 @@ +diff --git a/setup.cfg b/setup.cfg +index 742e1f6..43d8c0d 100644 +--- a/setup.cfg ++++ b/setup.cfg +@@ -52,7 +52,7 @@ types = + + [options.packages.find] + exclude = +- tests ++ tests* + + [flake8] + exclude = venv/*,tox/*,docs/*,testproject/*,build/* + diff --git a/dev-python/channels/metadata.xml b/dev-python/channels/metadata.xml index 9d2bc6085577..cccc43500076 100644 --- a/dev-python/channels/metadata.xml +++ b/dev-python/channels/metadata.xml @@ -1,12 +1,13 @@ <?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> - <maintainer type="person"> - <email>marcin.deranek@slonko.net</email> - <name>Marcin Deranek</name> - </maintainer> - <upstream> - <bugs-to>https://github.com/django/channels/issues</bugs-to> - </upstream> - <origin>slonko-overlay</origin> -</pkgmetadata>
\ No newline at end of file + <maintainer type="person"> + <email>negril.nx+gentoo@gmail.com</email> + <name>Paul Zander</name> + </maintainer> + <stabilize-allarches/> + <upstream> + <remote-id type="github">django/channels</remote-id> + <remote-id type="pypi">channels</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-python/langdetect/Manifest b/dev-python/langdetect/Manifest index d12ab8aeaca8..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 9cd8a2a93a8d45bf51fe2324402b175d641762ea591fcb99459427f977a95eccffa6ca4777ca4df39814eea6eac62711567faa654456d32f79023a4685804504 SHA512 d973b85ba1a44389a4275f02a779a93a005f7c2e096467b94b072862e4984d5b42cf33f9821ac68aa5b85b12c98983a90b96049989d8c84497969174b6bb838e -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 9a92bf8e7b1b..c3c6efbd8da3 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-2025 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 fc7bb11590cb..7ba11d811d5b 100644 --- a/dev-python/langdetect/metadata.xml +++ b/dev-python/langdetect/metadata.xml @@ -1,12 +1,12 @@ <?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/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> -</pkgmetadata>
\ No newline at end of file + <maintainer type="person"> + <email>pastalian46@gmail.com</email> + <name>Takuya Wakazono</name> + </maintainer> + <upstream> + <remote-id type="pypi">langdetect</remote-id> + <remote-id type="github">Mimino666/langdetect</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-python/pynput/Manifest b/dev-python/pynput/Manifest index b5e74eac5ab4..711a13767718 100644 --- a/dev-python/pynput/Manifest +++ b/dev-python/pynput/Manifest @@ -1,2 +1 @@ -DIST pynput-1.7.6.tar.gz 79501 BLAKE2B cb356271ef0688ff6532fb79b858c10fb3a52abc4f6db5f4758948cb16f01e96e9377894ea211952b58f5ff6d997ceeec9ba51a29aef866e65cd83900a9894ae SHA512 66639096a83b7ea7c926bfab67ef6c54b913fc4ffe5814bbc4ace6e4d298237a3623066f4f5c08a2bcf1cc5e40d18dc35b77c18afbd0d00b7b4bf4ed2233d9ff -DIST pynput-1.8.1.tar.gz 82289 BLAKE2B 07338c7d3f755af103d0f61874d536a0444cdddf0c3a450e51cf87e1375943fffcf20a747f25b2ca53365250e8e09d403421cf658077603b7c86a9e5794d3bd6 SHA512 4f28bbc908a4ecbfb8ef1d5b222ddc36269fe2f6361a45609afd60196eb05474569efd2267ae2028abfb85eae6825cea6215351974419ca640c7e069e6983132 +DIST pynput-1.8.2.tar.gz 82818 BLAKE2B 236ac06927423b6311cbf176776279cdfb96b7a2b5a76eab84bab2ea01c16a98d6414e224009a51408d9c43b9cdf04cb9f77b10bd7d26947753a032e6fa4b044 SHA512 326d6044f4d96f421e98fe37d792feb2b2525e4c95632ad5ac94eb2b4501ea1ada3a54c117fd85d380f1d7e0598094fb331af9275d6b17efc274e276ebb48743 diff --git a/dev-python/pynput/files/patches/uinput.patch b/dev-python/pynput/files/patches/uinput.patch index a464b02af0c9..44d17e803ed1 100644 --- a/dev-python/pynput/files/patches/uinput.patch +++ b/dev-python/pynput/files/patches/uinput.patch @@ -2,7 +2,7 @@ diff --git a/lib/pynput/_util/uinput.py b/lib/pynput/_util/uinput.py index b0a6a78..c891b83 100644 --- a/lib/pynput/_util/uinput.py +++ b/lib/pynput/_util/uinput.py -@@ -72,6 +72,14 @@ def _device(self, paths): +@@ -72,6 +72,14 @@ class ListenerMixin(object): except OSError: continue @@ -17,21 +17,3 @@ index b0a6a78..c891b83 100644 # Does this device provide more handled event codes? capabilities = next_dev.capabilities() next_count = sum( -diff --git a/lib/pynput/keyboard/_uinput.py b/lib/pynput/keyboard/_uinput.py -index 2f63dd3..747d19d 100644 ---- a/lib/pynput/keyboard/_uinput.py -+++ b/lib/pynput/keyboard/_uinput.py -@@ -204,10 +204,10 @@ def as_char(k): - as_char(key): ( - vk, - set() -- | {Key.shift} if i & 1 else set() -- | {Key.alt_gr} if i & 2 else set()) -+ | ({Key.shift} if i & 1 else set()) -+ | ({Key.alt_gr} if i & 2 else set())) - for vk, keys in self._vk_table.items() -- for i, key in enumerate(keys) -+ for i, key in reversed(list(enumerate(keys))) - if key is not None and as_char(key) is not None} - - def for_vk(self, vk, modifiers): diff --git a/dev-python/pynput/pynput-1.7.6.ebuild b/dev-python/pynput/pynput-1.7.6.ebuild deleted file mode 100644 index 77c55f782ffa..000000000000 --- a/dev-python/pynput/pynput-1.7.6.ebuild +++ /dev/null @@ -1,20 +0,0 @@ -# Copyright 2021-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{13..14} ) -DISTUTILS_USE_PEP517=setuptools -inherit distutils-r1 pypi - -DESCRIPTION="Sends virtual input commands" -HOMEPAGE="https://github.com/moses-palmer/pynput https://pypi.org/project/pynput" -RDEPEND=" - dev-python/evdev[${PYTHON_USEDEP}] - dev-python/python-xlib[${PYTHON_USEDEP}] - dev-python/six[${PYTHON_USEDEP}] -" - -LICENSE="LGPL-3" -SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~x86" diff --git a/dev-python/pynput/pynput-1.8.1.ebuild b/dev-python/pynput/pynput-1.8.2.ebuild index dd086917f0a1..dd086917f0a1 100644 --- a/dev-python/pynput/pynput-1.8.1.ebuild +++ b/dev-python/pynput/pynput-1.8.2.ebuild diff --git a/dev-python/pyside/Manifest b/dev-python/pyside/Manifest index 3c879c26029b..5cf249ef706c 100644 --- a/dev-python/pyside/Manifest +++ b/dev-python/pyside/Manifest @@ -1,3 +1,2 @@ -DIST pyside-setup-everywhere-src-6.10.2.tar.xz 17877708 BLAKE2B 67be6ef1aaadf36a6e8083f808b8f0e47256ac714f73660cb026ef977676928ae3a16b887fd6f31a343fa5d957b945ce0fc6249aa904d84c7e5a8e320502c2d3 SHA512 363b448fe1a304aea09e095aad9f1ecbe2798f0b0e046ca509e918fdc3e8e6a788928a84f2837ad6c75ea79ce37ec38aaff761ddf323bf8e264304ea3d54ceb4 DIST pyside-setup-everywhere-src-6.10.3.tar.xz 17900952 BLAKE2B e30ede40299161a928a919895a9d26e04e9b58eafa681c2c41ebd37eed39e9b7df74435720e693f87e72f67701dad92cc36938896946f382dac6db0266365fa9 SHA512 6a42478bdfbaef07a993451de423420b20b1a0858c3a86b67071d209a384a6ec6847d95a057a7fc8585206434b817c54f1e301ccf057635e04ea63c6713a7eec DIST pyside-setup-everywhere-src-6.11.1.tar.xz 17963432 BLAKE2B 12c24c6840ef2e80a398e0697530c71f6a1dcd234f70b6c173cb216c1ccd3bcc0cdc51bf39704efd6ab1971d993ffbb41b5f7bf4774dacbd2a65914324d687c5 SHA512 662c07ee644b2f62cb91d5df81751fcbf81169e3a0f6d1ff7853334f9401b59dab9f0d5fdc368c6a730e72c04c8271d10215ae4a7419652b77b9808e7dd94d0f diff --git a/dev-python/pyside/pyside-6.10.2.ebuild b/dev-python/pyside/pyside-6.10.2.ebuild deleted file mode 100644 index 0ac3af159d1b..000000000000 --- a/dev-python/pyside/pyside-6.10.2.ebuild +++ /dev/null @@ -1,584 +0,0 @@ -# Copyright 1999-2026 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -# NOTE: We combine here several PyPI packages, we do this because -# pyside can and does break if it is compiled with a different -# toolchain then was used to build shiboken. This bundling ensures -# that we always use the same toolchain for all components. - -EAPI=8 - -PYTHON_COMPAT=( python3_{13..14} ) -LLVM_COMPAT=( {16..21} ) -DISTUTILS_USE_PEP517=setuptools -DISTUTILS_EXT=1 - -inherit distutils-r1 llvm-r2 multiprocessing ninja-utils qmake-utils virtualx - -MY_PN=${PN}-setup-everywhere-src -MY_P=${MY_PN}-${PV} - -DESCRIPTION="Python bindings for the Qt framework" -HOMEPAGE="https://wiki.qt.io/PySide6" - -if [[ ${PV} == *.9999 ]]; then - inherit git-r3 - EGIT_REPO_URI=( - "https://code.qt.io/${PN}/${PN}-setup.git" - "https://github.com/qtproject/${PN}-${PN}-setup.git" - ) - EGIT_BRANCH=dev - [[ ${PV} == 6.*.9999 ]] && EGIT_BRANCH=${PV%.9999} -else - SRC_URI="https://download.qt.io/official_releases/QtForPython/${PN}6/PySide6-${PV}-src/${MY_P}.tar.xz" - S="${WORKDIR}/${MY_P}" - KEYWORDS="amd64 ~arm arm64 ~loong ~ppc64 ~riscv ~x86" -fi - -LICENSE="|| ( GPL-2 GPL-3 LGPL-3 )" -SLOT="6/${PV}" - -# If a flag enables multiple Qt modules, they should be ordered -# according to their dependencies, e.g. for 3d, 3DCore must be first. -# Widgets for various modules are handled as a special case later -declare -A QT_MODULES=( - ["3d"]="3DCore 3DRender 3DLogic 3DInput 3DAnimation 3DExtras" - ["bluetooth"]="Bluetooth" - ["charts"]="Charts" - ["+concurrent"]="Concurrent" - ["+core"]="Core" - ["+dbus"]="DBus" - ["designer"]="Designer" - ["+gui"]="Gui" - ["help"]="Help" - ["httpserver"]="HttpServer" - ["location"]="Location" - ["multimedia"]="Multimedia" # plus widgets - ["network-auth"]="NetworkAuth" - ["+network"]="Network" - ["nfc"]="Nfc" - ["+opengl"]="OpenGL" # plus widgets - ["pdfium"]="Pdf" # plus widgets - ["positioning"]="Positioning" - ["+printsupport"]="PrintSupport" - ["qml"]="Qml" - ["quick3d"]="Quick3D" - ["quick"]="Quick" # plus widgets - ["remoteobjects"]="RemoteObjects" - ["scxml"]="Scxml" - ["sensors"]="Sensors" - ["serialbus"]="SerialBus" - ["serialport"]="SerialPort" - ["spatialaudio"]="SpatialAudio" - ["+sql"]="Sql" - ["svg"]="Svg" # plus widgets - ["speech"]="TextToSpeech" - ["+testlib"]="Test" - ["uitools"]="UiTools" - ["webchannel"]="WebChannel" - ["webengine"]="WebEngineCore" # plus widgets and quick - ["websockets"]="WebSockets" - ["webview"]="WebView" - ["+widgets"]="Widgets" - ["+xml"]="Xml" -) - -# Manually reextract these requirements on version bumps by running the -# following one-liner from within "${S}": -# $ grep 'set.*_deps' PySide6/Qt*/CMakeLists.txt -declare -A QT_REQUIREMENTS=( - ["3d"]="gui network opengl" - ["bluetooth"]="core" - ["charts"]="core gui widgets" - ["concurrent"]="core" - ["dbus"]="core" - ["designer"]="widgets" - ["gles2-only"]="gui" - ["gui"]="core" - ["help"]="widgets" - ["httpserver"]="core concurrent network websockets" - ["location"]="core positioning" - ["multimedia"]="core gui network" - ["network-auth"]="network" - ["network"]="core" - ["nfc"]="core" - ["opengl"]="gui" - ["pdfium"]="core gui network" - ["positioning"]="core" - ["printsupport"]="widgets" - ["qml"]="network" - ["quick"]="gui network qml opengl" - ["quick3d"]="gui network qml quick" - ["remoteobjects"]="core network" - ["scxml"]="core" - ["sensors"]="core" - ["serialbus"]="core network serialport" - ["serialport"]="core" - ["spatialaudio"]="core gui network multimedia" - ["speech"]="core multimedia" - ["sql"]="widgets" - ["svg"]="gui" - ["testlib"]="widgets" - ["uitools"]="widgets" - ["webchannel"]="core" - ["webengine"]="core gui network printsupport quick webchannel" - ["websockets"]="network" - ["webview"]="gui quick webengine" - ["widgets"]="gui" - ["xml"]="core" -) - -IUSE="${!QT_MODULES[*]} debug doc gles2-only numpy test tools" -RESTRICT="!test? ( test )" - -# majority of QtQml tests require QtQuick support -REQUIRED_USE=" - test? ( - qml? ( quick ) - ) -" -for requirement in "${!QT_REQUIREMENTS[@]}"; do - REQUIRED_USE+=" ${requirement}? ( ${QT_REQUIREMENTS[${requirement}]} ) " -done - -# Minimal supported version of Qt. -QT_PV="$(ver_cut 1-3)*:6" - -# WebEngine needs sound support, so enable either pulseaudio or alsa -RDEPEND=" - dev-libs/libxml2:= - dev-libs/libxslt - =dev-qt/qtbase-${QT_PV}[concurrent?,dbus?,gles2-only=,network?,opengl?,sql?,widgets?,xml?] - $(llvm_gen_dep ' - llvm-core/clang:${LLVM_SLOT} - ') - 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,widgets,gles2-only=] ) - gui? ( - =dev-qt/qtbase-${QT_PV}[gui,jpeg(+)] - x11-libs/libxkbcommon - ) - help? ( =dev-qt/qttools-${QT_PV}[assistant,gles2-only=] ) - httpserver? ( =dev-qt/qthttpserver-${QT_PV} ) - location? ( =dev-qt/qtlocation-${QT_PV} ) - multimedia? ( =dev-qt/qtmultimedia-${QT_PV}[widgets(+)?] ) - network? ( =dev-qt/qtbase-${QT_PV}[ssl] ) - network-auth? ( =dev-qt/qtnetworkauth-${QT_PV} ) - nfc? ( =dev-qt/qtconnectivity-${QT_PV}[nfc] ) - numpy? ( >=dev-python/numpy-2.1.3[${PYTHON_USEDEP}] ) - 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}[opengl?,widgets?] ) - quick3d? ( =dev-qt/qtquick3d-${QT_PV}[opengl?] ) - remoteobjects? ( =dev-qt/qtremoteobjects-${QT_PV} ) - scxml? ( =dev-qt/qtscxml-${QT_PV} ) - sensors? ( =dev-qt/qtsensors-${QT_PV}[qml?] ) - speech? ( =dev-qt/qtspeech-${QT_PV} ) - serialbus? ( =dev-qt/qtserialbus-${QT_PV} ) - serialport? ( =dev-qt/qtserialport-${QT_PV} ) - svg? ( =dev-qt/qtsvg-${QT_PV} ) - testlib? ( =dev-qt/qtbase-${QT_PV}[gui] ) - tools? ( - =dev-qt/qtbase-${QT_PV} - =dev-qt/qtdeclarative-${QT_PV}[qmlls] - =dev-qt/qttools-${QT_PV}[assistant,designer,linguist] - dev-python/pkginfo[${PYTHON_USEDEP}] - ) - uitools? ( =dev-qt/qttools-${QT_PV}[gles2-only=,widgets] ) - 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} ) - webview? ( =dev-qt/qtwebview-${QT_PV} ) - !dev-python/pyside:0 - !dev-python/shiboken6 - !dev-python/pyside6-tools -" - -DEPEND="${RDEPEND} - $(llvm_gen_dep ' - llvm-core/clang:${LLVM_SLOT} - llvm-core/llvm:${LLVM_SLOT} - ') - dev-util/vulkan-headers - test? ( =dev-qt/qtbase-${QT_PV}[gui] ) -" # testlib is toggled by the gui flag on qtbase - -BDEPEND=" - dev-build/cmake - dev-python/distro[${PYTHON_USEDEP}] - dev-python/wheel[${PYTHON_USEDEP}] - dev-util/patchelf - doc? ( - >=dev-libs/libxml2-2.6.32 - >=dev-libs/libxslt-1.1.19 - media-gfx/graphviz - dev-python/sphinx[${PYTHON_USEDEP}] - dev-python/myst-parser[${PYTHON_USEDEP}] - ) - numpy? ( dev-python/numpy[${PYTHON_USEDEP}] ) -" - -PATCHES=( - "${FILESDIR}/${PN}-6.10.2-quick-fix-build-wheel.patch" - "${FILESDIR}/${PN}-6.10.0-dont-vendor-ffmpeg.patch" - "${FILESDIR}/${PN}-6.10.1-pass-ninja-opts.patch" -) - -# Build system duplicates system libraries. TODO: fix -QA_PREBUILT=( - "/usr/lib/python*/site-packages/PySide6/*" -) - -python_prepare_all() { - distutils-r1_python_prepare_all - - # Shiboken6 assumes Vulkan headers live under either "$VULKAN_SDK/include" - # or "$VK_SDK_PATH/include" rather than "${EPREFIX}/usr/include/vulkan". - sed -i -e "s~\bdetectVulkan(&headerPaths);~headerPaths.append(HeaderPath{QByteArrayLiteral(\"${EPREFIX}/usr/include/vulkan\"), HeaderType::System});~" \ - sources/shiboken6/ApiExtractor/clangparser/compilersupport.cpp || die - - # 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 -e \ - 's~(findClangBuiltInIncludesDir())~(QStringLiteral("'"${EPREFIX}"'/usr/lib/clang/'"${LLVM_SLOT}"'/include"))~' \ - -i sources/shiboken6/ApiExtractor/clangparser/compilersupport.cpp || die - - sed -e \ - 's~set(libclang_directory_suffix "lib")~set(libclang_directory_suffix "'"$(get_libdir)"'")~' \ - -i sources/shiboken6/cmake/ShibokenHelpers.cmake || die - - # blacklist.txt works like XFAIL - cat <<- EOF >> build_history/blacklist.txt || die - # segfaults with QOpenGLContext::create - [pysidetest::qapp_like_a_macro_test] - linux - # no mypy - [pysidetest::mypy_correctness_test] - linux - # Tries to execute pip install - [pyside6-deploy::test_pyside6_deploy] - linux - [pyside6-android-deploy::test_pyside6_android_deploy] - linux - # Behavior changed and test not changed to accomodate - # https://bugreports.qt.io/projects/PYSIDE/issues/PYSIDE-3135 - [registry::existence_test] - linux - # Doesn't appear to play well with virtualx as it tries to use wayland - [QtUiTools::loadUiType_test] - linux - # py3.14? - [sample::multiple_derived] - linux - EOF - - if ! use numpy; then - cat <<- EOF >> build_history/blacklist.txt || die - # Requires numpy support to pass - [sample::array_numpy] - linux - [sample::nontypetemplate] - linux - [QtGui::qpainter_test] - linux - [QtCore::qrangemodel_test] - linux - EOF - fi -} - -python_configure_all() { - export LLVM_INSTALL_DIR="$(get_llvm_prefix)" - - # see pyside-6.10.1-pass-ninja-opts.patch - export NINJAOPTS="$(get_NINJAOPTS)" - - ENABLED_QT_MODULES=() - - # The order matters, dependencies must come first so process - # REQUIRED_USE and recursively enable modules - enable_qt_mod() { - local flag=${1} - local modules=${QT_MODULES[${flag}]} - if [[ -z ${modules} ]]; then - die "incorrect flag=${flag}, not registered" - fi - local dependencies=${QT_REQUIREMENTS[${flag//+}]} - if [[ -n ${dependencies} ]]; then - local depflag - for depflag in ${dependencies}; do - if use "${depflag}"; then - if [[ -z ${QT_MODULES[${depflag}]} ]]; then - depflag=+${depflag} - fi - enable_qt_mod "${depflag}" - else - die "${depflag} is required but not enabled" - fi - done - fi - if [[ "${ENABLED_QT_MODULES[*]}" != *${modules}* ]]; then - # modules is whitespace separated. We expand implicitly. - ENABLED_QT_MODULES+=( ${modules} ) - fi - } - # Enable specified qt modules - local flag - for flag in "${!QT_MODULES[@]}"; do - if use "${flag//+}"; then - enable_qt_mod "${flag}" - fi - done - - # Special cases - if use widgets; then - use multimedia && ENABLED_QT_MODULES+=( MultimediaWidgets ) - use opengl && ENABLED_QT_MODULES+=( OpenGLWidgets ) - use pdfium && ENABLED_QT_MODULES+=( PdfWidgets ) - use quick && ENABLED_QT_MODULES+=( QuickWidgets ) - use svg && ENABLED_QT_MODULES+=( SvgWidgets ) - use webengine && ENABLED_QT_MODULES+=( WebEngineWidgets ) - fi - if use quick; then - use webengine && ENABLED_QT_MODULES+=( WebEngineQuick ) - use testlib && ENABLED_QT_MODULES+=( QuickTest ) - fi - - # Arguments listed in options.py - MAIN_DISTUTILS_ARGS=( - --cmake="${ESYSROOT}/usr/bin/cmake" - --ignore-git - --limited-api=no - --module-subset="$(printf '%s,' "${ENABLED_QT_MODULES[@]}")" - --no-strip - --no-size-optimization - --openssl="${ESYSROOT}/usr/bin/openssl" - --qt="$(ver_cut 1-3)" - --qtpaths="$(qt6_get_bindir)/qtpaths" - --verbose-build - --parallel="$(makeopts_jobs)" - "$(usex debug "--debug" "--relwithdebinfo")" - "--$(usex doc "build" "skip")-docs" - "--$(usex numpy "enable" "disable")-numpy-support" - ) - - if use test; then - MAIN_DISTUTILS_ARGS+=( - "--build-tests" - "--use-xvfb" - ) - fi - - if ! use tools; then - MAIN_DISTUTILS_ARGS+=( - "--no-qt-tools" - ) - fi -} - -python_compile() { - DISTUTILS_ARGS=( - "${MAIN_DISTUTILS_ARGS[@]}" - --build-type=shiboken6 - ) - distutils-r1_python_compile - - # The build system uses its own build dir, find the name of this dir. - local pyside_build_dir - read -r pyside_build_dir < <( - find "${BUILD_DIR}/build$((${#DISTUTILS_WHEELS[@]}-1))" \ - -maxdepth 1 -type d -name 'qfp*-py*-qt*-*' -printf "%f\n" - ) - export pyside_build_id="${pyside_build_dir#"qfp$(usev debug d)-py${EPYTHON#python}-qt$(ver_cut 1-3)-"}" - export PYTHONPATH="${BUILD_DIR}/build$((${#DISTUTILS_WHEELS[@]}-1))/${pyside_build_dir}/install/lib/${EPYTHON}/site-packages:${PYTHONPATH}" - - DISTUTILS_ARGS=( - "${MAIN_DISTUTILS_ARGS[@]}" - --reuse-build - --shiboken-target-path="${BUILD_DIR}/build$((${#DISTUTILS_WHEELS[@]}-1))/${pyside_build_dir}/install" - --build-type=shiboken6-generator - ) - distutils-r1_python_compile - export PYTHONPATH="${BUILD_DIR}/build$((${#DISTUTILS_WHEELS[@]}-1))/${pyside_build_dir}/install/lib/${EPYTHON}/site-packages:${PYTHONPATH}" - - # If no pyside modules enabled, build just shiboken - if [[ ${#ENABLED_QT_MODULES[@]} -gt 0 ]]; then - DISTUTILS_ARGS=( - "${MAIN_DISTUTILS_ARGS[@]}" - --reuse-build - --shiboken-target-path="${BUILD_DIR}/build$((${#DISTUTILS_WHEELS[@]}-1))/${pyside_build_dir}/install" - --build-type=pyside6 - ) - distutils-r1_python_compile - export PYTHONPATH="${BUILD_DIR}/build$((${#DISTUTILS_WHEELS[@]}-1))/${pyside_build_dir}/install/lib/${EPYTHON}/site-packages:${PYTHONPATH}" - fi - - # Link libraries to the usual location for backwards compatibility - pushd "${BUILD_DIR}/install/$(python_get_sitedir)" >/dev/null || - die - mkdir -p "${BUILD_DIR}/install/usr/$(get_libdir)" || die - local lib - for lib in */*.cpython-*.so - do - local base=${lib##*/} - ln -s "${base}" "${lib%/*}/${base%%.*}-${EPYTHON}.so" || - die - done - for lib in */*.cpython-*.so."$(ver_cut 1-2)" - do - local base=${lib##*/} - ln -s "${base}" "${lib%/*}/${base%%.*}-${EPYTHON}.so.$(ver_cut 1-2)" || - die - done - for lib in */*.so*; do - ln -s "../../$(python_get_sitedir)/${lib}" \ - "${BUILD_DIR}/install/usr/$(get_libdir)/${lib#*/}" || die - done - popd >/dev/null || die - - # Symlinks for compatibility with pypi wheels - local dir - if [[ -d ${BUILD_DIR}/install/$(python_get_sitedir)/PySide6 ]] - then - pushd "${BUILD_DIR}/install/$(python_get_sitedir)/PySide6" \ - >/dev/null || die - mkdir -p "${BUILD_DIR}/install/usr/share/PySide6" || die - for dir in doc glue typesystems; do - ln -s "../../../$(python_get_sitedir)/PySide6/${dir}" \ - "${BUILD_DIR}/install/usr/share/PySide6/${dir}" || - die - done - popd >/dev/null || die - fi - mkdir -p "${BUILD_DIR}/install/usr/include" - for dir in PySide6 shiboken6 shiboken6_generator; do - if [[ -d ${BUILD_DIR}/install/$(python_get_sitedir)/${dir}/include ]] - then - ln -s "../../$(python_get_sitedir)/${dir}/include" \ - "${BUILD_DIR}/install/usr/include/${dir//_generator}" || - die - fi - done - - # Install misc files from inner install dir - find "${BUILD_DIR}"/build*/"${pyside_build_dir}"/install -type f \ - -name libPySidePlugin.so -exec \ - mkdir -p "${BUILD_DIR}/install/$(qt6_get_plugindir)/designer/" \; \ - -exec \ - cp "{}" "${BUILD_DIR}/install/$(qt6_get_plugindir)/designer/" \; \ - || die - - for dir in cmake pkgconfig; do - find "${BUILD_DIR}"/build*/"${pyside_build_dir}"/install -type d -name "${dir}" \ - -exec cp -r "{}" "${BUILD_DIR}/install/usr/lib/" \; \ - || die - done - - # Uniquify the pkgconfigs file for the current Python target, - # preserving an unversioned "shiboken6.pc" file arbitrarily - # associated with the last Python target. - if [[ -f ${BUILD_DIR}/install/usr/lib/pkgconfig/shiboken6.pc ]] - then - sed -e 's~prefix=.*~prefix=/usr~g' \ - -e 's~exec_prefix=.*~exec_prefix=${prefix}~g' \ - -e "s~libdir=.*~libdir=$(python_get_sitedir)/shiboken6~g" \ - -e "s~includedir=.*~includedir=$(python_get_sitedir)/shiboken6_generator/include~g" \ - -i "${BUILD_DIR}/install/usr/lib/pkgconfig/shiboken6.pc" || die - cp "${BUILD_DIR}/install/usr/lib/pkgconfig/"shiboken6{,-${EPYTHON}}.pc || die - fi - if [[ -f ${BUILD_DIR}/install/usr/lib/pkgconfig/pyside6.pc ]] - then - sed -e 's~^Requires: shiboken6$~&-'${EPYTHON}'~' \ - -e 's~prefix=.*~prefix=/usr~g' \ - -e 's~exec_prefix=.*~exec_prefix=${prefix}~g' \ - -e "s~libdir=.*~libdir=$(python_get_sitedir)/PySide6~g" \ - -e "s~includedir=.*~includedir=$(python_get_sitedir)/PySide6/include~g" \ - -e "s~typesystemdir=.*~typesystemdir=$(python_get_sitedir)/PySide6/typesystems~g" \ - -e "s~gluedir=.*~gluedir=$(python_get_sitedir)/PySide6/glue~g" \ - -e "s~pythonpath=.*~pythonpath=$(python_get_sitedir)~g" \ - -i "${BUILD_DIR}/install/usr/lib/pkgconfig/pyside6.pc" || die - cp "${BUILD_DIR}/install/usr/lib/pkgconfig/"pyside6{,-${EPYTHON}}.pc || die - fi - - # _IMPORT_PREFIX breaks on split-usr/merged-usr plus weird random issues. - # These are not duplicates, the generated files are somehow different on - # different systems. - sed \ - -e "s~\${_IMPORT_PREFIX}/lib/libshiboken6\.cpython~/usr/$(get_libdir)/libshiboken6\.cpython~g" \ - -e "s~\${_IMPORT_PREFIX}/shiboken6/libshiboken6\.cpython~/usr/$(get_libdir)/libshiboken6\.cpython~g" \ - -e "s~\${_IMPORT_PREFIX}/bin/shiboken6~/usr/bin/shiboken6~g" \ - -e "s~\${_IMPORT_PREFIX}/shiboken6_generator/shiboken6~/usr/bin/shiboken6~g" \ - -e "s~\${_IMPORT_PREFIX}/lib/libpyside6\.cpython~/usr/$(get_libdir)/libpyside6\.cpython~g" \ - -e "s~\${_IMPORT_PREFIX}/PySide6/libpyside6\.cpython~/usr/$(get_libdir)/libpyside6\.cpython~g" \ - -e "s~\${_IMPORT_PREFIX}/lib/libpyside6qml\.cpython~/usr/$(get_libdir)/libpyside6qml\.cpython~g" \ - -e "s~\${_IMPORT_PREFIX}/PySide6/libpyside6qml\.cpython~/usr/$(get_libdir)/libpyside6qml\.cpython~g" \ - -e "s~libshiboken6\.cpython.*\.so\.$(ver_cut 1-3)~libshiboken6\${PYTHON_CONFIG_SUFFIX}\.so\.$(ver_cut 1-2)~g" \ - -e "s~libpyside6\.cpython.*\.so\.$(ver_cut 1-3)~libpyside6\${PYTHON_CONFIG_SUFFIX}\.so\.$(ver_cut 1-2)~g" \ - -e "s~libpyside6qml\.cpython.*\.so\.$(ver_cut 1-3)~libpyside6qml\${PYTHON_CONFIG_SUFFIX}\.so\.$(ver_cut 1-2)~g" \ - -e "s~libshiboken6\.cpython.*\.so\.$(ver_cut 1-2)~libshiboken6\${PYTHON_CONFIG_SUFFIX}\.so\.$(ver_cut 1-2)~g" \ - -e "s~libpyside6\.cpython.*\.so\.$(ver_cut 1-2)~libpyside6\${PYTHON_CONFIG_SUFFIX}\.so\.$(ver_cut 1-2)~g" \ - -e "s~libpyside6qml\.cpython.*\.so\.$(ver_cut 1-2)~libpyside6qml\${PYTHON_CONFIG_SUFFIX}\.so\.$(ver_cut 1-2)~g" \ - -e "s~\${PACKAGE_PREFIX_DIR}/~\${PACKAGE_PREFIX_DIR}/share/PySide6/~g" \ - -e "s~\${_IMPORT_PREFIX}/shiboken6/include~/usr/include/shiboken6~g" \ - -e "s~\${_IMPORT_PREFIX}/PySide6/include~/usr/include/PySide6~g" \ - -i "${BUILD_DIR}/install/usr/lib/cmake/"*/*.cmake || die - local file - for file in "${BUILD_DIR}/install/usr/lib/cmake/"*/*.cpython-*.cmake - do - local base=${file##*/} - ln -s "${base}" "${file%/*}/${base%%.*}-${EPYTHON}.cmake" || - die - done -} - -python_test() { - # Otherwise it picks the last built directory breaking assumption for multi target builds - local pyside_build_dir="qfp$(usev debug d)-py${EPYTHON#python}-qt$(ver_cut 1-3)-${pyside_build_id}" - - local buildno=$(find "${BUILD_DIR}"/build* -name "${pyside_build_dir}" | sort -V | tail -n1) - if [[ -z "${buildno}" ]]; then - die "could not find any build directories for ${pyside_build_dir}" - fi - - buildno="${buildno#"${BUILD_DIR}/build"}" - buildno="${buildno%"/${pyside_build_dir}"}" - - local -x PYTHONPATH="${BUILD_DIR}/install$(python_get_sitedir)" - local -x QTEST_ENVIRONMENT=ci - - # test shiboken6 build - virtx ${EPYTHON} testrunner.py test --buildno "$((buildno - 1))" --projects=shiboken6 || - die "Tests failed with ${EPYTHON}" - - if use core; then - # test pyside6 build - virtx ${EPYTHON} testrunner.py test --buildno "${buildno}" --projects=pyside6 || - die "Tests failed with ${EPYTHON}" - fi -} - -pkg_preinst() { - # Avoid symlinks being blocked by directories - rm -rf "${EROOT}/usr/include/"{PySide6,shiboken6} || die - rm -rf "${EROOT}/usr/share/PySide6" || die -} diff --git a/dev-python/python-discovery/python-discovery-1.4.0.ebuild b/dev-python/python-discovery/python-discovery-1.4.0.ebuild index f8667c62f0ab..e5cdf3b2adba 100644 --- a/dev-python/python-discovery/python-discovery-1.4.0.ebuild +++ b/dev-python/python-discovery/python-discovery-1.4.0.ebuild @@ -17,7 +17,7 @@ HOMEPAGE=" LICENSE="MIT" SLOT="0" -KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~m68k ppc ppc64 ~riscv ~s390 ~x86" +KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~m68k ppc ppc64 ~riscv ~s390 x86" RDEPEND=" >=dev-python/filelock-3.15.4[${PYTHON_USEDEP}] diff --git a/dev-python/python-statemachine/Manifest b/dev-python/python-statemachine/Manifest index b35279125e05..0465b3b04784 100644 --- a/dev-python/python-statemachine/Manifest +++ b/dev-python/python-statemachine/Manifest @@ -1,3 +1,3 @@ -DIST python-statemachine-2.5.0.gh.tar.gz 405778 BLAKE2B 5c85d7c75de1fe77694acc50a31b9f389a1b0b7ec572939a9662ef2b538b506d8acc30ee3d8168d21ca229c1ce7bfd14b4c54946dfa5d7577cb67ec1a3867352 SHA512 79331758fe305525fd7f97e3e1a9eecc22f79e96047080a31ad8df8d033b506d39c79fa5fe9e20cc2cb63db271517842ffcdab3f1fdb9785d135d3f65dffce6d DIST python-statemachine-2.6.0.gh.tar.gz 550777 BLAKE2B 005824e16ddccfb8c62d6b070eb7ff9c5e850ab09bf32a6343adc1a0b1acd9ef17e398df0dbabe4c51ff0ebfb2b6aad9aa1af1decd24e3e4fdf078131c7512d2 SHA512 93063d956594b4d3171860f20281840408f4d8f2fa19f100806192004224ab65d5944efb36084e956dcdd72d3b361d5be31d7de92ad22378c2ae4b3195e5753c DIST python-statemachine-3.0.0.gh.tar.gz 840388 BLAKE2B 9a358f6b39ad4be6cede1ac7b870dea5c73eb27f182952ccef703e7d78ab2368ed4c2c61226df7ce73d56244eaea92eb0b33ce61f536adaa5e31203089515faf SHA512 428a7cb2cf1c507ef56ea6b83a9d57c8d393ce81bbc7ffa251e8ec4ba4d01daff598df62b8cc2dd1c52d197bd25bc9964db10c57b68d8c9a69e95311dba635cc +DIST python-statemachine-3.1.2.gh.tar.gz 718225 BLAKE2B b7317440f6274265bb5561a90c7748d59fe4a16401f4b940cbd23bf59cfbe916c504d7a13c50d61d219c864b1175c9c4a2a82ca1022eb811d5b51920f1c638a0 SHA512 d0dbc291361ff9c37b1adac6d3af5333958c945b04d10df9498baa1de8bc5c89b588d86c9006bad16b2b1c966423e397eeaf5ef7f711e4d7d6d2961d31812f15 diff --git a/dev-python/python-statemachine/python-statemachine-2.5.0.ebuild b/dev-python/python-statemachine/python-statemachine-3.1.2.ebuild index c35c781bea56..9b9b3fefdea3 100644 --- a/dev-python/python-statemachine/python-statemachine-2.5.0.ebuild +++ b/dev-python/python-statemachine/python-statemachine-3.1.2.ebuild @@ -24,13 +24,12 @@ RDEPEND="dev-python/pydot[${PYTHON_USEDEP}]" BDEPEND=" ${RDEPEND} test? ( - dev-python/pytest-asyncio[${PYTHON_USEDEP}] - dev-python/pytest-mock[${PYTHON_USEDEP}] - dev-python/pytest-django[${PYTHON_USEDEP}] dev-python/django[${PYTHON_USEDEP}] + dev-python/sphinxcontrib-mermaid[${PYTHON_USEDEP}] ) " +EPYTEST_PLUGINS=( pytest-asyncio pytest-mock pytest-django) distutils_enable_tests pytest EPYTEST_DESELECT=( diff --git a/dev-python/python-tests/Manifest b/dev-python/python-tests/Manifest index fe58ac7c8d56..94a0095b0d91 100644 --- a/dev-python/python-tests/Manifest +++ b/dev-python/python-tests/Manifest @@ -10,6 +10,8 @@ DIST Python-3.14.5rc1.tar.xz 23894408 BLAKE2B 7b894cc9fbc6df9255ad04aed506cc7751 DIST Python-3.14.5rc1.tar.xz.sigstore 5363 BLAKE2B ad8ed1f9076ce67c33b290cdb6e24846de1642ce2deece0ec42d8adca67e7b403a53f7d64064c8c9d6d7ce05f8f1a62f5069a2cc85721160902b98cfebd254f9 SHA512 26a9129b8df1d5b83f6d81bdc49c78a5f45542ff9e56a3ecfc5b9480b5a0e0ee44b2fd3d1dd7775458c9076b4b27d891f149f3b24304f2456b5a0c5615e6ea12 DIST Python-3.15.0b1.tar.xz 35178032 BLAKE2B 1bbfdeb373fa3a26b9d957084edc9bfb7f81ae579cd9bf9fba1a43a3bf409a2e01512c56c642eb47b6e1a3c0fe44f182d72a15498b90a75d424b6325d0fd97a1 SHA512 ce486f903aa8690f1725565c3fdc0034a983a60952a96a950fa7c89ab899a71cabed4a9252c497e0474f206f83ff02e2793cf975c345825324b85bced750c270 DIST Python-3.15.0b1.tar.xz.sigstore 5411 BLAKE2B a1697c5239559c6871d3299c3dfa77edf0319ee03be12f6b3bd0b424e05a81b19249a98a316e5e6f8d403b04392ba69910ab8cef4ed86cf0d4a92fe04501a651 SHA512 72a4e1cfd48ba7ead6d5896d1441cf8c0991549beb28bc546534c4e1296495c9874dc7941239f8f5ed833b038bd66437868fd121c89a123d62cad157b744a4c2 +DIST Python-3.15.0b2.tar.xz 35381676 BLAKE2B 59834dc8301dcc9d7e25fd3faf6060a6755443f3782fd3f035d82896468013d01be1b558f7d5c7099b32d49256b09055fde324660d66a52900f519f75acb5556 SHA512 fae17efc3bd2604fdff2d63e0afeac47562165a5da2e1e027f4126b4f8bbb4957f3a2f406d6db23a20c8881fad108385b4b2afb53482075dbe16a690778ccd4a +DIST Python-3.15.0b2.tar.xz.sigstore 5583 BLAKE2B a766583eb8340ac3bef93ac0bde0ffa66f4680361bb369b3baccd715eb24a8a1f2e5f1ba049e1e8d3c7c53f41a2fe4b0402104156f7c0609355a18dbb24c99e2 SHA512 78f437419f67b10d556ec2304e9f46af4ee0114434e1c51594ccf202aa98ae3b733f4022aeac8fc1afdeeb29fda9328f855dd4914d38318c9ec965b45358153c DIST python-gentoo-patches-3.12.10.tar.xz 10744 BLAKE2B 2abf4874018156d6735cf8604c410dc4726ac9365bc7500abe6b82472aad100aac7268957256692f4275b02965773e58178519ed8038e121f1ffa3c53770d238 SHA512 62066405aa00f46f9645e9c747d53bb93bf510fc791d14d49e00edfd79981778e6c8e07bfa7bac88d76407a0ffd8f7321dea89f81d90b01dbf13f4d381b6a1a3 DIST python-gentoo-patches-3.12.13_p1.tar.xz 12408 BLAKE2B 2b232c2742eafcb803713c837b4ddaa38f45c88e707ec272571739570f9e2e5c94644681369d887992eadf5f0c1178489f1aa3a7d8163a2aa4ce6a86732e73da SHA512 e06d78ad24c9fbc3fa9c47b25ba722342ddd140aa30f624b41d605dae40d00ab956d879a247db2d7980c063a1472de40587a0d3cd6947e560aa7e8d0e4f89309 DIST python-gentoo-patches-3.13.13_p1.tar.xz 9920 BLAKE2B 81ecba755005b288fcbd8fa1b6a1f24ae0b19d8c8f9c54fd37935526145a458605b04b8492d1e15da4146313e7e2dd86fdabf509e8cf3ca2f48a23dac055145b SHA512 3b6f801296726a03ca6026e1434d7fbbc6d2aeb6cd9f0a83378d3be8cd011afce71e8341306feb8e521fe60f0f960b9885d6152fed44f2d0b604761101735d74 @@ -19,3 +21,4 @@ DIST python-gentoo-patches-3.14.4_p1.tar.xz 9016 BLAKE2B 39bee4db44684a087b3bf67 DIST python-gentoo-patches-3.14.5.tar.xz 10308 BLAKE2B 1ce7b8f33d15d27805894a6f3614fbcf280639fa84bb3605c1a1ee596282235f79ba2399b5d2385a06b0b36c8a6bf162ae4e1b15a67612bdca67f48e06a2fae2 SHA512 f2a806bf753e696a0b7474fd0f11c0f5d9a8043f72f478a37a79f7a9ec843cb31cc959aa3fc38670c1a8ac012554a7d3d4899d7e615cee70e21a7dd7afc2da9a DIST python-gentoo-patches-3.14.5rc1.tar.xz 8436 BLAKE2B 527156383cba6288df15a0bb0718960ba2a30428a2367d014a11b22e598c63d2c912480e37b064233e05590d1112b6c3c4ac1fa9db392ac11a98b8ec54847d30 SHA512 8adb64ca0bc1c653fb04a71bd6b40415ae3ca4761edf578199c5cc1d1da392b239ca07af395114970467c8233027c5eefb4b869bcab4379d5a7310a286aaec53 DIST python-gentoo-patches-3.15.0b1.tar.xz 3420 BLAKE2B 266ada600b587ff430a21c38d7585fcdb2d320a4160dd8e93dac3a6517faa685eadda9a9b14b271c6380a78112c83f39fc30bbbece10bfc7e6cde2eba61103fa SHA512 9f42700e03051fbadf3b9e6f7163077ab6b8c1f406e5bfc99560b590dbbabe72e5b38cd8c16b21aec75c4e760af549bffef6d76e65f390d61cd8840894949565 +DIST python-gentoo-patches-3.15.0b2.tar.xz 3436 BLAKE2B fa2128b899f2d93078058ccd3e47b780bd092a841b07add94da61a55bb1f9846ec1fa5e00bcd78fcdd1d7da80fdf1dbabcc5d644a70cebce2018c457b186c74a SHA512 e92e87c027c8d777faae20b264cd83353dbb23d15679e99465f014277d02078b8c68fce3723e176cbebd94ac2057e5a9703f0ae5f5691e934b74947735ec3a86 diff --git a/dev-python/python-tests/python-tests-0.3.15.0_beta2.ebuild b/dev-python/python-tests/python-tests-0.3.15.0_beta2.ebuild new file mode 100644 index 000000000000..5d64b5152fd6 --- /dev/null +++ b/dev-python/python-tests/python-tests-0.3.15.0_beta2.ebuild @@ -0,0 +1,75 @@ +# Copyright 2024-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{13..14} ) +VERIFY_SIG_METHOD=sigstore + +inherit python-r1 verify-sig + +REAL_PV=${PV#0.} +MY_PV=${REAL_PV/_beta/b} +MY_P="Python-${MY_PV%_p*}" +PYVER=$(ver_cut 2-3)t +PATCHSET="python-gentoo-patches-${MY_PV}" + +DESCRIPTION="Test modules from dev-lang/python" +HOMEPAGE=" + https://www.python.org/ + https://github.com/python/cpython/ +" +SRC_URI=" + https://www.python.org/ftp/python/${REAL_PV%%_*}/${MY_P}.tar.xz + https://distfiles.gentoo.org/pub/proj/python/patchsets/${PYVER%t}/${PATCHSET}.tar.xz + verify-sig? ( + https://www.python.org/ftp/python/${REAL_PV%%_*}/${MY_P}.tar.xz.sigstore + ) +" +S="${WORKDIR}/${MY_P}/Lib" + +LICENSE="PSF-2" +SLOT="${PYVER}" +if [[ ${PV} != *_* ]]; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +fi +# enable by default to help CI handle it (we have no additional deps) +IUSE="+python_targets_${PYTHON_COMPAT[0]}" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +RDEPEND=" + ${PYTHON_DEPS} + ~dev-lang/python-${PV}:${PYVER} +" +BDEPEND=" + ${PYTHON_DEPS} +" + +# https://www.python.org/downloads/metadata/sigstore/ +VERIFY_SIG_CERT_IDENTITY=hugo@python.org +VERIFY_SIG_CERT_OIDC_ISSUER=https://github.com/login/oauth + +src_unpack() { + if use verify-sig; then + verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.sigstore} + fi + default +} + +src_prepare() { + local PATCHES=( + "${WORKDIR}/${PATCHSET}" + ) + + cd .. || die + default +} + +src_install() { + python_setup + # keep in sync with TESTSUBDIRS in Makefile.pre.in + python_moduleinto "/usr/lib/python${PYVER}" + python_domodule test + python_moduleinto "/usr/lib/python${PYVER}/idlelib" + python_domodule idlelib/idle_test +} diff --git a/dev-python/python-tests/python-tests-3.15.0_beta2.ebuild b/dev-python/python-tests/python-tests-3.15.0_beta2.ebuild new file mode 100644 index 000000000000..5ed96d1087f8 --- /dev/null +++ b/dev-python/python-tests/python-tests-3.15.0_beta2.ebuild @@ -0,0 +1,74 @@ +# Copyright 2024-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{13..14} ) +VERIFY_SIG_METHOD=sigstore + +inherit python-r1 verify-sig + +MY_PV=${PV/_beta/b} +MY_P="Python-${MY_PV%_p*}" +PYVER=$(ver_cut 1-2) +PATCHSET="python-gentoo-patches-${MY_PV}" + +DESCRIPTION="Test modules from dev-lang/python" +HOMEPAGE=" + https://www.python.org/ + https://github.com/python/cpython/ +" +SRC_URI=" + https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz + https://distfiles.gentoo.org/pub/proj/python/patchsets/${PYVER%t}/${PATCHSET}.tar.xz + verify-sig? ( + https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.sigstore + ) +" +S="${WORKDIR}/${MY_P}/Lib" + +LICENSE="PSF-2" +SLOT="${PYVER}" +if [[ ${PV} != *_* ]]; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +fi +# enable by default to help CI handle it (we have no additional deps) +IUSE="+python_targets_${PYTHON_COMPAT[0]}" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +RDEPEND=" + ${PYTHON_DEPS} + ~dev-lang/python-${PV}:${PYVER} +" +BDEPEND=" + ${PYTHON_DEPS} +" + +# https://www.python.org/downloads/metadata/sigstore/ +VERIFY_SIG_CERT_IDENTITY=hugo@python.org +VERIFY_SIG_CERT_OIDC_ISSUER=https://github.com/login/oauth + +src_unpack() { + if use verify-sig; then + verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.sigstore} + fi + default +} + +src_prepare() { + local PATCHES=( + "${WORKDIR}/${PATCHSET}" + ) + + cd .. || die + default +} + +src_install() { + python_setup + # keep in sync with TESTSUBDIRS in Makefile.pre.in + python_moduleinto "/usr/lib/python${PYVER}" + python_domodule test + python_moduleinto "/usr/lib/python${PYVER}/idlelib" + python_domodule idlelib/idle_test +} diff --git a/dev-python/syrupy/Manifest b/dev-python/syrupy/Manifest index 0cdeb2023ed4..e69a62bac6da 100644 --- a/dev-python/syrupy/Manifest +++ b/dev-python/syrupy/Manifest @@ -1 +1,2 @@ -DIST syrupy-5.1.0.gh.tar.gz 2339258 BLAKE2B 7d888ec47ae10a3946e30262c43453cb9fb9d2e3edf1a5157cfea8811ffa1817c5db94278dd5533d51b51a1e8d0a53dbf653da187024b347a891a341dd6d3921 SHA512 32b98713a2ce64170b914b4ec36878b5175374c2192c5cbe2b118ebb89a33594c12bb29dde45ee9acaeac406e2723e25a73a5e7c2e53d93e584be69ff9b8cdef +DIST syrupy-5.3.1.tar.gz 83987 BLAKE2B c4be861eb695f7615a2c47fa23da065516e14df8541e89c69da33be85c01590cb663138f3d97e339e9b8273405b1fc35fa272b55ebfba698025b03bfff63d34c SHA512 d9e2efcab3ecef699df14b6a8dfdc1fa28e7007010e042013e5d43d56c23ea912311be0ff397db4add7e7a2f1e5a8b8ae401f57e23f759abe70bdf6ad0c6774d +DIST syrupy-5.3.1.tar.gz.provenance 9793 BLAKE2B de4074fca40c56f3517040d98c26ac2f5985ef33fcd14a0146054475f1c3adc6e23a322b81191fb84c296c9728fa02d0b193a0c0373151d4c3287333e78251c8 SHA512 f48bb5a19575a6122fd29d250c0ad28ef18212bad80e43b4407f19650f5845361f1e1e4a097e95f8ec501a7b445af85b8213dff726821378f0cdd42942f24929 diff --git a/dev-python/syrupy/metadata.xml b/dev-python/syrupy/metadata.xml index e88a1c7176ff..5efb0c919d3f 100644 --- a/dev-python/syrupy/metadata.xml +++ b/dev-python/syrupy/metadata.xml @@ -1,12 +1,12 @@ <?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE pkgmetadata SYSTEM 'https://www.gentoo.org/dtd/metadata.dtd'> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> - <maintainer type="person"> - <email>gasc@eurecom.fr</email> - <name>Gasc Henri</name> + <maintainer type="project"> + <email>python@gentoo.org</email> </maintainer> + <stabilize-allarches/> <upstream> - <remote-id type="pypi">syrupy</remote-id> <remote-id type="github">syrupy-project/syrupy</remote-id> + <remote-id type="pypi">syrupy</remote-id> </upstream> </pkgmetadata> diff --git a/dev-python/syrupy/syrupy-5.1.0.ebuild b/dev-python/syrupy/syrupy-5.1.0.ebuild deleted file mode 100644 index c265a05d7345..000000000000 --- a/dev-python/syrupy/syrupy-5.1.0.ebuild +++ /dev/null @@ -1,39 +0,0 @@ -# Copyright 2023-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_USE_PEP517=poetry -PYTHON_COMPAT=( python3_{13..14} ) - -inherit distutils-r1 - -DESCRIPTION="The sweeter pytest snapshot plugin" -HOMEPAGE="https://github.com/syrupy-project/syrupy https://pypi.org/project/syrupy" -SRC_URI="https://github.com/syrupy-project/syrupy/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz" - -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="~amd64 ~arm64" - -DOCS+=( LICENSE README.md CHANGELOG.md ) - -RDEPEND=" - dev-python/rich[${PYTHON_USEDEP}] -" -BDEPEND=" - test? ( - dev-python/invoke[${PYTHON_USEDEP}] - ) -" - -EPYTEST_PLUGINS=( pytest-xdist ) -distutils_enable_tests pytest - -src_prepare() { - distutils-r1_src_prepare - - # Inject required plugins; autoloading can break (e.g., with pytest-relaxed) - sed -i 's/\([a-zA-Z0-9_]\+\)\.runpytest(/\1.runpytest("-p", "syrupy", "-p", "xdist", /' \ - tests/integration/test_*.py || die -} diff --git a/dev-python/syrupy/syrupy-5.3.1.ebuild b/dev-python/syrupy/syrupy-5.3.1.ebuild new file mode 100644 index 000000000000..79ebfc3cbb57 --- /dev/null +++ b/dev-python/syrupy/syrupy-5.3.1.ebuild @@ -0,0 +1,34 @@ +# Copyright 2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=hatchling +PYPI_VERIFY_REPO=https://github.com/syrupy-project/syrupy +PYTHON_COMPAT=( python3_{13..14} ) + +inherit distutils-r1 pypi + +DESCRIPTION="The sweeter pytest snapshot plugin" +HOMEPAGE=" + https://github.com/syrupy-project/syrupy/ + https://pypi.org/project/syrupy/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" + +RDEPEND=" + >=dev-python/pytest-8.0.0[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + >=dev-python/pydantic-2.13.4[${PYTHON_USEDEP}] + ) +" + +EPYTEST_PLUGIN_LOAD_VIA_ENV=1 +# pytest-xdist used inside tests +EPYTEST_PLUGINS=( "${PN}" hypothesis pytest-xdist ) +distutils_enable_tests pytest diff --git a/dev-python/tox/tox-4.53.1.ebuild b/dev-python/tox/tox-4.53.1.ebuild index a4c7206d08ae..ab41c661b7a8 100644 --- a/dev-python/tox/tox-4.53.1.ebuild +++ b/dev-python/tox/tox-4.53.1.ebuild @@ -18,7 +18,7 @@ HOMEPAGE=" LICENSE="MIT" SLOT="0" -KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ppc ppc64 ~riscv ~s390 ~x86" +KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ppc ppc64 ~riscv ~s390 x86" RDEPEND=" dev-python/cachetools[${PYTHON_USEDEP}] diff --git a/dev-python/xattr/Manifest b/dev-python/xattr/Manifest index fb9905a3d0a7..e0ca46fc4d02 100644 --- a/dev-python/xattr/Manifest +++ b/dev-python/xattr/Manifest @@ -1,2 +1,2 @@ -DIST xattr-1.1.0.tar.gz 16634 BLAKE2B e920afbdc7c154e4558debb08f3b3230295854c799dcc3a28eaddb6d5a9a011bcab460c3d9a3f944cc43705796fb1fb5c57bb3b15653a128b91be17decc7b86c SHA512 b23eb96be5d6810ff2251418a2c2687d15cc98ceed422abe4a8bce01c77dda2969525f07feaf468bc43b60b6df6d573f15787b6221ed5816a772abd93ac47f8f -DIST xattr-1.2.0.tar.gz 17293 BLAKE2B 5a13a9fa6d0ec1f4378d37b444d2168c615ce33299bde12f7d0715837c172c6809b552043836d80ac0d7a88502e98e3fb36ca462f63def59b2913d7537cd993f SHA512 6c6cafccd05eba8abbfb1c62d5234ca04c52b608670ece395f62e70a3c8e7cfcc3f5e12a25ad888e92fb6aad2c717686c9f14448523cf4180c3effeb1556db72 +DIST xattr-1.3.0.tar.gz 17148 BLAKE2B 105c941c7cf78aecc941b59550a1b537f594b044eedee660085438f358cfdc7e3c6dae550072acaf6e1f64046a751d89a36d08e6461585d963e803c735b1aa73 SHA512 ffd680a10f4e5b4c7a00df12e426452d2f2c71986e18429f3064f660145401a4b6d8372c379a1055b36312362c259bc0c186704b7a054c3a3865b862448e6935 +DIST xattr-1.3.0.tar.gz.provenance 9225 BLAKE2B 0be1497bdf4bda73eda67f8ed46d0114fb324c55d493e4378a50e102c1b3e72183c04ac6408ec0e2e74d192e8350da089709b1412a99cae269e0fe0bf5ae6095 SHA512 c69b003c37afa3bce1c3638afed3269367d45598bff4bf44fe75374267aab026ff1f7035af944ce620f4412b8265d617e67afb6167af7ddff6b87a86d56af88c diff --git a/dev-python/xattr/xattr-1.1.0-r1.ebuild b/dev-python/xattr/xattr-1.1.0-r1.ebuild deleted file mode 100644 index a0e93b694ec8..000000000000 --- a/dev-python/xattr/xattr-1.1.0-r1.ebuild +++ /dev/null @@ -1,56 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_USE_PEP517=setuptools -DISTUTILS_EXT=1 -PYTHON_COMPAT=( python3_{13..14} ) - -inherit distutils-r1 pypi - -DESCRIPTION="Python wrapper for extended filesystem attributes" -HOMEPAGE=" - https://pypi.org/project/xattr/ - https://github.com/xattr/xattr -" - -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="~amd64" - -RDEPEND=" - $(python_gen_cond_dep '!dev-python/pyxattr[${PYTHON_USEDEP}]') -" -BDEPEND=" - $(python_gen_cond_dep ' - >=dev-python/cffi-1.16.0[${PYTHON_USEDEP}] - ' 'python*') - test? ( sys-apps/attr ) -" - -distutils_enable_tests pytest - -python_test() { - cd "${T}" || die - epytest "${S}"/tests -} - -check_xattr() { - touch tt || die - - setfattr -n "user.testAttr" -v "attribute value" tt || return 1 - getfattr -n "user.testAttr" tt >/dev/null || return 1 - - rm -f tt - return 0 -} - -src_test() { - if ! check_xattr; then - ewarn "Extended attributes not supported on your filesystem, skipping tests" - return 0 - fi - - distutils-r1_src_test -} diff --git a/dev-python/xattr/xattr-1.2.0.ebuild b/dev-python/xattr/xattr-1.3.0.ebuild index a0e93b694ec8..640bf569a5bb 100644 --- a/dev-python/xattr/xattr-1.2.0.ebuild +++ b/dev-python/xattr/xattr-1.3.0.ebuild @@ -1,10 +1,11 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 DISTUTILS_USE_PEP517=setuptools DISTUTILS_EXT=1 +PYPI_VERIFY_REPO=https://github.com/xattr/xattr PYTHON_COMPAT=( python3_{13..14} ) inherit distutils-r1 pypi @@ -29,6 +30,7 @@ BDEPEND=" test? ( sys-apps/attr ) " +EPYTEST_PLUGINS=() distutils_enable_tests pytest python_test() { |
