[From nobody Tue Apr  7 08:04:14 2026
Received: (at maintonly) by bugs.debian.org; 5 Apr 2020 14:17:16 +0000
X-Spam-Checker-Version: SpamAssassin 3.4.2-bugs.debian.org_2005_01_02
 (2018-09-13) on buxtehude.debian.org
X-Spam-Level: 
X-Spam-Status: No, score=-16.9 required=4.0 tests=BAYES_00,FROMDEVELOPER,
 RCVD_IN_DNSWL_MED,SPF_HELO_NONE,SPF_NONE,TXREP autolearn=ham
 autolearn_force=no version=3.4.2-bugs.debian.org_2005_01_02
X-Spam-Bayes: score:0.0000 Tokens: new, 3; hammy, 150; neutral, 126; spammy,
 0. spammytokens: hammytokens:0.000-+--H*F:U*smcv,
 0.000-+--unmaintained, 0.000-+--H*rp:U*smcv,
 0.000-+--H*r:smcv@debian.org, 0.000-+--H*RU:smcv@debian.org
Return-path: &lt;smcv@debian.org&gt;
Received: from illusion.pseudorandom.co.uk ([2a00:1098:0:80:1000:6:0:2]:56008)
 by buxtehude.debian.org with esmtp (Exim 4.92)
 (envelope-from &lt;smcv@debian.org&gt;) id 1jL65M-0006Oh-3d
 for maintonly@bugs.debian.org; Sun, 05 Apr 2020 14:17:16 +0000
Received: by illusion.pseudorandom.co.uk (Postfix, from userid 1000)
 id 61BA512049A; Sun,  5 Apr 2020 15:17:15 +0100 (BST)
From: smcv@debian.org
To: maintonly@bugs.debian.org
Subject: gnome-screensaver: Depends on deprecated dbus-glib
Date: Sun, 05 Apr 2020 15:17:11 +0100
X-Generator: mass-bug from devscripts ###VERSION###
Message-Id: &lt;20200405141715.61BA512049A@illusion.pseudorandom.co.uk&gt;
Delivered-To: maintonly@bugs.debian.org

Source: gnome-screensaver
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 &lt;gio/gio.h&gt;. 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:
&lt;https://developer.gnome.org/gio/stable/ch35.html&gt;. 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 &lt;dbus at lists.freedesktop.org&gt;
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
&lt;https://gitlab.freedesktop.org/dbus/dbus-glib/blob/dbus-gmain/README
.md&gt; for more details. 
]