Closed skeuchel closed 5 years ago
For reference the build error:
$ cabal new-build -w ghc-7.10.3 --keep-going --constraint=mmorph==1.0.3
Build profile: -w ghc-7.10.3 -O1
In order, the following will be built (use -v for more details):
- pipes-4.3.9 (lib) (first run)
Preprocessing library for pipes-4.3.9..
Building library for pipes-4.3.9..
[3 of 6] Compiling Pipes.Lift ( src/Pipes/Lift.hs, /tmp/Haskell-Pipes-Library/dist-newstyle/build/x86_64-linux/ghc-7.10.3/pipes-4.3.9/build/Pipes/Lift.o )
src/Pipes/Lift.hs:100:32:
Could not deduce (MFunctor (E.ExceptT e))
arising from a use of ‘distribute’
from the context (Monad m)
bound by the type signature for
runExceptP :: Monad m =>
Proxy a' a b' b (E.ExceptT e m) r -> Proxy a' a b' b m (Either e r)
at src/Pipes/Lift.hs:(97,8)-(99,37)
In the second argument of ‘(.)’, namely ‘distribute’
In the expression: E.runExceptT . distribute
In an equation for ‘runExceptP’:
runExceptP = E.runExceptT . distribute
src/Pipes/Lift.hs:112:15:
Could not deduce (MFunctor (E.ExceptT e))
arising from a use of ‘distribute’
from the context (Monad m)
bound by the type signature for
catchError :: Monad m =>
Proxy a' a b' b (E.ExceptT e m) r
-> (e -> Proxy a' a b' b (E.ExceptT e m) r)
-> Proxy a' a b' b (E.ExceptT e m) r
at src/Pipes/Lift.hs:(105,8)-(110,40)
In the first argument of ‘E.catchE’, namely ‘(distribute e)’
In the second argument of ‘($)’, namely
‘E.catchE (distribute e) (distribute . h)’
In the expression:
exceptP . E.runExceptT $ E.catchE (distribute e) (distribute . h)
Thank you!
In case you want to edit the hackage metadata for this, this affects pipes>=4.2. But then again correct lower bounds are not as important as correct upper bounds.
I added revisions to fix them all
Pipes.Lift
is usingMFunctor (ExceptT e)
instances which were added to mmorph in 1.0.4