aeson-match-qq 1.5.0 → 1.5.1
raw patch · 3 files changed
+22/−3 lines, 3 files
Files
- CHANGELOG.markdown +8/−0
- aeson-match-qq.cabal +1/−1
- src/Aeson/Match/QQ/Internal/Value.hs +13/−2
CHANGELOG.markdown view
@@ -1,7 +1,15 @@+1.5.1+=====++ * GHC 9.2 compatibility+ 1.5.0 ===== * Streamlined API.++ * Sprinkled some CPP to support clients that have been made compatible+ with Aeson 2.0 yet, so that they do not have to use a separate release (1.3.x) 1.4.3 =====
aeson-match-qq.cabal view
@@ -5,7 +5,7 @@ -- see: https://github.com/sol/hpack name: aeson-match-qq-version: 1.5.0+version: 1.5.1 synopsis: Declarative JSON matchers. description: See README.markdown category: Web
src/Aeson/Match/QQ/Internal/Value.hs view
@@ -36,7 +36,14 @@ import Data.Vector (Vector) import qualified Data.Vector as Vector import Language.Haskell.TH (Exp(..), Lit(..))-import Language.Haskell.TH.Syntax (Lift(..), unsafeTExpCoerce)+import Language.Haskell.TH.Syntax+ ( Lift(..)+#if MIN_VERSION_template_haskell(2,17,0)+ , unsafeCodeCoerce+#else+ , unsafeTExpCoerce+#endif+ ) import Prelude hiding (any, null) @@ -152,12 +159,16 @@ } :: Value Aeson.Value |] Ext ext ->- [| Ext (let Just val = Aeson.decode (Aeson.encodingToLazyByteString (Aeson.toEncoding $(pure ext))) in val) :: Value Aeson.Value |]+ [| Ext (let ~(Just val) = Aeson.decode (Aeson.encodingToLazyByteString (Aeson.toEncoding $(pure ext))) in val) :: Value Aeson.Value |] where textL = StringL . Text.unpack liftTyped =+#if MIN_VERSION_template_haskell(2,17,0)+ unsafeCodeCoerce . lift+#else unsafeTExpCoerce . lift+#endif data TypeSig = TypeSig { type_ :: Type