[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#955881: caja-seahorse: Depends on deprecated dbus-glib



Control: forwarded -1 https://github.com/darkshram/seahorse-caja/issues/8

Hi Simon,

On Sun, Apr 05, 2020 at 03:16:09PM +0100, smcv@debian.org wrote:
> Source: caja-seahorse
> Severity: normal
> Tags: sid bullseye
> Control: block 895291 by -1
> User: pkg-utopia-maintainers@lists.alioth.debian.org
> Usertags: dbus-glib-deprecation
> 
> dbus-glib is a deprecated D-Bus library with some significant design
> flaws, and is essentially unmaintained. I would like to minimize its
> use, and eventually remove it from Debian. There will not be a
> version that fixes its design flaws, because that would be a major
> compatibility break, and any user of dbus-glib who is willing to port
> their application to a newer, incompatible version should instead be
> porting their application to a better D-Bus implementation such as
> GDBus.
> 
> For most purposes, the recommended replacement for dbus-glib is the
> GDBus family of APIs in GLib, found in <gio/gio.h>. This does not add
> an additional dependency, because dbus-glib already depends on a
> sufficiently new version of GLib. A porting guide is available in the
> GLib documentation:
> <https://developer.gnome.org/gio/stable/ch35.html>. Practical
> examples of porting from dbus-glib to GDBus can be found in the git
> history of most older GNOME applications.
> 
> Alternatives to GDBus, with different design emphasis and trade-offs,
> include sd-bus (systemd's D-Bus implementation), QtDBus (Qt's D-Bus
> API), and libdbus (the low-level reference D-Bus implementation).
> Please contact the D-Bus mailing list <dbus at lists.freedesktop.org>
> if you are unsure which D-Bus implementation is most suitable for a
> particular package.
> 
> Some libraries expose dbus-glib as part of their API/ABI, in which
> case removing the deprecated dependency requires breaking API/ABI
> (telepathy-glib is a good example). For these libraries, maintainers
> should talk to the dependent library's upstream developers about
> whether the dependent library should break API/ABI and switch to
> GDBus, or whether the dependent library should itself be deprecated.
> 
> In a few cases, the package uses the reference D-Bus library libdbus
> for all D-Bus-related APIs, and only uses dbus-glib as a way to
> connect libdbus to the GLib main loop: if the only functions
> referenced from dbus-glib are dbus_connection_setup_with_g_main() and
> dbus_server_setup_with_g_main(), then you are in this situation. The
> recommended replacement in this case is to bundle the dbus-gmain
> branch from the dbus-glib git repository, for example as a `git
> subtree` or `git submodule`. For example, dbus-python's GLib
> integration now works like this. See
> <https://gitlab.freedesktop.org/dbus/dbus-glib/blob/dbus-gmain/README
> .md> for more details. 

This is obviously not fixable in a trivial way. Upstream bug filed.

Mike


-- 

mike gabriel aka sunweaver (Debian Developer)
fon: +49 (1520) 1976 148

GnuPG Fingerprint: 9BFB AEE8 6C0A A5FF BF22  0782 9AF4 6B30 2577 1B31
mail: sunweaver@debian.org, http://sunweavers.net

Attachment: signature.asc
Description: PGP signature


Reply to: