diff options
author | Igor Pashev <pashev.igor@gmail.com> | 2021-07-17 20:19:28 +0200 |
---|---|---|
committer | Igor Pashev <pashev.igor@gmail.com> | 2021-07-17 20:19:28 +0200 |
commit | 8ce817dd4453f35ce92afa531c540554429c7299 (patch) | |
tree | 90236cdc7e59bdf99b32467b89adcb8c5a0b8e22 /lib/Hakyll/Core/Store.hs | |
parent | b861c20ff2d7460061e73492e3a945e48ef40bac (diff) | |
parent | d739fd1eea40de9ded3b4f682c849d3c31eba92c (diff) | |
download | hakyll-8ce817dd4453f35ce92afa531c540554429c7299.tar.gz |
Merge branch 'master' of https://github.com/jaspervdj/hakyll
Diffstat (limited to 'lib/Hakyll/Core/Store.hs')
-rw-r--r-- | lib/Hakyll/Core/Store.hs | 29 |
1 files changed, 3 insertions, 26 deletions
diff --git a/lib/Hakyll/Core/Store.hs b/lib/Hakyll/Core/Store.hs index bfcd191..da16c6f 100644 --- a/lib/Hakyll/Core/Store.hs +++ b/lib/Hakyll/Core/Store.hs @@ -16,20 +16,14 @@ module Hakyll.Core.Store -------------------------------------------------------------------------------- -import qualified Data.ByteArray as BA -import qualified Crypto.Hash as CH +import qualified Data.Hashable as DH import Data.Binary (Binary, decode, encodeFile) -import qualified Data.ByteString as B import qualified Data.ByteString.Lazy as BL import qualified Data.Cache.LRU.IO as Lru import Data.List (intercalate) import Data.Maybe (isJust) -import qualified Data.Text as T -import qualified Data.Text.Encoding as T import Data.Typeable (TypeRep, Typeable, cast, typeOf) -import Numeric (showHex) -import System.Directory (createDirectoryIfMissing) -import System.Directory (doesFileExist, removeFile) +import System.Directory (createDirectoryIfMissing, doesFileExist, removeFile) import System.FilePath ((</>)) import System.IO (IOMode (..), hClose, openFile) import System.IO.Error (catchIOError, ioeSetFileName, @@ -194,21 +188,4 @@ deleteFile = (`catchIOError` \_ -> return ()) . removeFile -------------------------------------------------------------------------------- -- | Mostly meant for internal usage hash :: [String] -> String -hash = toHex . B.unpack . hashMD5 . T.encodeUtf8 . T.pack . intercalate "/" - where - toHex [] = "" - toHex (x : xs) | x < 16 = '0' : showHex x (toHex xs) - | otherwise = showHex x (toHex xs) - - --------------------------------------------------------------------------------- --- | Hash by MD5 -hashMD5 :: B.ByteString -> B.ByteString -hashMD5 x = - let - digest :: CH.Digest CH.MD5 - digest = CH.hash x - bytes :: B.ByteString - bytes = BA.convert digest - in - bytes +hash = show . DH.hash . intercalate "/"
\ No newline at end of file |