platform/upstream/dbus.git
18 years ago * qt/dbusidl2cpp.cpp: There's no callAsync. Use the correct
Thiago Macieira [Sat, 29 Apr 2006 17:22:47 +0000 (17:22 +0000)]
    * qt/dbusidl2cpp.cpp: There's no callAsync. Use the correct
        call. (r535506)

18 years ago * qt/examples/dbus.cpp: Enhance error messages and use
Thiago Macieira [Sat, 29 Apr 2006 12:49:21 +0000 (12:49 +0000)]
    * qt/examples/dbus.cpp: Enhance error messages and use
        QDBusInterfacePtr.

18 years ago * qt/qdbusinterface.h: Rename QDBusRef to QDBusInterfacePtr
Thiago Macieira [Sat, 29 Apr 2006 12:44:31 +0000 (12:44 +0000)]
    * qt/qdbusinterface.h: Rename QDBusRef to QDBusInterfacePtr
        and disable the copy operators. (r533772, r534746)

        * qt/qdbuserror.h: Remove the automatic cast to
          bool. (r533929)

        * qt/qdbusabstractinterface.cpp:
        * qt/qdbusabstractinterface.h: Change the default call mode to
        not use the event loop. Add convenience call() methods that
        take a CallMode parameter. (r534042)

        * qt/qdbusconnection.h: Change the default call mode to not
        use the event loop. (r534042)

        * qt/qdbusinterface.cpp:
        * qt/qdbusinterface.h: Add a method to tell us if the
        interface is valid (since we don't return a null pointer
        anymore) (r534099)

        * qt/qdbusinterface_p.h: Don't crash if metaObject is 0
        (r534101)

        * qt/qdbusinternalfilters.cpp: Decouple the introspection
        function in two so taht we get the chance to introspect
        without having a QDBusMessage (r534102)

        * qt/qdbusbus.h:
        * qt/qdbusconnection.cpp:
        * qt/qdbusconnection_p.h:
        * qt/qdbusintegrator.cpp: Keep a list of our own names to
        avoid a round-trip to the server when attempting to introspect
        one of our own objects. Also make sure the filter functions
        match the empty interface as well. (r534108)
        Don't keep the connection names. Instead, trust the unique
        connection name (r534111)
        Remove event loop usage (r534112)

18 years ago * qt/qdbusintegrator.cpp: Fix assertion failure spotted by
Thiago Macieira [Sat, 29 Apr 2006 10:07:42 +0000 (10:07 +0000)]
    * qt/qdbusintegrator.cpp: Fix assertion failure spotted by
        Brad Hards.

18 years ago2005-04-28 Robert McQueen <robot101@debian.org>
Robert McQueen [Fri, 28 Apr 2006 21:11:28 +0000 (21:11 +0000)]
2005-04-28  Robert McQueen  <robot101@debian.org>

* glib/dbus-gproxy.c: Fix properties so that they can be given in
any order, making it easier for people who inherit from this
object.

18 years ago2005-04-28 Robert McQueen <robot101@debian.org>
Robert McQueen [Fri, 28 Apr 2006 21:02:16 +0000 (21:02 +0000)]
2005-04-28  Robert McQueen  <robot101@debian.org>

* glib/dbus-gvalue-utils.c: Patch from Jakub Stachowski to fix leaking
of memory from within pointer arrays and lists. Fixes bug #6300.

18 years ago2005-04-28 Robert McQueen <robot101@debian.org>
Robert McQueen [Fri, 28 Apr 2006 20:36:56 +0000 (20:36 +0000)]
2005-04-28  Robert McQueen  <robot101@debian.org>

* glib/dbus-gvalue.c: Patch from Jakub Stachowski to fix a leak in
generating struct signatures. Fixes bug #6083.

18 years ago2005-04-28 Robert McQueen <robot101@debian.org>
Robert McQueen [Fri, 28 Apr 2006 20:09:17 +0000 (20:09 +0000)]
2005-04-28  Robert McQueen  <robot101@debian.org>

* qt/Makefile.am: Tweak CLEANFILES from qdbusconnection.moc
to qdbusconnection_p.moc.

18 years ago2006-04-24 John (J5) Palmieri <johnp@redhat.com>
John (J5) Palmieri [Mon, 24 Apr 2006 15:28:42 +0000 (15:28 +0000)]
2006-04-24 John (J5) Palmieri <johnp@redhat.com>

* README, INSTALL: Doc fixes
Patch from Brad Hards <bradh at frogmouth.net>

18 years ago * qt/examples/dbus.cpp: Use the new merged-interface mode for
Thiago Macieira [Sun, 23 Apr 2006 19:06:55 +0000 (19:06 +0000)]
* qt/examples/dbus.cpp: Use the new merged-interface mode for
the dynamic meta object. No need to guess which interface to
call.

18 years ago * qt/qdbusconnection_p.h:
Thiago Macieira [Sun, 23 Apr 2006 19:04:53 +0000 (19:04 +0000)]
* qt/qdbusconnection_p.h:
* qt/qdbusmetaobject.cpp:
* qt/qdbusmetaobject_p.h:
* qt/qdbusintegrator.cpp: Use the new merged-interface mode
for the dynamic meta object. No need to guess which
interface to call.
* qt/qdbusabstractinterface_p.h:
* qt/qdbusconnection.cpp:
* qt/qdbusintegrator.cpp:
* qt/qdbusinterface.cpp:
* qt/qdbusinterface.h: Make findInterface always return a non-null pointer.
Add a QDBusRef that looks and behaves like DCOPRef.

18 years ago * dbus/dbus-connection.c: Interfaces are optional in method
Thiago Macieira [Sun, 23 Apr 2006 18:54:47 +0000 (18:54 +0000)]
* dbus/dbus-connection.c: Interfaces are optional in method
        calls, so don't give up if the interface parameter is NULL.
Patch reviewed by Havoc Pennington.

18 years ago * qt/qdbusreply.h: Add default constructor and operator=
Thiago Macieira [Sun, 23 Apr 2006 15:17:28 +0000 (15:17 +0000)]
* qt/qdbusreply.h: Add default constructor and operator=
          (r532625)
* qt/qdbustypehelper_p.h: Use a clean namespace: no foreach()
          in public headers (r532952)
* qt/qdbusabstractinterface.cpp:
* qt/qdbusabstractinterface_p.h: Add the AutoDetect mode and
          make it the default (r532951)

18 years ago2006-04-19 John (J5) Palmieri <johnp@redhat.com>
John (J5) Palmieri [Wed, 19 Apr 2006 19:08:23 +0000 (19:08 +0000)]
2006-04-19  John (J5) Palmieri  <johnp@redhat.com>

* dbus/dbus-connection.c: Fix asserts
Patch from Tim Moloney <t.moloney at verizon.net>

18 years ago2006-04-19 John (J5) Palmieri <johnp@redhat.com>
John (J5) Palmieri [Wed, 19 Apr 2006 16:02:24 +0000 (16:02 +0000)]
2006-04-19  John (J5) Palmieri  <johnp@redhat.com>

* mono/Connection.cs, mono/Message.cs: Check Target type
Patch from Aaron Bockover (abockover at novell.com)

18 years ago * INSTALL: fine-tune the requirements for the Qt4 binding.
Thiago Macieira [Mon, 17 Apr 2006 19:31:49 +0000 (19:31 +0000)]
* INSTALL: fine-tune the requirements for the Qt4 binding.

18 years agoAdded support for printing of all remaining data types. Fixed logic for indentation...
Daniel P. Berrange [Sun, 16 Apr 2006 18:14:51 +0000 (18:14 +0000)]
Added support for printing of all remaining data types. Fixed logic for indentation of compound data types.

18 years agoFill out content for INSTALL file with useful info on building DBus & generic Auto...
Daniel P. Berrange [Sun, 16 Apr 2006 17:53:45 +0000 (17:53 +0000)]
Fill out content for INSTALL file with useful info on building DBus & generic Auto* instructions

18 years ago * qt/qdbusintegrator.cpp: Work around g++ 3.3 bug.
Thiago Macieira [Thu, 13 Apr 2006 17:36:03 +0000 (17:36 +0000)]
    * qt/qdbusintegrator.cpp: Work around g++ 3.3 bug.
          Patch by Stefan Eilers. (r529537)

18 years ago * qt/qdbusinternalfilters.cpp: Don't show the parent's
Thiago Macieira [Thu, 13 Apr 2006 17:34:18 +0000 (17:34 +0000)]
    * qt/qdbusinternalfilters.cpp: Don't show the parent's
          contents (r528208)

18 years ago * qt/Makefile.am: fix the dependency for
Thiago Macieira [Mon, 10 Apr 2006 15:38:58 +0000 (15:38 +0000)]
    * qt/Makefile.am: fix the dependency for
          qdbusconnection_p.moc. It's included in qdbusintegrator.cpp,
          not in qdbusconnection.cpp.
          Thanks to Jakub Stachowski <stachowski@hypair.net> for
          spotting this.

18 years ago * qt/examples/listnames.cpp:
Thiago Macieira [Mon, 10 Apr 2006 10:56:50 +0000 (10:56 +0000)]
* qt/examples/listnames.cpp:
* qt/examples/Makefile.am: Three ways to list the names on the
  bus.

18 years ago * test/qt/tst_hal.cpp: Remove the waiting, since it's not
Thiago Macieira [Mon, 10 Apr 2006 10:51:56 +0000 (10:51 +0000)]
* test/qt/tst_hal.cpp: Remove the waiting, since it's not
          needed anymore. Requires Qt 4.1.3 to work properly. (r528148)

18 years ago Merge from Subversion:
Thiago Macieira [Mon, 10 Apr 2006 10:49:36 +0000 (10:49 +0000)]
Merge from Subversion:
* qt/qt-dbus.qdocconf: Update Trolltech's webpage link to
  something that exists (r526315)
* qt/qdbusinternalfilters.cpp: Correctly detect non-scriptable
  slots/signals (r526316)
* qt/qdbusinternalfilters.cpp: Fix the setProperty call and
  also return an unknown-method error if the parameters don't
  match for org.freedesktop.DBus.Properties. (r526842)
* qt/examples/dbus.cpp: Allow passing of QVariants (r526843)
* qt/qdbusintegrator.cpp: Restore the proper order of
  delivery: don't make method returns be delivered on priority
  (r528150)

18 years ago * configure.in qt/Makefile.am: add qt/examples
Thiago Macieira [Tue, 28 Mar 2006 19:16:35 +0000 (19:16 +0000)]
* configure.in qt/Makefile.am: add qt/examples
* qt/examples: Add QtDBus example programs:
  - hello: Hello, World
  - ping: Simple method-calling program
  - pong: Simple object-exporting program (not using adaptors)
  - complexping: Interactive method-calling program
(also gets and sets properties).
  - complexpong: Sample program exporting methods, signals and
properties, using adaptors.
  - dbus: Simple implementation of a generic method-calling
program, similar to 'dbus-send', but with semantics
similar to 'dcop'.
  - chat: Simplistic chat program, implemented using signals
and the system bus. Looks like IRC.

18 years ago * configure.in: Detect QtGui (necessary for one of the
Thiago Macieira [Tue, 28 Mar 2006 19:14:56 +0000 (19:14 +0000)]
* configure.in: Detect QtGui (necessary for one of the
          example programs). Note: this increases the minimum required
          version of Qt to 4.1.3.

18 years ago * test/qt/*: Sync with KDE Subversion revision 523647.
Thiago Macieira [Tue, 28 Mar 2006 18:58:58 +0000 (18:58 +0000)]
* test/qt/*: Sync with KDE Subversion revision 523647.
        Update the testcases to the new API. Remove testcases for
        classes that are no longer public or have been removed.

18 years ago * qt/*:
Thiago Macieira [Tue, 28 Mar 2006 18:56:08 +0000 (18:56 +0000)]
* qt/*:
* dbus/qdbus.h: Sync with KDE Subversion revision
523647. Hopefully, this will be the last of the
source-incompatible changes. Documentation has been improved;
support for QList<basic-types> has been added; QDBusObject is
gone; QDBus(Abstract)Interface is now a QObject with
auto-generated meta-object; QDBusIntrospection is marked
private, since QMetaObject can be used now; lots of bugfixes.

18 years agoPatch from Milosz Derezynski <internalerror at gmail.com>
John (J5) Palmieri [Fri, 17 Mar 2006 03:20:14 +0000 (03:20 +0000)]
Patch from Milosz Derezynski <internalerror at gmail.com>

* configure.in:
  Output the service directory in the configure summary

* dbus-1.pc.in:
  Add session_bus_services_dir

18 years ago2006-03-10 Ross Burton <ross@openedhand.com>
Ross Burton [Fri, 10 Mar 2006 17:29:48 +0000 (17:29 +0000)]
2006-03-10  Ross Burton  <ross@openedhand.com>

        * tools/dbus-print-message.c:
        Add support for object paths and signatures.

18 years ago * bus/bus.c: (bus_context_reload_config): Flush the user database cache on
Sjoerd Simons [Mon, 6 Mar 2006 19:06:45 +0000 (19:06 +0000)]
  * bus/bus.c: (bus_context_reload_config): Flush the user database cache on
   config reload.
   * bus/dbus-daemon.1.in: Also note that SIGHUP flushes the user/group
   information caches
   * dbus/dbus-hash.c: (_dbus_hash_table_remove_all):
   * dbus/dbus-hash.h: Add function to remove all entries from a hash table
   * dbus/dbus-userdb.c: (_dbus_user_database_flush):
   * dbus/dbus-userdb.h: Add function to flush all user/group information
   caches.

18 years ago2006-03-06 Thiago Macieira <thiago.macieira@trolltech.com>
Thiago Macieira [Mon, 6 Mar 2006 15:27:56 +0000 (15:27 +0000)]
2006-03-06  Thiago Macieira  <thiago.macieira@trolltech.com>

* qt/dbusidl2cpp.cpp:
* qt/Makefile.am: add the dbusidl2cpp tool, the replacement
for dcopidl2cpp, found in the KDE installations (or the more
modern kalyptus): generate Qt4 C++ code for the input XML
introspection. Currently no IDL parsing.

18 years ago2006-03-06 Thiago Macieira <thiago.macieira@trolltech.com>
Thiago Macieira [Mon, 6 Mar 2006 14:30:52 +0000 (14:30 +0000)]
2006-03-06  Thiago Macieira  <thiago.macieira@trolltech.com>

* test/qt/*: Update the self-tests.

18 years ago2006-03-06 Thiago Macieira <thiago.macieira@trolltech.com>
Thiago Macieira [Mon, 6 Mar 2006 14:29:39 +0000 (14:29 +0000)]
2006-03-06  Thiago Macieira  <thiago.macieira@trolltech.com>

* qt/*:
* dbus/qdbus.h: Sync with KDE Subversion revision 516237. This
represents the first feature-complete version of the Qt4
bindings since I took ove maintainership.

18 years ago2006-03-06 Thiago Macieira <thiago.macieira@trolltech.com>
Thiago Macieira [Mon, 6 Mar 2006 14:28:20 +0000 (14:28 +0000)]
2006-03-06  Thiago Macieira  <thiago.macieira@trolltech.com>

* qt/Doxyfile: Adding a Doxyfile for the Qt4 bindings
        dir. This is C++, so we can't use the DBus ones.

18 years ago2006-03-02 John (J5) Palmieri <johnp@redhat.com>
John (J5) Palmieri [Thu, 2 Mar 2006 23:28:18 +0000 (23:28 +0000)]
2006-03-02  John (J5) Palmieri  <johnp@redhat.com>

        * python/dbus_bindings.pyx: Remove refrence to sys/cdefs.h
(Patch from Artem Kachitchkine <Artem.Kachitchkin at Sun.COM>)

18 years ago2006-03-02 John (J5) Palmieri <johnp@redhat.com>
John (J5) Palmieri [Thu, 2 Mar 2006 22:24:28 +0000 (22:24 +0000)]
2006-03-02  John (J5) Palmieri  <johnp@redhat.com>

* dbus/dbus-connection.c:
(_dbus_connection_block_pending_call):
Check to see if our data has already been read off the connection
by another blocking pending call before we block in poll.
(check_for_reply_and_update_dispatch_unlocked):
Code taken from _dbus_connection_block_pending_call - checks for
an already read reply and updates the dispatch if there is one.

* test/name-test/test-pending-call-dispatch.c:
New test for making sure we don't get stuck polling a
dbus connection which has no data on the socket when
blocking out of order on two or more pending calls.

18 years ago2006-02-28 Thiago Macieira <thiago.macieira@trolltech.com>
Thiago Macieira [Tue, 28 Feb 2006 14:19:55 +0000 (14:19 +0000)]
2006-02-28  Thiago Macieira <thiago.macieira@trolltech.com>

* qt/Makefile.am: Patch by Sjoerd Simons. More .moc issues:
        make/automake don't detect that we're talking about the same
        .lo file if I specify the full path to the source files.

18 years ago2006-02-26 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Sun, 26 Feb 2006 08:11:03 +0000 (08:11 +0000)]
2006-02-26  Havoc Pennington  <hp@redhat.com>

* bus/dbus-daemon.1.in: improve the language in a couple spots I noticed

* dbus/dbus-bus.c (internal_bus_get): in the error message if the
session bus variable is unset, suggest "man dbus-launch" and "man
dbus-daemon" to figure out how to fix the problem

18 years ago2006-02-25 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Sun, 26 Feb 2006 01:06:33 +0000 (01:06 +0000)]
2006-02-25  Havoc Pennington  <hp@redhat.com>

* glib/dbus-glib-tool.c (usage): fix up the usage message, someone
should make this thing use the new glib options parser

18 years ago2006-02-25 Thiago Macieira <thiago.macieira@trolltech.com>
Thiago Macieira [Sat, 25 Feb 2006 19:54:56 +0000 (19:54 +0000)]
2006-02-25  Thiago Macieira <thiago.macieira@trolltech.com>

       * qt/Makefile.am: Patch by Sjoerd Simons. Fix the path to the
        .lo files taking moc sources.

18 years ago2006-02-25 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Sat, 25 Feb 2006 18:34:12 +0000 (18:34 +0000)]
2006-02-25  Havoc Pennington  <hp@redhat.com>

* dbus/dbus.h, dbus/Makefile.am: add dbus-signature.h to dbus.h
and install it as a public header

18 years ago- Bump release
John (J5) Palmieri [Fri, 24 Feb 2006 18:20:45 +0000 (18:20 +0000)]
- Bump release

18 years ago2006-02-24 John (J5) Palmieri <johnp@redhat.com> dbus-0.61
John (J5) Palmieri [Fri, 24 Feb 2006 18:18:41 +0000 (18:18 +0000)]
2006-02-24  John (J5) Palmieri  <johnp@redhat.com>

* Released 0.61

2006-02-24  John (J5) Palmieri  <johnp@redhat.com>

* proxies.py: Fix the callchain

18 years ago2006-02-24 John (J5) Palmieri <johnp@redhat.com>
John (J5) Palmieri [Fri, 24 Feb 2006 16:13:08 +0000 (16:13 +0000)]
2006-02-24  John (J5) Palmieri <johnp@redhat.com>

* patch from Sjoerd Simons <sjoerd at debian.org>:

* dbus/dbus-sysdeps-util.c (_dbus_group_info_free): Moved to
dbus/dbus-sysdeps.c

* dbus/dbus-userdb.c (_dbus_group_info_free_allocated): Don't
call _dbus_group_info_free_allocated which causes infinite loop,
correctly call _dbus_group_info_free

18 years agoEmacs is too smart for its own good. Revert its automatic changes.
Thiago Macieira [Mon, 20 Feb 2006 13:30:42 +0000 (13:30 +0000)]
Emacs is too smart for its own good. Revert its automatic changes.

18 years ago2006-02-20 Thiago Macieira <thiago.macieira@trolltech.com>
Thiago Macieira [Mon, 20 Feb 2006 13:23:11 +0000 (13:23 +0000)]
2006-02-20  Thiago Macieira <thiago.macieira@trolltech.com>

* qt/qdbusinterface_p.h:
* qt/qdbusinterface.cpp: Use the standard
org.freedesktop.DBus.Method.NoReply annotation for the "async"
calls instead of creating one for us.

* qt/qdbusconnection_p.h:
* qt/qdbusintegrator.cpp: Remove debugging code.

* qt/qdbusintegrator.cpp:
* qt/qdbusmessage.cpp:
* qt/qdbusmessage_p.h:
* qt/qdbusmessage.h: Change the behaviour of automatic
reply-sending: now a reply is always sent, unless the caller
didn't request one or if the user slot has already sent one.

18 years ago2006-02-16 Robert McQueen <robot101@debian.org>
Robert McQueen [Fri, 17 Feb 2006 00:04:38 +0000 (00:04 +0000)]
2006-02-16  Robert McQueen  <robot101@debian.org>

* configure.in: Patch from Debian packages by Sjoerd Simons
<sjoerd@debian.org> to add --with-qt-moc and --with-qt3-moc
arguments so it's possible to build both bindings in the
same tree.

* qt/Makefile.am: Fix truncated value so that make dist works.

18 years ago2006-02-16 Robert McQueen <robot101@debian.org>
Robert McQueen [Thu, 16 Feb 2006 01:13:04 +0000 (01:13 +0000)]
2006-02-16  Robert McQueen  <robot101@debian.org>

* acinclude.m4, configure.in: Patch from Brad Hards
<bradh@frogmouth.net> to avoid warnings from autoconf 1.9 by
improving quoting, re-ordering a few checks, and a few other
aesthetic tidy-ups.

18 years ago2006-02-16 Robert McQueen <robot101@debian.org>
Robert McQueen [Thu, 16 Feb 2006 00:43:41 +0000 (00:43 +0000)]
2006-02-16  Robert McQueen  <robot101@debian.org>

* dbus/dbus-message.c (dbus_message_iter_get_fixed_array):
Patch from Rob Taylor <rob.taylor@collabora.co.uk> to correct a bogus
assertion that the next element to read from the iter is fixed in
size. This is not the case when you are at the end of the iter,
because the next element type is INVALID.

* dbus/dbus-string.c (_dbus_string_init_const_len): Correct a
a bogus assert which means that you may not initialise a 0-length
string unless you provide a non-NULL pointer. This prevented
you from marshalling messages containing zero-length arrays in
some cases.

* glib/dbus-gvalue.c (demarshal_collection_array): Another patch
from Rob to correct bogus asserts when trying to demarshal an
array and get_fixed_array got you 0 elements. Append nothing to
the GArray in this case.

* test/glib/test-dbus-glib.c: Add a test case for round-tripping
an empty array via the glib bindings. Without all of the above
patches, this new test fails.

18 years ago2006-02-16 Robert McQueen <robot101@debian.org>
Robert McQueen [Wed, 15 Feb 2006 23:45:50 +0000 (23:45 +0000)]
2006-02-16  Robert McQueen  <robot101@debian.org>

* glib/dbus-gmain.c: Make the previous commit compile.

* python/_dbus.py, python/matchrules.py: Patch from Ole Andre
Ravnaas <ole.andre.ravnaas@collabora.co.uk> to allow you to
specify sender_keyword="foo", path_keyword="bar" when adding
a signal listener, so that you can bind to signals generically
but still do something useful in your callback.

* python/dbus_bindings.pyx: Demarshal the byte type as unsigned
chars so that they're not cast to chars and made negative. Thanks
to Jakub Stachowski for reporting this and testing the fix.

18 years ago* remove line from ChangeLog which was an artifact of an update conflict
John (J5) Palmieri [Wed, 15 Feb 2006 21:44:11 +0000 (21:44 +0000)]
* remove line from ChangeLog which was an artifact of an update conflict

18 years ago2006-02-15 John (J5) Palmieri <johnp@redhat.com>
John (J5) Palmieri [Wed, 15 Feb 2006 21:42:54 +0000 (21:42 +0000)]
2006-02-15  John (J5) Palmieri  <johnp@redhat.com>

* dbus/dbus-glib.h:
* glib/dbus-gmain.h:
(dbus_g_connection_open): new method for openning
a connection to an arbitrary address in the glib bindings

* ChangeLog: checkin last entry which doesn't seem to be commited

18 years agoAdd new tests and update the existing one.
Thiago Macieira [Wed, 15 Feb 2006 17:06:41 +0000 (17:06 +0000)]
Add new tests and update the existing one.

18 years agoadd dispatch recursion item to TODO
Havoc Pennington [Wed, 15 Feb 2006 16:38:11 +0000 (16:38 +0000)]
add dispatch recursion item to TODO

18 years agoMerge the changes to the bindings from the KDE Subversion server.
Thiago Macieira [Wed, 15 Feb 2006 16:25:12 +0000 (16:25 +0000)]
Merge the changes to the bindings from the KDE Subversion server.

This is a major change: library is source- and binary-incompatible to
what it used to be.

All testcases are green, functionality is preserved.

It is not feature-complete. Development will continue in the branch in the
Subversion server for a while.

18 years agoUnclutter and upgrade the test to Qt 4.1. We now link to QtXml too.
Thiago Macieira [Wed, 15 Feb 2006 16:21:59 +0000 (16:21 +0000)]
Unclutter and upgrade the test to Qt 4.1. We now link to QtXml too.

18 years ago2006-02-13 Robert McQueen <robot101@debian.org>
Robert McQueen [Mon, 13 Feb 2006 22:30:11 +0000 (22:30 +0000)]
2006-02-13  Robert McQueen  <robot101@debian.org>

* glib/dbus-binding-tool-glib.c, glib/dbus-gmain.c,
glib/dbus-gsignature.c, glib/dbus-gtype-specialized.c,
glib/dbus-gtype-specialized.h, glib/dbus-gvalue-utils.c,
glib/dbus-gvalue-utils.h, glib/dbus-gvalue.c:
Patch from Rob Taylor <rob.taylor@collabora.co.uk> to add a big
missing piece of the glib bindings jigsaw puzzle. This modifies
the existing specialised types to have N type parameters (rather
than the current 1 or 2 for arrays and dictionaries respectively).
You can then use this to get a glib type to represent any arbitrary
D-Bus struct type using dbus_g_type_get_struct. The only
implementation of these types is with GValueArrays as before,
but it's now possible to store these in arrays, emit them in
signals, etc.

18 years ago2006-02-13 John (J5) Palmieri <johnp@redhat.com>
John (J5) Palmieri [Mon, 13 Feb 2006 21:01:32 +0000 (21:01 +0000)]
2006-02-13  John (J5) Palmieri  <johnp@redhat.com>

* tools/dbus-launch.c: Fixed sh syntax output

18 years ago2006-02-10 John (J5) Palmieri <johnp@redhat.com>
John (J5) Palmieri [Fri, 10 Feb 2006 22:36:57 +0000 (22:36 +0000)]
2006-02-10  John (J5) Palmieri  <johnp@redhat.com>

* dbus/dbus-signature.c (dbus_signature_iter_recurse): Correctly
deal with nested arrays (Bug #5823) Patch by Thiago Macieira
<thiago.macieira at trolltech.com>

18 years ago2006-02-10 John (J5) Palmieri <johnp@redhat.com>
John (J5) Palmieri [Fri, 10 Feb 2006 21:47:10 +0000 (21:47 +0000)]
2006-02-10  John (J5) Palmieri  <johnp@redhat.com>

* mono/doc/Makefile.am: Fix parallel make problem with mono-doc
(Bug #4213) Patch from Doug Goldstein <cardoe at gentoo.org>

18 years ago2006-02-10 John (J5) Palmieri <johnp@redhat.com>
John (J5) Palmieri [Fri, 10 Feb 2006 21:44:15 +0000 (21:44 +0000)]
2006-02-10  John (J5) Palmieri  <johnp@redhat.com>

* bus/connection.c (bus_connections_expect_reply): Make
pending reply limit not common to all connections (Bug #5416)
Patch from Kimmo Hämäläinen <kimmo.hamalainen at nokia.com>

18 years ago2006-02-10 John (J5) Palmieri <johnp@redhat.com>
John (J5) Palmieri [Fri, 10 Feb 2006 21:28:52 +0000 (21:28 +0000)]
2006-02-10  John (J5) Palmieri  <johnp@redhat.com>

* tools/dbus-launch.c: Fixed csh syntax output (Bug #5720)

18 years ago2006-02-10 John (J5) Palmieri <johnp@redhat.com>
John (J5) Palmieri [Fri, 10 Feb 2006 20:57:10 +0000 (20:57 +0000)]
2006-02-10  John (J5) Palmieri  <johnp@redhat.com>

* gcj/Makefile.am: point to correct jar command (Bug #4529)
patch from Doug Goldstein <cardoe at gentoo.org>

18 years ago2006-02-09 Joe Shaw <joeshaw@novell.com
Joe Shaw [Thu, 9 Feb 2006 19:57:42 +0000 (19:57 +0000)]
2006-02-09  Joe Shaw  <joeshaw@novell.com

* mono/Arguments.cs: Fix a magic number in the mono bindings
that doesn't work on 64 bit arches.  Patch from Peter Johanson.

18 years ago2006-01-27 Robert McQueen <robot101@debian.org>
Robert McQueen [Fri, 27 Jan 2006 16:40:54 +0000 (16:40 +0000)]
2006-01-27  Robert McQueen  <robot101@debian.org>

* glib/dbus-binding-tool-glib.[ch]: Patch based on Ricardo Kekki's
patch to use an annotation org.freedesktop.DBus.GLib.ClientCSymbol
when generating the client-side methods, instead of overloading
CSymbol which broke everything horribly. My apologies.

18 years ago2006-01-27 Robert McQueen <robot101@debian.org>
Robert McQueen [Fri, 27 Jan 2006 15:40:36 +0000 (15:40 +0000)]
2006-01-27  Robert McQueen  <robot101@debian.org>

* glib/dbus-gtype-specialized.[ch], glib/dbus-gvalue-utils.c: Patch
by me and Rob Taylor to add a simple_free function to D-Bus map
and collection types, which allows those types which can be freed
with a GDestroyNotify (such as GHashTables and GArrays, but not
GPtrArrays) to be stored as the values in hashtables.

* test/glib/test-dbus-glib.c, test/glib/test-service-glib.{c,xml}:
Patch by Rob Taylor to add nested dicts to the glib tests to check
the above code works, and appears not to leak when called repeatedly.

18 years ago2006-01-27 Robert McQueen <robot101@debian.org>
Robert McQueen [Fri, 27 Jan 2006 15:15:16 +0000 (15:15 +0000)]
2006-01-27  Robert McQueen  <robot101@debian.org>

* glib/dbus-gvalue.c (demarshal_valuearray): Patch from Rob Taylor
to free a D-Bus allocated string with dbus_free () instead of
g_free ().

18 years ago2006-01-27 Iain Holmes <iain@openedhand.com>
Robert McQueen [Fri, 27 Jan 2006 15:06:55 +0000 (15:06 +0000)]
2006-01-27  Iain Holmes  <iain@openedhand.com>

* glib/dbus-gproxy.c (dbus_g_proxy_dispose): Protect the dispose
method from being called multiple times.

18 years agocompile on 64-bit systems
Harald Fernengel [Sun, 22 Jan 2006 19:45:14 +0000 (19:45 +0000)]
compile on 64-bit systems

18 years agoconvert to QTestLib 4.1
Harald Fernengel [Sun, 22 Jan 2006 19:42:18 +0000 (19:42 +0000)]
convert to QTestLib 4.1

18 years agoallow linking to debug Qt libraries, use QTestLib >= 4.1
Harald Fernengel [Sun, 22 Jan 2006 19:42:00 +0000 (19:42 +0000)]
allow linking to debug Qt libraries, use QTestLib >= 4.1

18 years ago2006-01-19 Robert McQueen <robot101@debian.org>
Robert McQueen [Thu, 19 Jan 2006 02:54:07 +0000 (02:54 +0000)]
2006-01-19  Robert McQueen  <robot101@debian.org>

* glib/dbus-binding-tool-glib.c: Patch from Rob Taylor
<rob.taylor@collabora.co.uk> to add support for generating bindings
to arrays that are represented as GPtrArrays rather than GArrays (ie
size-variable things, such as strings, objects, structs, etc).

18 years ago2006-01-05 Robert McQueen <robot101@debian.org>
Robert McQueen [Thu, 5 Jan 2006 20:22:06 +0000 (20:22 +0000)]
2006-01-05  Robert McQueen  <robot101@debian.org>

* dbus/dbus-glib.h, glib/dbus-gproxy.c: Patch from Ricardo Kekki
<ricardo.kekki@movial.fi> to make it possible to inherit from
DBusGProxy, by splitting the DBusGProxy struct into a public part and
a private part, and moving the setting of the DBusGProxyManager into a
connection property, allowing proper GObject construction.

18 years ago2006-01-05 Robert McQueen <robot101@debian.org>
Robert McQueen [Thu, 5 Jan 2006 20:03:38 +0000 (20:03 +0000)]
2006-01-05  Robert McQueen  <robot101@debian.org>

* glib/dbus-binding-tool-glib.c: Patch from Ricardo Kekki
<ricardo.kekki@movial.fi> to make dbus-binding-tool heed C symbol name
annotations when generating glib client bindings.

18 years ago* dbus/dbus-shared.h: Call it shared constants instead of shared macros
John (J5) Palmieri [Mon, 19 Dec 2005 23:58:22 +0000 (23:58 +0000)]
* dbus/dbus-shared.h: Call it shared constants instead of shared macros

* dbus/dbus-protocol.h: add DOxygen markup to quiet warnings

18 years ago- Add doxygen markup to quite warnings
John (J5) Palmieri [Mon, 19 Dec 2005 23:45:13 +0000 (23:45 +0000)]
- Add doxygen markup to quite warnings

18 years ago* dbus/dbus-macros.h: correct DOxygen end of section (s/}@/@})
John (J5) Palmieri [Mon, 19 Dec 2005 22:06:24 +0000 (22:06 +0000)]
* dbus/dbus-macros.h: correct DOxygen end of section (s/}@/@})

18 years agoAdd documentation on glib client bindings and annotations
Ross Burton [Mon, 19 Dec 2005 18:11:05 +0000 (18:11 +0000)]
Add documentation on glib client bindings and annotations

18 years ago * dbus/bus.c (dbus_bus_release_name): Add documentation
John (J5) Palmieri [Mon, 19 Dec 2005 15:11:51 +0000 (15:11 +0000)]
 * dbus/bus.c (dbus_bus_release_name): Add documentation

18 years ago2005-12-06 Robert McQueen <robot101@debian.org>
Robert McQueen [Tue, 6 Dec 2005 12:38:07 +0000 (12:38 +0000)]
2005-12-06  Robert McQueen  <robot101@debian.org>

* python/service.py: s/sucessful/successful/ so we're allocating to
and reading from the same variable. Oops.

18 years agofix file list in update-dbus-docs.sh
Havoc Pennington [Thu, 1 Dec 2005 05:42:03 +0000 (05:42 +0000)]
fix file list in update-dbus-docs.sh

18 years ago* test/qt/Makefile.am: build from srcdir dbus-0.60
John (J5) Palmieri [Thu, 1 Dec 2005 00:07:20 +0000 (00:07 +0000)]
* test/qt/Makefile.am: build from srcdir

* qt/qtconnection.cpp (requestName): Changed PROHIBIT_REPLACE to ALLOW_REPLACE
  Note - this code is wrong and needs to be fixed by the Qt binding
  developers.  The flags should be treated as bitfields and not enums.

* qt/qtconnection.h: Change ProhibitReplace to AllowReplace

* dbus/dbus-list.c (link_after): remove #ifdef DBUS_BUILD_TESTS

18 years ago* dbus/dbus-list.c (_dbus_list_insert_after_link, _dbus_list_insert_after):
John (J5) Palmieri [Wed, 30 Nov 2005 21:23:12 +0000 (21:23 +0000)]
* dbus/dbus-list.c (_dbus_list_insert_after_link, _dbus_list_insert_after):
  remove #ifdef DBUS_BUILD_TESTS since we use these methods in production code

18 years ago* dbus/dbus-connection.c (dbus_connection_read_write): Add new
John (J5) Palmieri [Wed, 30 Nov 2005 20:30:02 +0000 (20:30 +0000)]
* dbus/dbus-connection.c (dbus_connection_read_write): Add new
  method for getting messages off the bus in the absence of a
  mainloop.  This method is much like
  dbus_connection_read_write_dispatch except it does not dispatch
  the messages to a registered filter function.  Instead it
  allows a developer to process messages by directly popping
  them off the bus.

18 years ago* bus/desktop-file.c (parse_key_value): Ignore locales allowing
John (J5) Palmieri [Wed, 30 Nov 2005 20:14:30 +0000 (20:14 +0000)]
* bus/desktop-file.c (parse_key_value): Ignore locales allowing
  the parser to continue instead of returning error
  (bus_desktop_file_load): Do not free parser data when
  parse_section_start or parse_key_value fails because it was
  already freed by parser_free (patch from Carlos Garcia Campos
  <carlosgc at gnome.org>)

18 years ago* dbus/dbus-auth.c, dbus/dbus-connection.c, dbus/dbus-keyring.c,
John (J5) Palmieri [Wed, 30 Nov 2005 19:32:27 +0000 (19:32 +0000)]
* dbus/dbus-auth.c, dbus/dbus-connection.c, dbus/dbus-keyring.c,
  dbus/dbus-server-debug-pipe.c, glib/dbus-binding-tool-glib.c
  glib/dbus-glib-tool.c, glib/dbus-gparser.c, glib/dbus-gproxy.c
  test/test-segfault.c, test/test-utils.c,
  test/glib/test-dbus-glib.c, tools/dbus-cleanup-sockets.c
  tools/dbus-launch.c, tools/dbus-tree-view.c, tools/dbus-viewer.c:
  Various cleanup of dead code and compiler warnings (patch from
  Kjartan Maraas <kmaraas at gnome.org>)

18 years ago* glib/dbus-gmain.c (connection_setup_add_watch): plugged a leak
John (J5) Palmieri [Wed, 30 Nov 2005 18:48:11 +0000 (18:48 +0000)]
* glib/dbus-gmain.c (connection_setup_add_watch): plugged a leak
  (patch from Carlos Garnacho Parro <carlosg at gnome.org>

18 years ago2005-11-27 Robert McQueen <robot101@debian.org>
Robert McQueen [Sun, 27 Nov 2005 17:44:19 +0000 (17:44 +0000)]
2005-11-27  Robert McQueen  <robot101@debian.org>

* python/dbus_bindings.pyx: Repair my previous commit which reverted
part of the preceding one. Oops. Merge patch by Johan Hedberg
<johan.hedberg@nokia.com> to fix marshalling of 16-bit integer values
on big-endian platforms.

* test/python/test-client.py: Add some 16-bit integers to the test
values.

18 years ago2005-11-27 Carlos Garcia Campos <carlosgc@gnome.org>
Robert McQueen [Sun, 27 Nov 2005 16:55:09 +0000 (16:55 +0000)]
2005-11-27  Carlos Garcia Campos  <carlosgc@gnome.org>

* glib/dbus-gobject.c: Append a GValue instead of a basic type in
method return message for property getters

18 years ago2005-11-27 Robert McQueen <robot101@debian.org>
Robert McQueen [Sun, 27 Nov 2005 16:40:57 +0000 (16:40 +0000)]
2005-11-27  Robert McQueen  <robot101@debian.org>

* python/dbus_bindings.pyx: Fix a bug where doing a strict append
with type v of an instance of dbus.Variant(foo, type='x') caused
it to be boxed twice before sending over the bus.

* python/dbus_bindings.pyx, python/service.py,
test/python/test-client.py: Update the constants for the new
request_name flags, and update comments/test cases now that queueing
is the default action.

18 years ago* configure.in:
John (J5) Palmieri [Tue, 22 Nov 2005 20:42:49 +0000 (20:42 +0000)]
* configure.in:
- Change version to 0.60 for impending release
- upped the sonames because of ABI and API breakage

18 years ago * configure.in: Add test/name-test/Makefile to the generated
John (J5) Palmieri [Tue, 22 Nov 2005 20:37:00 +0000 (20:37 +0000)]
* configure.in: Add test/name-test/Makefile to the generated
Makefile list

* dbus/dbus-shared.h (#define DBUS_NAME_FLAG_ALLOW_REPLACEMENT):
New flag which replaces DBUS_NAME_FLAG_PROHIBIT_REPLACEMENT
(#define DBUS_NAME_FLAG_DO_NOT_QUEUE): New flag for specifying
not to queue an ower if it can't be the primary owner

* bus/bus.h: Add new internal BusOwner struct

* bus/driver.c (bus_driver_handle_hello): Send flags (0 for default)
to bus_registry_ensure and don't set the prohibit_replacement flag
since they are now set per BusOwner and not per name.
(bus_driver_handle_list_queued_owners): bus method (ListQueuedOwners)
that returns the list of connections in a name's connection queue

* bus/services.c (struct BusService): remove prohibit_replacement field
(struct BusOwner): new struct for keeping track of queued connections
and their associated flags for the queue
(struct BusRegistry): add a BusOwner memory pool
(bus_registry_new): initialize the BusOwner memory pool
(bus_registry_unref): free the BusOwner memory pool
(_bus_service_find_owner_link): new internal method for
searching the queue for a specific connection
(bus_owner_set_flags): new method for adding setting the flags on a
bus owner
(bus_owner_new): new method that creates a BusOwner object from the
pool and sets its flags
(bus_owner_ref, bus_owner_unref): ref counting for BusOwner objects
(bus_registry_ensure): Add the flags parameter
(bus_registry_acquire_service): Switch from using raw connections to
using the BusOwner struct
Add new state machine for dealing with the new set of flags
(bus_registry_set_service_context_table, struct OwnershipCancelData,
cancel_ownership, free_ownership_cancel_data,
add_cancel_ownership_to_transaction, struct OwnershipRestoreData,
restore_ownership, free_ownership_restore_data,
add_restore_ownership_to_transaction): Switch to using BusOwner
instead of raw connections
(bus_service_add_owner): Add flags parameter
Switch to using BusOwner instead of raw connections
Add state machine for dealing with the new set of flags
(bus_service_swap_owner): Swaps the first and second owners in the
queue.  Used to make sure proper signals are sent when a service looses
or gains primary ownership.  We never insert an owner at the top of the
queue.  Instead we insert it in the second position and then swap.
(bus_service_remove_owner): Remove the owner from the queue sending
out the NameLost and NameOwnerChanged signals if the we were the
primary owner
(bus_service_get_primary_owners_connection): New method that extracts
the connection from the primary owner
(bus_service_get_primary_owner): Returns the BusOwner instead of the
connection
(bus_service_get_allow_replacement): Changed from the old
bus_service_get_prohibit_replacement method.  Checks the flags of the
primary owner and returns if it can be replaced or not
(bus_service_set_prohibit_replacement): removed
(bus_service_has_owner): returns TRUE if and owner with
the specified connection exists in the queue

* dbus/dbus-bus.c (dbus_bus_connection_get_unique_name): New helper
method that only compiles if tests are enabled.  Allows us to get the
unique name of a connection so we can check it against the queue when
doing regression tests

* bus/activation.c (bus_activation_send_pending_auto_activate),
bus/dispatch.c (bus_dispatch),
bus/driver.c (bus_driver_handle_get_service_owner,
bus_driver_handle_get_connection_unix_user,
bus_driver_handle_get_connection_unix_process_id,
bus_driver_handle_get_connection_selinux_security_context),
bus/signals.c (connection_is_primary_owner):
use bus_service_get_primary_owners_connection instead of
bus_service_get_primary_owner

* dbus/dbus-sysdeps.c (_dbus_connect_unix_socket,
_dbus_listen_unix_socket): Calculate the length of the socket
path and use that instead of using a fixed length which was
causing socket names to contain many trailing Nul bytes.

* dbus/dbus-glib-lowlevel.h, glib/dbus-gobject.c
(dbus_g_method_get_sender): New method for extracting the sender
from a DBusGMethodInvocation
(dbus_g_method_return_get_reply): changed name to
dbus_g_method_get_reply
(dbus_g_method_return_send_reply): changed name to
dbus_g_method_send reply

* doc/dbus-specification.xml: New docs that describe how the new
queueing system works and talks about the changes to the how
we specify socket names

* glib/examples/example-service.c,
glib/examples/example-signal-emitter.c,
glib/examples/statemachine/statemachine-server.c:
Changed the RequestName flags to the new system

* test/name-test/ (test-names.c, run-test.sh, Makefile.am): New
regression test suite for testing various states of the new
queueing system

18 years ago2005-11-15 Robert McQueen <robot101@debian.org>
Robert McQueen [Tue, 15 Nov 2005 19:34:33 +0000 (19:34 +0000)]
2005-11-15  Robert McQueen  <robot101@debian.org>

* dbus/dbus-glib-lowlevel.h, glib/dbus-gobject.c: Patch from Rob
Taylor to add two methods, dbus_g_method_return_get_reply and
dbus_g_method_return_send_reply, to allow you to get the reply
message from a DBusGMethodInvocation, append arbitrary stuff to it,
and send it. The GLib bindings can't marshal a return value of
something like a(s) if the array is empty - ultimately they should be
made to heed the signature of the out arguments as the Python bindings
now can, but this is a workable interim solution which might have
other applications.

18 years ago2005-11-15 Robert McQueen <robot101@debian.org>
Robert McQueen [Tue, 15 Nov 2005 17:19:19 +0000 (17:19 +0000)]
2005-11-15  Robert McQueen  <robot101@debian.org>

* bus/driver.c, bus/services.c, bus/services.h: Add a ReleaseName
method to org.freedesktop.DBus to release a bus name or give up
waiting in the queue for it.

* dbus/dbus-bus.c, dbus/dbus-bus.h, dbus/dbus-shared.h: Add a
dbus_bus_release_name method to send the ReleaseName method calls.
Add constants for the return values to dbus/dbus-shared.h.

* doc/dbus-specification.xml: Document the new ReleaseName method
in the specification.

* python/dbus_bindings.pyx: Add a low-level python binding for the
release name method.

* python/exceptions.py, python/service.py: Make freeing BusName
objects release the name. Add a NameExistsException, and fix a
bug with creating UnknownMethodException.

* test/python/test-client.py: Add tests for freeing BusName
objects causing names to be released.

18 years ago2005-11-15 Robert McQueen <robot101@debian.org>
Robert McQueen [Mon, 14 Nov 2005 20:59:32 +0000 (20:59 +0000)]
2005-11-15  Robert McQueen  <robot101@debian.org>

* python/service.py: Include the traceback in the error reply when we
send an exception over the bus. _BEST_ _PATCH_ _EVER_

18 years ago2005-11-14 David Zeuthen <davidz@redhat.com>
David Zeuthen [Mon, 14 Nov 2005 20:51:25 +0000 (20:51 +0000)]
2005-11-14  David Zeuthen  <davidz@redhat.com>

        Patch from Timo Hoenig <thoenig@suse.de>.

        * bus/bus.c: I've recently investigated why the automatic reload
        of configuration files does not work as expected.

        Currently, reloading configuration files does only work when
        running dbus-daemon with --nodaemon.  If we are running as daemon
        we're hitting a dnotify bug once we fork the process.

        We're initializing the dnotify fds before calling fork().  Once
        the child process forked it does still have the fds (and they
        still show up in /proc/`pidof dbus-daemon`/fd/) but we're not
        getting SIGIO as changes are made to the configuration files.

        The attached patch moves the initialization of the dnotify fds to
        process_config_postinit().  This is safe for all current code
        paths and solves the dnotify disfunction.  If we're running
        dbus-daemon as daemon the fds for dnotify are now being
        initialized after fork() for the child process.

        * configure.in: The current configure.in check for dnotify probes
        'x$target_os' for being 'xlinux-gnu'.  I've changed the check to
        match for 'xlinux', too. Additionally I have adapted the configure
        option's style to match with the others.

18 years ago2005-11-14 Robert McQueen <robot101@debian.org>
Robert McQueen [Mon, 14 Nov 2005 02:53:30 +0000 (02:53 +0000)]
2005-11-14  Robert McQueen  <robot101@debian.org>

* python/decorators.py, python/service.py: Add a new argument to the
dbus.service.method decorator called sender_keyword, which if set,
specifies the name of an argument which will be provided the bus
name of the method caller.

* test/python/test-client.py, test/python/test-service.py: Add a
method and test to check the sender_keyword functionality.

18 years ago* bus/driver.c (bus_driver_handle_reload_config): Make sure we send an
John (J5) Palmieri [Mon, 7 Nov 2005 21:57:13 +0000 (21:57 +0000)]
* bus/driver.c (bus_driver_handle_reload_config): Make sure we send an
  empty reply so blocking calls don't block forever (Patch from Sjoerd
  Simons <sjoerd at luon.net>)

* AUTHORS: Add Robert McQueen for his work on the Python
  Bindings and other parts of D-Bus

19 years ago2005-11-07 Robert McQueen <robot101@debian.org>
Robert McQueen [Mon, 7 Nov 2005 15:31:30 +0000 (15:31 +0000)]
2005-11-07  Robert McQueen  <robot101@debian.org>

* python/decorators.py: Change emit_signal function to use the
signature annotation of the signal when marhsalling the arguments from
the service. Fix a bug where the code checking signature length
against argument length referenced the wrong variable.

* python/introspect_parser.py: Avoid adding the type signature of
signal arguments to any methods which occur after them in the
introspection data (!) by making the parser a little more careful
about its current state.

* python/service.py: Remove debug prints from last commit (again :D).

* test/python/test-client.py, test/python/test-service.py: Add test
signals with signature decorators to test the strict marshalling code
gives errors at the right time. Could do with checking the signals
actually get emitted too, given that the test does nothing with
signals at the moment...