Skip to content

Add GHC 9.6.1-alpha2 metadata #69

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

Merged
merged 2 commits into from
Jan 31, 2023

Conversation

bgamari
Copy link
Collaborator

@bgamari bgamari commented Jan 29, 2023

Just as it says on the tin.

@bgamari bgamari marked this pull request as ready for review January 29, 2023 16:37
Comment on lines +600 to +602
Linux_Ubuntu:
( >= 16 && < 19 ): *ghc-961alpha2-64-deb9
unknown_versioning: *ghc-961alpha2-64-deb10
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Using the Ubuntu 18.04 bindist in the first case would be reasonable. We will certainly try to do so with the next pre-release; however, my vague sense is that it would be better to keep things as-is for this release as the current configuration has already passed our smoke-test.

However, I am honestly not sure what to do about the unknown_versioning case; there is by definition no robust solution here.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Using the Ubuntu 18.04 bindist in the first case would be reasonable. We will certainly try to do so with the next pre-release; however, my vague sense is that it would be better to keep things as-is for this release as the current configuration has already passed our smoke-test.

We have our own tests in this repo: https://github.com/haskell/ghcup-metadata/blob/develop/.github/workflows/install-bindist.sh

However, I am honestly not sure what to do about the unknown_versioning case; there is by definition no robust solution here.

Fedora 33 has caused large breakage for end users:

Either Fedora 27 bindists are reinstated or we use CentOS 7 for the time being. Rocky Linux is interesting, but does not support Ubuntu 18.04 derivates.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actually I'm thinking Rocky linux 8 might be ok... Centos 7 is still on ncurses 5, which is decommissioned in newer Fedora versions.

unknown_versioning:
dlHash: 19d8d59a6d68c3b3174a8e3513d3b9236ec8f505428e7e909af4e7b108716416
dlSubdir: ghc-9.6.0.20230128-x86_64-unknown-linux
dlUri: https://downloads.haskell.org/~ghc/9.6.0.20230128/ghc-9.6.0.20230128-x86_64-alpine3_12-linux-static-int_native.tar.xz
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Last I tried this was unusable for me and caused linking errors. Don't we have a dynamically linked alpine bindist? And if not, why?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

My initial motivation for introducing Alpine bindists was to facilitate users who wanted a solution for static-linking. We can introduce a dynamic job for the next pre-release if this would be helpful. Was this the issue you observed with the static bindist?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No, it was this https://github.com/haskell/haskell-language-server/actions/runs/3719591446/jobs/6308547604

Invocation:

cabal --store-dir=/__w/haskell-language-server/haskell-language-server/store v2-install --project-file="cabal.project" -w "ghc-8.10.7" --disable-tests --disable-profiling -O2 --overwrite-policy=always --install-method=copy --installdir="/__w/haskell-language-server/haskell-language-server/out/8.10.7" exe:haskell-language-server exe:haskell-language-server-wrapper

Errors:

2022-12-17T11:03:04.3496562Z [1 of 1] Compiling Main             ( exe/Main.hs, dist/build/haskell-language-server/haskell-language-server-tmp/Main.o )
2022-12-17T11:03:04.3496902Z 
2022-12-17T11:03:04.3497009Z exe/Main.hs:6:8: error:
2022-12-17T11:03:04.3497397Z     Could not find module ‘Prelude’
2022-12-17T11:03:04.3497895Z     Perhaps you haven't installed the "dyn" libraries for package ‘base-4.16.4.0’?
2022-12-17T11:03:04.3498423Z     Use -v (or `:set -v` in ghci) to see a list of the files searched for.
2022-12-17T11:03:04.3504580Z   |
2022-12-17T11:03:04.3504922Z 6 | module Main(main) where
2022-12-17T11:03:04.3505158Z   |        ^^^^

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As far as I can tell, this isn't a linking failure but rather a cabal-install configuration issue. Specifically, cabal-install is trying to build a dynamic executable despite the fact that we don't have dynamic libraries. Teaching cabal-install to handle this automatically is indeed a bit tricky.

Copy link

@phadej phadej Jan 31, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does these current Alpine bindist-GHCs allow using TH, doesn't that require dynamic linking, even if final executable linkage is static?

Comment on lines +595 to +597
Linux_Mint:
< 20: *ghc-961alpha2-64-deb9
'>= 20': *ghc-961alpha2-64-deb10
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These should also match ubuntu. Mint releases roughly match the ubuntu ones afair.

@bgamari
Copy link
Collaborator Author

bgamari commented Jan 30, 2023

@hasufell, I'm going to move ahead with announcing the release with hope that we can merge and continue to iterate on this in future MRs.

@bgamari
Copy link
Collaborator Author

bgamari commented Jan 31, 2023

@hasufell, would you mind if I merge this?

@hasufell
Copy link
Member

@hasufell, would you mind if I merge this?

There are still unresolved things. I'll fix them later.

@hasufell hasufell merged commit eeb1e14 into haskell:develop Jan 31, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants