From 81e3c35d261439c2defe724d17502c609454837a80b95aa29aaaf07ae6210ce5 Mon Sep 17 00:00:00 2001 From: Todd R Date: Thu, 31 Aug 2017 22:04:22 +0000 Subject: [PATCH] Accepting request 520039 from devel:languages:python:singlespec-staging MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - singlespec auto-conversion - Remove do_not_install_tests.patch - Require python-six - update to 0.20.0: * Remove parsing code added in previous release. * No longer do CI for Python 2.6. * Eliminate all wildcard imports and __all__ statements. * No longer use deprecated Device.from_sys_path() method. * Minor pylint induced changes. * Documentation fixes. * Restore raising KeyError by Attributes.as* methods when attribute not found. * Explicitly require six module. * Never raise a DeviceNotFoundError when iterating over a device enumeration. * Device.subsystem() now returns None if device has no subsystem. * Add DeprecationWarnings to deprecated Device methods. * Replace "/" with "!" in Device.from_name() sys_name parameter. * Add some unstable classes for parsing some kinds of values. * Make version info more like Python's including micro numbers and levels. * Refactor some internal modules into subdirectories. * Work on tests and reproducers. * DeviceNotFoundError is no longer a subtype of LookupError * Added support for pyqt5 monitor observer * Added discover module, which looks up a device on limited information * Attributes class no longer extends Mapping, extends object instead * Attributes class no longer inherits [] operator, Mapping methods * Attributes class objects are no longer iterable * Attributes.available_attributes property added * Attributes.get() method, with usual semantics, defined * Device.from_* methods are deprecated, uses Devices.from_* methods instead * Device.from_device_file() now raises DeviceNotFoundByFileError * Device.from_device_number() now raises DeviceNotFoundByNumberError * Devices.from_interface_index() method added * Devices.from_kernel_device() method added * Numerous testing infrastructure changes - Remove do_not_install_tests.patch . No longer needed. - Require libudev1 . Needed to use python-pyudev - Added a patch (do_not_install_tests.patch) to not install the tests as a module (not needed). Fixes also file conflicts in Factory. - Update to version 0.17: * #52: Remove global libudev object * #57: Really start the monitor on :meth:`pyudev.Monitor.poll()` * #60: Do not use :meth:`select.select` to avoid hitting its file descriptor limit * #58: Force non-blocking IO in :class:`pyudev.Monitor` to avoid blocking on receiving the device * #63: Set proper flags on pipe fds. * #65: Handle irregular polling events properly. * #50: Add :class:`pyudev.wx.MonitorObserver` and deprecate :class:`pyudev.wx.WxUDevMonitorObserver` * #50: Add :class:`pyudev.glib.MonitorObserver` and deprecate :class:`pyudev.glib.GUDevMonitorObserver` * #50: Add :class:`pyudev.pyqt4.MonitorObserver` and deprecate :class:`pyudev.pyqt4.QUDevMonitorObserver` * #50: Add :class:`pyudev.pyside.MonitorObserver` and deprecate :class:`pyudev.pyside.QUDevMonitorObserver` * Add a wrapper function to retry interruptible system calls. - Require python-setuptools instead of distribute (upstreams merged) - Build HTML documentation - Fix SLE_11_SP2 build (not noarch) - Update to version 0.16.1: * #53: Fix source distribution * #54: Fix typo in test From version 0.16: * Remove :meth:`pyudev.Monitor.from_socket`. * Deprecate :meth:`pyudev.Device.traverse()` in favor of :attr:`pyudev.Device.ancestors`. * #47: Deprecate :meth:`pyudev.Monitor.receive_device` in favor of :attr:`pyudev.Monitor.poll`. * #47: Deprecate :attr:`pyudev.Monitor.enable_receiving` in favor of :attr:`pyudev.Monitor.start`. * #47: Deprecate :attr:`pyudev.Monitor.__iter__` in favor of explicit looping or :class:`pyudev.MonitorObserver`. * #49: Deprecate ``event_handler`` to :class:`pyudev.MonitorObserver` in favour of ``callback`` argument. * #46: Continuously test pyudev on Travis-CI. * Add :attr:`pyudev.Device.ancestors`. * Add :attr:`pyudev.Device.action`. * #10: Add :attr:`pyudev.Device.sequence_number`. * #47: Add :meth:`pyudev.Monitor.poll`. * #47: Add :attr:`pyudev.Monitor.started`. * #49: Add ``callback`` argument to :class:`pyudev.Monitor`. * :meth:`pyudev.Monitor.start` can be called repeatedly. * #45: Get rid of 2to3 * #43: Fix test failures on Python 2.6 * Fix signature in declaration of ``udev_monitor_set_receive_buffer_size``. * #44: Test wrapped signatures with help of ``gccxml``. * Fix compatibility with udev 183 and newer in :class:`pyudev.Context`. * :meth:`pyudev.MonitorObserver.stop` can be called from the observer thread. - Removed python-setuptools and added python-distribute as build requirement. - Update to version 0.15: * #20: :meth:`pyudev.Monitor.filter_by()` and :meth:`pyudev.Monitor.filter_by_tag()` can be called after :meth:`pyudev.Monitor.enable_receiving()` now * #20: Added :meth:`~pyudev.Monitor.remove_filter()` * :class:`pyudev.MonitorObserver` calls :meth:`pyudev.Monitor.enable_receiving()` now when started. * #40: Added user guide to the documentation * #39: Added :meth:`pyudev.Device.from_device_file()` * :data:`errno.EINVAL` from underlying libudev functions causes :exc:`~exceptions.ValueError` instead of :exc:`~exceptions.EnvironmentError` now. - Update to version 0.14: * Documentation now hosted at http://pyudev.readthedocs.org * #37: Added :class:`pyudev.wx.WxUDevMonitorObserver` for wxPython * Added :class:`pyudev.MonitorObserver` * Added :attr:`pyudev.glib.GUDevMonitorObserver.enabled`, :attr:`pyudev.pyqt4.QUDevMonitorObserver.enabled` and :attr:`pyudev.pyside.QUDevMonitorObserver.enabled` - Update to version 0.13: * #36: Added :meth:`pyudev.Monitor.set_receive_buffer_size` (thanks to Rémi Rérolle) * #34: :class:`pyudev.Device.tags` returns a :class:`pyudev.Tags` object now * Added :meth:`pyudev.Enumerator.match_parent` * Added ``parent`` keyword argument to :meth:`pyudev.Enumerator.match()` * Removed :meth:`pyudev.Enumerator.match_children` in favour of :meth:`pyudev.Enumerator.match_parent` * :attr:`pyudev.Device.children` requires udev version 172 now * #31: Added :meth:`pyudev.Enumerator.match_attribute` * Added ``nomatch`` argument to :meth:`pyudev.Enumerator.match_subsystem` and :meth:`pyudev.Enumerator.match_attribute` - Update to version 0.12: * #32: Fixed memory leak * #33: Fixed Python 3 support for :mod:`pyudev.glib` * Fixed license header in :mod:`pyudev._compat` - Spec file updates. * Changed License: to LGPL-2.1+. * Minor other updates. - Update to version 0.11: * #30: Added :attr:`pyudev.Device.sys_number` * #29: Added :meth:`pyudev.Device.from_device_number` and :attr:`pyudev.Device.device_number` * Officially support PyPy now From 0.10: * Added :attr:`pyudev.__version_info__` * Added :attr:`pyudev.Device.device_type` * :class:`pyudev.Context`, :class:`pyudev.Enumerator`, :class:`pyudev.Device` and :class:`pyudev.Monitor` can now directly be passed to :mod:`ctypes`-wrapped functions * #24: Added :attr:`pyudev.Context.run_path` From 0.9: * #21: Added :meth:`pyudev.Device.find_parent` * #22: Added :meth:`pyudev.Monitor.filter_by_tag` * Added :attr:`pyudev.Context.log_priority` to control internal UDev logging * Improve error reporting, if libudev is missing - Spec file updates: * Changed package name to python-pyudev. * Changed License: to LGPL-2.1. * Updated Url:. * Added Provides/Obsoletes entries for pyudev. * Build the package as noarch. * Minor other updates. - Initial Package (version 0.8). OBS-URL: https://build.opensuse.org/request/show/520039 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pyudev?expand=0&rev=24 --- python-pyudev.changes | 6 +++++ python-pyudev.spec | 58 ++++++++++++++++++++++++------------------- pyudev-0.20.0.tar.gz | 3 --- pyudev-0.21.0.tar.gz | 3 +++ 4 files changed, 41 insertions(+), 29 deletions(-) delete mode 100644 pyudev-0.20.0.tar.gz create mode 100644 pyudev-0.21.0.tar.gz diff --git a/python-pyudev.changes b/python-pyudev.changes index 4ae58d9..557ac96 100644 --- a/python-pyudev.changes +++ b/python-pyudev.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Thu Aug 24 13:52:57 UTC 2017 - jmatejek@suse.com + +- singlespec auto-conversion + ------------------------------------------------------------------- Mon May 23 16:12:57 UTC 2016 - tbechtold@suse.com @@ -201,3 +206,4 @@ Sun Aug 28 19:28:06 UTC 2011 - asterios.dramis@gmail.com Tue Feb 8 13:18:25 UTC 2011 - tittiatcoke@gmail.com - Initial Package (version 0.8). + diff --git a/python-pyudev.spec b/python-pyudev.spec index 18d52bf..c283c8d 100644 --- a/python-pyudev.spec +++ b/python-pyudev.spec @@ -1,7 +1,7 @@ # # spec file for package python-pyudev # -# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -16,35 +16,41 @@ # +%{?!python_module:%define python_module() python-%{**} python3-%{**}} +%bcond_with test Name: python-pyudev -Version: 0.20.0 +Version: 0.21.0 Release: 0 Summary: Udev bindings for Python License: LGPL-2.1+ Group: Development/Libraries/Python Url: http://pyudev.readthedocs.org/ -Source0: https://pypi.python.org/packages/78/6a/2fc9ed0ffbcdb480a026274ca221b959de6c549a67753ff4b3c790db0d8a/pyudev-%{version}.tar.gz +Source0: https://files.pythonhosted.org/packages/source/p/pyudev/pyudev-%{version}.tar.gz +BuildRequires: %{python_module devel} +BuildRequires: %{python_module setuptools} +BuildRequires: %{python_module six} +BuildRequires: fdupes BuildRequires: libudev-devel BuildRequires: libudev1 -BuildRequires: python-Sphinx -BuildRequires: python-devel -BuildRequires: python-setuptools -# Testsuite BuildRequires: -BuildRequires: python-mock -BuildRequires: python-nose -BuildRequires: python-py -BuildRequires: python-pytest -Requires: libudev1 +BuildRequires: python-rpm-macros +%if %{with test} +BuildRequires: %{python_module docutils} +BuildRequires: %{python_module mock} +BuildRequires: %{python_module hypothesis} +BuildRequires: %{python_module nose} +BuildRequires: %{python_module pytest} +BuildRequires: %{python_module py} +%endif +Requires: udev Requires: python-six +%ifpython2 # pyudev was last used in KDE:Unstable:Playground (pyudev-0.8) Provides: pyudev = %{version} Obsoletes: pyudev < %{version} -BuildRoot: %{_tmppath}/%{name}-%{version}-build -%if 0%{?suse_version} && 0%{?suse_version} <= 1110 -%{!?python_sitelib: %global python_sitelib %(python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")} -%else -BuildArch: noarch %endif +BuildArch: noarch + +%python_subpackages %description A Python binding to libudev, the hardware management library and service found @@ -56,20 +62,20 @@ in modern linux systems. sed -i -e "s|'sphinx.ext.intersphinx',\\?||" -e "s|'sphinxcontrib.issuetracker',\\?||" doc/conf.py %build -python setup.py build -PYTHONPATH=src/ python setup.py build_sphinx -rm build/sphinx/html/.buildinfo +%python_build %install -python setup.py install --prefix=%{_prefix} --root=%{buildroot} +%python_install +%python_expand %fdupes %{buildroot}%{$python_sitelib} -#TODO: fix -#%%check -#nosetests +%if %{with test} +%check +%python_expand nosetests-%{$python_bin_suffix} +%endif -%files +%files %{python_files} %defattr(-,root,root,-) -%doc CHANGES.rst COPYING README.rst build/sphinx/html/ +%doc CHANGES.rst COPYING README.rst %{python_sitelib}/* %changelog diff --git a/pyudev-0.20.0.tar.gz b/pyudev-0.20.0.tar.gz deleted file mode 100644 index e6bc8ef..0000000 --- a/pyudev-0.20.0.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:14d85bc9611dbf798732996cb7107858f58a3a1b9d246e4063c7a20ade65842a -size 93217 diff --git a/pyudev-0.21.0.tar.gz b/pyudev-0.21.0.tar.gz new file mode 100644 index 0000000..b680eba --- /dev/null +++ b/pyudev-0.21.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:094b7a100150114748aaa3b70663485dd360457a709bfaaafe5a977371033f2b +size 89469