-
Notifications
You must be signed in to change notification settings - Fork 2
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
Update dependencies to LTS 14.5 #2
Conversation
- Bump version from 0.0.3 to 0.1.0. - Update dependency on 'aeson' from <1.3 to <1.5. - Update dependency on 'th-abstraction from <0.3 to <0.4. - Update dependency on 'lens' from <4.17 to <4.18. - Remove dependency on 'base-compat'. As it's a little unclear why 'base-compat' was necessary, it's estimated that it no longer is, since it compiles without and we are in the future now. The PVP states: > Note that modifying imports or depending on a newer version of another > package may cause extra non-orphan instances to be exported and thus > force a minor version change. As I am unsure if any of the bumped dependencies cause extra non-orphan instances, but all of them bump the minor version, a safe choice is to bump this package's minor version.
I noticed there wasn't a stack.yaml, would you like there to be one? It might look like: resolver: lts-14.5
packages:
- . |
According to the Haskell core library committee's [3-Release-Policy][1] this means that we're free from CPP directives. Supporting GHC <8.4 will mean that we have to deal with the [Semigroup-Monoid Proposal][2]. [1]: https://prime.haskell.org/wiki/Libraries/3-Release-Policy [2]: https://prime.haskell.org/wiki/Libraries/Proposals/SemigroupMonoid
The 7.10.2, 8.0.2, 8.2.2 builds break because of I'm curious as to how backwards compatible you want the package to be. Until I know, I'm assuming 8.8, 8.6 and 8.4 as the 3 release policy means that CPP can be avoided. |
It seems that there are lots of problems related to GHC 8.8.1, so I'll try and limit experiments to one at a time.
This should resolve the following warning: Warning: Unknown/unsupported 'ghc' version detected (Cabal 2.4.1.0 supports 'ghc' version < 8.7): /opt/ghc/8.8.1/bin/ghc is version 8.8.1
I can't seem to find any tests or benchmarks, so these parameters are disabled for now.
In order to build with GHC 8.8.
Since 'language: haskell' already uses this PPA, write 'cabal: 3.0'
It seems that the dependency errors for GHC 8.8.1 can be fixed. Adding previously supported versions back to Travis CI so that they intentionally break.
It turns out that |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The package is currently in a state where it builds successfully on 7.10.2--8.6.5.
I have a bit of cleaning up to do in terms of adding features back to .travis.yml.
I'd like to ensure that we check the necessary things for being able to add this package to Stackage.
Notice that I've reduced build times: this CI build uses 18m6s, 23m30s, 5m5s compared to this CI build which uses 2m15s, 2m32s, 2m7s, 2m36s, 2m16s, 3m16s.
- cabal test | ||
- cabal check | ||
- cabal haddock # tests that documentation can be generated | ||
- cabal sdist # tests that a source-distribution can be generated |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In the process of modernizing .travis.yml
I've removed checks for haddock and sdist generation that need to be put back.
Thanks for your work! |
As it's a little unclear why 'base-compat' was necessary, it's estimated
that it no longer is, since it compiles without and we are in the future
now.
The PVP states:
As I am unsure if any of the bumped dependencies cause extra non-orphan
instances, but all of them bump the minor version, a safe choice is to
bump this package's minor version.