libsoup 3 porting TODO
Below is a list of upstreams known to use libsoup in some way. These will all need porting in order to do away with libsoup 2 (not all by us, of course). Some of them are trivial (like only using SoupURI
, in these cases libsoup
dependency can be dropped entirely) while others are more complicated.
Migration guide: https://libsoup.org/libsoup-3.0/migrating-from-libsoup-2.html
Name | Status | Libsoup in public API | Needs WebKit | Upstream PR/MR | Upstream |
---|---|---|---|---|---|
abrt | done | NO | NO | abrt!1609 | - |
badwolf | done | NO | YES | none needed; libsoup only used for URI and GUri backend already present | - |
devhelp | done | NO | YES | devhelp!38 (merged) | GNOME core |
epiphany | done | NO | YES | epiphany!921 (merged) | GNOME core |
geocode-glib | done | NO | NO | geocode-glib!15 (merged) | GNOME core dep |
gitg | done | NO | YES | gitg!161 (merged) | - |
gnome-shell | done | NO | YES | gnome-shell!1940 (merged) | GNOME core |
gnome-software | done | NO | NO | gnome-software!1091 (merged) | - |
gstreamer | done | NO | NO | link | GNOME flatpak runtime |
libgweather | done | NO | NO | libgweather!119 (closed) | GNOME core dep |
rest | done | YES | NO | librest!6 (closed) | - |
sushi | done | NO | YES | sushi!23 (merged) | GNOME core |
tracker3 | done | NO | NO | tracker!386 / tracker#422 | GNOME flatpak runtime |
yelp | done | NO | YES | yelp!33 (merged) yelp!35 (merged) | GNOME flatpak runtime |
appstream-glib | MR | NO | NO | pr!421 | GNOME flatpak runtime |
evolution | Done | NO * | YES | evolution!94 (merged) | - |
evolution-data-server | Done | YES | Optional | evolution-data-server!85 (merged) | GNOME core dep |
flatpak | MR | NO | NO | pr!4582 | GNOME core dep |
geary | MR | NO | YES | geary@1c1912d0 geary!712 (closed) | - |
geoclue | MR | NO | NO | link | GNOME flatpak runtime |
gnome-control-center | MR | NO | NO | gnome-control-center!1005 (closed) | GNOME core |
gnome-initial-setup | MR | NO | YES | gnome-initial-setup!120 (merged) | GNOME core |
gnome-online-accounts | MR | NO | YES | gnome-online-accounts!73 (merged) | GNOME core dep |
grilo | MR | NO | NO | grilo!90 (merged) | GNOME core deps |
gvfs | MR | NO | NO | gvfs!115 (merged) gvfs!147 | GNOME flatpak runtime |
libgdata | MR | YES | NO | libgdata!28 (closed) | GNOME core dep |
uhttpmock | MR | YES * | NO | link | GNOME core dep |
gupnp | Done | YES | NO | gupnp!21 (closed) | GNOME core deps |
libostree | WIP | NO | NO | pr!2547 | GNOME core deps |
gfbgraph | not started | NO | NO | - | GNOME core dep |
gnome-boxes | Done | NO | YES | gnome-boxes!531 (merged) | GNOME core |
gnome-calculator | Done | NO | NO | gnome-calculator!120 (merged) | GNOME core |
gnome-calendar | WIP | NO | NO | gnome-calendar!232 (merged) | GNOME core |
grilo-plugins | WIP | NO | NO | grilo-plugins!120 (merged) grilo-plugins!122 (merged) | GNOME core deps |
gssdp | Done | NO | NO | - | GNOME core deps |
libosinfo | Done | NO | NO | libosinfo!122 | GNOME core deps |
osinfo-db-tools | not started | NO | NO | - | GNOME core deps |
phodav | Done | YES | NO | - | GNOME core deps |
rygel | Done | NO | NO | rygel!21 (merged) | GNOME core |
spice-gtk | not started | NO | NO | - | GNOME core deps |
astroid | not started | NO | YES | - | - |
bookworm | not started | NO | YES | - | - |
cinnamon | not started | NO | NO | - | - |
claws-mail | not started | NO | YES | - | - |
darktable | not started | NO | NO | - | - |
deja-dup | not started | NO | NO | - | - |
dino | not started | NO | NO | - | - |
evolution-ews | MR | NO | YES | evolution-ews!6 (merged) | - |
FeedReader | not started | NO | YES | - | - |
flatpak-builder | N/A | NO | NO | https://github.com/flatpak/flatpak-builder/commit/c1edf0791a51ceaf9490e7dc69fa7575b1fae764 | - |
font-manager | not started | NO | YES | - | - |
gajim | done | NO | NO | https://dev.gajim.org/gajim/gajim/-/merge_requests/861 | - |
gamehub | not started | NO | YES | - | - |
geany-plugins | not started | NO | Maybe | - | - |
gmpc | not started | NO | NO | - | - |
gnome-builder | not started | NO | YES * | - | - |
gnome-games | not started | NO | NO | - | - |
gnome-recipes | not started | NO | NO | - | - |
goodvibes | not started | NO | NO | - | - |
gthumb | not started | NO | Optional | - | - |
gtranslator | not started | NO | NO | - | - |
gupnp-igd | WIP | NO | NO | gupnp-igd!7 (merged) | - |
gupnp-tools | not started | NO | NO | - | - |
hardinfo | not started | NO | NO | - | - |
homebank | not started | NO | NO | - | - |
inkscape | not started | NO | NO | - | - |
io.elementary.calendar | not started | NO | NO | - | - |
io.elementary.code | not started | NO | YES | - | - |
io.elementary.music | not started | NO | NO | - | - |
io.elementary.photos | not started | NO | YES | - | - |
libdmapsharing | not started | YES | NO | - | - |
libepc | not started | YES | NO | - | - |
libgda | not started | NO | NO | - | - |
libgepub | not started | YES | YES | - | - |
libmateweather | not started | NO | NO | - | - |
libosmgpsmap | not started | NO | NO | - | - |
libshumate | Done | NO | NO | libshumate!94 (merged),libshumate!135 (merged) | - |
libtimezonemap | not started | NO | NO | - | - |
libzapojit | not started | NO | NO | - | - |
liferea | not started | NO | YES | - | - |
luakit | not started | NO | YES | - | - |
lollypop | not started | NO | NO | - | - |
planner | not started | NO | YES | - | - |
polari | not started | NO | YES | - | - |
pragha | not started | NO | NO | - | - |
remmina | not started | NO | Maybe * | - | - |
rhythmbox | not started | NO | Maybe * | rhythmbox#1996 (closed) | - |
seahorse | not started | NO | NO | - | - |
shotwell | Done | NO | YES | shotwell!56 (merged) | - |
vimb | not started | NO | YES | - | - |
srain | not started | NO | NO | - | - |
strongswan | not started | NO | NO | - | - |
telepathy-gabble | not started | NO | NO | - | - |
telepathy-salut | not started | NO | NO | - | - |
Venom | not started | NO | NO | - | - |
xfce4-screenshooter | not started | NO | NO | - | - |
xfce4-weather-plugin | not started | NO | NO | - | - |
anjuta | rebuild | NO | NO * | none needed | - |
AppStream | rebuild * | NO | NO | none needed | - |
ario | rebuild | NO | NO | none needed | - |
atril | rebuild | NO | YES | none needed | - |
farstream | rebuild * | NO | NO | none needed | - |
fwupd | rebuild * | NO | NO | - | GNOME core deps |
nyxt | rebuild * | NO | YES | - | - |
empathy | obsolete? | NO | YES | - | - |
gradio | obsolete | NO | NO | none needed | - |
midori | not started | NO | YES | none needed; webkitgtk version deprecated | - |
seahorse-sharing | obsolete | NO | NO | none needed | - |
tracker2 | obsolete | NO | NO | none needed | - |
libchamplain | obsolete | NO | NO | none needed | - |
gnome-maps | Done | NO | NO | gnome-maps!238 (merged) | - |
frogr | Done | NO | NO | frogr@7035aba1) | - |
- anjuta: has a plugin that needs webkit, but not linked to soup
- AppStream: switched to curl in the most recent release
- evolution-data-server: optioally depends on libgdata
- evolution: exposes libsoup through others' linkage (possibly affects other software, e.g. bijiben, but currently unknown)
- farstream: does not actually use libsoup nor webkit, carries in linkage through gupnp-igd
- fwupd: has soup-session compat bit which can/will be removed
- gnome-builder: maybe harmless, as libsoup is only used in some plugins
- nyxt: does not directly use libsoup but still links to it through webkit
- remmina: depends on both soup and webkit but in different plugins
- rhythmbox: only through plugins, maybe harmless
- uhttpmock: optionally needed by libgdata for tests
- geary: upstream removed dependency on libsoup
- libreset: unmaintained project likely never to be merged, master not even in a releasable state
Other trackers
Edited by Andre Klapper