On Mon, May 23, 2022 at 9:19 PM Han-Wen Nienhuys <hanw...@gmail.com> wrote:
> I'm missing the context for this proposal. > Something in the original thread from Jonas made me think some distros were wrangling keeping up distributing guile only for lilypond's benefit. It's possible I misunderstood and he actually meant that just regarding v 1.8, and that 2.2.x would be available even without lilypond. But the question remains for a time when they'd like to not ship 2.2.x and we're not ready to move to 3.x.y. I do realize neither is very likely and I know Jean showed we work just fine with 3.0.8, actually there are certain advantages there, if you squint at it just the right way. That led me to think that if guile is such a rare dependency, we wouldn't want lilypond to be held ransom, you see. The other half of the thought was a response to Jean's frustration of feeling unable to land a simple bugfix into the guile project: I'm sensitive to that, it's a kind of behaviour that gives me a hard time too. > Shipping dependencies ("vendoring") can be very useful, because it > reduces the combinatorial space of version combinations that you have > to support. Ghostscript does this with a lot of its dependencies (for > example, libpng, IIRC) > Yes, I thought to us there would be the added advantage of being able to apply a small set of fixes, while we wait for mainline to mop them up. If that while is a time period measured in lustra, I thought this could help us stay fresh Jean expressed the hope to instead find a way to help the guile project kick back into some kind of gear, which if achievable I would agree would be a substantially better outcome > Vendoring Guile seems totally impractical. The Guile compilation does > some sort of bootstrapping, which makes building it from scratch > glacially slow (like: O(1 hour)), so it would be impossible for day to > day development work. > Yes, somebody else was saying the same, maybe Jean? I wasn't aware of that, I had just casually browse the repo, where the C part doesn't look big, and assumed it was just about standing that up. It occurs to me recompiling guile without a change in guile itself wouldn't happen very often, it'd still be set up as an external library as seen by the lilypond repo's pov, so maybe this is not the first concern for developers, but it'd certainly be annoying for maintainers and CI, both of which I completely agree would be undesirable burdens. Cheers, L -- Luca Fascione