commit 72c1002515bff8610ef300641e732668663569f5 Author: CentOS Sources Date: Tue Jul 27 17:47:47 2021 +0000 import python-pyudev-0.21.0-7.el8 diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e0e6b5a --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/pyudev-0.21.0.tar.gz diff --git a/.python-pyudev.metadata b/.python-pyudev.metadata new file mode 100644 index 0000000..6abd1d4 --- /dev/null +++ b/.python-pyudev.metadata @@ -0,0 +1 @@ +58263b4358951d3a990bce7661e2e2ff30ca6cbe SOURCES/pyudev-0.21.0.tar.gz diff --git a/SPECS/python-pyudev.spec b/SPECS/python-pyudev.spec new file mode 100644 index 0000000..5c27385 --- /dev/null +++ b/SPECS/python-pyudev.spec @@ -0,0 +1,386 @@ +%global srcname pyudev + +%if 0%{?rhel} == 8 +%bcond_with python2 +%bcond_with qt4 +%else +%bcond_without python2 +%bcond_without qt4 +%endif + +Name: python-%{srcname} +Version: 0.21.0 +Release: 7%{?dist} +Summary: A libudev binding + +License: LGPLv2+ +URL: http://pypi.python.org/pypi/pyudev +Source0: https://pypi.io/packages/source/p/%{srcname}/%{srcname}-%{version}.tar.gz + +BuildArch: noarch + +%description +pyudev is a LGPL licensed, pure Python binding for libudev, the device +and hardware management and information library for Linux. It supports +almost all libudev functionality, you can enumerate devices, query device +properties and attributes or monitor devices, including asynchronous +monitoring with threads, or within the event loops of Qt, Glib or wxPython. + +The binding supports CPython 2 (2.6 or newer) and 3 (3.1 or newer), and +PyPy 1.5 or newer. It is tested against udev 151 or newer, earlier +versions of udev as found on dated Linux systems may work, but are not +officially supported. + +%if %{with python2} +%package -n python2-%{srcname} +Summary: A libudev binding +%{?python_provide:%python_provide python2-%{srcname}} + +BuildRequires: python2-devel +BuildRequires: python2-setuptools + +# Dependencies for libraries loaded through ctypes +# glibc is needed for pipe2. This is not needed in the python3 package. +Requires: glibc + +# Needed for libudev +Requires: systemd-libs + +# Used for python2/3 compatibility +Requires: python2-six + +%description -n python2-%{srcname} +pyudev is a LGPL licensed, pure Python binding for libudev, the device +and hardware management and information library for Linux. It supports +almost all libudev functionality, you can enumerate devices, query device +properties and attributes or monitor devices, including asynchronous +monitoring with threads, or within the event loops of Qt, Glib or wxPython. + +The binding supports CPython 2 (2.6 or newer) and 3 (3.1 or newer), and +PyPy 1.5 or newer. It is tested against udev 151 or newer, earlier +versions of udev as found on dated Linux systems may work, but are not +officially supported. + +%package -n python2-%{srcname}-glib +Summary: GLib integration for pyudev + +Requires: pygobject2 +Requires: python2-%{srcname} = %{version}-%{release} + +%description -n python2-%{srcname}-glib +GLib integration for pyudev. + +This package provides a module pyudev.glib that contains classes for +integrating a pyudev monitor with the GLib main loop. + +%if %{with qt4} +%package -n python2-%{srcname}-qt4 +Summary: Qt4 integration for pyudev + +Requires: PyQt4 +Requires: python2-%{srcname} = %{version}-%{release} + +%description -n python2-%{srcname}-qt4 +Qt4 integration for pyudev. + +This package provides a module pyudev.pyqt4 that contains classes for +integrating a pyudev monitor with the Qt4 main loop. +%endif + +%package -n python2-%{srcname}-qt5 +Summary: Qt5 integration for pyudev + +Requires: python-qt5 +Requires: python2-%{srcname} = %{version}-%{release} + +%description -n python2-%{srcname}-qt5 +Qt5 integration for pyudev. + +This package provides a module pyudev.pyqt5 that contains classes for +integrating a pyudev monitor with the Qt4 main loop. + +%package -n python2-%{srcname}-pyside +Summary: PySide integration for pyudev + +Requires: python-pyside +Requires: python2-%{srcname} = %{version}-%{release} + +%description -n python2-%{srcname}-pyside +PySide integration for pyudev. + +This package provides a module pyudev.pyside that contains classes for +integrating a pyudev monitor with the PySide main loop. + +%package -n python2-%{srcname}-wx +Summary: wxPython integration for pyudev + +Requires: wxPython +Requires: python2-%{srcname} = %{version}-%{release} + +%description -n python2-%{srcname}-wx +wxPython integration for pyudev. + +This package provides a module pyudev.wx that contains classes for +integrating a pyudev montior with the wxPython main loop. +%endif + +%package -n python3-%{srcname} +Summary: A libudev binding +%{?python_provide:%python_provide python3-%{srcname}} + +BuildRequires: python3-devel +BuildRequires: python3-setuptools + +# Needed for libudev, loaded through ctypes +Requires: systemd-libs + +# Used for python2/3 compatibility +Requires: python3-six + +%description -n python3-%{srcname} +pyudev is a LGPL licensed, pure Python binding for libudev, the device +and hardware management and information library for Linux. It supports +almost all libudev functionality, you can enumerate devices, query device +properties and attributes or monitor devices, including asynchronous +monitoring with threads, or within the event loops of Qt, Glib or wxPython. + +The binding supports CPython 2 (2.6 or newer) and 3 (3.1 or newer), and +PyPy 1.5 or newer. It is tested against udev 151 or newer, earlier +versions of udev as found on dated Linux systems may work, but are not +officially supported. + +%if %{with qt4} +%package -n python3-%{srcname}-qt4 +Summary: Qt4 integration for pyudev + +Requires: python3-PyQt4 +Requires: python3-%{srcname} = %{version}-%{release} + +%description -n python3-%{srcname}-qt4 +Qt4 integration for pyudev. + +This package provides a module pyudev.pyqt4 that contains classes for +integrating a pyudev monitor with the Qt4 main loop. +%endif + +%package -n python3-%{srcname}-qt5 +Summary: Qt5 integration for pyudev + +Requires: python3-qt5 +Requires: python3-%{srcname} = %{version}-%{release} + +%description -n python3-%{srcname}-qt5 +Qt5 integration for pyudev. + +This package provides a module pyudev.pyqt5 that contains classes for +integrating a pyudev monitor with the Qt5 main loop. + +%prep +%autosetup -n %{srcname}-%{version} +rm -rf pyudev.egg-info + +%build +%if %{with python2} +%py2_build +%endif + +%py3_build + +%install +%if %{with python2} +%py2_install +%endif + +%py3_install + +%if %{with python2} +%files -n python2-%{srcname} +%license COPYING +%doc README.rst CHANGES.rst +%{python2_sitelib}/pyudev/ +%{python2_sitelib}/pyudev-%{version}-*.egg-info +%exclude %{python2_sitelib}/pyudev/glib.py* +%exclude %{python2_sitelib}/pyudev/pyqt4.py* +%exclude %{python2_sitelib}/pyudev/pyqt5.py* +%exclude %{python2_sitelib}/pyudev/pyside.py* +%exclude %{python2_sitelib}/pyudev/wx.py* + +%files -n python2-%{srcname}-glib +%license COPYING +%{python2_sitelib}/pyudev/glib.py* + +%if %{with qt4} +%files -n python2-%{srcname}-qt4 +%license COPYING +%{python2_sitelib}/pyudev/pyqt4.py* +%endif + +%files -n python2-%{srcname}-qt5 +%license COPYING +%{python2_sitelib}/pyudev/pyqt5.py* + +%files -n python2-%{srcname}-pyside +%license COPYING +%{python2_sitelib}/pyudev/pyside.py* + +%files -n python2-%{srcname}-wx +%license COPYING +%{python2_sitelib}/pyudev/wx.py* +%endif + +%files -n python3-%{srcname} +%license COPYING +%doc README.rst CHANGES.rst +%{python3_sitelib}/pyudev +%{python3_sitelib}/pyudev-%{version}-*.egg-info +%exclude %{python3_sitelib}/pyudev/glib.py +%exclude %{python3_sitelib}/pyudev/__pycache__/glib.* +%exclude %{python3_sitelib}/pyudev/pyqt4.py +%exclude %{python3_sitelib}/pyudev/__pycache__/pyqt4.* +%exclude %{python3_sitelib}/pyudev/pyqt5.py +%exclude %{python3_sitelib}/pyudev/__pycache__/pyqt5.* +%exclude %{python3_sitelib}/pyudev/pyside.py +%exclude %{python3_sitelib}/pyudev/__pycache__/pyside.* +%exclude %{python3_sitelib}/pyudev/wx.py +%exclude %{python3_sitelib}/pyudev/__pycache__/wx.* + +%if %{with qt4} +%files -n python3-%{srcname}-qt4 +%license COPYING +%{python3_sitelib}/pyudev/pyqt4.py +%{python3_sitelib}/pyudev/__pycache__/pyqt4.* +%endif + +%files -n python3-%{srcname}-qt5 +%license COPYING +%{python3_sitelib}/pyudev/pyqt5.py +%{python3_sitelib}/pyudev/__pycache__/pyqt5.* + +%changelog +* Thu Jun 14 2018 Yaakov Selkowitz - 0.21.0-7 +- Dropped qt4 from RHEL-8 (#1591123) + +* Thu May 17 2018 Jaroslav Škarvada - 0.21.0-6 +- Bumped release to fix conflict caused by automerge + +* Mon Apr 30 2018 Jaroslav Škarvada - 0.21.0-5 +- Dropped python2 from RHEL-8 + +* Thu Jul 27 2017 Fedora Release Engineering - 0.21.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Sat Feb 11 2017 Fedora Release Engineering - 0.21.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Wed Dec 21 2016 Kevin Fenzi - 0.21.0-2 +- Rebuild for Python 3.6 + +* Fri Jul 29 2016 mulhern - 0.21.1 +- Deprecate use of Device object as mapping from udev property names to values +- Add a Properties class and a Device.properties() method for udev properties +- Fix places where Device object was incorrectly used in a boolean context +- Return an empty string, not None, if the property value is an empty string +- Exceptions re-raised from libudev calls now have a message string +- Insert a warning about using a Device in a boolean context in docs +- Infrastructure for vagrant tests is removed +- Various internal refactorings +- Extensive test improvements +- Numerous documentation fixes + +* Tue Jul 19 2016 Fedora Release Engineering - 0.20.0-3 +- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages + +* Mon May 2 2016 mulhern - 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 + +* Mon Feb 08 2016 mulhern - 0.19.0 +- 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 + +* Thu Feb 04 2016 Fedora Release Engineering - 0.18.1-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Mon Dec 21 2015 mulhern - 0.18.1 +- Restore raising KeyError in astring, asint, asbool methods in Attributes +- Add dependency on six package +- pyudev sources now in src directory +- Added support for pyqt5 monitor observer +- Added discover module, which looks up a device on limited information +- DeviceNotFoundError is no longer a subtype of LookupError +- Attributes class no longer extends Mapping class +- Attributes class no longer inherits [] operator and other Mapping methods +- Attributes class object are no longer iterable or indexable and have no length +- Attributes.available_attributes property added +- Attributes.get() method, with usual semantics explicitly defined +- Device.from_* methods are deprecated, use Devices.from_* methods instead +- Device.from_device_number() now raises DeviceNotFoundByNumberError +- Devices.from_interface_index() method added +- Devices.from_kernel_device() method added + +* Thu Dec 3 2015 David Shea - 0.17-4 +- Add requires for things that are required +- Split the main-loop integration modules into separate packages + +* Wed Nov 04 2015 Robert Kuska - 0.17-3 +- Rebuilt for Python3.5 rebuild + +* Wed Sep 15 2015 David Shea - 0.17.1-2 +- Fix a typo in the python3-pyudev Provides + +* Mon Sep 14 2015 David Shea - 0.17.1-1 +- Really start the monitor on pyudev.Monitor.poll() +- Force non-blocking IO in pyudev.Monitor to avoid blocking on receiving the device +- Set proper flags on pipe fs +- Handle irregular polling events properly +- Rename MonitorObserver GUI classes and deprecate the old ones +- Remove patches for #1170337 and #1230773 that are now part of upstream +- Switch to new packaging guidelines which renames python-pyudev to python2-pyudev + +* Thu Jun 18 2015 Fedora Release Engineering - 0.16.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Fri Jun 12 2015 David Shea - 0.16.1-3 +- Retry interrupted system calls (#1230773) +- Rearrange the build process to match current packaging recommendations + +* Wed Jan 28 2015 David Shea - 0.16.1-2 +- Use %%license for the license file + +* Wed Dec 10 2014 David Shea - 0.16.1-1 +- Update to pyudev-0.16.1 (#880644) +- Apply a patch from upstream to remove a global reference to libudev (#1170337) + +* Wed Dec 10 2014 David Shea - 0.15-7 +- Fix license tag (LGPL -> LGPLv2+) (#990579) +- Remove rst tags from description +- Remove unnecessary requires and buildrequires (#1095459) +- Avoid packaging upstream egg-info files +- Add a python3 package +- Drop the Group tag which wasn't even the right group + +* Sat Jun 07 2014 Fedora Release Engineering - 0.15-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Sun Aug 04 2013 Fedora Release Engineering - 0.15-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Thu Feb 14 2013 Fedora Release Engineering - 0.15-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Mon Jul 23 2012 Chris Lockfort 0.15-3 +- Reflect rawhide merging udev into systemd +* Sat Jul 21 2012 Fedora Release Engineering - 0.15-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild +* Mon Jun 18 2012 Chris Lockfort 0.15-1 +- initial package