@@ -1,3 +1,4 @@
1+{-# LANGUAGE CPP #-}
12{-# LANGUAGE DeriveGeneric #-}
23{-# LANGUAGE GeneralizedNewtypeDeriving #-}
34{-# LANGUAGE NamedFieldPuns #-}
@@ -97,7 +98,11 @@ instance ToJSON Get where
9798 toJSON (Get q) = object . catMaybes . queryKVs $ q
9899 toEncoding (Get q) = pairs . mconcat . catMaybes . queryKVs $ q
99100
101+#if MIN_VERSION_aeson(2, 2, 0)
100102queryKVs :: forall e kv. KeyValue e kv => Query -> [Maybe kv]
103+#else
104+queryKVs :: forall kv. KeyValue kv => Query -> [Maybe kv]
105+#endif
101106queryKVs = fmap go
102107 where
103108 go :: (BS.ByteString, Maybe BS.ByteString) -> Maybe kv
@@ -150,7 +155,11 @@ instance ToJSON IP where
150155 toJSON (IP ip) = toJSON (show ip)
151156 toEncoding (IP ip) = toEncoding (show ip)
152157
158+#if MIN_VERSION_aeson(2, 2, 0)
153159requestKVs :: (KeyValue e kv, RemoveHeaders headers) => Request headers -> [kv]
160+#else
161+requestKVs :: (KeyValue kv, RemoveHeaders headers) => Request headers -> [kv]
162+#endif
154163requestKVs Request{get, headers, method, queryString, rawBody, url, userIP} =
155164 [ "body" .= rawBody
156165 , "GET" .= get