-
Notifications
You must be signed in to change notification settings - Fork 91
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support LTS-23.1 more cleanly #1182
Conversation
I'm a bit confused... I think we already support building with GHC 9.8.4, no? Is this about bumping dependencies? |
There are legit failures on 8.10.7: https://github.com/haskell/ghcup-hs/actions/runs/12471541117/job/34821579458#step:4:1 |
Sorry, yes - this is about finding a build plan compatible with `LTS 23.1`.
My motivation here is to cut down the number of ghcs I need to have insalled t io build the programs I use - at the moment, ghcup is the only one for whom my usual strategy of bumping the resolver and adding the necessary extra-deps doesn't work, due to these restrictive upper bounds. I'm afk, will check the logs later to see what I broke.
24 dic 2024 08:02:58 Julian Ospald ***@***.***>:
…
There are legit failures on 8.10.7: https://github.com/haskell/ghcup-hs/actions/runs/12471541117/job/34821579458#step:4:1
—
Reply to this email directly, view it on GitHub[#1182 (comment)], or unsubscribe[https://github.com/notifications/unsubscribe-auth/AAJTW5OUU5YVGTC6DV42XML2HD2JFAVCNFSM6AAAAABUDQKQPWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDKNRQGY4TONBVGQ].
You are receiving this because you authored the thread.
[Imagen de rastreo][https://github.com/notifications/beacon/AAJTW5KFZKPJAKHPS5S5T4D2HD2JFA5CNFSM6AAAAABUDQKQPWWGG33NNVSW45C7OR4XAZNMJFZXG5LFINXW23LFNZ2KUY3PNVWWK3TUL5UWJTUYUESG4.gif]
|
huh, that's a very weird breakage, especially considering |
As far as I can tell, the problem is because the ubuntu and mac runs install |
I've been trying to write a bug report on this for |
🤦 think I've found the issue -- the revision putting an upper bound on |
Am guessing there's no bug to report upstream |
BTW, I incidentally bumped into https://discourse.haskell.org/t/don-t-edit-dependency-bounds-manually-with-this-ci-setup/5539 in investigating this, perhaps it's tooling that may be useful here? |
Not sure what caused the segfault, and it lacks enough context to show me if I need to change something |
Armv7 is semi-busted and sometimes segfaults. Need to consider dropping support. It's unlikely to be revived. Anyhow, just restarting sometimes works. |
I updated the description in view of the correct pushback that we already support |
Tested both
stack
andcabal
find build plans, both chosen build plans passtests. To support
lts-23.1
, I ended up bumping the upper bounds for a coupledependencies:
bytestring < 0.13
megaparsec < 9.8
optparse-applicative < 0.19
(see below)time < 1.13
zip < 2.2.0
I toyed with bumping
generic-arbitrary
too to support1.0.1
, but that gaveme an
ambiguous instance
bug that I couldn't figure out in time. I am leavingin my rewrite of its bounds using
^>=
, though.The
extra-deps
I left instack.yaml
are only those I needed after nuking therest. There may be a more optimal selection there, but I went with
stack
'srecommendations.
To support
optparse-applicative 0.18.*
, I needed to add a shimOptions.Applicative.Pretty.Shim
. This is because it has moved away from thedeprecated
ansi-wl-pprint
toprettyprinter
, and in the process replaced themonomorphic prettyprinters like
text :: String -> Doc
with the polymorphicpretty :: Pretty a => a -> Doc ann
. I opted for writing a shim to concentratethe CPP code in one place, and because the coding style of
GHCUp.OptParse
would make redefining
text = pretty
in each module cause ambiguity problems inMain.hs
. Of course, we could instead just bump the lower bound ofoptparse-applicative
.I have merely checked that
stack test
andcabal test
pass with thisconfiguration using
ghc 9.8.4
. If we need a wider test matrix, please let meknow (I tried checking
docs/dev.md
for instructions on building on otherGHCs, but the per-ghc project files seem to have been deleted?)