aeson-picker 0.1.0.5 → 0.1.0.6
raw patch · 3 files changed
+29/−10 lines, 3 filesdep ~aesondep ~lensdep ~lens-aesonnew-uploaderPVP ok
version bump matches the API change (PVP)
Dependency ranges changed: aeson, lens, lens-aeson, text
API changes (from Hackage documentation)
Files
- CHANGELOG.md +4/−0
- aeson-picker.cabal +14/−9
- src/Data/Aeson/Picker.hs +11/−1
CHANGELOG.md view
@@ -4,6 +4,10 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). +## [0.1.0.6] - 2022-03-23+### Changed+- Support aeson-2 and other GHC-9 related packages.+ ## [0.1.0.5] - 2019-09-07 ### Changed - Upper bounds for lens-aeson.
aeson-picker.cabal view
@@ -1,11 +1,11 @@ name: aeson-picker-version: 0.1.0.5+version: 0.1.0.6 synopsis: Tiny library to get fields from JSON format description: Tiny library to get fields from JSON format-homepage: https://github.com/ozzzzz/aeson-picker#readme-bug-reports: https://github.com/ozzzzz/aeson-picker/issues+homepage: https://github.com/biocad/aeson-picker#readme+bug-reports: https://github.com/biocad/aeson-picker/issues author: Bogdan Neterebskii-maintainer: bog2dan1@gmail.com+maintainer: bog2dan1@gmail.com, kolmax94@gmail.com copyright: (c) 2019, Bogdan Neterebskii stability: experimental category: Text, Web, JSON@@ -14,22 +14,27 @@ build-type: Simple cabal-version: >= 1.10 +tested-with:+ GHC ==8.10.7+ || ==9.0.2+ || ==9.2.2+ extra-source-files: CHANGELOG.md README.md source-repository head type: git- location: https://github.com/ozzzzz/aeson-picker+ location: https://github.com/biocad/aeson-picker library hs-source-dirs: src exposed-modules: Data.Aeson.Picker build-depends: base >=4.7 && <5- , aeson >= 1.2 && < 2- , lens >= 4.15 && < 5- , lens-aeson >= 1.0 && < 1.2- , text >= 1.2 && < 1.3+ , aeson >= 1.2 && < 3+ , lens >= 4.15 && < 6+ , lens-aeson >= 1.0 && < 1.3+ , text >= 1.2 && < 2.1 default-language: Haskell2010 test-suite aeson-picker-test
src/Data/Aeson/Picker.hs view
@@ -1,3 +1,4 @@+{-# LANGUAGE CPP #-} {-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE RankNTypes #-} module Data.Aeson.Picker@@ -11,6 +12,10 @@ import Data.Maybe (fromMaybe) import Data.Text (Text) +#if MIN_VERSION_aeson(2, 0, 0)+import qualified Data.Aeson.Key+#endif+ -- | From given JSON and selectors returns typed field. If input JSON is not valid or selected field is not found then error is thrown. -- If you need more safe way use '(|-?)' instead. Examples: --@@ -70,5 +75,10 @@ -- | Generates getter from given selectors genGetter :: AsValue t => [Text] -> Traversal' t Value genGetter [] = error "Data.Aeson.Picker.Internal.Functions.genGetter: this should not be happened"+#if MIN_VERSION_aeson(2, 0, 0)+genGetter [x] = key (Data.Aeson.Key.fromText x)+genGetter (x:xs) = key (Data.Aeson.Key.fromText x) . genGetter xs+#else genGetter [x] = key x-genGetter (x:xs) = key x . genGetter xs +genGetter (x:xs) = key x . genGetter xs+#endif