pipes 4.3.12 → 4.3.13
raw patch · 4 files changed
+10/−2 lines, 4 files
Files
- CHANGELOG.md +4/−0
- pipes.cabal +1/−1
- src/Pipes/Internal.hs +4/−0
- src/Pipes/Tutorial.hs +1/−1
CHANGELOG.md view
@@ -1,3 +1,7 @@+4.3.13++* Add `MonadFail` instance for `Proxy`+ 4.3.12 * Fix space leak introduced in version 4.3.10
pipes.cabal view
@@ -1,5 +1,5 @@ Name: pipes-Version: 4.3.12+Version: 4.3.13 Cabal-Version: >= 1.10 Build-Type: Simple Tested-With: GHC == 7.10.3, GHC == 8.0.2, GHC == 8.2.2, GHC == 8.4.4, GHC == 8.6.5, GHC == 8.8.1
src/Pipes/Internal.hs view
@@ -34,6 +34,7 @@ , closed ) where +import qualified Control.Monad.Fail as F (MonadFail(fail)) import Control.Monad.IO.Class (MonadIO(liftIO)) import Control.Monad.Trans.Class (MonadTrans(lift)) import Control.Monad.Morph (MFunctor(hoist), MMonad(embed))@@ -177,6 +178,9 @@ Respond b fb' -> Respond b (\b' -> go (fb' b')) M m -> f m >>= go Pure r -> Pure r++instance F.MonadFail m => F.MonadFail (Proxy a' a b' b m) where+ fail = lift . F.fail instance MonadIO m => MonadIO (Proxy a' a b' b m) where liftIO m = M (liftIO (Pure <$> m))
src/Pipes/Tutorial.hs view
@@ -750,7 +750,7 @@ A 'Pipe' is a monad transformer that is a mix between a 'Producer' and 'Consumer', because a 'Pipe' can both 'await' and 'yield'. The following- example 'Pipe' is analagous to the Prelude's 'take', only allowing a fixed+ example 'Pipe' is analogous to the Prelude's 'take', only allowing a fixed number of values to flow through: > -- take.hs