conduit 1.2.9.1 → 1.2.10
raw patch · 4 files changed
+19/−1 lines, 4 filesdep +primitivePVP ok
version bump matches the API change (PVP)
Dependencies added: primitive
API changes (from Hackage documentation)
Files
- ChangeLog.md +5/−0
- Data/Conduit/Internal/Conduit.hs +6/−0
- Data/Conduit/Internal/Pipe.hs +6/−0
- conduit.cabal +2/−1
ChangeLog.md view
@@ -1,3 +1,8 @@+## 1.2.10++* Add `PrimMonad` instances for `ConduitM` and `Pipe`+ [#306](https://github.com/snoyberg/conduit/pull/306)+ ## 1.2.9.1 * Ensure downstream and inner sink receive same inputs in
Data/Conduit/Internal/Conduit.hs view
@@ -8,6 +8,7 @@ {-# LANGUAGE RankNTypes #-} {-# LANGUAGE TupleSections #-} {-# LANGUAGE Trustworthy #-}+{-# LANGUAGE TypeFamilies #-} module Data.Conduit.Internal.Conduit ( -- ** Types ConduitM (..)@@ -98,6 +99,7 @@ import Control.Monad.Trans.Class (MonadTrans (lift)) import Control.Monad.IO.Class (MonadIO (liftIO)) import Control.Monad.Base (MonadBase (liftBase))+import Control.Monad.Primitive (PrimMonad, PrimState, primitive) import Data.Void (Void, absurd) import Data.Monoid (Monoid (mappend, mempty)) import Control.Monad.Trans.Resource@@ -250,6 +252,10 @@ {-# INLINE mempty #-} mappend = (>>) {-# INLINE mappend #-}++instance PrimMonad m => PrimMonad (ConduitM i o m) where+ type PrimState (ConduitM i o m) = PrimState m+ primitive = lift . primitive -- | Provides a stream of output values, without consuming any input or -- producing a final result.
Data/Conduit/Internal/Pipe.hs view
@@ -7,6 +7,7 @@ {-# LANGUAGE RankNTypes #-} {-# LANGUAGE TupleSections #-} {-# LANGUAGE Trustworthy #-}+{-# LANGUAGE TypeFamilies #-} module Data.Conduit.Internal.Pipe ( -- ** Types Pipe (..)@@ -55,6 +56,7 @@ import Control.Monad.Trans.Class (MonadTrans (lift)) import Control.Monad.IO.Class (MonadIO (liftIO)) import Control.Monad.Base (MonadBase (liftBase))+import Control.Monad.Primitive (PrimMonad, PrimState, primitive) import Data.Void (Void, absurd) import Data.Monoid (Monoid (mappend, mempty)) import Control.Monad.Trans.Resource@@ -154,6 +156,10 @@ {-# INLINE mempty #-} mappend = (>>) {-# INLINE mappend #-}++instance PrimMonad m => PrimMonad (Pipe l i o u m) where+ type PrimState (Pipe l i o u m) = PrimState m+ primitive = lift . primitive instance MonadResource m => MonadResource (Pipe l i o u m) where liftResourceT = lift . liftResourceT
conduit.cabal view
@@ -1,5 +1,5 @@ Name: conduit-Version: 1.2.9.1+Version: 1.2.10 Synopsis: Streaming data processing library. description: `conduit` is a solution to the streaming data problem, allowing for production,@@ -42,6 +42,7 @@ , mtl , mmorph , monad-control+ , primitive if !impl(ghc>=7.9) build-depends: void >= 0.5.5 ghc-options: -Wall