GNOME Bugzilla – Bug 686795
Replace static PollFD and IOChannel bindings with GI
Last modified: 2013-03-25 07:53:16 UTC
In the same spirit as bug 686443 (and the meta-bug 685373) we want to drop the static _glib bindings of PollFD and IOChannel. This currently depends on GLib to box GPollFD, I'll file a separate bug for this.
Created attachment 227154 [details] [review] Remove static PollFD bindings This gets rid of the static PollFD bindings, and with it, the remainders of gi/_glib/pygsource.[hc]. However, this depends on the glib patch in https://bugzilla.gnome.org/show_bug.cgi?id=686797, unless we find a workaround to box it in pygobject when running with older glib. But this isn't really that urgent, we can wait until the next glib release.
Comment on attachment 227154 [details] [review] Remove static PollFD bindings Setting to needs-work, as at the minimum, this needs to add a bumping of glib_required_version in configure.ac.
I now pushed some annotation fixes into GLib which fix introspection for GIOChannel. Bug 686797 was also resolved in that glib would not box GPollFD, we'd need to do it in pygobject; at least for now. I have a patch to drop most of the static GIOChannel bindings now, and wrote bug-for-bug compatible overrides instead. I need to clean those up now for the updated GPollFD patch.
(Most of) static IOChannel bindings removed in trunk: http://git.gnome.org/browse/pygobject/commit/?id=15e717ce2c2
Created attachment 227975 [details] [review] Remove static PollFD bindings For the record, current version rebased against trunk, mostly for avoiding to lose it accidentally. This still doesn't work, as we either need to box PollFD in glib or get rid of it entirely. Hacking around the gtype not existing in the .gir is too brittle/wrong, I'd rather keep the static bindings until then.
Created attachment 228111 [details] [review] Remove static PollFD bindings Updated to current git head. Now the glib patch landed, so this is unblocked. But we need to wait for a glib release to properly set the minimal glib dependency (glib apparently doesn't use post-release version bumping).
Martin, The target milestone for this is set to 3.8, is this ok to put in now or should we wait until 3.10?
I'm a bit torn here, but my gut feeling is we should move this to 3.10. Otherwise we would have to bump the glib and gobject-introspection dependencies from 2.34 to 2.35.x, and I really like pygobject work with the current stable releases. I don't think there is a particular hurry to land this, or is this blocking any of your other "remove static bindings" work?
(In reply to comment #8) > I don't think there is a particular hurry to land this, or is this > blocking any of your other "remove static bindings" work? Nope. I have just been marking a few bugs as 3.8 and this was showing up in the search result afterwards :)
Comment on attachment 228111 [details] [review] Remove static PollFD bindings 3.8 is branched away now, and in master (which is 3.9.x now) I bumped the glib and gi dependencies, so this can go in now.