| 4 Apr 2025 |
hellwolf | * count me as the tester/maintainer of the latest greatest HLS user in haskell-updates :D | 07:54:23 |
hellwolf | * count me as the tester/maintainer of the latest greatest HLS tester/user in haskell-updates :D | 07:54:34 |
Alex | In reply to @hellwolf:matrix.org cpphs = doJailbreak super.cpphs; # old-locale >=1.0.0.2 && <1.1, time <1.13
old-locale and time are conditional dependencies of cpphs on the latest revision in Hackage, so if either of those is unsolvable then that'll be why jailbreaking has no effect. | 07:56:01 |
Alex | In reply to @hellwolf:matrix.org cpphs = doJailbreak super.cpphs; # old-locale >=1.0.0.2 && <1.1, time <1.13
(The unrevised package description, which your build appears to be using, also has conditional dependencies.)
As an override, you could try using the latest revision, since it widens some bounds. | 07:58:14 |
hellwolf | I am not entirely following. Looking at https://github.com/hackage-trustees/malcolm-wallace-universe/blob/master/cpphs-1.20.9/cpphs.cabal how is old-locale required, since it is conditional? | 11:27:43 |
maralorn | hellwolf: Uh, that is a tricky one: The time provided is newer than 1.13 so neither branch of the conditional works and cabal complains about the default one. You can remove the <1.13 on time with a patch (or via sed if you feel dirty enough), that should fix it. | 11:31:23 |
hellwolf | and jailbreak doesn't work because of (what)? | 11:33:37 |
maralorn | jailbreak never touches bounds which are behind a conditional. Because e.g. in this case that would completely break the detection which branch should be used. | 11:34:55 |
hellwolf | hmm that is a flag based condition, though? | 11:36:11 |
hellwolf | I guess I have missing knowledge about cabal flags/conditionals here. | 11:36:13 |
maralorn | Every cabal conditional is flag based. You can force them, but generally there is only a default setting and cabal will try all branches to construct a build plan and pick the first that works. | 11:38:06 |
maralorn | It’s not how one generally would expect this to work, yes. I was also surprised by it. But it’s actually quite smart. | 11:38:56 |
hellwolf | oh, that's definitely surprising. I don't get the smartness part yet. | 11:46:27 |
maralorn | You don’t get why it’s smart or you don’t get the specification?^^ | 11:50:50 |
hellwolf | I don't get why it is smart. | 11:51:04 |
maralorn | Well in this case the library can demand a compatibility lib (old-locale) based on the available version of the time library. Seems useful to me. | 11:55:31 |