Skip to content
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

GHC 9.8 compat and CI #9330

Merged
merged 4 commits into from
Dec 2, 2023
Merged

GHC 9.8 compat and CI #9330

merged 4 commits into from
Dec 2, 2023

Conversation

ulysses4ever
Copy link
Collaborator

@ulysses4ever ulysses4ever commented Oct 13, 2023

Template Β: This PR does not modify cabal behaviour (documentation, tests, refactoring, etc.)

Include the following checklist in your PR:

@ulysses4ever
Copy link
Collaborator Author

I've done basic dumb work to update the code and CI for 9.8 but there are some actual failures that need to be looked into. Help appreciated.

@ulysses4ever
Copy link
Collaborator Author

I fixed the actual regressions (due to -Wx-partial) locally and now I'm wrangling with allow-newer.

@ulysses4ever
Copy link
Collaborator Author

Timed out while fixing all those heads and tails. Converting to draft for now.

@ulysses4ever ulysses4ever force-pushed the ci-ghc-9.8 branch 3 times, most recently from 2528de3 to d13ae95 Compare October 16, 2023 16:15
@ulysses4ever ulysses4ever marked this pull request as ready for review October 16, 2023 17:39
@ulysses4ever
Copy link
Collaborator Author

All right, I issue an official call for help: both in Matrix and here. The failing test is here: https://github.com/haskell/cabal/actions/runs/6536363720/job/17747928752?pr=9330

It's about a hash mismatch in Cabal-tests/tests/UnitTests/Distribution/Utils/Structured.hs. Anyone has experience with this? Currently, there's one CPP clause with min base already. Should I add another one?

#if MIN_VERSION_base(4,7,0)
, testCase "GenericPackageDescription" $
md5Check (Proxy :: Proxy GenericPackageDescription) 0x6ad1e12c6f88291e9b8c131d239eda70
, testCase "LocalBuildInfo" $
md5Check (Proxy :: Proxy LocalBuildInfo) 0xbc7ac84a9bc43345c812af222c3e5ba0
#endif

I had a cursory look over what this Structured business does and, to be honest, I'm not positive, but it looks like it tries to control ABI changes in how datatypes look like to avoid troubles with serialization when this changes...

@ulysses4ever
Copy link
Collaborator Author

Gershom greenlights adding some CPP to handle this apparent change in how GHC 9.8 codegens data types.

@ulysses4ever
Copy link
Collaborator Author

thanks @Mikolaj! My plan was to wait when #9439 is merged and rebase. But I'm always up for rolling the dice once again!

@Mikolaj
Copy link
Member

Mikolaj commented Nov 13, 2023

Wow, and this is one of those times when cache reset does not help (or the dice rolled wrong again).

@ulysses4ever ulysses4ever force-pushed the ci-ghc-9.8 branch 2 times, most recently from a3354e0 to 764ed85 Compare November 16, 2023 16:49
Copy link
Member

@Mikolaj Mikolaj left a comment

Choose a reason for hiding this comment

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

Yipee!

@ulysses4ever
Copy link
Collaborator Author

It was a long ride… I'll double check that commit history makes sense (I edited it several times) and then apply the merge label.

@ulysses4ever ulysses4ever force-pushed the ci-ghc-9.8 branch 2 times, most recently from b17e6e0 to fc82767 Compare November 27, 2023 14:38
@ulysses4ever ulysses4ever added merge me Tell Mergify Bot to merge and removed attention: needs-review attention: needs-help Help wanted with this issue/PR labels Nov 27, 2023
@ulysses4ever ulysses4ever force-pushed the ci-ghc-9.8 branch 3 times, most recently from c0d182e to e026e17 Compare November 29, 2023 19:42
@mergify mergify bot added the merge delay passed Applied (usually by Mergify) when PR approved and received no updates for 2 days label Dec 2, 2023
…tured

It seems, GHC 9.8 changed something in the code generation for data types.
Structured class is supposed to catch such cases.
And bump Cabal's "supported version" of GHC
@mergify mergify bot merged commit 4c0f867 into haskell:master Dec 2, 2023
48 checks passed
@ulysses4ever ulysses4ever deleted the ci-ghc-9.8 branch December 3, 2023 00:30
@ulysses4ever
Copy link
Collaborator Author

Took only two months… 🥲

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
merge delay passed Applied (usually by Mergify) when PR approved and received no updates for 2 days merge me Tell Mergify Bot to merge re: ghc 9.8
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants