After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 723009 - build fails with newest vala & gtk-vnc
build fails with newest vala & gtk-vnc
Status: RESOLVED FIXED
Product: gtk-vnc
Classification: Other
Component: general
0.5.x
Other Linux
: Normal blocker
: ---
Assigned To: gtk-vnc-maint
gtk-vnc-maint
Depends on:
Blocks:
 
 
Reported: 2014-01-26 10:49 UTC by Aaron Paden
Modified: 2014-04-04 18:38 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
fix vala method call that throws error (3.89 KB, patch)
2014-01-28 14:07 UTC, Luca Bruno
committed Details | Review

Description Aaron Paden 2014-01-26 10:49:25 UTC
Got the following build errors in jhbuild:

vnc-display.vala:101.24-101.30: error: Argument 1: Cannot convert from `Vnc.Display' to `Gtk.Widget'
        window.remove (display);
                       ^^^^^^^
vnc-display.vala:103.9-103.23: error: Return: Cannot convert from `Vnc.Display' to `Gtk.Widget'
        return display;
        ^^^^^^^^^^^^^^^
vnc-display.vala:114.16-114.33: error: The name `get_pixbuf' does not exist in the context of `Vnc.Display'
        return display.get_pixbuf ();
               ^^^^^^^^^^^^^^^^^^
vnc-display.vala:29.21-29.27: error: Argument 1: Cannot convert from `Vnc.Display' to `Gtk.Widget'
        window.add (display);
                    ^^^^^^^
vnc-display.vala:30.9-30.23: error: The name `realize' does not exist in the context of `Vnc.Display'
        display.realize ();
        ^^^^^^^^^^^^^^^

Probably something due to changes in vala. A few other packages were also broken.
Comment 1 Zeeshan Ali 2014-01-27 01:57:14 UTC
(In reply to comment #0)
> Got the following build errors in jhbuild:
> 
> vnc-display.vala:101.24-101.30: error: Argument 1: Cannot convert from
> `Vnc.Display' to `Gtk.Widget'
>         window.remove (display);
>                        ^^^^^^^
> vnc-display.vala:103.9-103.23: error: Return: Cannot convert from `Vnc.Display'
> to `Gtk.Widget'
>         return display;
>         ^^^^^^^^^^^^^^^
> vnc-display.vala:114.16-114.33: error: The name `get_pixbuf' does not exist in
> the context of `Vnc.Display'
>         return display.get_pixbuf ();
>                ^^^^^^^^^^^^^^^^^^
> vnc-display.vala:29.21-29.27: error: Argument 1: Cannot convert from
> `Vnc.Display' to `Gtk.Widget'
>         window.add (display);
>                     ^^^^^^^
> vnc-display.vala:30.9-30.23: error: The name `realize' does not exist in the
> context of `Vnc.Display'
>         display.realize ();
>         ^^^^^^^^^^^^^^^
> 
> Probably something due to changes in vala. A few other packages were also
> broken.

Changes in vala bindings for gtk-vnc more like but yeah.
Comment 2 Michael Catanzaro 2014-01-27 04:00:32 UTC
FYI, a few more:

/home/mcatanzaro/jhbuild/src/gnome-boxes/src/box-config.vala: In function ‘boxes_box_config_load_property’:
/home/mcatanzaro/jhbuild/src/gnome-boxes/src/box-config.vala:132:10: error: incompatible types when assigning to type ‘GValue’ from type ‘gchar *’
                 value = keyfile.get_string (group, property_name);
          ^
/home/mcatanzaro/jhbuild/src/gnome-boxes/src/box-config.vala:134:10: error: incompatible types when assigning to type ‘GValue’ from type ‘guint64’
                 value = keyfile.get_uint64 (group, property_name);
          ^
/home/mcatanzaro/jhbuild/src/gnome-boxes/src/box-config.vala:136:10: error: incompatible types when assigning to type ‘GValue’ from type ‘gint64’
                 value = keyfile.get_int64 (group, property_name);
          ^
/home/mcatanzaro/jhbuild/src/gnome-boxes/src/box-config.vala:138:10: error: incompatible types when assigning to type ‘GValue’ from type ‘gboolean’
                 value = keyfile.get_boolean (group, property_name);
Comment 3 Zeeshan Ali 2014-01-28 13:16:22 UTC
<zeenix> Lethalman: shall i just re-assign that to you?
<zeenix> you -> vala
<Lethalman> zeenix, yes please
Comment 4 Luca Bruno 2014-01-28 14:07:40 UTC
Created attachment 267406 [details] [review]
fix vala method call that throws error

This should fix the second issue, but I'm not sure about the reporter issues. Are you able to cook a simple test case?
Comment 5 Zeeshan Ali 2014-01-28 14:37:44 UTC
(In reply to comment #4)
> Created an attachment (id=267406) [details] [review]
> fix vala method call that throws error
> 
> This should fix the second issue,

It does.

> but I'm not sure about the reporter issues.
> Are you able to cook a simple test case?

jhbuild build gnome-boxes? :)
Comment 6 Zeeshan Ali 2014-01-28 14:40:26 UTC
Ah gtk-vnc provides its own vapi so that is not vala's fault then.
Comment 7 Daniel P. Berrange 2014-01-28 14:45:40 UTC
I'm not seeing why this is reported as a gtk-vnc error. The code in question is auto-generated by the vapigen from the introspection data, so I'd say the flaw is the code generator
Comment 8 Zeeshan Ali 2014-01-28 15:22:09 UTC
(In reply to comment #7)
> I'm not seeing why this is reported as a gtk-vnc error. The code in question is
> auto-generated by the vapigen from the introspection data, so I'd say the flaw
> is the code generator

Since the binding is generated and shipped by gtk-vnc, first thing would be for gtk-vnc maintainer to check where exact the issue is. :)
Comment 9 Zeeshan Ali 2014-01-28 15:31:56 UTC
(In reply to comment #8)
> (In reply to comment #7)
> > I'm not seeing why this is reported as a gtk-vnc error. The code in question is
> > auto-generated by the vapigen from the introspection data, so I'd say the flaw
> > is the code generator
> 
> Since the binding is generated and shipped by gtk-vnc, first thing would be for
> gtk-vnc maintainer to check where exact the issue is. :)

And it turns out that its the GIR that is wrongly generated:

   <class name="Display"
           c:symbol-prefix="display"
           c:type="VncDisplay"
           parent="GObject.InitiallyUnowned"

Maybe some missing gir annotations? or deps?
Comment 10 Daniel P. Berrange 2014-01-28 15:38:07 UTC
commit 423495e6e1cbf5936639e6b68c6cefe4fdadd368
Author: Daniel P. Berrange <berrange@redhat.com>
Date:   Tue Jan 28 15:37:16 2014 +0000

    Add missing dep on Gtk introspection GIR
    
    https://bugzilla.gnome.org/show_bug.cgi?id=723009
    
    Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
Comment 11 Zeeshan Ali 2014-01-28 16:59:39 UTC
(In reply to comment #10)
> commit 423495e6e1cbf5936639e6b68c6cefe4fdadd368
> Author: Daniel P. Berrange <berrange@redhat.com>
> Date:   Tue Jan 28 15:37:16 2014 +0000
> 
>     Add missing dep on Gtk introspection GIR
> 
>     https://bugzilla.gnome.org/show_bug.cgi?id=723009
> 
>     Signed-off-by: Daniel P. Berrange <berrange@redhat.com>

Nope the gir still shows wrong parent.
Comment 12 Luca Bruno 2014-01-28 19:35:38 UTC
commit db462e6f919da758fbb2f4e7b3cbbf2897ec852b
Author: Luca Bruno <lucabru@src.gnome.org>
Date:   Tue Jan 28 20:34:47 2014 +0100

    Fix regression in method calls that throw errors with Value target type
    
    Related to bug 723009
Comment 13 Zeeshan Ali 2014-01-29 16:15:38 UTC
Aaron and Michael, could you guys see if Daniel's patch fixed the build for you? It didn't work for me for some reason.
Comment 14 Aaron Paden 2014-01-29 22:31:33 UTC
Still getting the same error.

I'm also getting a couple thousand lines like this:

/home/aaron/Documents/progs/gnome/gnome-boxes/libgd/<stdin>:1: syntax error, unexpected LONG in '# 1 "<stdin>"' at 'long'

I'm not sure if this was happening the other day or not. I might not have noticed, because it doesn't halt the build.
Comment 15 Michael Catanzaro 2014-01-29 23:29:12 UTC
It works for me

(In reply to comment #14)
> /home/aaron/Documents/progs/gnome/gnome-boxes/libgd/<stdin>:1: syntax error,
> unexpected LONG in '# 1 "<stdin>"' at 'long'

Stuff like that has been happening for every module that uses gobject-introspection for roughly a month now.
Comment 16 Aaron Paden 2014-01-31 06:36:02 UTC
Huh. Build Succeeded today for me.
Comment 17 Aaron Paden 2014-04-04 18:38:31 UTC
I'm going to go ahead and close this. Gnome 3.12 is out now, so obviously they've got the build working.