-
Notifications
You must be signed in to change notification settings - Fork 848
Fix #6160 Move Stack on to GHC 9.4.6 #6161
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
Conversation
See issue #6160. |
2fc14e0
to
1a7770a
Compare
@psibi, please could you prepare and publish a GHC 9.4.5 docker image to replace the current |
On Windows only, the three integration tests that use |
@psibi, thanks for the Alpine Docker images. Those builds are failing, during the 'preprocessing library' step for certain packages only -
Frustratingly, the final I think what those packages may have in common is an |
e08689d
to
7cc993a
Compare
@mpilgrem Sorry, I would be too occupied for this and most like couple of next weeks to devote time to this issue and debug it myself. Regarding debugging, I would try to use the docker image and compile a smaller project and see how it goes. |
@psibi, noted and understood. I am currently experimenting locally with Alpine Linux on WSL2. My current hypothesis is that the underlying problem may be GHC 9.4.5 on Alpine Linux (https://gitlab.haskell.org/ghc/ghc/-/issues/23043#note_506034) or Alpine Linux 3.18.2 (released on 2023-06-14). |
@mpilgrem Good point, if you want me to make another image on a different alpine - let me know. That shouldn't take too much time from my side. |
Not yet reflected in the CI results to date, because the CI does not yet reach that point, Stack will not build with GHC 9.4.5 on Alpine Linux/x86_64 due to a bug in GHC/ |
I have a set up a small, temporary, test repository for the Docker/Alpine Linux/GHC 9.4.5/hsc2hs/segmentation fault problem at: https://github.com/mpilgrem/alpine-haskell-stack-test. Works with
I think it is unlikely to be Alpine Linux 3.17.2 -> 3.18.2, because if it was giving rise to segmentation faults in Docker generally, I would expect to see that surface on the Internet quickly (even if it only recently released). I think it is not Stack 2.9.3 -> 2.11.1, because of when the segmentation fault occurs. My guess for the culprit is the NixOS/nixpkgs build of GHC 9.4.5. The |
@psibi, to test my hypothesis in the comment above - about the problem being with the NixOS/nixpkgs build of GHC 9.4.5 - would it be possible to create a further Docker image that uses, instead, the 'official' Alpine Linux version of GHC 9.4.5 at https://downloads.haskell.org/~ghc/9.4.5/ghc-9.4.5-x86_64-alpine3_12-linux-static-int_native.tar.xz? |
632b246
to
47556f1
Compare
I'm running GHC 9.4.5 in production on alpine. And I've experienced the same issue, TH related crashes. The official bindists from hackage.org seem to be affected, and I suspect these are from producing the GHC from an older alpine version. The gitlab CI is using an alpine release a few alpine versions behind. What worked for me was using a self compiled GHC (via hadrian, I never understood the make system). |
Sorry, it took a while to get back to you on this. The original reason why we are not using the official alpine version released by the GHC team were:
Maybe, it has been fixed in the recent releases. I will see if I can create another image in the upcoming days to make it easier for you - but creating image based on official ghc alpine is pretty trivial as compared to the nix route that I'm currently doing. |
@psibi, @mpilgrem This reproduction triggers it for me under the official GHC 9.4.5 bindists: https://gitlab.haskell.org/ghc/ghc/-/issues/20266#note_440518 |
You could try the multi-arch ( Cross reference: #6142 (comment) |
de75d12
to
552ca23
Compare
Also, update `etc/dockerfiles/arm64.Dockerfile`, `etc/scripts/build-stack-installer.hs` and `etc/scripts/release.hs`.
Does not yet address any changes to *.md files. Relying on CI.
EDIT: I have bumped the ambition from GHC 9.4.5 to GHC 9.4.6, because (a) the latter is now available via Stackage LTS Haskell 21.8 and (b) @benz0li has a Docker image for GHC 9.4.6 that includes Stack 2.11.1.