Hello Guilers, The fifth alpha release of the upcoming GNU G-Golf 0.8.0 release is now available for testing: -] Tarball and a GPG detached signature [*]: http://ftp.gnu.org/gnu/g-golf/g-golf-0.8.0-a.5.tar.gz http://ftp.gnu.org/gnu/g-golf/g-golf-0.8.0-a.5.tar.gz.sig -] Dependencies and complete installation instructions are given in the distributed INSTALL file, or here: https://www.gnu.org/software/g-golf/install.html -] Here is a list of noteworthy changes since version 0.8.0-a.4, also available in NEWS file and on G-Golf's site * Dependencies Glib-2.0 >= 2.73.0 Gobject-2.0 >= 2.73.0 G-Golf requires GObject-Introspection >= 1.72.0. This actually imposes Glib-2.0 >= 2.73.0, which itself imposes Gobject-2.0 >= 2.73.0 * New features Derived class GObject properties and signals Derived classes now support a mechanism that allow users to expose slots as gobject properties and define new signals. Templates This release adds support for templates, a mechanism and facilities exposed by GtkWidget to automate the procedure of creating composite widgets with GtkBuilder XML. Template and GtkBuilder ui files SXML support [ currently in the examples/adw-1/adw1-demo/ui directory ] sxml-ui.el Emacs users should import this file in their .emacs file. This is an attempt to provide both indentation and font-lock support, so ui files editing becomes a more pleasant exprerience. It is a first draft, better then nothing (much better imo), but suggestions to improve would be welcome. Makefile Offered as an example of the simplest possible way to convert all *.scm files of a directory to their corresponding *.ui files. * Examples Adwaita Demo A G-Golf port of the Adwaita 1 demo. This is a work in progress, currently implementing the Adwaita 1 demo window, header bars, primary-menu (the inspector, preferences and about actions and windows) as well as the Welcome and Leaflet pages: Note: Adwaita 1.4 (unavailable in distros at the time of this release) deprecates the AdwLeaflet* classes, in favor of the AdwNavigationView and AdwNavigationPage classes. We'll move the demo to use those when Adwaita 1.4 becomes available in dostros. * Bug fixing A few G-Golf core bugs have been fixed, but none that we could expose here as 'user visible'. If you're nonetheless interested to find out what progress we made on that front, search the git logs for 'Fixing' or 'Bug fixing'. The peg-solitaire example An ABI change was made, by the Gtk team, in Gtk 4.10.0, to the gtk-css-provider-load-from-data function second argument, wHich is no longer defined as an array, but a utf8, and hence g-golf would fail, when using Gtk 4.10.0, to detect, compute and supply the third argument, which is the css string length - fixed. -] You can help by: 1. Testing by installing from the tarball, or from the source if you prefer, on the distro of your choice. 2. By running the distributed examples. Ultimately, one of the best way to test, and participate, is to select G-Golf to develop the next application of your dream! Here is an overview of the GNOME platform libraries [1], accessible using G-Golf. In particular, libadwaita [2] provides a number of widgets that change their layout based on the available space. This can be used to make applications adapt their UI between desktop and mobile devices (as shown in the G-Golf port of the "Adwaita demo"). -] Contact [3] Before you email, or send a bug report, you could join us on irc, and ping me there, my preferred way to quickly interact and fix potential G-Golf problem(s) [4]. However, if you prefer: G-Golf uses Guile's mailing lists Report bugs to bug-g-golf@gnu.org Thanks! David [*] Use a .sig file to verify that the corresponding file (without the .sig suffix) is intact. First, be sure to download both the .sig file and the corresponding tarball. Then, run a command like this: gpg --verify g-golf-0.8.0-a.5.tar.gz If that command fails because you don't have the required public key, then run this command to import it: gpg --keyserver keys.gnupg.net --recv-keys A3057AD7 and rerun the 'gpg --verify' command [1] https://developer.gnome.org/documentation/introduction/overview/libraries.html [2] https://gnome.pages.gitlab.gnome.org/libadwaita/doc/main/ [3] https://www.gnu.org/software/g-golf/contact.html [4] When reporting a problem, or if you think you found a bug, it is very important that you prepare a minimal reproducible example (MRE), sometimes also referred to as a short self-contained correct example (SSCCE) http://www.sscce.org/ https://en.wikipedia.org/wiki/Minimal_reproducible_example Also, on irc, we chat :), so please do not write code snipsets directly in the channel, unless 2 or 3 lines of code, nor error messages of course - for more then 2 or 3 lines of code, or error messages, always use a tor-friendly paste service (avoid those that track its visitors and require javascript, thanks!).