Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-libusb1 for openSUSE:Factory checked in at 2023-12-08 22:33:11 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-libusb1 (Old) and /work/SRC/openSUSE:Factory/.python-libusb1.new.25432 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-libusb1" Fri Dec 8 22:33:11 2023 rev:5 rq:1132044 version:3.1.0 Changes: -------- --- /work/SRC/openSUSE:Factory/python-libusb1/python-libusb1.changes 2022-03-04 00:17:50.400287741 +0100 +++ /work/SRC/openSUSE:Factory/.python-libusb1.new.25432/python-libusb1.changes 2023-12-08 22:34:06.996554712 +0100 @@ -1,0 +2,9 @@ +Fri Dec 8 08:19:05 UTC 2023 - Dirk Müller <dmuel...@suse.com> + +- update to 3.1.0: + * Fix bug preventing use of setPollFDNotifiers. + * Wrap libusb_interrupt_event_handler, available since libusb + 1.0.21, to help applications wake an event handling thread (ex: + durring exit). + +------------------------------------------------------------------- Old: ---- libusb1-3.0.0.tar.gz New: ---- libusb1-3.1.0.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-libusb1.spec ++++++ --- /var/tmp/diff_new_pack.gr1LP9/_old 2023-12-08 22:34:07.464571932 +0100 +++ /var/tmp/diff_new_pack.gr1LP9/_new 2023-12-08 22:34:07.468572079 +0100 @@ -1,7 +1,7 @@ # # spec file for package python-libusb1 # -# Copyright (c) 2022 SUSE LLC +# Copyright (c) 2023 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -18,7 +18,7 @@ %{?!python_module:%define python_module() python-%{**} python3-%{**}} Name: python-libusb1 -Version: 3.0.0 +Version: 3.1.0 Release: 0 Summary: Python wrapper for libusb-1.0 # Relicensed from GPL to LGPLv2.1+ in May 2015 @@ -28,9 +28,9 @@ Source: https://files.pythonhosted.org/packages/source/l/libusb1/libusb1-%{version}.tar.gz BuildRequires: %{python_module setuptools} BuildRequires: fdupes -BuildRequires: libusb-1_0-0 +BuildRequires: libusb-1_0-0 >= 1.0.21 BuildRequires: python-rpm-macros -Requires: libusb-1_0-0 +Requires: libusb-1_0-0 >= 1.0.21 BuildArch: noarch %python_subpackages ++++++ libusb1-3.0.0.tar.gz -> libusb1-3.1.0.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libusb1-3.0.0/PKG-INFO new/libusb1-3.1.0/PKG-INFO --- old/libusb1-3.0.0/PKG-INFO 2022-02-06 05:52:38.209703200 +0100 +++ new/libusb1-3.1.0/PKG-INFO 2023-10-29 04:09:13.734296000 +0100 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: libusb1 -Version: 3.0.0 +Version: 3.1.0 Summary: Pure-python wrapper for libusb-1.0 Home-page: https://github.com/vpelletier/python-libusb1 Author: Vincent Pelletier @@ -169,7 +169,7 @@ to python-libusb1, and vice-versa: ``usb1`` module groups libusb-1.0 functions as class methods. The first -parameter (when it's a ``libusb_...`` pointer) defined the class the fonction +parameter (when it's a ``libusb_...`` pointer) defined the class the function belongs to. For example: - :c_code:`int libusb_init (libusb_context **context)` becomes USBContext class @@ -571,6 +571,16 @@ Drop python <3.6 support (consequence of versioneer update), hence the major version change. +unreleased +---------- + +Fix bug preventing use of setPollFDNotifiers. + +Wrap libusb_interrupt_event_handler, available since libusb 1.0.21, to help +applications wake an event handling thread (ex: durring exit). + +Windows wheels: Update bundled libusb dll to 1.0.26 . + .. _CPython: http://www.python.org/ .. _pypy: http://pypy.org/ @@ -590,5 +600,3 @@ .. _Zadig: https://zadig.akeo.ie/ .. _yanked: https://www.python.org/dev/peps/pep-0592/ - - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libusb1-3.0.0/README.rst new/libusb1-3.1.0/README.rst --- old/libusb1-3.0.0/README.rst 2022-02-06 05:49:47.000000000 +0100 +++ new/libusb1-3.1.0/README.rst 2023-10-29 04:02:50.000000000 +0100 @@ -148,7 +148,7 @@ to python-libusb1, and vice-versa: ``usb1`` module groups libusb-1.0 functions as class methods. The first -parameter (when it's a ``libusb_...`` pointer) defined the class the fonction +parameter (when it's a ``libusb_...`` pointer) defined the class the function belongs to. For example: - :c_code:`int libusb_init (libusb_context **context)` becomes USBContext class @@ -550,6 +550,16 @@ Drop python <3.6 support (consequence of versioneer update), hence the major version change. +unreleased +---------- + +Fix bug preventing use of setPollFDNotifiers. + +Wrap libusb_interrupt_event_handler, available since libusb 1.0.21, to help +applications wake an event handling thread (ex: durring exit). + +Windows wheels: Update bundled libusb dll to 1.0.26 . + .. _CPython: http://www.python.org/ .. _pypy: http://pypy.org/ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libusb1-3.0.0/libusb1.egg-info/PKG-INFO new/libusb1-3.1.0/libusb1.egg-info/PKG-INFO --- old/libusb1-3.0.0/libusb1.egg-info/PKG-INFO 2022-02-06 05:52:38.000000000 +0100 +++ new/libusb1-3.1.0/libusb1.egg-info/PKG-INFO 2023-10-29 04:09:13.000000000 +0100 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: libusb1 -Version: 3.0.0 +Version: 3.1.0 Summary: Pure-python wrapper for libusb-1.0 Home-page: https://github.com/vpelletier/python-libusb1 Author: Vincent Pelletier @@ -169,7 +169,7 @@ to python-libusb1, and vice-versa: ``usb1`` module groups libusb-1.0 functions as class methods. The first -parameter (when it's a ``libusb_...`` pointer) defined the class the fonction +parameter (when it's a ``libusb_...`` pointer) defined the class the function belongs to. For example: - :c_code:`int libusb_init (libusb_context **context)` becomes USBContext class @@ -571,6 +571,16 @@ Drop python <3.6 support (consequence of versioneer update), hence the major version change. +unreleased +---------- + +Fix bug preventing use of setPollFDNotifiers. + +Wrap libusb_interrupt_event_handler, available since libusb 1.0.21, to help +applications wake an event handling thread (ex: durring exit). + +Windows wheels: Update bundled libusb dll to 1.0.26 . + .. _CPython: http://www.python.org/ .. _pypy: http://pypy.org/ @@ -590,5 +600,3 @@ .. _Zadig: https://zadig.akeo.ie/ .. _yanked: https://www.python.org/dev/peps/pep-0592/ - - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libusb1-3.0.0/libusb1.egg-info/entry_points.txt new/libusb1-3.1.0/libusb1.egg-info/entry_points.txt --- old/libusb1-3.0.0/libusb1.egg-info/entry_points.txt 2022-02-06 05:52:38.000000000 +0100 +++ new/libusb1-3.1.0/libusb1.egg-info/entry_points.txt 2023-10-29 04:09:13.000000000 +0100 @@ -1,4 +1,3 @@ [pyinstaller40] hook-dirs = usb1.__pyinstaller:get_hook_dirs tests = usb1.__pyinstaller:get_PyInstaller_tests - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libusb1-3.0.0/setup.py new/libusb1-3.1.0/setup.py --- old/libusb1-3.0.0/setup.py 2022-02-06 05:49:47.000000000 +0100 +++ new/libusb1-3.1.0/setup.py 2023-10-29 04:08:38.000000000 +0100 @@ -33,7 +33,7 @@ sys.exit(1) CURRENT_WINDOWS_7Z_SHA256 = ( - '3d1c98416f454026034b2b5d67f8a294053898cb70a8b489874e75b136c6674d' + '9c242696342dbde9cdc47239391f71833939bf9f7aa2bbb28cdaabe890465ec5' ) cmdclass = versioneer.get_cmdclass() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libusb1-3.0.0/usb1/__init__.py new/libusb1-3.1.0/usb1/__init__.py --- old/libusb1-3.0.0/usb1/__init__.py 2022-02-06 05:49:47.000000000 +0100 +++ new/libusb1-3.1.0/usb1/__init__.py 2023-10-29 04:02:50.000000000 +0100 @@ -2394,6 +2394,15 @@ # TODO: handleEventsTimeoutCompleted @_validContext + def interruptEventHandler(self): + """ + Interrupt any active thread that is handling events. + This is mainly useful for interrupting a dedicated event handling thread + when the application wishes to exit. + """ + libusb1.libusb_interrupt_event_handler(self.__context_p) + + @_validContext def setPollFDNotifiers( self, added_cb=None, removed_cb=None, user_data=None): """ @@ -2424,21 +2433,26 @@ if not self.__has_pollfd_finalizer: self.__has_pollfd_finalizer = True try: - self.__registerFinalizer( - handle=id(self), - finalizer=weakref.finalize( - self, - self.__finalizePollFDNotifiers, # Note: staticmethod - context_p=self.__context_p, - libusb_set_pollfd_notifiers=libusb1.libusb_set_pollfd_notifiers, + finalizer_handle = id(self) + finalizer_dict = self.__finalizer_dict + finalizer = weakref.finalize( + self, + self.__finalizePollFDNotifiers, # Note: staticmethod + context_p=self.__context_p, + unregisterFinalizer=functools.partial( + finalizer_dict.pop, + finalizer_handle, ), + libusb_set_pollfd_notifiers=libusb1.libusb_set_pollfd_notifiers, ) + self.__registerFinalizer(finalizer_handle, finalizer) except ValueError: # Already registered pass @staticmethod def __finalizePollFDNotifiers( context_p, + unregisterFinalizer, libusb_set_pollfd_notifiers, null_pointer=_null_pointer, @@ -2451,6 +2465,7 @@ removed_cb_p, null_pointer, ) + unregisterFinalizer() @_validContext def getNextTimeout(self): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libusb1-3.0.0/usb1/_libusb1.py new/libusb1-3.1.0/usb1/_libusb1.py --- old/libusb1-3.0.0/usb1/_libusb1.py 2021-09-25 00:30:54.000000000 +0200 +++ new/libusb1-3.1.0/usb1/_libusb1.py 2023-10-29 04:02:50.000000000 +0100 @@ -566,6 +566,14 @@ #int libusb_handle_events_locked(libusb_context *ctx, struct timeval *tv); libusb_handle_events_locked = libusb.libusb_handle_events_locked libusb_handle_events_locked.argtypes = [libusb_context_p, timeval_p] + #void libusb_interrupt_event_handler(libusb_context *ctx); + try: + libusb_interrupt_event_handler = libusb.libusb_interrupt_event_handler + except AttributeError: + def libusb_interrupt_event_handler(_): + raise NotImplementedError + else: + libusb_interrupt_event_handler.argtypes = [libusb_context_p] #int libusb_get_next_timeout(libusb_context *ctx, struct timeval *tv); libusb_get_next_timeout = libusb.libusb_get_next_timeout libusb_get_next_timeout.argtypes = [libusb_context_p, timeval_p] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libusb1-3.0.0/usb1/_version.py new/libusb1-3.1.0/usb1/_version.py --- old/libusb1-3.0.0/usb1/_version.py 2022-02-06 05:52:38.213703200 +0100 +++ new/libusb1-3.1.0/usb1/_version.py 2023-10-29 04:09:13.734296000 +0100 @@ -8,11 +8,11 @@ version_json = ''' { - "date": "2022-02-06T04:51:03+0000", + "date": "2023-10-29T03:02:19+0000", "dirty": false, "error": null, - "full-revisionid": "2a1ae043350b49b01c5945dbb4da31bb34f7f382", - "version": "3.0.0" + "full-revisionid": "3d49a5a31d1430103065a79cd4a86f5c040798ee", + "version": "3.1.0" } ''' # END VERSION_JSON