packages feed

deriving-aeson 0.2.5 → 0.2.6

raw patch · 3 files changed

+16/−3 lines, 3 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

+ Deriving.Aeson: instance (Deriving.Aeson.StringModifier a, Deriving.Aeson.StringModifier b, Deriving.Aeson.StringModifier c) => Deriving.Aeson.StringModifier (a, b, c)
+ Deriving.Aeson: instance (Deriving.Aeson.StringModifier a, Deriving.Aeson.StringModifier b, Deriving.Aeson.StringModifier c, Deriving.Aeson.StringModifier d) => Deriving.Aeson.StringModifier (a, b, c, d)

Files

CHANGELOG.md view
@@ -1,5 +1,10 @@ # Revision history for deriving-aeson +## 0.2.6++* Added `StringModifier` instances to 3 and 4-tuples+* Fixed the bug making `SumTwoElemArray` point `ObjectWithSingleField`+ ## 0.2.5  * Added a generic `CamelTo` constructor
deriving-aeson.cabal view
@@ -1,6 +1,6 @@ cabal-version:       2.4 name:                deriving-aeson-version:             0.2.5+version:             0.2.6 synopsis:            Type driven generic aeson instance customisation description:         This package provides a newtype wrapper with   FromJSON/ToJSON instances customisable via a phantom type parameter.@@ -23,7 +23,7 @@   exposed-modules:     Deriving.Aeson     Deriving.Aeson.Stock-  build-depends:       base >= 4.12 && <5, aeson >= 1.4.7.0 && <1.5+  build-depends:       base >= 4.12 && <5, aeson >= 1.4.7.0 && <1.6   hs-source-dirs: src   default-language:    Haskell2010   ghc-options: -Wall -Wcompat
src/Deriving/Aeson.hs view
@@ -106,6 +106,14 @@ instance (StringModifier a, StringModifier b) => StringModifier (a, b) where   getStringModifier = getStringModifier @b . getStringModifier @a +-- | Left-to-right (@'flip' '.'@) composition+instance (StringModifier a, StringModifier b, StringModifier c) => StringModifier (a, b, c) where+  getStringModifier = getStringModifier @c . getStringModifier @b . getStringModifier @a++-- | Left-to-right (@'flip' '.'@) composition+instance (StringModifier a, StringModifier b, StringModifier c, StringModifier d) => StringModifier (a, b, c, d) where+  getStringModifier = getStringModifier @d . getStringModifier @c . getStringModifier @b . getStringModifier @a+ instance (KnownSymbol separator, NonEmptyString separator) => StringModifier (CamelTo separator) where   getStringModifier = camelTo2 char     where@@ -165,4 +173,4 @@   aesonOptions = (aesonOptions @xs) { sumEncoding = ObjectWithSingleField }  instance (AesonOptions xs) => AesonOptions (SumTwoElemArray ': xs) where-  aesonOptions = (aesonOptions @xs) { sumEncoding = ObjectWithSingleField }+  aesonOptions = (aesonOptions @xs) { sumEncoding = TwoElemArray }