-
-
Notifications
You must be signed in to change notification settings - Fork 413
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
Resolve build warnings #1564
base: master
Are you sure you want to change the base?
Resolve build warnings #1564
Conversation
@nbacquey Have you noticed that doctests are failing? |
fce3a10
to
8825fec
Compare
Thanks for noticing ; doctests should be fine now |
72ea4df
to
4ad54b6
Compare
The file is small enough that using unticked constructors should not be error-prone
3900130
to
1b1f188
Compare
@tchoutri @alpmestan |
@nbacquey Hi! After a cursory review, I'd like to ask for a changelog entry, as it is my understanding that you add a new public module |
We cannot use the recommended replacement `requestBody` => `getRequestBodyChunk`, because we are actually interested in the record selector, not the `Request -> IO ByteString` function.
1b1f188
to
e32b28c
Compare
Instead of adding a changelog entry, I preferred to declare |
Ah I see indeed. :) |
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.
Unless something else pops up, approved!
This PR solves all current compile time warnings in servant, so that mistakes can be more easily spotted when interacting with the code base.
The only nontrivial fix is the one of "erroring instances" of
HasLink
,HasClient
, andHasServer
. Those erroring instances, by construction, do not define all methods of their type class, thus generating warnings. It wouldn't have been reasonable to silence all such warnings in their respective files, because those files contain multiple other instance declarations, and havingmissing methods
warnings for those is useful.Therefore, I chose to move the erroring instances in separate files (thus refactoring a bit the structure of the code base), and silence "missing methods" warning in those new files only.
The PR may be squashed before merging ; I kept it unsquashed so that modifications to renamed files would be more readable.