new module proposal: gobject-introspection

GObject Introspection in the bindings set

I'd like to propose GObject Introspection as part
of the bindings release set.  Introspection is an infrastructure tool
for both applications and language bindings.
For more background, there's a longer description of what
introspection does here:

External Dependencies: Introspection currently depends on Python 2.5
or later for the developer tools *only*.

Adoption: We have several binding consumers of introspection
(seed/gjs, pygi, sbank, jgir) in various stages.  We've made a good
amount of progress in allowing Vala to be rebased on introspection as
well (though there is one major blocker still left for that).

Gnome-shell currently depends on introspection as a way to bind
mutter core.

GNOME-ness:  We feel we're fairly thoroughly GNOMEy =)

3.0 readiness: Relevant in the sense that introspection is a
dependency of gnome-shell which we would like to brand as GNOME 3.
We don't link to any GTK+ so there's no GSEAL etc. to worry about.

License: LGPL 2.1+, a bit of BSD code here and there

Now, on to concerns/issues.

1) gir-repository should be dead - people please stop depending on it.
It's pretty high priority for me to get gnome-shell switched over to
the GTK+ introspection built stack.
2) API/ABI stability.  I'm going to try really hard on this.  If we end
up doing nested namespaces for Vala some things will get harder,
but we'll see.
3) Will this conflict with the eventual goal of getting introspection
into GLib?  My feeling here is that we can preserve typelib compatibility,
potentially only the libgirepository API would change.

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