Merge branch 'master' of https://github.com/paul-rouse/yesod into paul-rouse-master

This commit is contained in:
Michael Snoyman 2016-11-11 06:52:42 +02:00
commit 253beb3107
3 changed files with 13 additions and 3 deletions

View File

@ -1,3 +1,7 @@
## 1.4.3.1
* Handle exceptions while writing a file in `addStaticContentExternal`
## 1.4.3
* Switch to `Data.Yaml.Config`

View File

@ -18,6 +18,9 @@ import qualified Data.ByteString.Lazy as L
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
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

View File

@ -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 @@ library
, bytestring
, monad-logger
, fast-logger
, conduit-extra
, conduit
, conduit-extra >= 1.1.14
, resourcet
, shakespeare
, streaming-commons
, wai-logger