packages feed

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 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