summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon McVittie <simon.mcvittie@collabora.co.uk>2012-01-24 16:21:15 +0000
committerSimon McVittie <simon.mcvittie@collabora.co.uk>2012-01-24 16:21:15 +0000
commit09ca5de0f38d3cc30b8d149b2a8c9f0ad810a09a (patch)
tree68cce09e0b382cdf9d639f7f83cf0bfeb58e9bc7
parentb486edf800ecb9d2e23a35f7ac3151657ee39250 (diff)
Describe problems, alternatives
-rw-r--r--README24
1 files changed, 24 insertions, 0 deletions
diff --git a/README b/README
index 479d48f..7c1c49d 100644
--- a/README
+++ b/README
@@ -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