[Kde-pim] Fixing D-Bus interfaces as we go

Samat K Jain lists at samat.org
Mon Jul 13 21:21:29 BST 2009


You've actually found a problem that I found with kde-pim and several other KDE applications (e.g Marble) a month ago. I've been sitting on reporting bugs.

On Monday 13 July 2009 1:54:22 pm, Kevin Krammer wrote:
> D-Bus interfaces do not support overloading, so each method name has to be 
> unique! [2]

AFAIK, DBus doesn't specify one way or another whether method overloading is allowed. It's put upon the language bindings (e.g. python-dbus) or utility programs (e.g. qdbus, dbus) on how to handle it. This is why dbus-send works, but qdbus doesn't. This is remarkably bad omission on the part of the standard.

There's some discussion on the topic of overloading with a bug I filed on f.d.o against python-dbus:

https://bugs.freedesktop.org/show_bug.cgi?id=22429

> So I suggest we keep this in mind when porting and rearchitecturing the PIM 
> apps, so we can fix interface we are about to change anyway and do not 
> introduce new overloads.

Ideally, I'd just change the names of all overloaded methods (I was intending on filing patches to do this). My concern is that this would break existing applications depend on the overloaded methods, which may exist if they use DBus bindings that support overloading (for example, any C++ Qt app).

-- 
Samat K Jain <http://samat.org/> | GPG: 0x4A456FBA

One is not superior merely because one sees the world as odious.
-- Chateaubriand (373)
_______________________________________________
KDE PIM mailing list kde-pim at kde.org
https://mail.kde.org/mailman/listinfo/kde-pim
KDE PIM home page at http://pim.kde.org/



More information about the kde-pim mailing list