From: David Pirotte <david@altosw.be>
To: guile-user <guile-user@gnu.org>, guile-devel <guile-devel@gnu.org>
Subject: GNU G-Golf 0.8.0-rc6 available for testing
Date: Tue, 17 Sep 2024 23:49:12 -0300 [thread overview]
Message-ID: <20240917234912.1aadc596@tintin> (raw)
[-- Attachment #1: Type: text/plain, Size: 5446 bytes --]
Hello Guilers,
The sixth release candidate 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-rc6.tar.gz
http://ftp.gnu.org/gnu/g-golf/g-golf-0.8.0-rc6.tar.gz.sig
* Install
Dependencies and complete installation instructions are given in the
distributed INSTALL file, or here:
https://www.gnu.org/software/g-golf/install.html
* Noteworthy changes in 0.8.0-rc6
Here is a summary of the noteworthy changes in this release, also
available in NEWS file and on the G-Golf website.
** New interfaces
*** New (g-golf support color) module
A color management module has been added. Documented under the Support
Canyon -> Color Hollow section.
*** Adding derived class custom layout-manager support
Derived class now support a #:layout-manager define-class option.
*** nil
Users need a way to inform g-golf to not process some callback ffi 'out
argument(s) (which can't be by using #f, as this mught be a valid ffi
'out arg value). To solve this, g-golf now defines a global nil variable
(defined as 'nil). See the newly added layout manager demo for a
concrete example of such a need and usage.
** Examples
*** Gtk-4 - Layout Manager
The upstream gtk4-demo layout-manager (transition) example has been
ported to g-golf.
*** Adwaita Demo
The following Adwaita Demo pages have been added:
AdwDemoPageButtons
AdwDemoPageToasts
AdwDemoPageBanners
AdwDemoPageAbout
** Bug fixing
*** <vfunc>
<vfunc> instances must hold a reference to the <closure-callback>
instance (not the <callback> instance).
*** next-vfunc
Fixed to retreive the vfunc pointer offset from one of the
class-direct-supers, recursively if needed, then grab and unlesss NULL,
call the immediate direct super vfunc.
*** g-golf-vfunc-closure
Enhanced to accept and (use if passed) an optional argument,
vfunc-long-name, as vfunc callback instances must be cached against
their long name, i.e. gdk-paintable-get-flags, gdk-paintable-snapshot
... (not get-flags, snapshot ...).
*** g-callable-info-make-closure
When calling g-callable-info-create-closure (fixed to work with the new
libffi api), we also need to call (and return the result of)
g-callable-info-get-closure-native-address, as the native-ptr.
*** ffi 'out arg values
scm->gi-argument has been enhanced to properly ignore ffi 'out args for
which the value is nil.
scm->gi-argument has been fixed, when that applies, to properly set the
(dereferenced) foreign (ffi 'out arg) pointer to its value.
*** g-object-import-with-supers
For some still misterious reason, when automatically importing an object
dependency, such as, for example, importing GtkApplication will trigger
the import of (among many others ofc) the GtkLayoutManager, unless we
call g-base-info-ref upon the info, those info maybe gc'ed.
Although this should actually never happen, as g-golf doesn't unref any
GIObjectInfo instances (but it did 'misteriously' happen), to be on the
safe side of things, g-golf (core) now calls g-base-info-ref upon the
result of calling g-object-info-get-parent.
* You can help
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
Consider joining us on irc [3], where you may ask for help or report a
problem [4].
However, if you prefer:
G-Golf uses the guile-user@gnu.org mailing list
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-rc6.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 (long/huge) 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!).
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
next reply other threads:[~2024-09-18 2:49 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-09-18 2:49 David Pirotte [this message]
2024-09-18 22:39 ` GNU G-Golf 0.8.0-rc6 available for testing David Pirotte
2024-09-18 23:21 ` Greg Troxel
2024-09-19 23:00 ` David Pirotte
2024-09-20 22:46 ` David Pirotte
2024-09-19 10:51 ` pelzflorian (Florian Pelz)
2024-09-19 22:20 ` David Pirotte
2024-09-20 13:08 ` pelzflorian (Florian Pelz)
2024-09-20 21:40 ` David Pirotte
2024-09-23 7:27 ` pelzflorian (Florian Pelz)
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/guile/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240917234912.1aadc596@tintin \
--to=david@altosw.be \
--cc=guile-devel@gnu.org \
--cc=guile-user@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).