yesod-core 1.6.4 → 1.6.5
raw patch · 3 files changed
+18/−1 lines, 3 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
+ Yesod.Core.Handler: fileSourceByteString :: MonadResource m => FileInfo -> m ByteString
Files
- ChangeLog.md +4/−0
- Yesod/Core/Handler.hs +13/−0
- yesod-core.cabal +1/−1
ChangeLog.md view
@@ -1,3 +1,7 @@+## 1.6.5++* Add `fileSourceByteString` [#1503](https://github.com/yesodweb/yesod/pull/1503)+ ## 1.6.4 * Add `addContentDispositionFileName` [#1504](https://github.com/yesodweb/yesod/pull/1504)
Yesod/Core/Handler.hs view
@@ -47,6 +47,7 @@ , fileName , fileContentType , fileSource+ , fileSourceByteString , fileMove -- *** Convenience functions , languages@@ -253,6 +254,7 @@ import qualified Data.Conduit.List as CL import Control.Monad.Trans.Resource (MonadResource, InternalState, runResourceT, withInternalState, getInternalState, liftResourceT, resourceForkIO) import qualified System.PosixCompat.Files as PC+import Conduit ((.|), runConduit, sinkLazy) import Data.Conduit (ConduitT, transPipe, Flush (Flush), yield, Void) import qualified Yesod.Core.TypeCache as Cache import qualified Data.Word8 as W8@@ -1380,6 +1382,17 @@ -- to work in any @MonadResource@. fileSource :: MonadResource m => FileInfo -> ConduitT () S.ByteString m () fileSource = transPipe liftResourceT . fileSourceRaw++-- | Extract a strict `ByteString` body from a `FileInfo`.+--+-- This function will block while reading the file.+--+-- > do+-- > fileByteString <- fileSourceByteString fileInfo+--+-- @since 1.6.5+fileSourceByteString :: MonadResource m => FileInfo -> m S.ByteString+fileSourceByteString fileInfo = runConduit (L.toStrict <$> (fileSource fileInfo .| sinkLazy)) -- | Provide a pure value for the response body. --
yesod-core.cabal view
@@ -1,5 +1,5 @@ name: yesod-core-version: 1.6.4+version: 1.6.5 license: MIT license-file: LICENSE author: Michael Snoyman <michael@snoyman.com>