GNOME Bugzilla – Bug 662148
[regression] build failure in git/master: totem-rotation-plugin.vala:37.5-37.34:
Last modified: 2011-11-07 09:28:47 UTC
I just tried rebuilding the git/master totem (this worked a few days ago). The build now fails with: make[5]: Entering directory `/home/ronis/Project/notar/GNOME/garnome/svn/totem/work/main.d/totem-git/src/plugins/rotation' VALAC librotation_la_vala.stamp ** (valac:4941): CRITICAL **: vala_code_node_get_attribute_string: assertion `self != NULL' failed [snip] ** (valac:4941): CRITICAL **: vala_gir_parser_is_container: assertion `sym != NULL' failed ** (valac:4941): CRITICAL **: vala_gir_parser_is_container: assertion `sym != NULL' failed ** (valac:4941): CRITICAL **: vala_gir_parser_add_symbol_to_container: assertion `sym != NULL' failed totem-rotation-plugin.vala:37.5-37.34: error: Type and/or accessors of overriding property `RotationPlugin.object' do not match overridden property `Peas.Activatable.object'. public weak GLib.Object object { get; construct; } ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Compilation failed: 1 error(s), 0 warning(s)
The code for the rotation plugin hasn't changed in a couple of months. I suspect you've updated your version of valac. What version of valac are you running now?
According to valac --version Vala 0.14.0 I upgraded the vala tarball yesterday.
The error has been fixed on master. I didn't get time to investigate the assertion failure spew from valac, though it seems to be harmless. commit 4632553c1e76e356876140ddc6973129048eeb91 Author: Philip Withnall <philip@tecnocode.co.uk> Date: Sun Oct 23 00:15:37 2011 +0100 plugins: Fix Vala plugins for valac 0.14.0 The Vala plugins were using incorrect overrides of an abstract property of Peas.Activatable which was causing compilation to fail with valac 0.14.0. This fixes that, and bumps our Vala dependency to 0.14.0 (since some quick testing with valac 0.12.x didn't work due to GIR parsing problems). Closes: bgo#662148 configure.in | 2 +- src/plugins/rotation/totem-rotation-plugin.vala | 2 +- .../sample-vala/totem-sample-vala-plugin.vala | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-)
*** Bug 662567 has been marked as a duplicate of this bug. ***
(In reply to comment #0 from bug #662567) > I'm building in a gnome 3.2.[01] environment. The build dies with: *snip* > totem-rotation-plugin.c:911:7: error: 'PeasActivatableInterface' has no member > named 'get_object' > totem-rotation-plugin.c:912:7: error: 'PeasActivatableInterface' has no member > named 'set_object' It looks like your libpeas-1.0.vapi file is missing the “[NoAccessorMethod]” annotation. That's odd, because the version of that file which comes with Vala 0.14.0[1] (which is what I'm using) has that annotation. Could you make sure you're using the correct version of libpeas-1.0.vapi to build against please? Thanks. [1]: http://git.gnome.org/browse/vala/tree/vapi/libpeas-1.0.vapi?id=0.14.0
I diffed http://git.gnome.org/browse/vala/tree/vapi/libpeas-1.0.vapi?id=0.14.0 against my copy. They are identical.
Ah, I'd forgotten that we use the Peas-1.0.gir file instead of the .vapi file. Regardless, this compilation failure is caused because Vala 0.14.0 doesn't include the fix for bug #658006 (I was testing with a more recent version of Vala master, which is why I didn't catch the problem with my original patch). I've bumped our Vala dependency to 0.14.0.22-0743, which is the first version containing the fix to bug #658006. commit 0eacdd766bb7ee504a486872458679dd8c8df191 Author: Philip Withnall <philip@tecnocode.co.uk> Date: Mon Oct 24 21:18:11 2011 +0100 build: Bump our Vala dependency to 0.14.0.22-0743 We require the fix to bgo#658006 to be able to compile the rotation and sample-vala plugins. Closes: bgo#662148 (again) configure.in | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)
There is only one problem - version 0.14.0.22-0743 is in fact a development snapshot of vala-0.16, therefore you'll need an unstable vala to compile a stable totem plugin...
I've asked for the relevant commits to be cherry-picked for the 0.14.1 release. That might require Totem's Vala dependency's version number to be updated, but that can be done later. See: bug #658006.