hakyll 3.0.0.4 → 3.0.1.0
raw patch · 6 files changed
+76/−35 lines, 6 filesPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
API changes (from Hackage documentation)
- Hakyll.Core.CopyFile: CopyFile :: FilePath -> CopyFile
- Hakyll.Core.CopyFile: copyFileCompiler :: Compiler Resource CopyFile
- Hakyll.Core.CopyFile: instance Binary CopyFile
- Hakyll.Core.CopyFile: instance Eq CopyFile
- Hakyll.Core.CopyFile: instance Ord CopyFile
- Hakyll.Core.CopyFile: instance Show CopyFile
- Hakyll.Core.CopyFile: instance Typeable CopyFile
- Hakyll.Core.CopyFile: instance Writable CopyFile
- Hakyll.Core.CopyFile: newtype CopyFile
- Hakyll.Core.CopyFile: unCopyFile :: CopyFile -> FilePath
+ Hakyll.Core.Writable.CopyFile: CopyFile :: FilePath -> CopyFile
+ Hakyll.Core.Writable.CopyFile: copyFileCompiler :: Compiler Resource CopyFile
+ Hakyll.Core.Writable.CopyFile: instance Binary CopyFile
+ Hakyll.Core.Writable.CopyFile: instance Eq CopyFile
+ Hakyll.Core.Writable.CopyFile: instance Ord CopyFile
+ Hakyll.Core.Writable.CopyFile: instance Show CopyFile
+ Hakyll.Core.Writable.CopyFile: instance Typeable CopyFile
+ Hakyll.Core.Writable.CopyFile: instance Writable CopyFile
+ Hakyll.Core.Writable.CopyFile: newtype CopyFile
+ Hakyll.Core.Writable.CopyFile: unCopyFile :: CopyFile -> FilePath
+ Hakyll.Core.Writable.WritableTuple: WritableTuple :: (a, b) -> WritableTuple a b
+ Hakyll.Core.Writable.WritableTuple: instance (Binary a, Binary b) => Binary (WritableTuple a b)
+ Hakyll.Core.Writable.WritableTuple: instance (Eq a, Eq b) => Eq (WritableTuple a b)
+ Hakyll.Core.Writable.WritableTuple: instance (Ord a, Ord b) => Ord (WritableTuple a b)
+ Hakyll.Core.Writable.WritableTuple: instance (Show a, Show b) => Show (WritableTuple a b)
+ Hakyll.Core.Writable.WritableTuple: instance Typeable2 WritableTuple
+ Hakyll.Core.Writable.WritableTuple: instance Writable a => Writable (WritableTuple a b)
+ Hakyll.Core.Writable.WritableTuple: newtype WritableTuple a b
+ Hakyll.Core.Writable.WritableTuple: unWritableTuple :: WritableTuple a b -> (a, b)
+ Hakyll.Core.Writable.WritableTuple: writableTupleCompiler :: Compiler (a, b) (WritableTuple a b)
+ Hakyll.Core.Writable.WritableTuple: writableTupleFst :: WritableTuple a b -> a
+ Hakyll.Core.Writable.WritableTuple: writableTupleSnd :: WritableTuple a b -> b
Files
- hakyll.cabal +3/−2
- src/Hakyll.hs +4/−2
- src/Hakyll/Core/CompiledItem.hs +3/−2
- src/Hakyll/Core/CopyFile.hs +0/−29
- src/Hakyll/Core/Writable/CopyFile.hs +29/−0
- src/Hakyll/Core/Writable/WritableTuple.hs +37/−0
hakyll.cabal view
@@ -1,5 +1,5 @@ Name: hakyll-Version: 3.0.0.4+Version: 3.0.1.0 Synopsis: A simple static site generator library. Description: A simple static site generator library, mainly aimed at@@ -89,10 +89,11 @@ Hakyll.Core.ResourceProvider Hakyll.Core.CompiledItem Hakyll.Core.Compiler- Hakyll.Core.CopyFile Hakyll.Core.Run Hakyll.Core.Store Hakyll.Core.Writable+ Hakyll.Core.Writable.CopyFile+ Hakyll.Core.Writable.WritableTuple Hakyll.Core.Identifier Hakyll.Core.DirectedGraph.Dot Hakyll.Core.DirectedGraph.DependencySolver
src/Hakyll.hs view
@@ -2,7 +2,6 @@ -- module Hakyll ( module Hakyll.Core.Compiler- , module Hakyll.Core.CopyFile , module Hakyll.Core.Configuration , module Hakyll.Core.Identifier , module Hakyll.Core.Identifier.Pattern@@ -14,6 +13,8 @@ , module Hakyll.Core.Util.File , module Hakyll.Core.Util.String , module Hakyll.Core.Writable+ , module Hakyll.Core.Writable.CopyFile+ , module Hakyll.Core.Writable.WritableTuple , module Hakyll.Main , module Hakyll.Web.CompressCss , module Hakyll.Web.Feed@@ -29,7 +30,6 @@ ) where import Hakyll.Core.Compiler-import Hakyll.Core.CopyFile import Hakyll.Core.Configuration import Hakyll.Core.Identifier import Hakyll.Core.Identifier.Pattern@@ -41,6 +41,8 @@ import Hakyll.Core.Util.File import Hakyll.Core.Util.String import Hakyll.Core.Writable+import Hakyll.Core.Writable.CopyFile+import Hakyll.Core.Writable.WritableTuple import Hakyll.Main import Hakyll.Web.CompressCss import Hakyll.Web.Feed
src/Hakyll/Core/CompiledItem.hs view
@@ -15,7 +15,7 @@ ) where import Data.Binary (Binary)-import Data.Typeable (Typeable, cast)+import Data.Typeable (Typeable, cast, typeOf) import Data.Maybe (fromMaybe) import Hakyll.Core.Writable@@ -42,4 +42,5 @@ -> a unCompiledItem (CompiledItem x) = fromMaybe error' $ cast x where- error' = error "Hakyll.Core.CompiledItem.unCompiledItem: Unsupported type"+ error' = error $ "Hakyll.Core.CompiledItem.unCompiledItem: "+ ++ "unsupported type (got " ++ show (typeOf x) ++ ")"
− src/Hakyll/Core/CopyFile.hs
@@ -1,29 +0,0 @@--- | Exports simple compilers to just copy files----{-# LANGUAGE GeneralizedNewtypeDeriving, DeriveDataTypeable #-}-module Hakyll.Core.CopyFile- ( CopyFile (..)- , copyFileCompiler- ) where--import Control.Arrow ((>>^))-import System.Directory (copyFile)--import Data.Typeable (Typeable)-import Data.Binary (Binary)--import Hakyll.Core.ResourceProvider-import Hakyll.Core.Writable-import Hakyll.Core.Compiler-import Hakyll.Core.Identifier---- | Newtype construct around 'FilePath' which will copy the file directly----newtype CopyFile = CopyFile {unCopyFile :: FilePath}- deriving (Show, Eq, Ord, Binary, Typeable)--instance Writable CopyFile where- write dst (CopyFile src) = copyFile src dst--copyFileCompiler :: Compiler Resource CopyFile-copyFileCompiler = getIdentifier >>^ CopyFile . toFilePath
+ src/Hakyll/Core/Writable/CopyFile.hs view
@@ -0,0 +1,29 @@+-- | Exports simple compilers to just copy files+--+{-# LANGUAGE GeneralizedNewtypeDeriving, DeriveDataTypeable #-}+module Hakyll.Core.Writable.CopyFile+ ( CopyFile (..)+ , copyFileCompiler+ ) where++import Control.Arrow ((>>^))+import System.Directory (copyFile)++import Data.Typeable (Typeable)+import Data.Binary (Binary)++import Hakyll.Core.ResourceProvider+import Hakyll.Core.Writable+import Hakyll.Core.Compiler+import Hakyll.Core.Identifier++-- | Newtype construct around 'FilePath' which will copy the file directly+--+newtype CopyFile = CopyFile {unCopyFile :: FilePath}+ deriving (Show, Eq, Ord, Binary, Typeable)++instance Writable CopyFile where+ write dst (CopyFile src) = copyFile src dst++copyFileCompiler :: Compiler Resource CopyFile+copyFileCompiler = getIdentifier >>^ CopyFile . toFilePath
+ src/Hakyll/Core/Writable/WritableTuple.hs view
@@ -0,0 +1,37 @@+-- | This module exposes a writable type 'WritableTuple' which is a simple+-- newtype wrapper around a tuple.+--+-- The idea is that, given a tuple @(a, b)@, @a@ is the value you actually want+-- to save to the disk, and @b@ is some additional info that you /don't/ want to+-- save, but that you need later, for example in a 'require' clause.+--+{-# LANGUAGE GeneralizedNewtypeDeriving, DeriveDataTypeable #-}+module Hakyll.Core.Writable.WritableTuple+ ( WritableTuple (..)+ , writableTupleFst+ , writableTupleSnd+ , writableTupleCompiler+ ) where++import Control.Arrow (arr)++import Data.Typeable (Typeable)+import Data.Binary (Binary)++import Hakyll.Core.Writable+import Hakyll.Core.Compiler++newtype WritableTuple a b = WritableTuple {unWritableTuple :: (a, b)}+ deriving (Show, Eq, Ord, Binary, Typeable)++instance Writable a => Writable (WritableTuple a b) where+ write dst (WritableTuple (x, _)) = write dst x++writableTupleFst :: WritableTuple a b -> a+writableTupleFst = fst . unWritableTuple++writableTupleSnd :: WritableTuple a b -> b+writableTupleSnd = snd . unWritableTuple++writableTupleCompiler :: Compiler (a, b) (WritableTuple a b)+writableTupleCompiler = arr WritableTuple