packages feed

composite-aeson 0.7.2.0 → 0.7.3.0

raw patch · 5 files changed

+16/−7 lines, 5 files

Files

composite-aeson.cabal view
@@ -4,10 +4,10 @@ -- -- see: https://github.com/sol/hpack ----- hash: 7d5fd2a78928c12027d23895f74b3c815ebc88753dd2fb7f074caba91804d774+-- hash: 732f90c13a3229400138195b439fa0d4a36ab8a8240dcff826eec5fcdeb45d76  name:           composite-aeson-version:        0.7.2.0+version:        0.7.3.0 synopsis:       JSON for Vinyl records description:    Integration between Aeson and Vinyl records allowing records to be easily converted to JSON using automatic derivation, explicit formats, or a mix of both. category:       Records
src/Composite/Aeson/Formats/DateTime.hs view
@@ -11,7 +11,6 @@ import Control.Monad.Error.Class (throwError) import qualified Data.Aeson.BetterErrors as ABE import Data.Either (partitionEithers)-import Data.Monoid ((<>)) import Data.List (intercalate) import Data.List.NonEmpty (NonEmpty((:|))) import qualified Data.List.NonEmpty as NEL@@ -110,5 +109,8 @@ #endif successOrFail _ f (Success a) = f a successOrFail f _ (Fail    s) = f s+#if __GLASGOW_HASKELL__ >= 810+successOrFail f _ _           = f "pattern matching should have been exhaustive, but GHC disagreed"+#endif  
src/Composite/Aeson/Formats/Generic.hs view
@@ -1,3 +1,4 @@+{-# LANGUAGE CPP #-} module Composite.Aeson.Formats.Generic   ( abeJsonFormat, aesonJsonFormat, jsonArrayFormat, jsonObjectFormat   , SumStyle(..), sumFromJson, sumToJson, jsonSumFormat@@ -13,10 +14,14 @@ import qualified Data.HashMap.Strict as StrictHashMap import Data.List.NonEmpty (NonEmpty((:|))) import qualified Data.List.NonEmpty as NEL-import Data.Monoid ((<>)) import Data.Text (Text, intercalate, unpack) import qualified Data.Vector as Vector-import Language.Haskell.TH.Syntax (Lift, lift, liftString)+import Language.Haskell.TH.Syntax+  ( Lift, lift, liftString+#if MIN_VERSION_template_haskell(2,16,0)+  , liftTyped, TExp(TExp)+#endif+  )  -- |Produce an explicit 'JsonFormat' by using the implicit Aeson 'ToJSON' instance and an explicit @aeson-better-errors@ 'ABE.Parse'. abeJsonFormat :: ToJSON a => ABE.Parse e a -> JsonFormat e a@@ -148,6 +153,10 @@     SumStyleFieldName     -> [| SumStyleFieldName |]     SumStyleTypeValue a b -> [| SumStyleTypeValue $(liftString $ unpack a) $(liftString $ unpack b) |]     SumStyleMergeType a   -> [| SumStyleMergeType $(liftString $ unpack a) |]+#if MIN_VERSION_template_haskell(2,16,0)+  liftTyped = fmap TExp . lift+#endif+  -- |Helper used by the various sum format functions which takes a list of input format pairs and makes an oxford comma list of them. expectedFieldsForInputs :: NonEmpty (Text, x) -> String
src/Composite/Aeson/Formats/InternalTH.hs view
@@ -8,7 +8,6 @@ import qualified Data.Aeson.BetterErrors as ABE import qualified Data.HashMap.Lazy as HM import Data.List (foldl')-import Data.Monoid ((<>)) import Data.Text (Text) import qualified Data.Vector as V import Language.Haskell.TH
src/Composite/Aeson/TH.hs view
@@ -14,7 +14,6 @@ import Control.Lens (_head, over) import Data.Aeson (FromJSON(parseJSON), ToJSON(toJSON)) import Data.Char (toLower)-import Data.Monoid ((<>)) import Language.Haskell.TH   ( Q, clause, cxt   , normalB