The gtk-fortran project is now ten years old. Its birth can be tracked down to that comp.lang.fortran discussion starting on the 27th December 2010 where I especially met Jerry DeLisle (@JerryD). We started working with GTK 2, as GTK 3 was released only in February 2011. Nearly ten years later, GTK 4.0 was released on Christmas 2020. Concerning gtk-fortran, the preparatory work began in the gtk3 branch on the 24th January 2020. And just after a gtk-3-fortran release in April, the gtk4 development branch was created on the 7th May 2020. We are now ~370 commits later. See the CHANGELOG file for a summary of the new features since the April 2020 release, and the GTK Development Blog to know more about the numerous changes in GTK 4.
Starting with that 4.0 release, gtk-fortran will follow a classical semantic versioning (instead of following the GTK or Ubuntu versions): gtk-fortran 4.0 is based on GTK 4.2 and GLib 2.68. The GTK 4 library is progressively arriving in all systems: Ubuntu 21.04, Fedora 33 & 34, Alpine Linux, ALT Linux Sisyphus, Arch Linux, KaOS, Mageia 8, NetBSD 9.1, OpenMandriva Rolling, openSUSE Tumbleweed. But concerning Debian, it is still in the experimental branch. Concerning Windows, GTK 4 is available in MSYS2.
The roadmap for 2021 is:
- to improve the documentation and write tutorials, update the High Level library documentation for GTK 4.
- @JerryD is exploring what the OOP features of Fortran could bring to gtk-fortran.
- We will explore coarrays: is it possible to use them in a gtk-fortran program? We hope so, as the GUI could be handled by only the first image.
- We also hope that gtk-fortran could become an fpm package: see that issue.
Finally, note that the gtkf-sketcher tool has only been partially ported to GTK 4, as an essential API for that tool disappeared from GTK 4. Anyway, Glade is not yet ported to GTK 4.
We have also made a new release in the gtk3 branch, with GTK 3.24.28 and GLib 2.68. All the improvements included in gtk-fortran 3.24.28 (gtk3 branch) are also in gtk-fortran 4.0. GTK 3 itself is of course not evolving anymore and now just receives bug fixes.
Note that the packages names are gtk-3-fortran and gtk-4-fortran: installing both libraries on your machine is not a problem.