packages feed

potoki-core 1.5.2 → 1.5.3

raw patch · 4 files changed

+28/−1 lines, 4 filesdep +bytestringPVP ok

version bump matches the API change (PVP)

Dependencies added: bytestring

API changes (from Hackage documentation)

+ Potoki.Core.Fetch: lazyByteStringRef :: IORef ByteString -> Fetch ByteString
+ Potoki.Core.Produce: lazyByteString :: ByteString -> Produce ByteString

Files

library/Potoki/Core/Fetch.hs view
@@ -1,6 +1,8 @@ module Potoki.Core.Fetch where  import Potoki.Core.Prelude+import qualified Data.ByteString.Lazy as A+import qualified Data.ByteString.Lazy.Internal as A   {-|@@ -140,3 +142,15 @@ ioMaybe :: IO (Maybe a) -> Fetch a ioMaybe io =   Fetch $ \nil just -> maybe nil just <$> io++{-# INLINE lazyByteStringRef #-}+lazyByteStringRef :: IORef A.ByteString -> Fetch ByteString+lazyByteStringRef ref =+  Fetch $ \ nil just ->+  do+    lazyByteString <- readIORef ref+    case lazyByteString of+      A.Chunk chunk remainders -> do+        writeIORef ref remainders+        return (just chunk)+      A.Empty -> return nil
library/Potoki/Core/Prelude.hs view
@@ -68,6 +68,10 @@ import Text.Read as Exports (Read(..), readMaybe, readEither) import Unsafe.Coerce as Exports +-- bytestring+-------------------------+import Data.ByteString as Exports (ByteString)+ -- profunctors ------------------------- import Data.Profunctor.Unsafe as Exports
library/Potoki/Core/Produce.hs view
@@ -3,6 +3,7 @@ import Potoki.Core.Prelude import qualified Potoki.Core.Fetch as A import qualified Potoki.Core.Transform.Types as B+import qualified Data.ByteString.Lazy as C   {-|@@ -47,3 +48,10 @@     (fetch, kill) <- produceIO     newFetch <- transformIO fetch     return (newFetch, kill)++{-# INLINE lazyByteString #-}+lazyByteString :: C.ByteString -> Produce ByteString+lazyByteString lbs =+  Produce $ do+    ref <- newIORef lbs+    return (A.lazyByteStringRef ref, return ())
potoki-core.cabal view
@@ -1,7 +1,7 @@ name:   potoki-core version:-  1.5.2+  1.5.3 synopsis:   Low-level components of "potoki" description:@@ -54,6 +54,7 @@   build-depends:     --      stm >=2.4 && <3,+    bytestring >=0.10 && <0.11,     --      profunctors >=5.2 && <6,     base >=4.7 && <5