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

Drop support for GHC versions older than 9.6 #26

Merged
merged 4 commits into from
Feb 7, 2025
Merged

Conversation

DigitalBrains1
Copy link
Member

If we require GHC 9.6, we can start really using features only present in newer GHC's. We can also drop quite some compatibility stuff and we make further development of the package easier.

  • With at least GHC 9.2, we can use OverloadedRecordDot
  • GHC 9.2 itself doesn't work well with Clash. It has indecipherable error messages.
  • With at least GHC 9.4, we can use OPAQUE
  • GHC 9.4 itself doesn't work well with Clash. Versions 9.4.8 is extremely slow.

Possibly there are several more good reasons as well, this list is not meant to be exhaustive.

Several open PR's require clash-protocols as a dependency. Adding that dependency already meant dropping support for GHC 8.10; it was what triggered this PR to be written.

Some dependencies were both in `basic-config` and in `library`.
Furthermore, they were not sorted alphabetically.
In preparation for the next commit, we drop older GHC's from CI

We have separate Docker images for Clash 1.8 and Clash master; use them
correctly.
Rationale:
 - With at least GHC 9.2, we can use `OverloadedRecordDot`
 - GHC 9.2 itself doesn't work well with Clash. It has indecipherable error
   messages.
 - With at least GHC 9.4, we can use `OPAQUE`
 - GHC 9.4 itself doesn't work well with Clash. Versions 9.4.8 is
   extremely slow.

Possibly there are several more good reasons as well, this list is not
meant to be exhaustive.

Using `--prefer-oldest`, I could not even get Cabal to give me an older
`prettyprinter` package than 1.7.0 with GHC 9.6.1. So raising the lower
bound of `prettyprinter` is completely harmless.
@DigitalBrains1 DigitalBrains1 merged commit cf8f2f5 into main Feb 7, 2025
2 checks passed
@DigitalBrains1 DigitalBrains1 deleted the minimum-96 branch February 7, 2025 09:33
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.

2 participants