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

Fix concat-satisfy on GHC 9.2.1 #114

Merged
merged 4 commits into from
Dec 14, 2023

Conversation

sellout
Copy link
Contributor

@sellout sellout commented Dec 14, 2023

This broadens the CI coverage and fixes an issue that was missed by
testing 9.2.4 instead of 9.2.1.

@sellout sellout marked this pull request as draft December 14, 2023 04:24
Testing the first release should imply that any later release of a major version
should also work. E.g., testing 9.0.1 implies that 9.0.2 works, but testing
9.0.2 does not imply that 9.0.1 works. So the earlier the release that we test,
the more test coverage we get.

However, this doesn’t always hold like it should. E.g., we know that GHC 9.2.2
has breaking changes relative to 9.2.1, even though it shouldn't so we explicit
test 9.2.2 as well.
The latest release isn’t compatible with concat, so the lack of upper bound
meant the new constraints release started breaking concat.
@sellout
Copy link
Contributor Author

sellout commented Dec 14, 2023

Unfortunately, 83f06ae seems to have broken concat-plugin on everything before GHC 9.4. I think it was probably difficult to notice because there were already a bunch of broken checks due to gold tests, etc. So I added branch protection to master so that the checks passing (as of this PR) are marked required, and we can hopefully tighten that going forward.

I don't use concat-plugin, so the remaining breakage doesn't affect me, but the fixes here address failures in concat-satisfy and concat-classes that do.

@sellout sellout changed the title Fix build on GHC 9.2.1 Fix concat-satisfy on GHC 9.2.1 Dec 14, 2023
@sellout sellout marked this pull request as ready for review December 14, 2023 05:41
@mikesperber
Copy link
Contributor

Thanks, @sellout. I was going to investigate the CI failures (plugin works for me, as do the gold tests), but ran out of time. I'll get back to it next week.

Meanwhile, my experience has been that there's no version jump in ghc that doesn't hold the risk of breaking changes. So I suggest also adding the latest known version along each 9.x line at least.

@mikesperber mikesperber self-assigned this Dec 14, 2023
- "9.0.2"
- "9.2.4"
- "9.4.8"
- "9.0.1"
Copy link
Contributor

Choose a reason for hiding this comment

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

I think we should also do the last version of each branch, but we can do that separately.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

We get the latest release covered in the Nix builds. Nix tends to not keep all the releases around, so I test the newer ones via Nix and the oldest via Cabal directly.

It does seem like the gold tests are passing in 9.4.8 (on Linux), but not in 9.4.1.

@sellout sellout merged commit d95c79d into compiling-to-categories:master Dec 14, 2023
58 of 71 checks passed
@sellout sellout deleted the fixing-9.2.1 branch December 14, 2023 18:23
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.

None yet

2 participants