yesod 1.4.3 → 1.4.3.1
raw patch · 3 files changed
+13/−3 lines, 3 filesdep +conduitdep +resourcetdep ~conduit-extra
Dependencies added: conduit, resourcet
Dependency ranges changed: conduit-extra
Files
- ChangeLog.md +4/−0
- Yesod/Default/Util.hs +5/−1
- yesod.cabal +4/−2
ChangeLog.md view
@@ -1,3 +1,7 @@+## 1.4.3.1++* Handle exceptions while writing a file in `addStaticContentExternal`+ ## 1.4.3 * Switch to `Data.Yaml.Config`
Yesod/Default/Util.hs view
@@ -18,6 +18,9 @@ import Data.Text (Text, pack, unpack) import Yesod.Core -- purposely using complete import so that Haddock will see addStaticContent import Control.Monad (when, unless)+import Control.Monad.Trans.Resource (runResourceT)+import Data.Conduit (($$))+import Data.Conduit.Binary (sourceLbs, sinkFileCautious) import System.Directory (doesFileExist, createDirectoryIfMissing) import Language.Haskell.TH.Syntax import Text.Lucius (luciusFile, luciusFileReload)@@ -43,7 +46,8 @@ addStaticContentExternal minify hash staticDir toRoute ext' _ content = do liftIO $ createDirectoryIfMissing True statictmp exists <- liftIO $ doesFileExist fn'- unless exists $ liftIO $ L.writeFile fn' content'+ unless exists $+ liftIO $ runResourceT $ sourceLbs content' $$ sinkFileCautious fn' return $ Just $ Right (toRoute ["tmp", pack fn], []) where fn, statictmp, fn' :: FilePath
yesod.cabal view
@@ -1,5 +1,5 @@ name: yesod-version: 1.4.3+version: 1.4.3.1 license: MIT license-file: LICENSE author: Michael Snoyman <michael@snoyman.com>@@ -40,7 +40,9 @@ , bytestring , monad-logger , fast-logger- , conduit-extra+ , conduit+ , conduit-extra >= 1.1.14+ , resourcet , shakespeare , streaming-commons , wai-logger