diff options
author | Simon McVittie <simon.mcvittie@collabora.co.uk> | 2012-01-24 16:21:15 +0000 |
---|---|---|
committer | Simon McVittie <simon.mcvittie@collabora.co.uk> | 2012-01-24 16:21:15 +0000 |
commit | 09ca5de0f38d3cc30b8d149b2a8c9f0ad810a09a (patch) | |
tree | 68cce09e0b382cdf9d639f7f83cf0bfeb58e9bc7 | |
parent | b486edf800ecb9d2e23a35f7ac3151657ee39250 (diff) |
Describe problems, alternatives
-rw-r--r-- | README | 24 |
1 files changed, 24 insertions, 0 deletions
@@ -32,3 +32,27 @@ To develop on dbus-python, see `doc/HACKING.txt`__ or the `HTML version`__. __ doc/HACKING.txt __ doc/HACKING.html + +Problems and alternatives +========================= + +dbus-python might not be the best D-Bus binding for you to use. dbus-python +does not follow the principle of "In the face of ambiguity, refuse the +temptation to guess", and can't be changed to not do so without seriously +breaking compatibility. + +In addition, it uses libdbus (which has known problems with multi-threaded +use) and attempts to be main-loop-agnostic (which means you have to select +a suitable main loop for your application). + +Alternative ways to get your Python code onto D-Bus include: + +* GDBus, part of the GIO module of `GLib`_, via GObject-Introspection and + `PyGI`_ (uses the GLib main loop and object model) + +* QtDBus, part of `Qt`_, via `PyQt`_ (uses the Qt main loop and object model) + +.. _GLib: http://developer.gnome.org/glib/ +.. _PyGI: https://live.gnome.org/PyGObject +.. _Qt: https://qt.nokia.com/ +.. _PyQT: http://www.riverbankcomputing.co.uk/software/pyqt/intro |