Re: GVariant for prez!

Havoc Pennington wrote:
Reading the gvariant and gbus source btw, this would be somewhat
misleading at the moment; gvariant's type system is a dbus superset,
and its serialization format is a proposed "dbus v2" format that may
or may not ever get used by dbus. (One of the main barriers being that
nobody afaik is working on adding feature negotiation or protocol v2
support to libdbus yet, so there would not be a bus daemon or a
least-common-denominator / plain-C / zero-dependencies library
supporting the v2 protocol.)

This is true.

GVariant has nullable ("maybe") types which were a proposed extension to DBus some time ago but never materialised. iirc, Havoc, you had a favourable opinion of this extension but wasn't sure exactly how we'd handle the compatibility issues that would come up (also: didn't want to do the work yourself, and nobody else stepped up).

There are also some other things that make GVariant a superset of DBus:

  - there is no restriction on the size of values that GVariant can hold

  - no restriction on the complexity (in terms of length or levels of
    nesting) of types that GVariant can represent

  - dictionary entries in GVariant can stand freely (ie: they are not
    restricted to being contained in an array).

  - maybe some other minor things of this flavour that are slipping my
    mind at the moment.

About the "protocol version 2" thing, I think we had a discussion about it on the dbus list once and it caught some flack but most people ended up being more or less OK with the idea, but it came down to nobody willing to do the work again.


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]