dbus-python 0.80pre1 test release

Simon McVittie simon.mcvittie at collabora.co.uk
Thu Nov 16 12:08:14 PST 2006

Hash: SHA1

dbus-python 0.80pre1 is now available for testing.

Source: http://people.freedesktop.org/~smcv/dbus-python-0.8pre/dbus-python_0.80~pre1.orig.tar.gz

Debian source package, and binary packages for i386, amd64, powerpc, in:

Changes since last announcement:

* The Variant class no longer exists. Instead, there is a complete set
  of D-Bus types (dbus.Struct exists in its own right, rather than being a
  tuple; dbus.String exists in its own right, rather than being a unicode;
  etc.) and they all have a read-only variant_level attribute, which can
  also be set in the constructor.

* This also means dbus.Boolean is back, and is not a subclass of bool :-(

* dbus.Byte is back to being an int subclass, although you can pass a
  single-byte string to its constructor, and its str() returns a
  single-byte string.

* The method decorator, all proxy methods, and all three ways to connect
  to a signal now have keyword arguments utf8_strings and byte_arrays:

  utf8_strings: instead of converting D-Bus strings into Python
  dbus.String (subclasses unicode), convert to Python dbus.UTF8String
  (a new class subclassing str)

  byte_arrays: instead of converting D-Bus byte arrays into Python
  dbus.Array of dbus.Byte, convert them to dbus.ByteArray, a subclass of

Planned changes, hopefully before 0.80:

* fix main loop integration so you can use mainloops that aren't GLib
  (in progress)

  * add dbus.mainloop.python, a simple pure-Python mainloop using select/poll
  * add dbus.mainloop.twisted, linking dbus-python to any Twisted mainloop
    that implements the right interfaces
  * add dbus.mainloop.glib, which links dbus-python to dbus-glib in a less
    magical way

Known issues with packages in Debian:

Looks OK.


* String lists are presented poorly in the info view due to the changed
  repr() - near line 443
* Everything appears as a 'strlist' because of equality tests on types
  near line 443
* Unregistering object paths is done with callback=None. This won't
  actually unregister, currently (should be fixed in dbus-python)


* Uses name ``dbus.dbus_bindings.DBusException`` - will fail
* RemoteInterface will need fixing up - uses Variant and tries to
  represent None
* Uses ``dbus_bindings.Signal`` to emit signals!


* eventbridge: Uses ``dbus.dbus_bindings.bus_request_name`` to get a name

Looks OK.

Looks OK.
Version: GnuPG v1.4.5 (GNU/Linux)
Comment: OpenPGP key: http://www.pseudorandom.co.uk/2003/contact/ or pgp.net


More information about the dbus mailing list