packages feed

aeson-quick 0.1.1.2 → 0.1.2.0

raw patch · 2 files changed

+30/−29 lines, 2 filesdep ~aesondep ~attoparsecdep ~basePVP ok

version bump matches the API change (PVP)

Dependency ranges changed: aeson, attoparsec, base, bytestring, criterion, deepseq, microlens, tasty, tasty-hunit, text, unordered-containers, vector

API changes (from Hackage documentation)

Files

Data/Aeson/Quick.hs view
@@ -31,6 +31,7 @@  import GHC.Generics (Generic) +import Debug.Trace  data Structure = Obj [(T.Text, Bool, Structure)]                | Arr Structure@@ -143,16 +144,16 @@ build :: ToJSON a => Structure -> Value -> a -> Value build structure val = go structure val . toJSON   where-    go (Val)      _          r         = r-    go (Arr s)    (Array v)  (Array r) = Array $ V.zipWith (go s) v r -    go (Arr s)    Null       (Array r) = Array $ V.map (go s Null) r-    go (Arr s)    Null       r         = toJSON [go s Null r]-    go (Obj [ks]) (Object v) r         = Object $ update v ks r-    go (Obj keys) Null       r         = go (Obj keys) (Object mempty) r-    go (Obj ks)   (Object v) (Array r) = Object $+    go (Val)      _          r         = traceShow "a" $ r+    go (Arr s)    (Array v)  (Array r) = traceShow "b" $ Array $ V.zipWith (go s) v r +    go (Arr s)    Null       (Array r) = traceShow "c" $ Array $ V.map (go s Null) r+    go (Arr s)    Null       r         = traceShow "d" $ toJSON [go s Null r]+    go (Obj [ks]) (Object v) r         = traceShow "e" $ Object $ update v ks r+    go (Obj keys) Null       r         = traceShow "f" $ go (Obj keys) (Object mempty) r+    go (Obj ks)   (Object v) (Array r) = traceShow "g" $ Object $       let maps = zip ks (V.toList r)        in foldl (\v' (s,r') -> update v' s r') v maps-    go (Obj keys) (Object v) r         = r+    go (Obj keys) (Object v) r         = traceShow "h" $ r     go a b c = error $ show (a,b,c) -- TODO     update v (k,_,s) r =       let startVal = go s (H.lookupDefault Null k v) r
aeson-quick.cabal view
@@ -1,5 +1,5 @@ Name:              aeson-quick-Version:           0.1.1.2+Version:           0.1.2.0 Build-Type:        Simple Cabal-Version:     >= 1.16 License:           BSD3@@ -18,13 +18,13 @@ Library   Exposed-modules:    Data.Aeson.Quick   hs-source-dirs:     .-  Build-Depends:      base                  >= 4      && <= 4.9.0.0-                    , aeson                 >= 0.8    && <  0.12-                    , attoparsec            >= 0.12   && <  0.14-                    , deepseq               >= 1.3    && <  1.5-                    , text                  >= 1.2    && <  1.3-                    , unordered-containers  >= 0.2.5  && <  0.3-                    , vector                >= 0.10   && <  0.12+  Build-Depends:      base                  >= 4      && <= 5+                    , aeson+                    , attoparsec+                    , deepseq+                    , text+                    , unordered-containers+                    , vector   if impl(ghc < 7.5)     Build-Depends:    ghc-prim              >= 0.2   default-language: Haskell2010@@ -34,14 +34,14 @@   hs-source-dirs:     test   main-is:            Test.hs   build-depends:      aeson-quick-                    , base                  >= 4      && <= 4.9.0.0-                    , bytestring            >= 0.10.5 && <  0.11-                    , aeson                 >= 0.8    && <  0.12-                    , microlens             >= 0.4    && <  0.5-                    , text                  >= 1.2    && <  1.3-                    , attoparsec            >= 0.12   && <  0.14-                    , tasty                 >= 0.10   && <  0.12-                    , tasty-hunit           >= 0.9    && <  0.10+                    , base                  >= 4      && <= 5+                    , bytestring+                    , aeson+                    , microlens+                    , text+                    , attoparsec+                    , tasty+                    , tasty-hunit   default-language: Haskell2010  benchmark benchmark@@ -50,11 +50,11 @@   hs-source-dirs:     test   ghc-options:        -Wall -rtsopts -threaded -with-rtsopts=-N   build-depends:      aeson-quick-                    , base                  >= 4      && <= 4.9.0.0-                    , aeson                 >= 0.8    && <  0.12-                    , bytestring            >= 0.10   && <  0.11-                    , criterion             >= 0.1    && <  1.2-                    , text                  >= 1.2    && <  1.3+                    , base                  >= 4      && <= 5+                    , aeson+                    , bytestring+                    , criterion+                    , text   default-language: Haskell2010