Drop system-filepath

This commit is contained in:
Michael Snoyman 2015-05-12 12:01:50 +03:00
parent 4fcabc073c
commit ae555aa6f0
4 changed files with 13 additions and 32 deletions

View File

@ -1,3 +1,7 @@
## 1.4.8
* Drop system-filepath
## 1.4.7.2
* Scaffolding updates, including fix for [#982](https://github.com/yesodweb/yesod/issues/982)

View File

@ -4,40 +4,19 @@ module HsFile (mkHsFile) where
import Text.ProjectTemplate (createTemplate)
import Data.Conduit
( ($$), (=$), ConduitM, awaitForever, yield, Source )
import Data.Conduit.Filesystem (sourceDirectory)
import Control.Monad.Trans.Resource (ResourceT, runResourceT)
import qualified Data.Conduit.List as CL
#if __GLASGOW_HASKELL__ >= 710
import Prelude hiding (FilePath, traverse)
#else
import Prelude hiding (FilePath)
#endif
import Filesystem.Path ( FilePath )
import Filesystem.Path.CurrentOS ( encodeString )
import qualified Filesystem as F
import qualified Data.ByteString as BS
import Control.Monad.IO.Class (liftIO)
traverse :: FilePath -> Source (ResourceT IO) FilePath
traverse dir = do
liftIO (F.listDirectory dir) >>= mapM_ go
where
go fp = do
isFile' <- liftIO $ F.isFile fp
if isFile'
then yield fp
else do
isDir <- liftIO $ F.isDirectory fp
if isDir
then traverse fp
else return ()
mkHsFile :: IO ()
mkHsFile = runResourceT $ traverse "."
mkHsFile = runResourceT $ sourceDirectory "."
$$ readIt
=$ createTemplate
=$ awaitForever (liftIO . BS.putStr)
-- Reads a filepath from upstream and dumps a pair of (filepath, filecontents)
readIt :: ConduitM FilePath (FilePath, ResourceT IO BS.ByteString) (ResourceT IO) ()
readIt = CL.map $ \i -> (i, liftIO $ BS.readFile $ encodeString i)
readIt = CL.map $ \i -> (i, liftIO $ BS.readFile i)

View File

@ -11,8 +11,8 @@ import System.Process
import Control.Monad
import System.Directory hiding (findFiles)
import Data.Maybe (mapMaybe)
import qualified Filesystem.Path.CurrentOS as F
import qualified Filesystem as F
import System.Directory (removeDirectoryRecursive)
import System.FilePath ((</>))
import qualified Codec.Archive.Tar as Tar
import Control.Exception
import qualified Data.ByteString.Lazy as L
@ -60,7 +60,7 @@ keter cabal noBuild noCopyTo = do
go ("exec", String s) = tellFile s
go ("extraFiles", Array a) = Fold.mapM_ tellExtra a
go (_, v') = findFiles v'
tellFile s = tell [F.collapse $ "config" F.</> F.fromText s]
tellFile s = tell ["config" </> T.unpack s]
tellExtra (String s) = tellFile s
tellExtra _ = error "extraFiles should be a flat array"
findFiles (Array v) = Fold.mapM_ findFiles v
@ -72,10 +72,10 @@ keter cabal noBuild noCopyTo = do
run cabal ["configure"]
run cabal ["build"]
_ <- try' $ F.removeTree "static/tmp"
_ <- try' $ removeDirectoryRecursive "static/tmp"
archive <- Tar.pack "" $
"config" : "static" : map F.encodeString bundleFiles
"config" : "static" : bundleFiles
let fp = T.unpack project ++ ".keter"
L.writeFile fp $ compress $ Tar.write archive

View File

@ -1,5 +1,5 @@
name: yesod-bin
version: 1.4.7.2
version: 1.4.8
license: MIT
license-file: LICENSE
author: Michael Snoyman <michael@snoyman.com>
@ -63,8 +63,6 @@ executable yesod
, process
, zlib >= 0.5
, tar >= 0.4 && < 0.5
, system-filepath >= 0.4 && < 0.5
, system-fileio >= 0.3 && < 0.4
, unordered-containers
, yaml >= 0.8 && < 0.9
, optparse-applicative >= 0.11