General question on D-Bus design considerations
thiago at kde.org
Sat Aug 21 01:22:09 PDT 2010
On Saturday 21. August 2010 05.29.58 Havoc Pennington wrote:
> Only minor things really. GVariant has some type system improvements
> such as maybe types that could be nice. I would change more about the
> libdbus implementation, which has various flaws. My opinion is that
> the protocol itself works very well for what it's intended to be used
> for. I'm sure there are minor things here or there to improve but you
> know, it works, which is why a lot of stuff uses it, and it even has a
> lot of nice aspects. If I do say so myself. Most of the things that
> could be improved are (in theory) improvable via extensions, too.
> The implementation side has been rockier, with the reference libdbus
> being too low-level / least-common-denominator to make anyone happy,
> though at the same time those properties led to fairly wide adoption.
> And the higher-level bindings (for GLib anyway) never got done until
> recently with gdbus, while the rather questionable dbus-glib just sat
> there tricking people into trying to use it. So people tried to use
> dbus-glib (ugh) or libdbus (too low level) and got annoyed with those.
I'm with Havoc. The only thing I'd change in the base protocol is to make it
more friendly to future extensions. Right now, the only reaction to an unknown
extension is to disconnect, because it's an unrecoverable error.
The reference implementation has its problems and I'm not going to add to it.
Safe to say that QtDBus also had its share of problems using it. But it's just
a library and doesn't require flushing the protocol down the drain because of
Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org
Senior Product Manager - Nokia, Qt Development Frameworks
PGP/GPG: 0x6EF45358; fingerprint:
E067 918B B660 DBD1 105C 966C 33F5 F005 6EF4 5358
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Size: 190 bytes
Desc: This is a digitally signed message part.
More information about the dbus