Bug 29956 - Add basic introspection for the Mixins
Summary: Add basic introspection for the Mixins
Status: RESOLVED FIXED
Alias: None
Product: Telepathy
Classification: Unclassified
Component: tp-glib (show other bugs)
Version: git master
Hardware: Other All
: medium normal
Assignee: Travis Reitter
QA Contact: Telepathy bugs list
URL:
Whiteboard: review+
Keywords: patch
Depends on:
Blocks: 29971
  Show dependency treegraph
 
Reported: 2010-09-01 17:08 UTC by Travis Reitter
Modified: 2010-09-02 08:25 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments

Description Travis Reitter 2010-09-01 17:08:36 UTC
I've got an early test suite for Folks that uses derivative of the (C-based) tp-glib test library classes. In order to write tests in other languages (in this case, Vala), I need to be able to introspect the test library.

The test library uses the mixins, so in order to be introspected, the basic structure symbols need to be exposed. This branch exposes the bare minimum to allow that (since the other functions wouldn't be terribly useful in introspected languages):

http://git.collabora.co.uk/?p=user/treitter/telepathy-glib.git;a=shortlog;h=refs/heads/mixin-introspection
Comment 1 Simon McVittie 2010-09-02 03:46:34 UTC
(Please put the patch keyword on bugs with patches so I'm more likely to notice them.)

Looks fair enough. Am I right in thinking that this results in the structs, only, appearing in the GIR?

Quite a lot of the mixin API is entirely feasible to introspect, so if we're going to whitelist the files, we should clone this bug for "do it properly". I'll do that.
Comment 2 Travis Reitter 2010-09-02 08:25:03 UTC
(In reply to comment #1)
> (Please put the patch keyword on bugs with patches so I'm more likely to notice
> them.)

Sorry - will again next time.

> Looks fair enough. Am I right in thinking that this results in the structs,
> only, appearing in the GIR?

Yes. Much of the GroupMixin functions were automatically recognized until I (skip)ped them.

Most of the functions for the PresenceMixin and ContactsMixin were assumed to be static since there were no get_type() function (I believe -- I tried re-typing the GObject* and GObjectClass* opening arguments with annotations, and that wasn't enough to make them part of a coherent interface definition).

> Quite a lot of the mixin API is entirely feasible to introspect, so if we're
> going to whitelist the files, we should clone this bug for "do it properly".
> I'll do that.

Thanks. I'll keep that bug in mind as I expand the test suite, since we may need to use more of their features.

Pushed to master.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.