Changelog for aeson-optics-1.2.1
1.2.1
- Drop dependency on
attoparsec. Useaesonsdecodeto parseValue.
1.2.0.1
- Drop direct dependency on
unordered-containers
1.2
Release corresponding to lens-aeson-1.2
API changes.
-
Require
aeson-2.0.3.*andoptics-core-0.4.1or greater. -
Drop support for GHC-8.0
-
Change the types of
_Object,key, andmembers:-_Object :: Prism' t (HashMap Text Value) +_Object :: Prism' t (KeyMap Value) -key :: AsValue t => Text -> AffineTraversal' t Value +key :: AsValue t => Key -> AffineTraversal' t Value -members :: AsValue t => IndexedTraversal' Text t Value +members :: AsValue t => IndexedTraversal' Key t ValueThis mirrors similar changes made in
aeson-2.0.*, where the type ofObject's field was changed fromHashMap Text ValuetoKeyMap Value.The
Ixed Valueinstance changes similarly:-type instance Index Value = Text +type instance Index Value = Key -
Remove
PrimitiveandAsPrimitive, since https://tools.ietf.org/html/rfc7159 de-emphasized the notion of primitive versus composite JSON values.- The
AsPrimitivemethods (_Value,_String, and_Bool) are nowAsValuemethods. _Number's default signature,Bool_,String_, andNull_now have anAsValueconstraint.
- The
-
Add an
IsKeyclass, whose method_Keyis anIsofor converting values to and from aKey.
1.1.1
- Support
aeson-2.0.0.0: add instances forKeyMap.