-
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
Move to stack for building #2
Conversation
This library has been updated to use stack, with the most recent resolver that has a version of Happstack server. This version uses base-4.12, where Semigroup is a superclass of Monoid, so a few instances had to be added and modified accordingly. Addiitionally, there was no default implementation of inputBool, so that was added so we could have a build without warnings.
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.
This looks great. We just need to decide whether we want to continuing supporting base
4.8 or push the version constraint up to admit that it doesn't work with older versions of base
.
@@ -51,20 +51,24 @@ mapErrors f (Invalid errs) = Invalid (f errs) | |||
mapErrors _ valid = valid | |||
|
|||
-- Instances | |||
instance Semigroup Errors where |
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.
Adding Semigroup
almost certainly breaks support for base
4.8 unless we use conditional compilation, so we either need to fix that or decided that it's not worth supporting older versions of base with newer updates to redcard
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.
Good catch on that break. I am of the mind that we should probably start removing base 4.8 support, starting here.
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.
I'm fine with that answer. The only implication is that we then can't use newer versions of this library in any codebases that haven't been updated to the latest base
yet. redcard
hasn't seen a change in quite a while, so that's ok as long as we don't dawdle too long in getting our projects up to the latest lts
. There's a small risk we'll feel a little pain if we have to fix a bug in redcard
before having completed the lts
upgrades, but I think it's rather negligible.
Since Semigroup became a superset of Monoid with base 4.11, we need to set our constraint accordingly.
This library has been updated to use stack,
with the most recent resolver that has a version
of Happstack server.
This version uses base-4.12, where Semigroup is a
superclass of Monoid, so a few instances had to be
added and modified accordingly.
Addiitionally, there was no default implementation of
inputBool, so that was added so we could have a build
without warnings.