[Merge] ~nteodosio/software-properties:drivers-hang into software-properties:ubuntu/master

Marco Trevisan (TreviƱo) mp+470812 at code.launchpad.net
Tue Sep 3 17:00:28 UTC 2024


Review: Needs Fixing

Building this fails with (due to the unused `e` assignment).

======================================================================
ERROR: test_pyflakes3_clean (tests.test_pyflakes.TestPyflakesClean.test_pyflakes3_clean)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/tests/test_pyflakes.py", line 21, in test_pyflakes3_clean
    self.assertEqual(subprocess.check_call(['pyflakes3'] +  self.paths), 0)
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/subprocess.py", line 413, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['pyflakes3', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/tests/test_pyflakes.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/tests/__init__.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/tests/test_shortcuts.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/tests/test_aptsources.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/tests/test_add_apt_repository.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/tests/test_dbus.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/tests/test_aptauth.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/tests/test_sp.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/softwareproperties/__init__.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/softwareproperties/sourceslist.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/softwareproperties/SoftwareProperties.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/softwareproperties/distro.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/softwareproperties/AptAuth.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/softwareproperties/ppa.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/softwareproperties/sourceutils.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/softwareproperties/CountryInformation.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/softwareproperties/uri.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/softwareproperties/shortcuthandler.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/softwareproperties/MirrorTest.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/softwareproperties/cloudarchive.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/softwareproperties/shortcuts.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/softwareproperties/gtk/__init__.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/softwareproperties/gtk/DialogCacheOutdated.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/softwareproperties/gtk/CdromProgress.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/softwareproperties/gtk/utils.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/softwareproperties/gtk/DialogAddSourcesList.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/softwareproperties/gtk/DialogEdit.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/softwareproperties/gtk/DialogEditDeb822.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/softwareproperties/gtk/dialogs.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/softwareproperties/gtk/DialogUaFipsEnable.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/softwareproperties/gtk/UbuntuProPage.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/softwareproperties/gtk/SimpleGtkbuilderApp.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/softwareproperties/gtk/DialogMirror.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/softwareproperties/gtk/SoftwarePropertiesGtk.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/softwareproperties/gtk/DialogUaDetach.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/softwareproperties/gtk/DialogAdd.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/softwareproperties/gtk/DialogUaAttach.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/softwareproperties/dbus/__init__.py', '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/softwareproperties/dbus/SoftwarePropertiesDBus.py']' returned non-zero exit status 1.


Diff comments:

> diff --git a/debian/changelog b/debian/changelog
> index 179933e..c93eb31 100644
> --- a/debian/changelog
> +++ b/debian/changelog
> @@ -1,3 +1,10 @@
> +software-properties (0.102) oracular; urgency=medium

keep the distro as `UNRELEASED` it's up to the uploader to set it to the distro is uploading to.

> +
> +  * Make driver scan in "Additional drivers" cancellable. Fix the scan
> +    preventing the window from being closed (LP: #2076084).
> +
> + -- Nathan Pratta Teodosio <nathan.teodosio at canonical.com>  Tue, 27 Aug 2024 11:11:21 +0200
> +
>  software-properties (0.101) oracular; urgency=medium
>  
>    * Revert "ppa: Cache the launchpad objects across objects"
> diff --git a/softwareproperties/gtk/SoftwarePropertiesGtk.py b/softwareproperties/gtk/SoftwarePropertiesGtk.py
> index 0cced00..1f151ff 100644
> --- a/softwareproperties/gtk/SoftwarePropertiesGtk.py
> +++ b/softwareproperties/gtk/SoftwarePropertiesGtk.py
> @@ -107,6 +109,29 @@ POCKET_SECURITY = "security"
>  POCKET_UPDATES = "updates"
>  POCKET_BACKPORTS = "backports"
>  
> +SIGTERM = 15
> +
> +# Overload multiprocessing.Process.run() so we can catch run's exception.
> +# https://stackoverflow.com/a/63773140
> +class Process(multiprocessing.Process):
> +    def __init__(self, *args, **kwargs):
> +        multiprocessing.Process.__init__(self, *args, **kwargs)
> +        self._pconn, self._cconn = multiprocessing.Pipe()
> +        self._exception = None
> +    def run(self):
> +        try:
> +            multiprocessing.Process.run(self)
> +            self._cconn.send(None)
> +        except Exception as e:

Drop the `e` since it's unused now.

> +            tb = traceback.format_exc()
> +            self._cconn.send(tb)
> +    @property
> +    def exception(self):
> +        if self._pconn.poll():
> +            self._exception = self._pconn.recv()
> +        if not (self._exception is None):
> +            return Exception(self._exception)
> +
>  
>  class UpdateSubscriptions(object):
>      security = False


-- 
https://code.launchpad.net/~nteodosio/software-properties/+git/software-properties/+merge/470812
Your team Ubuntu Core Development Team is requested to review the proposed merge of ~nteodosio/software-properties:drivers-hang into software-properties:ubuntu/master.




More information about the Ubuntu-reviews mailing list