[Twisted-Python] ANN: Twisted DBus 1.0

Jasper St. Pierre jstpierre at mecheye.net
Tue Jul 3 11:28:55 EDT 2012


On Tue, Jul 3, 2012 at 2:08 AM, Tom Cocagne <tom.cocagne at gmail.com> wrote:
> For anyone interested in taking a look, I've just released a
> native-Python implementation of the DBus protocol for Twisted. The
> intent of the implementation is to provide Twisted applications with a
> full-featured DBus API that is consistent with the rest of the
> framework and does not require the use of the glib reactor or libdbus
> Python bindings.
>
> The project is currently hosted on github and has a pypi entry:
>
> https://github.com/cocagne/twisted_dbus
>
> http://pypi.python.org/pypi/twisted_dbus/1.0
>
> Notes on the implementation:
>
> * A comprehensive tutorial and DBus protocol overview is included in
> the project documentation
> * Although the release version is set at 1.0, the project should be
> considered Beta quality as it has seen little real-world use
> * Unit test coverage is at about 98%
> * The code adheres to the Twisted coding standards
> * Windows is currently not supported (likely a trivially easy task but
> as yet unexplored)
> * Full, generated API documentation is possible but burnout/apathy set
> in before I figured out how to properly use Twisted's documentation
> generator
> * The implementation includes a basic DBus server implementation but,
> currently, it's only intended to serve as an alternative to the native
> DBus server when running the unit tests.
>
> Notes on Performance:
>
> * For a pure-python solution the performance is really quite good.
> * On the CPython interpreter, this implementation runs at about about
> 1/3 to 1/5th the speed of the libdbus bindings.

Did you compare to GDBus? I'm just curious, as David has been excited
about performance improvements there.

> * On the PyPy interpreter, this implementation runs at about the same
> speed as the libdbus bindings
> * Surprisingly enough, the bottleneck does not appear to be in the
> marshalling/unmarshalling routines. Simply compiling the dbus
> marshalling module with Cython yielded a 10x increase in marshalling
> performance but this translated into only a minor overall performance
> improvement. If anyone adept at Python/Twisted profiling would care to
> take a look, assistance in this area would be most welcome.
>
>
> - Tom Cocagne
>
> _______________________________________________
> Twisted-Python mailing list
> Twisted-Python at twistedmatrix.com
> http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python



-- 
  Jasper



More information about the Twisted-Python mailing list