On Wed, Mar 01, 2017 at 10:31:24AM +0000, Philip Withnall wrote:
> On Tue, 2017-02-28 at 17:12 -0600, Michael Catanzaro wrote:
> > GtkBuilder validation looks like more gook to add to our Automake
> > files, when we really want less gook there. Even if it's only a small
> > amount of code, I'd rather it be implemented as an autoconf archive
> > macro and re-proposed. I'm not sure if it's really necessary anymore
> > anyway, since GTK+ almost always warns about XML problems at runtime,
> > right?
> 
> Who cares how much ‘gook’ we have in the build system? What we care
> about is how useful it is. The value of adding validation for files at
> build time is that it catches errors *at build time*, not at runtime if
> a certain code path is taken. For GtkBuilder files, the usefulness of
> this depends entirely on the project — if the project uses a single
> massive .ui file, any errors in that are going to be caught when the
> program is started. But if a project uses a separate .ui file for each
> dialogue, you have to test every dialogue in the program at runtime
> before you know all the .ui files are valid.
> 
> This is a textbook example of the tradeoff between build time and
> runtime testing.
> 
> The example rules given on the goal page are not the tidiest. There is
> a simpler way to do this:
> 
> https://git.gnome.org/browse/hitori/tree/Makefile.am#n95 (four lines)
> https://git.gnome.org/browse/hitori/tree/configure.ac#n51 (two lines)
> 
> I don’t think that needs to be shipped out to an autoconf-archive macro
> — including such a macro in a project would be two lines at the least,
> so it would save a total of four lines. This one is better off being
> cargo-culted.

So the general consensus was to approve this GNOME goal:
https://wiki.gnome.org/Initiatives/GnomeGoals/ValidateGtkBuilderFiles

provided that someone updates the instructions and the list of modules.

For the instructions, hitori currently does this: (with more
future-proof links):
https://git.gnome.org/browse/hitori/tree/Makefile.am?h=3.22.2#n95
https://git.gnome.org/browse/hitori/tree/configure.ac?h=3.22.2#n51

There is now also the gtk-builder-tool utility program (or
gtk4-builder-tool for GTK+ 4), which can also validate GtkBuilder files.
With gtk-builder-tool I wonder if xmllint is still necessary.

--
Sébastien
_______________________________________________
desktop-devel-list mailing list
[email protected]
https://mail.gnome.org/mailman/listinfo/desktop-devel-list

Reply via email to