GNOME Bugzilla – Bug 675856
Use GDbus via gobject-introspection instead dbus-python
Last modified: 2013-01-03 18:18:28 UTC
So we can stop using dbus-glib in GNOME completely (dbus-python depends in dbus-glib) Also, the dbus-python maintainer said that "using GDBus via gobject-introspection would be a better long-term solution for GNOME projects" See https://bugs.freedesktop.org/show_bug.cgi?id=40661#c1
Are you referring to http://git.gnome.org/browse/glib/tree/gio/tests/gdbus-testserver.py?id=2.33.8 I think that's the only place we use it. My answer to that is: sure, we should just rewrite gdbus-testserver in C. (using GI inside GLib itself gives you boot-strapping problems since GLib and its GIR/typelibs is in another package. Very annoying.)
Created attachment 232436 [details] [review] a patch Here is a patch that replaces enough of gdbus-testserver.py by C to make the tests pass.
Review of attachment 232436 [details] [review]: Looks good to me, thanks for doing this, only two small stylish comments below. If all the tests still pass, I think we should commit it. ::: gio/tests/gdbus-testserver.c @@ +772,3 @@ + + return ret; +} Would prefer something like g_assert (!g_variant_is_floating (ret)); just to check the invariant that only non-floating GVariant instances are in the hash table. We should also set @error (suggest G_DBUS_ERROR_FAILED) if there is no property with the given @property_name - otherwise people reading the code will be led to believe that they can just return NULL without setting @error. @@ +785,3 @@ +{ + return FALSE; +} Should also set @error here.
pushed with those changes - no more dbus-python dep