Qt-contributors-summit-2013-QtDBus CS: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 1: Line 1:
=QtDBus module discussions at Qt Contributor Summit 2013=


Topics for discussion:
* Rewriting the engine:
** Dropping the libdbus-1 dependency
** Moving the connection handling to a dedicated thread
** Adding support for kdbus
* kdbus overview
Discussion:
# Take ahartmetz’s marshaller/demarshaller and put on top of QtDBus & libdbus-1
# Moving the handling to a thread
# Handling our own socket
## Remember the specifics about sockets on Windows
# Adding kdbus compatibility
* Generator in QtDBus generates synchronous property get and set
** QtDBus should discourage sync calls more
** For properties, we could add new <span class="caps">API</span> that is async (returns QDBusPendingReply&lt;void&gt; and QDBusPendingReply&lt;QDBusVariant&gt;)
* There is no error-checking in qdbus_cast (from variants)
** No way to distinguish a T() returned from qdbus_cast&lt;T&gt;() as empty or as error
* Parse documentation annotations and generate documentation in the Interface and Adaptors?
* Investigate the type system used by Telepathy
* Update documentation about supporting multiple platforms (specifically, Windows)
** Right now, it says it’s Unix-only
** Would be nice to have better tutorials too

Revision as of 14:08, 25 February 2015

QtDBus module discussions at Qt Contributor Summit 2013

Topics for discussion:

  • Rewriting the engine:
    • Dropping the libdbus-1 dependency
    • Moving the connection handling to a dedicated thread
    • Adding support for kdbus
  • kdbus overview

Discussion:

  1. Take ahartmetz’s marshaller/demarshaller and put on top of QtDBus & libdbus-1
  2. Moving the handling to a thread
  3. Handling our own socket
    1. Remember the specifics about sockets on Windows
  4. Adding kdbus compatibility
  • Generator in QtDBus generates synchronous property get and set
    • QtDBus should discourage sync calls more
    • For properties, we could add new API that is async (returns QDBusPendingReply<void> and QDBusPendingReply<QDBusVariant>)
  • There is no error-checking in qdbus_cast (from variants)
    • No way to distinguish a T() returned from qdbus_cast<T>() as empty or as error
  • Parse documentation annotations and generate documentation in the Interface and Adaptors?
  • Investigate the type system used by Telepathy
  • Update documentation about supporting multiple platforms (specifically, Windows)
    • Right now, it says it’s Unix-only
    • Would be nice to have better tutorials too