Solved Glade loading issues

Not sure, whether this really fits the topic... I've got an issue with glade (latest version, also tried compiling from ports), which I can reproduce on multiple machines and I'm wondering whether I should file a bug or if it's an issue on my end.

Whenever I load a previously created glade file, I only get a screwed up project - all properties, all settings are lost. Labels have lost their text, boxes have lost their cell count - they actually get doubled. I can create content and save it and it gets saved alright, as proven by checking the resulting file. But once I close glade, reopen, and load the file, glade fails to interpret the contents correctly.

Simple example file:
Code:
<?xml version="1.0" encoding="UTF-8"?>
<!-- Generated with glade 3.22.1 -->
<interface>
  <requires lib="gtk+" version="3.20"/>
  <object class="GtkApplicationWindow">
    <property name="can_focus">False</property>
    <child>
      <placeholder/>
    </child>
    <child>
      <object class="GtkBox">
        <property name="visible">True</property>
        <property name="can_focus">False</property>
        <child>
          <placeholder/>
        </child>
        <child>
          <object class="GtkLabel">
            <property name="visible">True</property>
            <property name="can_focus">False</property>
            <property name="label" translatable="yes">test</property>
          </object>
          <packing>
            <property name="expand">False</property>
            <property name="fill">True</property>
            <property name="position">1</property>
          </packing>
        </child>
        <child>
          <placeholder/>
        </child>
      </object>
    </child>
  </object>
</interface>

Loading this file results in:
Screenshot_2021-11-14_15-51-01.png

The label has lost its text, box suddenly has 6 cells instead of 3 as before. I also realize, that the vertical layout got lost - apparently already when it was saved.

Is this a known issue with glade? Google did not produce any helpful results and I couldn't find any relevant posts on this forum either? When I start glade, I see a bunch of critical error messages on the console:
Code:
GladeUI-Message: 15:50:31.726: 1 missing displayable value for GtkWidget::events
GladeUI-Message: 15:50:31.727: 5 missing displayable value for GtkWidget::AtkObject::accessible-role
GladeUI-Message: 15:50:31.830: 1 missing displayable value for GtkEntry::input-purpose
GladeUI-Message: 15:50:31.830: 2 missing displayable value for GtkEntry::input-hints
GladeUI-Message: 15:50:31.997: No displayable values for property GtkMenu::anchor-hints
GladeUI-Message: 15:50:32.059: 5 missing displayable value for GtkAboutDialog::license-type
GladeUI-Message: 15:50:32.176: 3 missing displayable value for GtkCellRendererText::underline
GladeUI-Message: 15:50:32.279: No displayable values for property HdySqueezer::transition-type
GladeUI-Message: 15:50:32.284: No displayable values for property HdyViewSwitcher::policy
GladeUI-Message: 15:50:32.286: No displayable values for property HdyViewSwitcherBar::policy
GladeUI-Message: 15:50:32.318: No displayable values for property VteTerminal::backspace-binding
GladeUI-Message: 15:50:32.318: No displayable values for property VteTerminal::cursor-blink-mode
GladeUI-Message: 15:50:32.318: No displayable values for property VteTerminal::cursor-shape
GladeUI-Message: 15:50:32.318: No displayable values for property VteTerminal::delete-binding
GladeUI-Message: 15:50:32.318: No displayable values for property VteTerminal::text-blink-mode
GladeUI-Message: 15:50:32.456: No displayable values for property WebKitWebView::automation-presentation-type
GladeUI-Message: 15:50:32.456: No displayable values for property WebKitWebView::camera-capture-state
GladeUI-Message: 15:50:32.456: No displayable values for property WebKitWebView::microphone-capture-state
GladeUI-Message: 15:50:32.456: No displayable values for property WebKitWebView::display-capture-state
GladeUI-Message: 15:50:32.465: No displayable values for property WebKitSettings::hardware-acceleration-policy
GladeUI-Message: 15:50:32.465: Glade needs artwork; a default icon will be used for the following classes:
        WebKitWebView   needs an icon named 'widget-webkit2gtk-webview'
        HdyDeck needs an icon named 'widget-libhandy-deck'
        HdyViewSwitcherTitle    needs an icon named 'widget-libhandy-viewswitchertitle'
        HdySqueezer     needs an icon named 'widget-libhandy-squeezer'
        HdyStatusPage   needs an icon named 'widget-libhandy-statuspage'
        HdyCarouselIndicatorLines       needs an icon named 'widget-libhandy-carouselindicatorlines'
        HdyTitleBar     needs an icon named 'widget-libhandy-titlebar'
        HdyLeaflet      needs an icon named 'widget-libhandy-leaflet'
        HdyPreferencesPage      needs an icon named 'widget-libhandy-preferencespage'
        HdyAvatar       needs an icon named 'widget-libhandy-avatar'
        HdyHeaderGroup  needs an icon named 'widget-libhandy-headergroup'
        HdyFlap needs an icon named 'widget-libhandy-flap'
        HdyViewSwitcher needs an icon named 'widget-libhandy-viewswitcher'
        HdySearchBar    needs an icon named 'widget-libhandy-searchbar'
        HdyWindowHandle needs an icon named 'widget-libhandy-windowhandle'
        HdySwipeGroup   needs an icon named 'widget-libhandy-swipegroup'
        HdyComboRow     needs an icon named 'widget-libhandy-comborow'
        HdyWindow       needs an icon named 'widget-libhandy-window'
        HdyKeypad       needs an icon named 'widget-libhandy-keypad'
        HdyExpanderRow  needs an icon named 'widget-libhandy-expanderrow'
        HdyPreferencesWindow    needs an icon named 'widget-libhandy-preferenceswindow'
        HdyClamp        needs an icon named 'widget-libhandy-clamp'
        HdyCarousel     needs an icon named 'widget-libhandy-carousel'
        HdyViewSwitcherBar      needs an icon named 'widget-libhandy-viewswitcherbar'
        HdyApplicationWindow    needs an icon named 'widget-libhandy-applicationwindow'
        GThemedIcon     needs an icon named 'widget-gtk-themedicon'
        HdyActionRow    needs an icon named 'widget-libhandy-actionrow'
        GtkApplicationWindow    needs an icon named 'widget-gtk-applicationwindow'
        HdyPreferencesRow       needs an icon named 'widget-libhandy-preferencesrow'
        HdyHeaderBar    needs an icon named 'widget-libhandy-headerbar'
        HdyCarouselIndicatorDots        needs an icon named 'widget-libhandy-carouselindicatordots'
        WebKitSettings  needs an icon named 'widget-webkit2gtk-settings'
        HdyPreferencesGroup     needs an icon named 'widget-libhandy-preferencesgroup'
GladeUI-Message: 15:50:32.494: No DevHelp installed on your system, devhelp feature will be disabled.

(glade:89651): GLib-GObject-CRITICAL **: 15:50:32.868: g_param_spec_internal: assertion 'g_param_spec_is_valid_name (name)' failed

(glade:89651): GLib-GObject-CRITICAL **: 15:50:32.868: validate_pspec_to_install: assertion 'G_IS_PARAM_SPEC (pspec)' failed

(glade:89651): GLib-GObject-CRITICAL **: 15:50:32.868: g_object_new_is_valid_property: object class 'GladeWidget' has no property named 'composite'

(glade:89651): GladeUI-CRITICAL **: 15:50:32.869: glade_property_read: assertion 'GLADE_IS_PROJECT (project)' failed

(glade:89651): GladeUI-CRITICAL **: 15:50:32.870: glade_project_load_cancelled: assertion 'GLADE_IS_PROJECT (project)' failed

(glade:89651): GladeUI-CRITICAL **: 15:50:32.870: glade_project_load_cancelled: assertion 'GLADE_IS_PROJECT (project)' failed

(glade:89651): GladeUI-CRITICAL **: 15:50:32.870: glade_project_load_cancelled: assertion 'GLADE_IS_PROJECT (project)' failed

(glade:89651): GladeUI-CRITICAL **: 15:50:32.870: glade_project_load_cancelled: assertion 'GLADE_IS_PROJECT (project)' failed

(glade:89651): GladeUI-CRITICAL **: 15:50:32.870: glade_project_load_cancelled: assertion 'GLADE_IS_PROJECT (project)' failed

(glade:89651): GladeUI-CRITICAL **: 15:50:32.870: glade_project_new_widget_name: assertion 'GLADE_IS_PROJECT (project)' failed

(glade:89651): GLib-GObject-CRITICAL **: 15:50:32.870: g_object_new_is_valid_property: object class 'GladeFixed' has no property named 'composite'

(glade:89651): GladeUI-CRITICAL **: 15:50:32.870: glade_property_read: assertion 'GLADE_IS_PROJECT (project)' failed

(glade:89651): GladeUI-CRITICAL **: 15:50:32.870: glade_property_read: assertion 'GLADE_IS_PROJECT (project)' failed

(glade:89651): GladeUI-CRITICAL **: 15:50:32.870: glade_project_load_cancelled: assertion 'GLADE_IS_PROJECT (project)' failed

(glade:89651): GladeUI-CRITICAL **: 15:50:32.870: glade_project_load_cancelled: assertion 'GLADE_IS_PROJECT (project)' failed

(glade:89651): GladeUI-CRITICAL **: 15:50:32.870: glade_project_load_cancelled: assertion 'GLADE_IS_PROJECT (project)' failed

(glade:89651): GladeUI-CRITICAL **: 15:50:32.870: glade_project_load_cancelled: assertion 'GLADE_IS_PROJECT (project)' failed

(glade:89651): GladeUI-CRITICAL **: 15:50:32.870: glade_project_load_cancelled: assertion 'GLADE_IS_PROJECT (project)' failed

(glade:89651): GladeUI-CRITICAL **: 15:50:32.870: glade_project_load_cancelled: assertion 'GLADE_IS_PROJECT (project)' failed

(glade:89651): GladeUI-CRITICAL **: 15:50:32.870: glade_project_new_widget_name: assertion 'GLADE_IS_PROJECT (project)' failed

(glade:89651): GLib-GObject-CRITICAL **: 15:50:32.870: g_object_new_is_valid_property: object class 'GladeWidget' has no property named 'composite'

(glade:89651): GladeUI-CRITICAL **: 15:50:32.871: glade_property_read: assertion 'GLADE_IS_PROJECT (project)' failed

(glade:89651): GladeUI-CRITICAL **: 15:50:32.871: glade_property_read: assertion 'GLADE_IS_PROJECT (project)' failed

(glade:89651): GladeUI-CRITICAL **: 15:50:32.871: glade_property_read: assertion 'GLADE_IS_PROJECT (project)' failed

(glade:89651): GladeUI-CRITICAL **: 15:50:32.871: glade_project_load_cancelled: assertion 'GLADE_IS_PROJECT (project)' failed

(glade:89651): GladeUI-CRITICAL **: 15:50:32.871: glade_project_load_cancelled: assertion 'GLADE_IS_PROJECT (project)' failed

(glade:89651): GladeUI-CRITICAL **: 15:50:32.871: glade_project_load_cancelled: assertion 'GLADE_IS_PROJECT (project)' failed

(glade:89651): GladeUI-CRITICAL **: 15:50:32.871: glade_project_push_progress: assertion 'GLADE_IS_PROJECT (project)' failed

(glade:89651): GladeUI-CRITICAL **: 15:50:32.871: glade_property_read: assertion 'GLADE_IS_PROJECT (project)' failed

(glade:89651): GladeUI-CRITICAL **: 15:50:32.871: glade_property_read: assertion 'GLADE_IS_PROJECT (project)' failed

(glade:89651): GladeUI-CRITICAL **: 15:50:32.871: glade_property_read: assertion 'GLADE_IS_PROJECT (project)' failed

(glade:89651): GladeUI-CRITICAL **: 15:50:32.871: glade_project_load_cancelled: assertion 'GLADE_IS_PROJECT (project)' failed

(glade:89651): GladeUI-CRITICAL **: 15:50:32.871: glade_project_load_cancelled: assertion 'GLADE_IS_PROJECT (project)' failed

(glade:89651): GladeUI-CRITICAL **: 15:50:32.871: glade_project_load_cancelled: assertion 'GLADE_IS_PROJECT (project)' failed

(glade:89651): GladeUI-CRITICAL **: 15:50:32.871: glade_project_push_progress: assertion 'GLADE_IS_PROJECT (project)' failed

(glade:89651): GladeUI-CRITICAL **: 15:50:32.871: glade_project_load_cancelled: assertion 'GLADE_IS_PROJECT (project)' failed

(glade:89651): GladeUI-WARNING **: 15:50:32.872: Loading object '__glade_unnamed_' with name conflict, renaming to '__glade_unnamed_2'

(glade:89651): GLib-GObject-CRITICAL **: 15:50:32.877: g_object_notify_by_pspec: assertion 'G_IS_PARAM_SPEC (pspec)' failed

(glade:89651): GLib-GObject-CRITICAL **: 15:50:32.877: g_object_notify_by_pspec: assertion 'G_IS_PARAM_SPEC (pspec)' failed

(glade:89651): GLib-GObject-CRITICAL **: 15:50:32.877: g_object_notify_by_pspec: assertion 'G_IS_PARAM_SPEC (pspec)' failed

Obviously, there's some issues with object conversions, but I'm unsure how to fix this or whether it even can be fixed?

I'm running on FreeBSD 12.2p11, currently on glade 3.22.1_2. Anyone got an idea what's causing this?
 
Maybe try a more recent version of Glade? The one in ports (3.22.1) is pretty old (april 2018).

Edit: You say that you use the latest version (3.38.1) but the example file shows 3.22.1?
 
Ah, yes; you're right. I meant the latest in ports. Didn't yet realize there was such a big gap to upstream.
Alright, I suppose I might just as well get my hands dirty and work on a patch to upgrade that port, if the newer version fixes this.
 
Well, I'll be damned. It works with 3.38-2.
On the upside, I've got an updated port Makefile now. I'll run it through poudriere and post an update request for the port if it works out.
 
In case anybody comes across this and needs an updated port, here's the patch. The actual update in port may take a while, there being thousands of patches waiting and to be checked and approved...
Not gonna lie - I don't envy the repo maintainers sifting through all these patches in bugzilla.

 
Back
Top