Changelog for aeson-optics-1.2
1.2
Release corresponding to lens-aeson-1.2
API changes.
-
Require
aeson-2.0.3.*
andoptics-core-0.4.1
or 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 Value
This mirrors similar changes made in
aeson-2.0.*
, where the type ofObject
's field was changed fromHashMap Text Value
toKeyMap Value
.The
Ixed Value
instance changes similarly:-type instance Index Value = Text +type instance Index Value = Key
-
Remove
Primitive
andAsPrimitive
, since https://tools.ietf.org/html/rfc7159 de-emphasized the notion of primitive versus composite JSON values.- The
AsPrimitive
methods (_Value
,_String
, and_Bool
) are nowAsValue
methods. _Number
's default signature,Bool_
,String_
, andNull_
now have anAsValue
constraint.
- The
-
Add an
IsKey
class, whose method_Key
is anIso
for converting values to and from aKey
.
1.1.1
- Support
aeson-2.0.0.0
: add instances forKeyMap
.