packages feed

streaming-conduit 0.1.2.2 → 0.1.3.0

raw patch · 4 files changed

+22/−4 lines, 4 filesdep ~streaming-bytestringnew-uploaderPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

Dependency ranges changed: streaming-bytestring

API changes (from Hackage documentation)

+ Streaming.Conduit: sinkBStream :: Monad m => Consumer ByteString m r -> ByteString m () -> m r
+ Streaming.Conduit: sinkStream :: Monad m => Consumer i m r -> Stream (Of i) m () -> m r
- Streaming.Conduit: asConduit :: (Monad m) => (Stream (Of i) m () -> Stream (Of o) m r) -> ConduitM i o m r
+ Streaming.Conduit: asConduit :: Monad m => (Stream (Of i) m () -> Stream (Of o) m r) -> ConduitM i o m r
- Streaming.Conduit: asStream :: (Monad m) => Conduit i m o -> Stream (Of i) m () -> Stream (Of o) m ()
+ Streaming.Conduit: asStream :: Monad m => Conduit i m o -> Stream (Of i) m () -> Stream (Of o) m ()
- Streaming.Conduit: fromBStream :: (Monad m) => ByteString m r -> ConduitM i ByteString m r
+ Streaming.Conduit: fromBStream :: Monad m => ByteString m r -> ConduitM i ByteString m r
- Streaming.Conduit: fromBStreamProducer :: (Monad m) => ByteString m r -> Producer m ByteString
+ Streaming.Conduit: fromBStreamProducer :: Monad m => ByteString m r -> Producer m ByteString
- Streaming.Conduit: fromStream :: (Monad m) => Stream (Of o) m r -> ConduitM i o m r
+ Streaming.Conduit: fromStream :: Monad m => Stream (Of o) m r -> ConduitM i o m r
- Streaming.Conduit: fromStreamProducer :: (Monad m) => Stream (Of a) m r -> Producer m a
+ Streaming.Conduit: fromStreamProducer :: Monad m => Stream (Of a) m r -> Producer m a
- Streaming.Conduit: fromStreamSource :: (Monad m) => Stream (Of a) m r -> Source m a
+ Streaming.Conduit: fromStreamSource :: Monad m => Stream (Of a) m r -> Source m a
- Streaming.Conduit: toBStream :: (Monad m) => Producer m ByteString -> ByteString m ()
+ Streaming.Conduit: toBStream :: Monad m => Producer m ByteString -> ByteString m ()
- Streaming.Conduit: toStream :: (Monad m) => Producer m o -> Stream (Of o) m ()
+ Streaming.Conduit: toStream :: Monad m => Producer m o -> Stream (Of o) m ()

Files

ChangeLog.md view
@@ -1,5 +1,9 @@ # Revision history for streaming-conduit +## 0.1.3.0 -- 2023-05-13++* Support `streaming-bytestring-0.3`+ ## 0.1.2.2 -- 2018-02-11  * Add support for conduit-1.3.0.
src/Streaming/Conduit.hs view
@@ -33,15 +33,17 @@     -- * Converting from Conduits   , toStream   , asStream+  , sinkStream     -- ** ByteString support   , toBStream+  , sinkBStream   ) where  import           Control.Monad             (join, void) import           Control.Monad.Trans.Class (lift) import           Data.ByteString           (ByteString) import qualified Data.ByteString.Streaming as B-import           Data.Conduit              (Conduit, ConduitM, Producer, Source,+import           Data.Conduit              (Conduit, ConduitM, Producer, Source, Consumer,                                             await, runConduit, transPipe, (.|)) import qualified Data.Conduit.List         as CL import           Streaming                 (Of, Stream)@@ -70,7 +72,7 @@  -- | A more specialised variant of 'fromBStream'. fromBStreamProducer :: (Monad m) => B.ByteString m r -> Producer m ByteString-fromBStreamProducer = CL.unfoldM B.unconsChunk . void+fromBStreamProducer = CL.unfoldEitherM B.unconsChunk . void  -- | Convert a 'Producer' to a 'Stream'.  Subject to fusion. --@@ -89,6 +91,16 @@ --   fusion. asStream :: (Monad m) => Conduit i m o -> Stream (Of i) m () -> Stream (Of o) m () asStream cnd stream = toStream (fromStream stream .| cnd)++-- | Treat a 'Consumer' as a function which consumes a 'Stream'.+--   Subject to fusion.+sinkStream :: (Monad m) => Consumer i m r -> Stream (Of i) m () -> m r+sinkStream cns stream = runConduit (fromStream stream .| cns)++-- | Treat a 'Consumer' as a function which consumes a 'B.ByteString'.+--   Subject to fusion.+sinkBStream :: (Monad m) => Consumer ByteString m r -> B.ByteString m () -> m r+sinkBStream cns stream = runConduit (fromBStream stream .| cns)  -- | Treat a function between 'Stream's as a 'Conduit'.  May be --   subject to fusion.
streaming-conduit.cabal view
@@ -1,5 +1,5 @@ name:                streaming-conduit-version:             0.1.2.2+version:             0.1.3.0 synopsis:            Bidirectional support between the streaming and conduit libraries description:         Allow interoperability between the streaming and conduit data streaming ecosystems. license:             MIT@@ -23,7 +23,7 @@                      , bytestring                      , conduit >= 1.2.11 && < 1.4                      , streaming >= 0.1.3.0 && < 0.3-                     , streaming-bytestring == 0.1.*+                     , streaming-bytestring >= 0.3 && < 0.4                      , transformers >= 0.2   hs-source-dirs:      src   default-language:    Haskell2010
test/conversions.hs view
@@ -40,6 +40,8 @@       testPipeline (\xs f -> streamList . S.map f $ toStream (C.sourceList xs))     prop "asStream" $       testPipeline (\xs f -> streamList . asStream (C.map f) $ S.each xs)+    prop "sinkStream" $+      testPipeline (\xs f -> runIdentity $ sinkStream C.consume $ S.map f $ S.each xs)  conduitList :: C.Source Identity a -> [a] conduitList = runIdentity . C.sourceToList