on master help sign in
Ignore unexisting files in obsolete check
427a740Jasper Van der Jeugt
src/Hakyll/Core/Util/File.hs+3−2
@@ -8,7 +8,7 @@ module Hakyll.Core.Util.File
8
8
9import System.FilePath (normalise, takeDirectory, (</>))
9import System.FilePath (normalise, takeDirectory, (</>))
10import System.Time (ClockTime)
10import System.Time (ClockTime)
11−import Control.Monad (forM)
11+import Control.Monad (forM, filterM)
12import System.Directory ( createDirectoryIfMissing, doesDirectoryExist
12import System.Directory ( createDirectoryIfMissing, doesDirectoryExist
13 , doesFileExist, getModificationTime
13 , doesFileExist, getModificationTime
14 , getDirectoryContents
14 , getDirectoryContents
@@ -48,7 +48,8 @@ isObsolete :: ClockTime -- ^ The time to check.
48 -> IO Bool
48 -> IO Bool
49isObsolete _ [] = return False
49isObsolete _ [] = return False
50isObsolete timeStamp depends = do
50isObsolete timeStamp depends = do
51+ depends' <- filterM doesFileExist depends
51− dependsModified <- mapM getModificationTime depends
52+ dependsModified <- mapM getModificationTime depends'
52 return (timeStamp < maximum dependsModified)
53 return (timeStamp < maximum dependsModified)
53
54
54-- | Check if a file is obsolete, given it's dependencies. When the file does
55-- | Check if a file is obsolete, given it's dependencies. When the file does