summaryrefslogtreecommitdiff
path: root/dev-python/pyudev
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-08-28 12:00:19 +0100
committerV3n3RiX <venerix@koprulu.sector>2024-08-28 12:00:19 +0100
commit7166f3a0a0b7886d340010458d0b130013cb9989 (patch)
tree3ff502007dde9dba943a004a3bf201ae4e0787bd /dev-python/pyudev
parent345c02ca33341652116ddec6705530223af2de85 (diff)
gentoo auto-resync : 28:08:2024 - 12:00:19
Diffstat (limited to 'dev-python/pyudev')
-rw-r--r--dev-python/pyudev/Manifest3
-rw-r--r--dev-python/pyudev/files/pyudev-0.24.3-tests.patch13
-rw-r--r--dev-python/pyudev/pyudev-0.24.3.ebuild77
3 files changed, 93 insertions, 0 deletions
diff --git a/dev-python/pyudev/Manifest b/dev-python/pyudev/Manifest
index 8096530d4acf..5a3b6f38c6f0 100644
--- a/dev-python/pyudev/Manifest
+++ b/dev-python/pyudev/Manifest
@@ -1,3 +1,6 @@
+AUX pyudev-0.24.3-tests.patch 630 BLAKE2B b0199ada00ad1b80550f371834262a9dc9d7870495b13e4ca22c6a1d2b9da2a14b6929bad6da236ea108e088c9a07b4b3a85fcd0225215c16e5bea48f07beb21 SHA512 92000cabaf6c346a601ba34ee7a11e76f3130f392380997730b8a112f7ed7104b656a649ac2366bf9eebf6f03d0effbbad40c516723b125dff962b28b4208533
DIST pyudev-0.24.1.tar.gz 85963 BLAKE2B 86c6d04691c99671735915564f58b4ef892e45925047487500bc7005343db7145941dde270f4ce9279881bd9bbf203965082d54b34b396febff52f387a1c26ac SHA512 10e32d9a74884000fbf8b86bee60530f6e7b936b990e7ae3b76099ace71834602de404721101c1076ef57365622a9a8f4819d57f58508ced09a21b7d50326886
+DIST pyudev-0.24.3.gh.tar.gz 80807 BLAKE2B 8b047c1d44f9bbb9ace782b690e0859eb3cdc2c1a994a398513e7cc2288803f8cfcdc227546de22275d47961f880bd76e0dec244e46abf451534f5648682febe SHA512 9075437f6fdba0fc1921e252c0a49e1a5eeed8c5cf598856a32aa9f9fcb8885dc0727258d2965241b2e044acfdf70561d5aa3f1380b84e013afc7cb8dcbfce2b
EBUILD pyudev-0.24.1.ebuild 1330 BLAKE2B d50d6a46d979bad6232955f5d02ffb2ae7a370dbcf85d3657152baa7cec82893df9af1b8085e77eee69a2caea0fb4ea5a9ec27a49d62876d0cbc6fe59ea67ce3 SHA512 8a20f87cb53c4a4f8e7c48fd4fd1b05d80f11af5e5c93096e5ff3725d9c28478e1d4841988e782132ae330c578f5b04835272a38e09752382e456ad82b222fdd
+EBUILD pyudev-0.24.3.ebuild 2110 BLAKE2B 1feb9186d5a5aa8d101ea3493a00b24ac1448fc75b772c8973be511d62896f54f5618a2ceaadbb3d69985941c47800d8d7ca80d17cf2597ab74c4fcfe5b85d11 SHA512 f8c3f37388253e0cb14eef66495c0d526ff03d294d98c0a9da6bad7e85e32ef2b218181c22d131ffaf2d9f0157091fa10f7f0ee169629da6efa9fc0575e35c15
MISC metadata.xml 705 BLAKE2B 5668637e59e1d434d0a72d0856e7ed614a2f5a3371e3fa4e841f4d516228f8b8a5567bc6a91cb07c8ee1f9c14db76ce238adac5bdab987a810adc2aed994b5a7 SHA512 a73f8225942c597d02ed08d3dc03724858f33cc07a2d9fcde64fe20f5c4263d1b7510e26e6365af120b72e7c8ebb075b7606dde493fe6464db2a585a23ca4b6a
diff --git a/dev-python/pyudev/files/pyudev-0.24.3-tests.patch b/dev-python/pyudev/files/pyudev-0.24.3-tests.patch
new file mode 100644
index 000000000000..a21327df2394
--- /dev/null
+++ b/dev-python/pyudev/files/pyudev-0.24.3-tests.patch
@@ -0,0 +1,13 @@
+diff --git a/tests/_device_tests/_attributes_tests.py b/tests/_device_tests/_attributes_tests.py
+index 71b3a7a..9136cea 100644
+--- a/tests/_device_tests/_attributes_tests.py
++++ b/tests/_device_tests/_attributes_tests.py
+@@ -49,7 +49,7 @@ def test_getitem(self, a_context, device_datum):
+ device = Devices.from_path(a_context, device_datum.device_path)
+ assert all(
+ isinstance(device.attributes.get(key), bytes)
+- for key in device_datum.attributes.keys()
++ for key in device_datum.attributes.keys() if key is not None
+ )
+
+ @given(strategies.sampled_from(_DEVICES))
diff --git a/dev-python/pyudev/pyudev-0.24.3.ebuild b/dev-python/pyudev/pyudev-0.24.3.ebuild
new file mode 100644
index 000000000000..29d6755427f4
--- /dev/null
+++ b/dev-python/pyudev/pyudev-0.24.3.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9..13} )
+inherit distutils-r1 optfeature pypi
+
+DESCRIPTION="Python binding to libudev"
+HOMEPAGE="https://pyudev.readthedocs.io/en/latest/ https://github.com/pyudev/pyudev"
+SRC_URI="https://github.com/pyudev/pyudev/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="qt5"
+
+# Known to fail on test system that aren't exactly the same devices as on CI
+#RESTRICT="test"
+
+RDEPEND="
+ virtual/udev
+"
+BDEPEND="
+ test? (
+ dev-python/docutils[${PYTHON_USEDEP}]
+ dev-python/hypothesis[${PYTHON_USEDEP}]
+ )
+"
+
+DOCS=( CHANGES.rst README.rst )
+
+PATCHES=(
+ "${FILESDIR}/pyudev-0.24.3-tests.patch"
+)
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ if use test; then
+ ewarn "If your PORTAGE_TMPDIR is longer in length then '/var/tmp/',"
+ ewarn "change it to /var/tmp to ensure tests will pass."
+ fi
+
+ # tests are known to pass then fail on alternate runs
+ # tests: fix run_path
+ sed -e "s|== \('/run/udev'\)|in (\1,'/dev/.udev')|g" \
+ -i tests/test_core.py || die
+
+ # disable usage of hypothesis timeouts (too short)
+ sed -e '/@settings/s/(/(deadline=None,/' -i tests{,/_device_tests}/*.py || die
+
+ # remove GUI tests that require a display server
+ rm tests/test_observer.py tests/test_observer_deprecated.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ local -a EPYTEST_DESELECT=(
+ # tests that require root access
+ tests/test_device.py::TestAttributes::test_asint
+ tests/test_device.py::TestAttributes::test_asbool
+ tests/test_device.py::TestAttributes::test_getitem
+ tests/test_device.py::TestAttributes::test_asstring
+
+ # tests don't work on systems that differ from the upstream CI
+ tests/test_monitor.py::TestMonitorObserver::test_deprecated_handler
+ tests/test_monitor.py::TestMonitorObserver::test_fake
+ )
+ epytest tests
+}
+
+pkg_postinst() {
+ optfeature "PyQt5 bindings" "dev-python/PyQt5"
+}