Drop filesystem-conduit dependency
This commit is contained in:
parent
1b036957c2
commit
7e4ef60ae1
@ -2,17 +2,31 @@
|
|||||||
module HsFile (mkHsFile) where
|
module HsFile (mkHsFile) where
|
||||||
import Text.ProjectTemplate (createTemplate)
|
import Text.ProjectTemplate (createTemplate)
|
||||||
import Data.Conduit
|
import Data.Conduit
|
||||||
( ($$), (=$), runResourceT, ResourceT, ConduitM, awaitForever, yield )
|
( ($$), (=$), runResourceT, ResourceT, ConduitM, awaitForever, yield, Source )
|
||||||
import qualified Data.Conduit.List as CL
|
import qualified Data.Conduit.List as CL
|
||||||
import Data.Conduit.Filesystem (traverse, sourceFile)
|
|
||||||
import Prelude hiding (FilePath)
|
import Prelude hiding (FilePath)
|
||||||
import Filesystem.Path ( FilePath )
|
import Filesystem.Path ( FilePath )
|
||||||
import Filesystem.Path.CurrentOS ( encodeString )
|
import Filesystem.Path.CurrentOS ( encodeString )
|
||||||
|
import qualified Filesystem as F
|
||||||
import qualified Data.ByteString as BS
|
import qualified Data.ByteString as BS
|
||||||
import Control.Monad.IO.Class (liftIO)
|
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 :: IO ()
|
||||||
mkHsFile = runResourceT $ traverse False "."
|
mkHsFile = runResourceT $ traverse "."
|
||||||
$$ readIt
|
$$ readIt
|
||||||
=$ createTemplate
|
=$ createTemplate
|
||||||
=$ awaitForever (liftIO . BS.putStr)
|
=$ awaitForever (liftIO . BS.putStr)
|
||||||
|
|||||||
@ -90,7 +90,6 @@ executable yesod
|
|||||||
, warp >= 1.3.7.5
|
, warp >= 1.3.7.5
|
||||||
, wai >= 1.4
|
, wai >= 1.4
|
||||||
, data-default-class
|
, data-default-class
|
||||||
, filesystem-conduit >= 1.0 && < 2.0
|
|
||||||
|
|
||||||
ghc-options: -Wall -threaded
|
ghc-options: -Wall -threaded
|
||||||
main-is: main.hs
|
main-is: main.hs
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user