Closed locallycompact closed 1 year ago
@locallycompact I'm not much fussed about whether this is merged, but CI fails for now.
@NorfairKing biff
Would this work without the CPP?
You can remove the CPP, if you are fine with a redundant import warning from GHC with mtl <2.3
. Or you could just drop support for older version of mtl -- which may break downstream users. You could also hide the respective symbols from the import of Control.Monad.Reader
, but that would probably result in a warning about a redundant hide
clause for mtl >=2.3
.
It's probably just a matter of personal taste. (Personally, I consider CPP a good solution, because it makes it clear what part of the code is legacy and what is the recent version.)
I prefer wider bounds in general. Navigating upgrade paths when bounds are super tight can get really chewy and can lead to a lot of unsolvable build plans, but I also like explicit imports so CPP is the only hack that gets all of those properties.
@locallycompact Alright I'm fine with CPP then. I can't merge until CI passes and there seems to be real breakage.
@NorfairKing I think this works now.
Merged manually and released.
mtl 2.3 compat