Since we depend on GTK 3.24 which was released in September 2018, we can also depend on a newer glib version from around that time since it will be provided by distros anyway (and not the ancient glib 2.32 from 2012). This can eliminate a few conditionals from the code.
At the end, I used 2.56 from March 2018 - originally I wanted to use 2.58 from August but it produces some depreciation warnings in Scintilla which would have to be addressed first.
I also had to replace now deprecated GTrashStack which Geany (mis)used for a simple stack implementation of undo/redo - I just used GSList instead. You can view, comment on, or merge this pull request online at:
https://github.com/geany/geany/pull/4199
-- Commit Summary --
* Bump required glib version to 2.56 * Replace deprecated GTrashStack with GSList
-- File Changes --
M m4/geany-gtk.m4 (6) M meson.build (6) M src/document.c (54) M src/documentprivate.h (4) M src/libmain.c (11) M src/spawn.c (4) M src/tagmanager/tm_workspace.c (25)
-- Patch Links --
https://github.com/geany/geany/pull/4199.patch https://github.com/geany/geany/pull/4199.diff