Hello folks, Introspection has finally been unmasked in the tree![1] This means that most of the issues with introspection have either been ironed out, or can be handled.
Note that introspection was already being selectively unmasked on newer ebuilds using profiles/base/package.use.mask for quite a few months for this migration. This means that for most ~arch users this changes almost nothing, except that a ton of packages just got USE=introspection visible. For stable users, this changes nothing as well. The old package.use.mask whitelist of ebuilds has now been converted into a blacklist consisting of ebuilds that went stable before the whitelist was created. As those old stable ebuilds get removed due to age, the blacklist will winnow down and go away completely. For a list of some of the issues we had (and some minor problems that we still have) w.r.t. introspection, please see the following bugs: https://bugs.gentoo.org/show_bug.cgi?id=324989 https://bugs.gentoo.org/show_bug.cgi?id=350093 https://bugs.gentoo.org/show_bug.cgi?id=365413 A side-note that we've wanted to get out to all devs is that everyone should *always* use IUSE="+introspection". The reason for this is that the .gir and .typelib data that is installed is trivial compared to the rest of the package, takes just a few secs to generate, and is necessary for Python, Vala, and (in future) all other bindings. Also, if we don't do this, enabling USE=introspection on one package will cause the entire dependency tree all the way down to glib to be recompiled just for a few small 20KB files. Cheers! 1. Special thanks to pquery for making it easy for me to generate the package.use.mask blacklist. Hopefully I haven't made any human errors while generating the list :S -- ~Nirbheek Chauhan Gentoo GNOME+Mozilla Team