hakyll-dhall 0.2.2.2 → 0.2.3.0
raw patch · 3 files changed
+29/−34 lines, 3 filesdep ~dhall
Dependency ranges changed: dhall
Files
- CHANGELOG.md +19/−0
- hakyll-dhall.cabal +5/−5
- src/Hakyll/Web/Dhall.hs +5/−29
CHANGELOG.md view
@@ -1,6 +1,25 @@ CHANGELOG ========= +Version 0.2.3.0+---------------++*May 16, 2019*++<https://github.com/mstksg/hakyll-dhall/releases/tag/v0.2.3.0>++* Compatibility with *dhall-1.22* and *dhall-1.23*; however, support for+ *dhall-1.21* or lower is dropped.++Version 0.2.2.2+---------------++*November 25, 2018*++<https://github.com/mstksg/hakyll-dhall/releases/tag/v0.2.2.2>++* Compatibility with *dhall-1.19*.+ Version 0.2.2.2 ---------------
hakyll-dhall.cabal view
@@ -1,13 +1,13 @@ cabal-version: 1.12 --- This file has been generated from package.yaml by hpack version 0.31.0.+-- This file has been generated from package.yaml by hpack version 0.31.1. -- -- see: https://github.com/sol/hpack ----- hash: 71ed27b0b23bc5be30c2812fb6e555b961beb211f959d6ada0f612daf17420c1+-- hash: 527273a80edbd480ea9814bed3eef0477743d6d989902d5e6a22547b01dfe821 name: hakyll-dhall-version: 0.2.2.2+version: 0.2.3.0 synopsis: Dhall compiler for Hakyll description: Hakyll compiler and loader for Dhall files. Functions are intended to track all local dependencies within the project directory, so rebuilds are@@ -53,7 +53,7 @@ , cborg , containers , data-default-class- , dhall >=1.17+ , dhall >=1.22 , filepath , hakyll >=4.10 , lens-family-core@@ -72,7 +72,7 @@ ghc-options: -Wall -Wcompat -Wredundant-constraints -threaded -rtsopts -with-rtsopts=-N build-depends: base >=4.7 && <5- , dhall >=1.17+ , dhall >=1.22 , hakyll >=4.10 , hakyll-dhall default-language: Haskell2010
src/Hakyll/Web/Dhall.hs view
@@ -1,5 +1,4 @@ {-# LANGUAGE AllowAmbiguousTypes #-}-{-# LANGUAGE CPP #-} {-# LANGUAGE ConstraintKinds #-} {-# LANGUAGE DeriveDataTypeable #-} {-# LANGUAGE DeriveGeneric #-}@@ -75,7 +74,7 @@ import Control.Monad.Trans.State.Strict import Data.Default.Class import Data.IORef-import Data.Maybe+import Data.Maybe as M import Data.Typeable (Typeable) import Dhall import Dhall.Binary@@ -113,41 +112,18 @@ newtype DExpr a = DExpr { getDExpr :: Expr Src a } deriving (Generic, Typeable) -instance (DefaultDhallResolver a, PP.Pretty a) => Bi.Binary (DExpr a) where+instance (PP.Pretty a, ToTerm a, FromTerm a) => Bi.Binary (DExpr a) where put = Bi.putBuilder . CBOR.toBuilder . CBOR.encodeTerm-#if MIN_VERSION_dhall(1,18,0)- . encodeWithVersion defaultStandardVersion-#else- . encode V_1_0-#endif- . fmap toImport+ . encode . getDExpr- where- toImport = case defaultDhallResolver @a of- DRRaw _ -> id- DRFull _ -> absurd get = do bs <- Bi.getRemainingLazyByteString (_, t) <- either (fail . show) pure $ CBOR.deserialiseFromBytes CBOR.decodeTerm bs- e <- either (fail . show) pure $-#if MIN_VERSION_dhall(1,18,0)- decodeWithVersion t-#else- decode t-#endif- DExpr <$> traverse fromImport e- where- fromImport i = case defaultDhallResolver @a of- DRRaw _ -> pure i- DRFull _ -> fail $- "Unexpected import in deserialization of `DExpr X`: "- ++ T.unpack (iStr i)- iStr = PP.renderStrict- . PP.layoutSmart layoutOpts- . PP.pretty @Import+ M.maybe (fail "dhall decode failure") (pure . DExpr) $+ decode t -- | Automatically "pretty prints" in multi-line form. For more -- fine-grained results, see 'dhallPrettyCompilerWith' and family.