aeson-pretty 0.8.8 → 0.8.9
raw patch · 3 files changed
+26/−9 lines, 3 filesdep ~aesondep ~unordered-containersnew-uploaderPVP ok
version bump matches the API change (PVP)
Dependency ranges changed: aeson, unordered-containers
API changes (from Hackage documentation)
Files
- CHANGELOG.markdown +4/−0
- Data/Aeson/Encode/Pretty.hs +14/−4
- aeson-pretty.cabal +8/−5
+ CHANGELOG.markdown view
@@ -0,0 +1,4 @@+# aeson-pretty changelog++## 0.8.9+ * Added support for Aeson 2.0
Data/Aeson/Encode/Pretty.hs view
@@ -1,4 +1,4 @@-{-# LANGUAGE OverloadedStrings, RecordWildCards #-}+{-# LANGUAGE OverloadedStrings, RecordWildCards, CPP #-} -- |Aeson-compatible pretty-printing of JSON 'Value's. module Data.Aeson.Encode.Pretty (@@ -54,11 +54,15 @@ keyOrder ) where +#if MIN_VERSION_aeson(2,0,0)+import qualified Data.Aeson.Key as AK+import qualified Data.Aeson.KeyMap as AKM+#endif import Data.Aeson (Value(..), ToJSON(..))-import qualified Data.Aeson.Encode as Aeson+import qualified Data.Aeson.Text as Aeson import Data.ByteString.Lazy (ByteString) import Data.Function (on)-import qualified Data.HashMap.Strict as H (toList)+import qualified Data.HashMap.Strict as H (toList, mapKeys) import Data.List (intersperse, sortBy, elemIndex) import Data.Maybe (fromMaybe) import Data.Semigroup ((<>))@@ -170,9 +174,15 @@ fromValue st@PState{..} val = go val where go (Array v) = fromCompound st ("[","]") fromValue (V.toList v)- go (Object m) = fromCompound st ("{","}") fromPair (pSort (H.toList m))+ go (Object m) = fromCompound st ("{","}") fromPair (pSort (toList' m)) go (Number x) = fromNumber st x go v = Aeson.encodeToTextBuilder v++#if MIN_VERSION_aeson(2,0,0)+ toList' = fmap (\(k, v) -> (AK.toText k, v)) . AKM.toList+#else+ toList' = H.toList+#endif fromCompound :: PState -> (Builder, Builder)
aeson-pretty.cabal view
@@ -1,13 +1,13 @@+cabal-version: 2.0 name: aeson-pretty-version: 0.8.8+version: 0.8.9 license: BSD3 license-file: LICENSE category: Text, Web, JSON, Pretty Printer copyright: Copyright 2011 Falko Peters author: Falko Peters <falko.peters@gmail.com>-maintainer: Falko Peters <falko.peters@gmail.com>+maintainer: Martijn Bastiaan <martijn@hmbastiaan.nl> stability: experimental-cabal-version: >= 1.8 homepage: http://github.com/informatikr/aeson-pretty bug-reports: http://github.com/informatikr/aeson-pretty/issues build-type: Simple@@ -30,6 +30,7 @@ extra-source-files: README.markdown+ CHANGELOG.markdown flag lib-only description: Only build/install the library, NOT the command-line tool.@@ -40,7 +41,7 @@ Data.Aeson.Encode.Pretty build-depends:- aeson >= 0.7,+ aeson ^>= 1.0 || ^>=1.1 || ^>=1.2 || ^>=1.3 || ^>=1.4 || ^>=1.5 || ^>=2.0, base >= 4.5, base-compat >= 0.9, bytestring >= 0.9,@@ -54,11 +55,13 @@ semigroups >= 0.18.2 ghc-options: -Wall+ default-language: Haskell2010 executable aeson-pretty hs-source-dirs: cli-tool main-is: Main.hs other-modules: Paths_aeson_pretty+ autogen-modules: Paths_aeson_pretty if flag(lib-only) buildable: False@@ -72,7 +75,7 @@ cmdargs >= 0.7 ghc-options: -Wall- ghc-prof-options: -auto-all+ default-language: Haskell2010 source-repository head type: git