Dbus callbacks leak a reference in python, because reference counting is not automatic
GDbus creates an extra reference in the "invocation" parameter of a callback for an interface method, according to: https://docs.gtk.org/gio/callback.DBusInterfaceMethodCallFunc.html
I fixed the dasbus
library for this temporarily in this PR:
https://github.com/rhinstaller/dasbus/pull/81
This patch won't get merged, because the maintiainer (correctly, IMO) asserts that this is not very pythonic, and really ought to be made transparent by pygobject.
However, i'm having trouble figuring out the correct place to unref the invocation object. I suppose it should be somewhere in the "overrides" submodule; perhaps replacing an incoming vtable entry with one which is wrapped with the unref call.
Please advise, thank you