Skip to content

Conversation

@DigitalBrains1
Copy link
Collaborator

We can effortlessly support GHC 8.0+ instead of GHC 8.8+ for both building and testing, so let's do that.

GHC's before 8.8 (base-4.13) don't export MonadFail to Prelude.

Relax the bounds on template-haskell to support GHC 8.0+

Tighten the bounds on containers and ansi-terminal to exclude unsupported versions.

Drop bounds specification in the test suite for dependencies shared with the library; the library already constrains these dependencies and it reduces maintenance burden.

This was tested with all major GHC versions between 8.0 and 9.0 inclusive, with cabal v2-test {,--prefer-oldest}. I also checked the examples on GHC 8.0.

To test with --prefer-oldest, you'll need this in cabal.project.local since older versions of these packages do not build with GHC 8:

constraints:
  aeson >= 1.4.4.0,
  contravariant >= 1.5.2

We intend to add CI, but right now I'm focussing on getting this into Stackage. This is a preparation for that, just cleaning up some loose ends.

We can effortlessly support GHC 8.0+ instead of GHC 8.8+ for both
building and testing, so let's do that.

GHC's before 8.8 (base-4.13) don't export `MonadFail` to Prelude.

Relax the bounds on `template-haskell` to support GHC 8.0+

Tighten the bounds on `containers` and `ansi-terminal` to exclude
unsupported versions.

Drop bounds specification in the test suite for dependencies shared with
the library; the library already constrains these dependencies and it
reduces maintenance burden.
@DigitalBrains1 DigitalBrains1 merged commit a2e8653 into master Feb 24, 2024
@DigitalBrains1 DigitalBrains1 deleted the th-old-ghc branch February 24, 2024 16:41
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