- update to 0.11.2.0
* Enable PolyKinds to generalize Proxy, Tagged, and Const instances.
* Add unsafeToEncoding in Data.Aeson.Types, use with care!
- update to 0.11.1.4
* Fix build with base < 4.8 and unordered-containers < 0.2.6.
* Add missing field in docs for defaultOptions.
* Fixes a bug where the hashes of equal values could differ.
* The only changes are added instances. (0.11.1.0)
+ These are new:
ToJSON a => ToJSON (NonEmpty a)
FromJSON a => FromJSON (NonEmpty a)
ToJSON (Proxy a)
FromJSON (Proxy a)
ToJSON b => ToJSON (Tagged a b)
FromJSON b => FromJSON (Tagged a b)
ToJSON a => ToJSON (Const a b)
FromJSON a => FromJSON (Const a b)
+ These are now available for older GHCs:
ToJSON Natural
FromJSON Natural
* This release should be close to backwards compatible with aeson 0.9 (0.11.0.0)
+ Breaking changes:
Revert .:? to behave like it did in 0.9. If you want the 0.10 behavior
use .:! instead.
Revert JSON format of Either to 0.9, Left and Right are now serialized with
an initial uppercase letter. If you want the names in lowercase you can
add a newtype with an instance.
All ToJSON and FromJSON instances except for [a] are no longer OVERLAPPABLE.
Mark your instance as OVERLAPPING if it overlaps any of the other aeson
OBS-URL: https://build.opensuse.org/request/show/398189
OBS-URL: https://build.opensuse.org/package/show/devel:languages:haskell/ghc-aeson?expand=0&rev=14
- update to 0.10.0.0
* Performance improvements:
+ Direct encoding via the new toEncoding method is over 2x faster than toJSON.
(You must write or code-gen a toEncoding implementation to unlock this speedup.
See below for details.)
+ Improved string decoding gives a 12% speed win in parsing string-heavy JSON
payloads (very common).
+ Encoding and decoding of time-related types are 10x faster (!!) as a result of
bypassing Data.Time.Format and the arbitrary-precision Integer type.
+ When using toEncoding, [Char] can be encoded without a conversion to Text.
This is fast and efficient.
+ Parsing into an Object is now 5% faster and more allocation-efficient.
* SUBTLE API CHANGES, READ CAREFULLY:
+ With the exception of long-deprecated code, the API changes below should be
upwards compatible from older versions of aeson. If you run into upgrade
problems, please file an issue with details.
+ The ToJSON class has a new method, toEncoding, that allows direct encoding
from a Haskell value to a lazy bytestring without construction of an
intermediate Value.
+ The performance benefits of direct encoding are significant: more than 2x
faster than before, with less than 1/3 the memory usage.
+ To preserve API compatibility across upgrades from older versions of this
library, the default implementation of toEncoding uses toJSON. You will not
see any performance improvement unless you write an implementation of
toEncoding, which can be very simple:
instance ToJSON Coord where
toEncoding = genericToEncoding defaultOptions
(Behind the scenes, the encode function uses toEncoding now, so if you
implement toEncoding for your types, you should see a speedup immediately.)
+ If you use Template Haskell or GHC Generics to auto-generate your ToJSON
OBS-URL: https://build.opensuse.org/request/show/352123
OBS-URL: https://build.opensuse.org/package/show/devel:languages:haskell/ghc-aeson?expand=0&rev=10
- update to 0.8.0.2
* Fix ToJSON instance for 15-tuples.
* Support time-1.5.
* Add ToJSON and FromJSON instances for tuples of up to 15 elements.
* Major compiler and library compatibility changes: we have dropped
support for GHC older than 7.4, text older than 1.1, and bytestring
older than 0.10.4.0. Supporting the older versions had become
increasingly difficult, to the point where it was no longer worth
it.
* The performance of encoding to and decoding of bytestrings have both
improved by up to 2x, while also using less memory.
* New dependency: the scientific package lets us parse floating point
numbers more quickly and accurately.
* eitherDecode, decodeStrictWith: fixed bugs.
* Added FromJSON and ToJSON instances for Tree and Scientific.
* Fixed the ToJSON instances for UTCTime and ZonedTime.
OBS-URL: https://build.opensuse.org/request/show/304886
OBS-URL: https://build.opensuse.org/package/show/devel:languages:haskell/ghc-aeson?expand=0&rev=8