pipes 4.3.1 → 4.3.2
raw patch · 3 files changed
+16/−2 lines, 3 files
Files
- CHANGELOG.md +9/−0
- pipes.cabal +1/−1
- src/Pipes.hs +6/−1
CHANGELOG.md view
@@ -1,3 +1,12 @@+4.3.2++* BUG FIX: Fix `MMonad` instance for `ListT`+ * The old instance was an infinite loop++4.3.1++* Support building against `ghc-7.4`+ 4.3.0 * BREAKING CHANGE: Remove `Alternative`/`MonadPlus` instances for `Proxy`
pipes.cabal view
@@ -1,5 +1,5 @@ Name: pipes-Version: 4.3.1+Version: 4.3.2 Cabal-Version: >= 1.10 Build-Type: Simple Tested-With: GHC == 7.4.2, GHC == 7.6.3, GHC == 7.8.4, GHC == 7.10.2, GHC == 8.0.1
src/Pipes.hs view
@@ -476,7 +476,12 @@ {-# INLINE hoist #-} instance MMonad ListT where- embed f m = Select (enumerate (embed f m))+ embed f (Select p0) = Select (loop p0)+ where+ loop (Request a' fa ) = Request a' (\a -> loop (fa a ))+ loop (Respond b fb') = Respond b (\b' -> loop (fb' b'))+ loop (M m ) = for (enumerate (fmap loop (f m))) id+ loop (Pure r ) = Pure r {-# INLINE embed #-} instance (Monad m) => Monoid (ListT m a) where