libsoup3 is a new major API-incompatible release of libsoup. We want to remove libsoup2.4 from main. Even if we drop ubiquity from main, we want to remove libsoup2.4 from Ubuntu completely (Fedora for instance hopes to do this by late 2023.)
Therefore, ubiquity needs to switch to the newer library.
Prerequisites
-------------
You'll need libtimezonemap 0.4.6-4 from Debian Experimental.
Update debian/control to require that version.
Update debian/control and ubiquity/frontend/gtk_ui.py to use the 4.1 API of webkit2gtk instead of 4.0. Fortunately, there are no other changes required: the 4.1 API is the same as 4.0 except we're using libsoup3.
And update debian/control to use gir1.2-soup-3.0 instead of 2.4
There's another file d-i/update-control which should have its package versions updated too.
Error
-----
libsoup is only directly used briefly in ubi-timezone.py.
Traceback (most recent call last):
File "/usr/lib/ubiquity/plugins/ubi-timezone.py", line 112, in changed
self.geoname_session = Soup.SessionAsync()
File "/usr/lib/python3/dist-packages/gi/module.py", line 123, in __getattr__
raise AttributeError("%r object has no attribute %r" % (
AttributeError: 'gi.repository.Soup' object has no attribute 'SessionAsync'
libsoup3 has dropped the SessionAsync methods. The documentation suggests that we should use GLib.MainLoop instead. Some of the examples I've seen also use dbus.mainloop.glib to help with using the glib loop.
libsoup3 is a new major API-incompatible release of libsoup. We want to remove libsoup2.4 from main. Even if we drop ubiquity from main, we want to remove libsoup2.4 from Ubuntu completely (Fedora for instance hopes to do this by late 2023.)
Therefore, ubiquity needs to switch to the newer library.
Prerequisites
-------------
You'll need libtimezonemap 0.4.6-4 from Debian Experimental.
Update debian/control to require that version. frontend/ gtk_ui. py to use the 4.1 API of webkit2gtk instead of 4.0. Fortunately, there are no other changes required: the 4.1 API is the same as 4.0 except we're using libsoup3.
Update debian/control and ubiquity/
And update debian/control to use gir1.2-soup-3.0 instead of 2.4
There's another file d-i/update-control which should have its package versions updated too.
Error
-----
libsoup is only directly used briefly in ubi-timezone.py.
Traceback (most recent call last): ubiquity/ plugins/ ubi-timezone. py", line 112, in changed geoname_ session = Soup.SessionAsync() python3/ dist-packages/ gi/module. py", line 123, in __getattr__ Soup' object has no attribute 'SessionAsync'
File "/usr/lib/
self.
File "/usr/lib/
raise AttributeError("%r object has no attribute %r" % (
AttributeError: 'gi.repository.
libsoup3 has dropped the SessionAsync methods. The documentation suggests that we should use GLib.MainLoop instead. Some of the examples I've seen also use dbus.mainloop.glib to help with using the glib loop.
Documentation /libsoup. org/libsoup- 3.0/client- basic.html /libsoup. org/libsoup- 3.0/migrating- from-libsoup- 2.html /gitlab. gnome.org/ GNOME/libsoup/ -/issues/ 218
-------------
- https:/
- https:/
- https:/