conduit 1.0.3 → 1.0.4
raw patch · 3 files changed
+14/−3 lines, 3 filesdep +mmorphPVP ok
version bump matches the API change (PVP)
Dependencies added: mmorph
API changes (from Hackage documentation)
+ Data.Conduit.Internal: instance MFunctor (ConduitM i o)
+ Data.Conduit.Internal: instance MFunctor (Pipe l i o u)
Files
- Data/Conduit.hs +4/−1
- Data/Conduit/Internal.hs +8/−1
- conduit.cabal +2/−1
Data/Conduit.hs view
@@ -64,6 +64,7 @@ import Control.Monad.Trans.Resource import Data.Conduit.Internal hiding (await, awaitForever, yield, yieldOr, leftover, bracketP, addCleanup, transPipe, mapOutput, mapOutputMaybe, mapInput) import qualified Data.Conduit.Internal as CI+import Control.Monad.Morph (hoist) -- Define fixity of all our operators infixr 0 $$@@ -208,9 +209,11 @@ -- -- <https://github.com/snoyberg/conduit/wiki/Dealing-with-monad-transformers> --+-- This function is just a synonym for 'hoist'.+-- -- Since 0.4.0 transPipe :: Monad m => (forall a. m a -> n a) -> ConduitM i o m r -> ConduitM i o n r-transPipe f = ConduitM . CI.transPipe f . unConduitM+transPipe = hoist -- | Apply a function to all the output values of a @ConduitM@. --
Data/Conduit/Internal.hs view
@@ -60,6 +60,7 @@ import Control.Monad.Trans.Resource import qualified GHC.Exts import qualified Data.IORef as I+import Control.Monad.Morph -- | The underlying datatype for all the types in this package. In has six -- type parameters:@@ -147,7 +148,7 @@ -- -- Since 1.0.0 newtype ConduitM i o m r = ConduitM { unConduitM :: Pipe i i o () m r }- deriving (Functor, Applicative, Monad, MonadIO, MonadTrans, MonadThrow, MonadActive, MonadResource)+ deriving (Functor, Applicative, Monad, MonadIO, MonadTrans, MonadThrow, MonadActive, MonadResource, MFunctor) instance MonadBase base m => MonadBase base (ConduitM i o m) where liftBase = lift . liftBase instance Monad m => Monoid (ConduitM i o m ()) where@@ -435,6 +436,8 @@ -- -- <https://github.com/snoyberg/conduit/wiki/Dealing-with-monad-transformers> --+-- This function is just a synonym for 'hoist'.+-- -- Since 0.4.0 transPipe :: Monad m => (forall a. m a -> n a) -> Pipe l i o u m r -> Pipe l i o u n r transPipe f (HaveOutput p c o) = HaveOutput (transPipe f p) (f c) o@@ -629,3 +632,7 @@ go (Done r) = Done r go (PipeM mp) = PipeM (liftM go mp) go (Leftover p l) = Leftover (go p) l++-- | Since 1.0.4+instance MFunctor (Pipe l i o u) where+ hoist = transPipe
conduit.cabal view
@@ -1,5 +1,5 @@ Name: conduit-Version: 1.0.3+Version: 1.0.4 Synopsis: Streaming data processing library. Description: @conduit@ is a solution to the streaming data problem, allowing for production, transformation, and consumption of streams of data in constant memory. It is an alternative to lazy I\/O which guarantees deterministic resource handling, and fits in the same general solution space as @enumerator@\/@iteratee@ and @pipes@. For a tutorial, please visit <https://haskell.fpcomplete.com/user/snoyberg/library-documentation/conduit-overview>.@@ -57,6 +57,7 @@ , bytestring >= 0.9 , text >= 0.11 , void >= 0.5.5 && < 0.6+ , mmorph ghc-options: -Wall test-suite test