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]>

Reply via email to