@@ -2,6 +2,22 @@ For the latest version of this document, please see [https://github.com/bos/aeso
5+* The operators for parsing fields now have named aliases:
6+ - `.:` => `parseField`
7+ - `.:?` => `parseFieldMaybe`
8+ - `.:!` => `parseFieldMaybe'`
9+ - These functions now also have variants with explicit parser functions: `explicitParseField`, `explicitParseFieldMaybe`, "explicitParseFieldMaybe'`
10+Thanks to Oleg Grenrus.
12+* `ToJSONKey (Identity a)` and `FromJSONKey (Identity a)` no longer require the unnecessary `FromJSON a` constraint. Thanks to Oleg Grenrus.
14+* Added `Data.Aeson.Encoding.pair'` which is a more general version of `Data.Aeson.Encoding.pair'`. Thanks to Andrew Martin.
16+* `Day`s BCE are properly encoded, and `+` is now a valid prefix for other dates. Thanks to Matt Parsons.
18+* Some commonly used ToJSON instances are now specialized in order to improve compile time. Thanks to Bartosz Nitka.
5[JSONTestSuite](https://github.com/nst/JSONTestSuite) cleanups, all
21[JSONTestSuite](https://github.com/nst/JSONTestSuite) cleanups, all
6motivated by tighter RFC 7159 compliance:
22motivated by tighter RFC 7159 compliance:
@@ -22,13 +38,10 @@ categorised as follows:
23* The parser does not (and will not) support UTF-16, UTF-32, or byte
39* The parser does not (and will not) support UTF-16, UTF-32, or byte
24 order marks (BOM).
40 order marks (BOM).
26* The parser accepts unescaped control characters, even though the RFC
41* The parser accepts unescaped control characters, even though the RFC
27 states that control characters must be escaped. (This may change at
42 states that control characters must be escaped. (This may change at
28 some point, but doesn't seem important.)
43 some point, but doesn't seem important.)
30−- Days BCE are properly encoded.
32#### 1.0.2.1
45#### 1.0.2.1
34* Fixes a regression where a bunch of valid characters caused an
47* Fixes a regression where a bunch of valid characters caused an