summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2009-09-16Properly handle flags/enums propertiesHEAD0.6masterDavid Zeuthen1-1/+23
2009-07-04Don't leak object path in EggDBusMessageDavid Zeuthen1-0/+1
2009-06-19Post-release version bump to 0.6David Zeuthen1-2/+2
2009-06-19Bump version to 0.50.5David Zeuthen1-2/+2
2009-06-19Use a private D-Bus connectionDavid Zeuthen1-2/+5
Otherwise we run into problems in applications using multiple D-Bus bindings, e.g. both eggdbus and dbus-glib.
2009-06-16Genereate unique docbook ids for interface detailsYanko Kaneti1-8/+16
2009-05-27take a ref to the GCancellable when sending messages0.4David Zeuthen1-1/+2
2009-02-11fix up harsh language in commentDavid Zeuthen1-18/+22
Sorry about this Havoc.
2009-02-09post-release version bump to 0.4David Zeuthen1-2/+2
2009-02-08forgot to add egg_dbus_method_invocation_get_caller() to sections file0.3David Zeuthen1-0/+1
2009-02-07introduce the concept of complete typesDavid Zeuthen23-383/+2163
To generate proper docs, and in the future to simplify the struct handling, we introduce the concept of complete types. This means that we now know, at binding generation, the complete type of an argument or a property. Previously, we only knew the D-Bus signature. This change breaks existing eggdbus users. The org.gtk.EggDBus.Type annotation needs to be used for disamgiuation, e.g. if there are two defined structures with signature (sa{sv}), use <arg name="foo" type="(sa{sv})"> <annotation name="org.gtk.EggDBus.Type" value="Identity"/> </arg> <arg name="bar" type="a(sa{sv})"> <annotation name="org.gtk.EggDBus.Type" value="Array<Identity>"/> </arg> <arg name="baz" type="a{s(sa{sv})}"> <annotation name="org.gtk.EggDBus.Type" value="Dict<String,Subject>"/> </arg> where both Identity and Subject are structs with the signature (sa{sv}). The format of org.gtk.EggDBus.Type is straightforward, it's roughly like this type = Byte | Int16 | UInt16 | Int32 | UInt32 | Int64 | UInt64 | Double | Variant | String | ObjectPath | Signature | Struct<type0,type1,...,typeN> | Dict<type,type> | Array<type> | struct_type | enum_type | flag_type With this change we can know generate proper docbook docs. Previously we couldn't do that since we didn't know how to break down e.g. a(sa{sv}). Thus, we could only generate docs like this GetIdentities (OUT Array<Struct<String,Dict<String,Variant>>>) Now we can do GetIdentites (OUT Array<Identity>) which is much nicer. In addition, this paves the way for getting rid of the structural type equivalence mess in EggDBusStructure. The plan for doing this is roughly like this - Turn EggDBusStructure into a GInterface - Create a EggDBusAnonymousStructure subclass that implements this - Generated structure classes simply implement EggDBusStructure and derive directly from GObject - User provided structure wrappers just implement this interface - notably existing classes can do this; e.g. if you want to put some existing program on D-Bus just make the types you want to use as structs implement EggDBusStructure. - Make egg_dbus_message_extract_structure() take a GType for what structure type to extract to. Ditto for egg_dbus_variant_get_structure(). - Provide versions egg_dbus_message_extract_structure() and egg_dbus_message_append_structure() that takes function pointers instead of a EggDBusStructure pointer. - ditto for EggDBusVariant. - With this change we should be able to generate Plain Old C structures instead of GObject based ones. This may be desirable for some structs passed over D-Bus. Also use the proper type for enum/flag types in properties and signals. Add test cases for this too.
2009-02-04fix link to error domains inside interfacesDavid Zeuthen1-1/+1
2009-02-04if structs/enums are declared inside an <interface>, put the docs there tooDavid Zeuthen10-186/+365
2009-02-04add support for gtkdoc style links in docsDavid Zeuthen10-349/+778
Short explanation of how it works (needs to go into some docs) - com.example.Foo() links to the Foo() method on com.example - #com.example::Changed links to the Changed signal on com.example - #com.example:SomeProperty links to the SomeProperty property on com.example - #com.example links to the com.example interface - %com.example.Error.Failed links to the com.example.Error.Failed error - #com.example.Error links to the whole error enumeration com.example.* - %Car.Volvo links to the Volvo constant in the Car enumeration (ditto flags) - %Car links to the Car enumeration (ditto flags) So, yeah, pretty much like gtk-doc. Note that for generating gtk-doc comments, these things are translated into the namespace used, e.g. com.example.Foo() will be translated to my_namespace_example_foo if MyNamspaceExample is the GObject type for the com.example interface. Ditto for signals, properties, errors and enumerations.
2009-02-03generate docbook docs for structsDavid Zeuthen6-2/+158
2009-02-03correctly handle the no-flags-set edge case when generating docbook for enumsDavid Zeuthen1-4/+59
2009-02-03use proper prefix for refentry id of enumerationsDavid Zeuthen1-1/+1
2009-02-03generate Docbook docs for enumerations, flags and error domainsDavid Zeuthen8-4/+248
2009-02-03move docbook generator into separate source filesDavid Zeuthen6-773/+837
2009-02-03docbook generator: expand signature into human readable descriptionDavid Zeuthen1-7/+197
2009-02-02preliminary support for generating Docbook docs for D-Bus interfacesDavid Zeuthen7-65/+629
Right now it's very similar to spec-to-docbook.xsl written by Jon McCann and David Zeuthen. Since EggDBus introspection XML is a lot richer (flags, enums, error domains, structs etc.) there's still some room for improvement.
2009-02-02add stamp files and fix buildsystem so things like 'make -j4' workDavid Zeuthen3-66/+128
2009-01-26don't check for expat, we don't use itDavid Zeuthen1-14/+0
2009-01-21post-release version bump to 0.3David Zeuthen1-2/+2
2009-01-13fix up types for marshallers0.2David Zeuthen1-3/+14
Apparently the type is never checked for generated marshallers, only for built-in GObject marshallers such as VOID__STRING. That's why this bug only surfaced, for SessionAdded(ObjectPath path), when I started using eggdbus to client-side ConsoleKit bindings.
2009-01-13use the right index variableDavid Zeuthen1-2/+2
Experienced this bug when generating code for ConsoleKit.
2009-01-12add egg_dbus_method_invocation_get_caller()David Zeuthen2-0/+20
2009-01-06if NULL is passed for a string, then write the empty string to the wireDavid Zeuthen1-0/+6
2008-12-22add some notes about the need to do interop testingDavid Zeuthen1-1/+10
2008-12-22bump glib dependency to 2.19Ross Burton1-1/+1
The test suite uses g_assert_no_error() which is new in 2.19.0.
2008-12-21post-release version bump to 0.2David Zeuthen1-2/+2
Note, 0.1 was not really a release (e.g. no tarballs).
2008-12-21revise TODO list0.1David Zeuthen1-38/+26
2008-12-21remove python server; it's no longer neededDavid Zeuthen1-420/+0
2008-12-21fix make distcheckDavid Zeuthen1-0/+1
2008-12-21require that users define EGG_DBUS_I_KNOW_API_IS_SUBJECT_TO_CHANGEDavid Zeuthen3-1/+6
2008-12-21update docs with some sections we want in the futureDavid Zeuthen1-0/+28
2008-12-21drop the _invoke_ part of generated methods; it's clear it's a D-Bus alreadyDavid Zeuthen8-676/+676
2008-12-21make sure all generated _sync() methods are the first ones listedDavid Zeuthen2-30/+54
This makes it a bit easier to look at the generated gtk-doc output.
2008-12-21fix up -sections.txt fileDavid Zeuthen4-48/+26
2008-12-21add docs for EggDBusVariantDavid Zeuthen6-56/+690
2008-12-21add docs for EggDBusMethodInvocation and add _valist() variantsDavid Zeuthen3-20/+121
2008-12-21add docs for EggDBusInterfaceDavid Zeuthen5-28/+199
2008-12-21add docs for EggDBusMessageDavid Zeuthen5-30/+538
2008-12-21minor EggDBusNameTracker cleanupsDavid Zeuthen1-19/+14
2008-12-21revise interface proxy docsDavid Zeuthen1-6/+6
2008-12-20fix up docs for EggDBusInterfaceProxyDavid Zeuthen2-3/+35
2008-12-20fix up docs for EggDBusObjectProxyDavid Zeuthen2-4/+120
2008-12-20fix up EggDBusConnection docsDavid Zeuthen3-55/+157
2008-12-20remove remaining variant tests; not needed now that our server is in CDavid Zeuthen2-236/+4
2008-12-20bring back test_variant_return()David Zeuthen4-54/+204