From 9abcfd5abdfc079baae803a0388e4817c6d156ff895ca2aa6648aa7fa6aa8fba Mon Sep 17 00:00:00 2001 From: Steve Kowalik Date: Thu, 10 Mar 2022 23:07:17 +0000 Subject: [PATCH] Accepting request 960810 from home:dimstar:Factory Update to 0.23.2 plus a few git commits; does not fix build in F, but is a better base to work on OBS-URL: https://build.opensuse.org/request/show/960810 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pyudev?expand=0&rev=49 --- _service | 8 ++- _servicedata | 2 +- hypothesis_settings.patch | 63 ++++++++++++++------- pytest_register_mark.patch | 43 +++++++------- python-pyudev.changes | 18 ++++++ python-pyudev.spec | 6 +- pyudev-0.22.0+git.1642212208.d5630bf.tar.xz | 3 - pyudev-0.23.2+14.obscpio | 3 + pyudev.obsinfo | 6 +- 9 files changed, 98 insertions(+), 54 deletions(-) delete mode 100644 pyudev-0.22.0+git.1642212208.d5630bf.tar.xz create mode 100644 pyudev-0.23.2+14.obscpio diff --git a/_service b/_service index 48ef0e1..8a39fe8 100644 --- a/_service +++ b/_service @@ -1,14 +1,16 @@ - 0.22.0+git https://github.com/pyudev/pyudev.git git .git* + @PARENT_TAG@+@TAG_OFFSET@ + v(.*)(\+0)? + \1 enable mcepl@cepl.eu - - + + xz *.tar diff --git a/_servicedata b/_servicedata index 96f397a..3d1af50 100644 --- a/_servicedata +++ b/_servicedata @@ -1,4 +1,4 @@ https://github.com/pyudev/pyudev.git - e358af68d743a63caa48a2dd1469ad265be39aa9 \ No newline at end of file + bb199c6c840756301a6dc16c44ae0625b2c930cd \ No newline at end of file diff --git a/hypothesis_settings.patch b/hypothesis_settings.patch index 8eddfbe..3d98098 100644 --- a/hypothesis_settings.patch +++ b/hypothesis_settings.patch @@ -1,7 +1,5 @@ ---- - tests/test_enumerate.py | 10 +++++----- - 1 file changed, 5 insertions(+), 5 deletions(-) - +diff --git a/tests/test_enumerate.py b/tests/test_enumerate.py +index 83af62d..0c97a18 100644 --- a/tests/test_enumerate.py +++ b/tests/test_enumerate.py @@ -91,7 +91,7 @@ class TestEnumerator(object): @@ -13,7 +11,7 @@ def test_match_subsystem(self, context, subsystem): """ Subsystem match matches devices w/ correct subsystem. -@@ -129,7 +129,7 @@ class TestEnumerator(object): +@@ -116,7 +116,7 @@ def test_match_subsystem_nomatch_unfulfillable(self, context, subsystem): @failed_health_check_wrapper @given(_CONTEXT_STRATEGY, _SUBSYSTEM_STRATEGY) @@ -22,25 +20,25 @@ def test_match_subsystem_nomatch_complete(self, context, subsystem): """ Test that w/ respect to the universe of devices returned by -@@ -147,7 +147,7 @@ class TestEnumerator(object): +@@ -134,7 +134,7 @@ def test_match_subsystem_nomatch_complete(self, context, subsystem): @failed_health_check_wrapper - @given(_CONTEXT_STRATEGY, _SYSNAME_STRATEGY) + @given(_CONTEXT_STRATEGY, _MATCH_PROPERTY_STRATEGY.filter(lambda x: _is_bool(x[1]))) +- @settings(max_examples=10) ++ @settings(max_examples=10, deadline=500) + def test_match_property_bool(self, context, pair): + """ + Verify that a probably boolean property lookup works. +@@ -152,7 +152,7 @@ def test_match_property_bool(self, context, pair): + @given( + _CONTEXT_STRATEGY, device_strategy(filter_func=lambda d: d.parent is not None) + ) - @settings(max_examples=5) + @settings(max_examples=5, deadline=500) - def test_match_sys_name(self, context, sysname): + def test_match_parent(self, context, device): """ - A sysname lookup only gives devices with that sysname. -@@ -221,7 +221,7 @@ class TestEnumeratorMatchCombinations(ob - unique_by=lambda p: p[0], - ), - ) -- @settings(max_examples=2) -+ @settings(max_examples=2, deadline=500) - def test_combined_property_matches(self, context, ppairs): - """ - Test for behaviour as observed in #1 -@@ -246,7 +246,7 @@ class TestEnumeratorMatchCombinations(ob + For a given device, verify that it is in its parent's children. +@@ -178,7 +178,7 @@ class TestEnumeratorMatchCombinations(object): _SYSNAME_STRATEGY, _MATCH_PROPERTY_STRATEGY, ) @@ -49,3 +47,30 @@ def test_match(self, context, subsystem, sysname, ppair): """ Test that matches from different categories are a conjunction. +@@ -234,7 +234,7 @@ def test_match_passthrough_sys_name(self, enumerator): + match_sys_name.assert_called_with(mock.sentinel.sys_name) + + @given(_ENUMERATOR_STRATEGY) +- @settings(max_examples=1) ++ @settings(max_examples=1, deadline=500) + def test_match_passthrough_tag(self, enumerator): + """ + Test that special keyword tag results in a match_tag call. +@@ -245,7 +245,7 @@ def test_match_passthrough_tag(self, enumerator): + + @_UDEV_TEST(172, "test_match_passthrough_parent") + @given(_ENUMERATOR_STRATEGY) +- @settings(max_examples=1) ++ @settings(max_examples=1, deadline=500) + def test_match_passthrough_parent(self, enumerator): + """ + Test that special keyword 'parent' results in a match parent call. +@@ -257,7 +257,7 @@ def test_match_passthrough_parent(self, enumerator): + match_parent.assert_called_with(mock.sentinel.parent) + + @given(_ENUMERATOR_STRATEGY) +- @settings(max_examples=1) ++ @settings(max_examples=1, deadline=500) + def test_match_passthrough_property(self, enumerator): + """ + Test that non-special keyword args are treated as properties. diff --git a/pytest_register_mark.patch b/pytest_register_mark.patch index 866b7bd..9c717c9 100644 --- a/pytest_register_mark.patch +++ b/pytest_register_mark.patch @@ -1,12 +1,5 @@ ---- - pytest.ini | 5 ++++- - tests/_device_tests/_attributes_tests.py | 1 + - tests/_device_tests/_device_tests.py | 1 + - tests/_device_tests/_devices_tests.py | 3 +++ - tests/test_enumerate.py | 2 +- - tests/test_util.py | 2 ++ - 6 files changed, 12 insertions(+), 2 deletions(-) - +diff --git a/pytest.ini b/pytest.ini +index 9d9100b..9c60249 100644 --- a/pytest.ini +++ b/pytest.ini @@ -1,3 +1,6 @@ @@ -17,9 +10,11 @@ +markers = + conversion + real_udev +diff --git a/tests/_device_tests/_attributes_tests.py b/tests/_device_tests/_attributes_tests.py +index 4e42cda..0ad1384 100644 --- a/tests/_device_tests/_attributes_tests.py +++ b/tests/_device_tests/_attributes_tests.py -@@ -122,6 +122,7 @@ class TestAttributes(object): +@@ -122,6 +122,7 @@ def test_asbool(self, a_context, device_datum): with pytest.raises(ValueError): device.attributes.asbool(key) @@ -27,9 +22,11 @@ @_UDEV_TEST(167, "test_available_attributes") @given(strategies.sampled_from(_DEVICES)) @settings(max_examples=5) +diff --git a/tests/_device_tests/_device_tests.py b/tests/_device_tests/_device_tests.py +index 30230f8..1b9a1af 100644 --- a/tests/_device_tests/_device_tests.py +++ b/tests/_device_tests/_device_tests.py -@@ -215,6 +215,7 @@ class TestDevice(object): +@@ -215,6 +215,7 @@ def test_device_node(self, a_context, device_datum): if device.device_node: assert is_unicode_string(device.device_node) @@ -37,9 +34,11 @@ @given(_CONTEXT_STRATEGY, strategies.sampled_from(_DEVICE_DATA)) @settings(max_examples=5) def test_device_number(self, a_context, device_datum): +diff --git a/tests/_device_tests/_devices_tests.py b/tests/_device_tests/_devices_tests.py +index 2cb4825..01e5a8a 100644 --- a/tests/_device_tests/_devices_tests.py +++ b/tests/_device_tests/_devices_tests.py -@@ -128,6 +128,7 @@ class TestDevices(object): +@@ -128,6 +128,7 @@ def test_from_name_nonexisting_subsystem(self): assert error.subsystem == "no_such_subsystem" assert error.sys_name == "foobar" @@ -47,7 +46,7 @@ @failed_health_check_wrapper @given( _CONTEXT_STRATEGY, -@@ -143,6 +144,7 @@ class TestDevices(object): +@@ -143,6 +144,7 @@ def test_from_device_number(self, a_context, a_device): device = Devices.from_device_number(a_context, typ, a_device.device_number) assert a_device == device @@ -55,7 +54,7 @@ @failed_health_check_wrapper @given( _CONTEXT_STRATEGY, -@@ -178,6 +180,7 @@ class TestDevices(object): +@@ -178,6 +180,7 @@ def test_from_device_number_invalid_type(self): with pytest.raises(DeviceNotFoundByNumberError): Devices.from_device_number(_CONTEXT, "foobar", 100) @@ -63,17 +62,21 @@ @failed_health_check_wrapper @given( _CONTEXT_STRATEGY, +diff --git a/tests/test_enumerate.py b/tests/test_enumerate.py +index 8efb1f8..83af62d 100644 --- a/tests/test_enumerate.py +++ b/tests/test_enumerate.py -@@ -104,7 +104,7 @@ class TestEnumerator(object): +@@ -104,7 +104,7 @@ def test_match_subsystem(self, context, subsystem): @failed_health_check_wrapper @given(_CONTEXT_STRATEGY, _SUBSYSTEM_STRATEGY) -- @settings(max_examples=1) -+ @settings(max_examples=1, deadline=None) - def test_match_subsystem_nomatch(self, context, subsystem): +- @settings(max_examples=5) ++ @settings(max_examples=5, deadline=None) + def test_match_subsystem_nomatch_unfulfillable(self, context, subsystem): """ - Subsystem no match gets no subsystem with subsystem. + Combining match and no match should give an empty result. +diff --git a/tests/test_util.py b/tests/test_util.py +index 1389b6b..4b8587d 100644 --- a/tests/test_util.py +++ b/tests/test_util.py @@ -132,6 +132,7 @@ def raise_valueerror(): @@ -84,7 +87,7 @@ @pytest.mark.skipif(len(_CHAR_DEVICES) == 0, reason="no tty devices") @given(strategies.sampled_from(_CHAR_DEVICES)) @settings(max_examples=5) -@@ -145,6 +146,7 @@ def test_get_device_type_character_devic +@@ -145,6 +146,7 @@ def test_get_device_type_character_device(a_device): _BLOCK_DEVICES = list(_CONTEXT.list_devices(subsystem="block")) diff --git a/python-pyudev.changes b/python-pyudev.changes index 1f33de7..2293c0b 100644 --- a/python-pyudev.changes +++ b/python-pyudev.changes @@ -1,3 +1,21 @@ +------------------------------------------------------------------- +Thu Mar 10 14:04:43 UTC 2022 - mcepl@cepl.eu + +- Update to version 0.23.2+14: + * Remove a bunch of python-2 only testing + * Bump some Python versions + * Get rid of six dependency + * Drop all pylint tasks + * Remove overly rigorous tests + * Make a package target that uses build + * Omit PyPy flakey test + * Check whether the Context has a "_libudev" attribute + * Remove setup.cfg + * Remove obsolete egg_info parameter + * Delete another flaky test +- Rebase hypothesis_settings.patch and pytest_register_mark.patch. +- Drop six (Build)?Requires. + ------------------------------------------------------------------- Tue Jan 25 08:54:16 UTC 2022 - Bernhard Wiedemann diff --git a/python-pyudev.spec b/python-pyudev.spec index c09ae86..372d641 100644 --- a/python-pyudev.spec +++ b/python-pyudev.spec @@ -18,7 +18,7 @@ %{?!python_module:%define python_module() python-%{**} python3-%{**}} Name: python-pyudev -Version: 0.22.0+git.1642212208.d5630bf +Version: 0.23.2+14 Release: 0 Summary: Udev bindings for Python License: LGPL-2.1-or-later @@ -32,20 +32,17 @@ Patch0: pytest_register_mark.patch # tests timeout on OBS Patch2: hypothesis_settings.patch BuildRequires: %{python_module setuptools} -BuildRequires: %{python_module six} BuildRequires: fdupes BuildRequires: pkgconfig BuildRequires: python-rpm-macros BuildRequires: pkgconfig(libudev) BuildRequires: pkgconfig(udev) Requires: libudev1 -Requires: python-six BuildArch: noarch BuildRequires: %{python_module Sphinx} BuildRequires: %{python_module docutils} BuildRequires: %{python_module hypothesis} BuildRequires: %{python_module pytest} -BuildRequires: %{python_module six} BuildRequires: %{python_module yapf} %if 0%{?suse_version} < 1550 BuildRequires: python-mock @@ -66,7 +63,6 @@ in modern linux systems. # Disable intersphinx and issuetracker, we don't want to access the web during doc build: sed -i -e "s|'sphinx.ext.intersphinx',\\?||" -e "s|'sphinxcontrib.issuetracker',\\?||" doc/conf.py -sed -i -e 's/tag_date = true/tag_date = false/' setup.cfg %build %python_build diff --git a/pyudev-0.22.0+git.1642212208.d5630bf.tar.xz b/pyudev-0.22.0+git.1642212208.d5630bf.tar.xz deleted file mode 100644 index e513e88..0000000 --- a/pyudev-0.22.0+git.1642212208.d5630bf.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:aadd5ef8d671bc6885f368361d0895bdcb4964a75fcd8cd8b37ddb4a08db137c -size 67520 diff --git a/pyudev-0.23.2+14.obscpio b/pyudev-0.23.2+14.obscpio new file mode 100644 index 0000000..77a71a6 --- /dev/null +++ b/pyudev-0.23.2+14.obscpio @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9c30065a9f55885b2c140b8b361e6ab4be6b88f9617ab4959b83a077c49397e +size 390667 diff --git a/pyudev.obsinfo b/pyudev.obsinfo index c770be8..880258c 100644 --- a/pyudev.obsinfo +++ b/pyudev.obsinfo @@ -1,4 +1,4 @@ name: pyudev -version: 0.22.0+git.1642212208.d5630bf -mtime: 1642212208 -commit: d5630bf15692b652db55d626f66274169f3448d5 +version: 0.23.2+14 +mtime: 1646756777 +commit: 3f60ee80d424178008b39c5ca323cc1a15f2b64e