I tried to test it on Windows but got mixed results :(.
First, we need more dependencies on Windows: ``` diff --git a/build/gtk-bundle-from-msys2.sh b/build/gtk-bundle-from-msys2.sh index 408d727f..529fa24a 100644 --- a/build/gtk-bundle-from-msys2.sh +++ b/build/gtk-bundle-from-msys2.sh @@ -21,7 +21,7 @@ EXE_WRAPPER_64="mingw-w64-x86_64-wine" # enchant, hunspell - for SpellCheck plugin # lua51 - for GeanyLua plugin # gnupg, gpgme - for GeanyPG plugin -# libsoup - for UpdateChecker plugin +# libsoup3 - for UpdateChecker & GeniusPaste plugins # libgit2 - for GitChangeBar plugin # gtkspell3 - for GeanyVC plugin # the rest is dependency-dependency @@ -30,6 +30,7 @@ ca-certificates ctags ctpl-git enchant +glib-networking gnupg gpgme http-parser @@ -39,8 +40,9 @@ libgcrypt libgit2 libgpg-error libidn2 +libproxy libpsl -libsoup +libsoup3 libssh2 libsystre libunistring ``` (The diff probably won't apply cleanly against this PR but should be easy enough to adopt, sorry.) It is important to remove "libsoup" as it cannot be installed together with "libsoup3". There is a runtime warning when both libraries are loaded. This obviously has a direct impact on the UpdateChecker plugin, so we probably need to merge them in order and rebase the latter one after the first one is merged.
Then, I got a compiler warning which might or might not be new but still worth to look at: ``` In file included from C:/msys64/mingw64/include/glib-2.0/glib/giochannel.h:36, from C:/msys64/mingw64/include/glib-2.0/glib.h:56, from C:/msys64/mingw64/include/glib-2.0/gobject/gbinding.h:30, from C:/msys64/mingw64/include/glib-2.0/glib-object.h:24, from C:/msys64/mingw64/include/glib-2.0/gio/gioenums.h:30, from C:/msys64/mingw64/include/glib-2.0/gio/giotypes.h:30, from C:/msys64/mingw64/include/glib-2.0/gio/gio.h:28, from C:/msys64/mingw64/include/libsoup-3.0/libsoup/soup-types.h:9, from C:/msys64/mingw64/include/libsoup-3.0/libsoup/soup-auth.h:8, from C:/msys64/mingw64/include/libsoup-3.0/libsoup/soup.h:11, from geniuspaste.c:22: geniuspaste.c: In function 'json_request_new': C:/msys64/mingw64/include/glib-2.0/glib/gstring.h:74:5: warning: ignoring return value of 'g_string_free_and_steal' declared with attribute 'warn_unused_result' [-Wunused-result] 70 | (__builtin_constant_p (free_segment) ? \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 71 | ((free_segment) ? \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 72 | (g_string_free) ((str), (free_segment)) : \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 73 | g_string_free_and_steal (str)) \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 74 | : \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 75 | (g_string_free) ((str), (free_segment))) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ geniuspaste.c:612:5: note: in expansion of macro 'g_string_free' 612 | g_string_free(str, FALSE); | ^~~~~~~~~~~~~ ```
When trying to paste some file, Geany crashes for me when it is executed natively. I don't know yet why this happens and I didn't manage it yet to debug it with gdb. This might be related to my system where I use some firewall rules to block unwanted internet access from Windows and also have proxy connections configured and after all, it is Windows 7.
When I start Geany from within the MSYS2 environment, pasting some file works to some extend, at least no crash :). But the response look weird:  The link below "\1" is actually also "\1".
The `response_str` in `pastebin_parse_response` is "https://www.geany.org/p/6vzVo" which is correct. So there seems to be a problem with parsing the URL. I don't know if this related to these changes or not.
Anyway, with the bundle changes above, we should get usable installers from the CI and so others could test it as well with a less weird Windows setup :).