GNOME Bugzilla – Bug 687488
Remove DynamicGLibModule and DynamicGObjectModule
Last modified: 2012-11-06 08:14:51 UTC
These classes live in gi/module.py and handle layering of the static bindings on top of the introspection bindings for GLib and GObject. The layering currently works by the static bindings taking precedence over anything brought in through introspection or override modules. As large chunks of the static bindings move into overrides, these dynamic modules will no longer be necessary and should be removed in favor of the override files explicitly pulling things in from the static bindings so we have better control of how the layer works.
I agree, that will make the structure quite a bit simpler, and should also bring some performance improvement due to having one less layer of indirection. Do you want to work on that?
Sure. This task should be easy enough once bug 686765 and bug 687487 are completed.
Created attachment 228207 [details] [review] Remove DynamicGLibModule and DynamicGObjectModule Move final bits of _glib static binding imports directly into the GLib override. Change _glib/option use the .so directly rather than the staged variables in _glib/__init__.py. Remove DynamicGLibModule and DynamicGObjectModule and update unittest.
Comment on attachment 228207 [details] [review] Remove DynamicGLibModule and DynamicGObjectModule This is looking good, please commit. Thanks a lot! This patch feels like a reward after a rather long cleanup session! :-)
The following fix has been pushed: 2cbb54e Remove DynamicGLibModule and DynamicGObjectModule
Created attachment 228211 [details] [review] Remove DynamicGLibModule and DynamicGObjectModule Move final bits of _glib static binding imports directly into the GLib override. Change _glib/option use the .so directly rather than the staged variables in _glib/__init__.py. Remove DynamicGLibModule and DynamicGObjectModule and update unittest.