Bug#846404: Missing dependency on glib introspection data
Andrey Gursky
andrey.gursky at e-mail.ua
Thu Dec 1 00:52:56 UTC 2016
Package: meld
Version: 3.16.3-1
Severity: normal
Tags: patch
Dear Maintainer,
after update 3.16.2 --> 3.16.3 Meld refused to start:
vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
Traceback (most recent call last):
File "/usr/bin/meld", line 281, in <module>
setup_glib_logging()
File "/usr/bin/meld", line 264, in setup_glib_logging
GLib.log_set_handler(log_domain, level_flag, log_adapter, None)
File "/usr/lib/python2.7/dist-packages/gi/overrides/__init__.py", line 39, in __getattr__
return getattr(self._introspection_module, name)
File "/usr/lib/python2.7/dist-packages/gi/module.py", line 137, in __getattr__
self.__name__, name))
AttributeError: 'gi.repository.GLib' object has no attribute 'log_set_handler'
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
I've investigated this further. It turns out, the call to
log_set_handler() is new [1]. But this being from the very beginning
glib function is not introspectable. A new function
g_log_set_handler_full() has been added in glib 2.46 [2]. For now meld
package doesn't track the dependency on gir1.2-glib-2.0, which can be
solved by the patch:
diff -rupN debian.orig/control debian/control
--- debian.orig/control 2016-09-26 15:18:27.000000000 +0200
+++ debian/control 2016-12-01 01:45:53.742123583 +0100
@@ -29,6 +29,7 @@ Depends: ${python:Depends},
libgtk-3-0 (>= 3.14),
python-gi (>= 3.8),
libgtksourceview-3.0-1 (>= 3.14),
+ gir1.2-glib-2.0 (>= 1.46),
gir1.2-gtksource-3.0 (>= 3.14),
python-gi-cairo,
libcanberra-gtk3-module,
diff -rupN debian.orig/control.in debian/control.in
--- debian.orig/control.in 2016-07-13 18:29:28.000000000 +0200
+++ debian/control.in 2016-12-01 01:41:32.154127932 +0100
@@ -25,6 +25,7 @@ Depends: ${python:Depends},
libgtk-3-0 (>= 3.14),
python-gi (>= 3.8),
libgtksourceview-3.0-1 (>= 3.14),
+ gir1.2-glib-2.0 (>= 1.46),
gir1.2-gtksource-3.0 (>= 3.14),
python-gi-cairo,
libcanberra-gtk3-module,
It's confusing, but 1 in 1.46 is not a typo, since glib introspection
data is packaged not in the glib package.
Regards,
Andrey
[1] https://git.gnome.org/browse/meld/commit/?id=137154ed2f6696ef35d5a81a69faade326d8b686
[2] https://git.gnome.org/browse/glib/commit/?id=2471d9cf8697b07d4e86b6f143eda7b779be02a9
More information about the pkg-gnome-maintainers
mailing list