eht16 left a comment (geany/geany#4414) > [edit] or maybe the issue is that we build with a newer version than what we > distribute? I'm not sure how all this works, but we seem to install them > separately, which might lead to issues if the two versions get too far out of > sync…
I think this might get a bit off topic here, feels like an issue on its own. IIRC this was never planned to work like but rather happened. The following is based on my memories from when I built Geany on Windows natively and also wrote the cross build CI script - the native CI build might work a bit different in detail: For build time, the dependencies are installed via `pacman` within the MSYS2 environment and `pacman` takes care of dependency resolution. This is the easy part. For runtime, we cannot easily use the installed packages again as they were installed into the MSYS2 filesystem tree. I think this was the point when we introduced `scripts/gtk-bundle-from-msys2.sh` in order to replicate the package installation but into a seperate, clean filesystem tree which we can use to create the bundle. You are absolutely right, this might lead to inconsistencies of package versions between build time and runtime. We might have been lucky in the past. And now, with the old pinned Pango and Cairo packages, the problem materialized. In an ideal world, we would use exactly the same packages for bundle creation and build time. A rather pragmatic idea: when we are installing the packages for build time within MSYS2, we could write a list of the relevant packages with their exact version to a file and at bundle creation time, we use this list to replicate the package installation with the exact versions. (Not completely nice but should be easier/faster to implement than a clean solution.) -- Reply to this email directly or view it on GitHub: https://github.com/geany/geany/pull/4414#issuecomment-3652321692 You are receiving this because you are subscribed to this thread. Message ID: <geany/geany/pull/4414/[email protected]>
