d07b0c22ef
OBS-URL: https://build.opensuse.org/package/show/devel:languages:haskell/ghc-aeson?expand=0&rev=90
701 lines
31 KiB
Plaintext
701 lines
31 KiB
Plaintext
-------------------------------------------------------------------
|
|
Sun Sep 1 23:07:24 UTC 2024 - Peter Simons <psimons@suse.com>
|
|
|
|
- Update aeson to version 2.2.3.0 revision 2.
|
|
Upstream has revised the Cabal build instructions on Hackage.
|
|
|
|
-------------------------------------------------------------------
|
|
Fri Aug 2 09:23:27 UTC 2024 - Peter Simons <psimons@suse.com>
|
|
|
|
- Update aeson to version 2.2.3.0 revision 1.
|
|
Upstream has revised the Cabal build instructions on Hackage.
|
|
|
|
-------------------------------------------------------------------
|
|
Tue Jun 11 19:32:18 UTC 2024 - Peter Simons <psimons@suse.com>
|
|
|
|
- Update aeson to version 2.2.3.0.
|
|
### 2.2.3.0
|
|
|
|
* Support `hashable-1.4.6.0`.
|
|
* Fix an issue where `Hashable Key` wasn't newtype instance over underlying `Text`,
|
|
so with `-ordered-keymap` there were correctness issues.
|
|
* Add instances for `Data.Semigroup.Sum`, `Product`, `Any`, `All`
|
|
|
|
-------------------------------------------------------------------
|
|
Fri May 17 03:42:00 UTC 2024 - Peter Simons <psimons@suse.com>
|
|
|
|
- Update aeson to version 2.2.2.0 revision 1.
|
|
### 2.2.2.0
|
|
|
|
* Support GHC-8.6.5...9.10.1
|
|
* Depend on `character-ps` instead of defining own Word8 pattern synonyms
|
|
|
|
-------------------------------------------------------------------
|
|
Mon Oct 16 15:54:05 UTC 2023 - Peter Simons <psimons@suse.com>
|
|
|
|
- Update aeson to version 2.2.1.0 revision 1.
|
|
### 2.2.1.0
|
|
|
|
* Add `Data.Aeson.RFC8785`, a JSON Canonicalization Scheme implementation
|
|
https://datatracker.ietf.org/doc/html/rfc8785
|
|
* Add Data.Aeson.Decoding.Text, decodeStrictText :: Text -> ...
|
|
|
|
We avoid intermediate `ByteString` copy by not doing
|
|
`decode . TE.encodeUtf8`, but instead working on `Text` value directly.
|
|
As we know that the stream is valid Unicode (UTF8 or UTF16),
|
|
we can also take some shortcuts.
|
|
|
|
One gotcha is that internal `Text` values (in `Key`s or `Value` `String`s)
|
|
will most likely retain the original input `Text` value (its underlying `Array`).
|
|
It shouldn't be an issue if the `Value` is then decoded to something else so these
|
|
`Text` values disapper, but if not (e.g. `Object` keys survive)
|
|
then users might want to use `Data.Text.copy`.
|
|
|
|
### 2.2.0.0
|
|
|
|
* Rework how `omitNothingFields` works. Add `allowOmittedFields` as a parsing counterpart.
|
|
|
|
New type-class members were added: `omitField :: a -> Bool` to `ToJSON` and `omittedField :: Maybe a` to `FromJSON`.
|
|
These control which fields can be omitted.
|
|
The `.:?=`, `.:!=` and `.?=` operators were added to make use of these new members.
|
|
|
|
GHC.Generics and Template Haskell deriving has been updated accordingly.
|
|
Note: They behave as the parsers have been written with `.:!=`, i.e.
|
|
if the field value is `null` it's passed to the underlying parser.
|
|
This doesn't make difference for `Maybe` or `Option`, but does make for
|
|
types which parser doesn't accept `null`.
|
|
(`()` parser accepts everything and `Proxy` accepts `null).
|
|
|
|
In addition to `Maybe` (and `Option`) fields the `Data.Monoid.First` and `Data.Monoid.Last` are also omitted,
|
|
as well as the most newtype wrappers, when their wrap omittable type (e.g. newtypes in `Data.Monoid` and `Data.Semigroup`, `Identity`, `Const`, `Tagged`, `Compose`).
|
|
Additionall "boring" types like `()` and `Proxy` are omitted as well.
|
|
As the omitting is now uniform, type arguments are also omitted (also in `Generic1` derived instance).
|
|
|
|
Resolves issues:
|
|
|
|
- [#687](https://github.com/haskell/aeson/issues/687) Derived ToJSON1 instance does not respect omitNothingFields = True,
|
|
- [#571](https://github.com/haskell/aeson/issues/571) omitNothingFields not used in Generic Decode,
|
|
- [#792](https://github.com/haskell/aeson/issues/792) Make Proxy fields optional.
|
|
|
|
* Use `Data.Aeson.Decoding` parsing functions (introduced in version 2.1.2.0) as default in `Data.Aeson`.
|
|
As one side-effect, `decode` and `decode'` etc pair functions are operationally the same.
|
|
All variants use an intermediate `Value` in normal form.
|
|
|
|
The lazier variant could had `Value` thunks inside `Array` (i.e. `Vector`), but the record had been value strict since version `0.4.0.0` (before that the lazy `Data.Map` was used as `Object`).
|
|
|
|
* Move `Data.Aeson.Parser` module into separate [`attoparsec-aeson`](https://hackage.haskell.org/package/attoparsec-aeson) package, as these parsers are not used by `aeson` itself anymore.
|
|
* Use [`text-iso8601`](https://hackage.haskell.org/package/text-iso8601) package for parsing `time` types. These are slightly faster than previously used (copy of) `attoparsec-iso8601`.
|
|
Formats accepted is slightly changed:
|
|
- The space between time and timezone offset (in `UTCTime` and `ZonedTime`) is disallowed. ISO8601 explictly forbidds it.
|
|
- The timezone offsets can be in range -23:59..23:59. This is how Python, joda-time etc seems to do. (Previously the range was -12..+14)
|
|
|
|
* Remove internal `Data.Aeson.Internal` and `Data.Aeson.Internal.Time` modules. Everything from the former is exported elsewhere (`Data.Aeson.Types`), the latter was truly internal.
|
|
* Remove `cffi` flag. Toggling the flag made `aeson` use a C implementation for string unescaping (used for `text <2` versions).
|
|
The new native Haskell implementation (introduced in version 2.0.3.0) is at least as fast.
|
|
* Drop instances for `Number` from `attoparsec` package.
|
|
* Improve `Arbitrary Value` instance.
|
|
* Add instances for `URI` from `network-uri`.
|
|
* add instances for `Down` from `Data.Ord`.
|
|
* Use `integer-conversion` for converting `Text` and `ByteString`s into `Integer`s.
|
|
* Bump lower bounds of non GHC-boot lib dependencies.
|
|
|
|
-------------------------------------------------------------------
|
|
Tue Aug 22 09:29:21 UTC 2023 - Peter Simons <psimons@suse.com>
|
|
|
|
- Cosmetic changes to the spec file.
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Aug 2 10:29:03 UTC 2023 - Andreas Schwab <schwab@suse.de>
|
|
|
|
- Reduce memory constraints for riscv64
|
|
|
|
-------------------------------------------------------------------
|
|
Thu Mar 30 17:05:43 UTC 2023 - Peter Simons <psimons@suse.com>
|
|
|
|
- Updated spec file to conform with ghc-rpm-macros-2.5.2.
|
|
|
|
-------------------------------------------------------------------
|
|
Sun Mar 19 14:43:54 UTC 2023 - Peter Simons <psimons@suse.com>
|
|
|
|
- Update aeson to version 2.1.2.1 revision 3.
|
|
Upstream has revised the Cabal build instructions on Hackage.
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Mar 15 14:37:44 UTC 2023 - Peter Simons <psimons@suse.com>
|
|
|
|
- Update aeson to version 2.1.2.1 revision 2.
|
|
Upstream has revised the Cabal build instructions on Hackage.
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Mar 1 11:15:32 UTC 2023 - Peter Simons <psimons@suse.com>
|
|
|
|
- Update aeson to version 2.1.2.1 revision 1.
|
|
### 2.1.2.1
|
|
|
|
* Support `th-abstraction-0.5`
|
|
|
|
### 2.1.2.0
|
|
|
|
* Add `throwDecode :: (MonadThrow m, FromJSON a) => ByteString -> m a`
|
|
and variants.
|
|
* Add `Data.Aeson.Decoding` which uses new underlying tokenizer / parser.
|
|
This parser seems to be faster, and the intermediate `Tokens` streams
|
|
allow to differentiate more than `Value` if needed.
|
|
If no critical issues is found, this parser will become the default
|
|
in next major `aeson` version.
|
|
* Support deriving for empty datatypes (such as `Void` and `V1`)
|
|
in `FromJSON` and `ToJSON`.
|
|
* Add `To/FromJSONKey Void` instances
|
|
* Fix `FromJSONKey Double` handling of infinities
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Sep 21 15:17:01 UTC 2022 - Peter Simons <psimons@suse.com>
|
|
|
|
- Update aeson to version 2.1.1.0.
|
|
Upstream has edited the change log file since the last release in
|
|
a non-trivial way, i.e. they did more than just add a new entry
|
|
at the top. You can review the file at:
|
|
http://hackage.haskell.org/package/aeson-2.1.1.0/src/changelog.md
|
|
|
|
-------------------------------------------------------------------
|
|
Sat Dec 11 17:27:48 UTC 2021 - Peter Simons <psimons@suse.com>
|
|
|
|
- Update aeson to version 1.5.6.0 revision 5.
|
|
Upstream has revised the Cabal build instructions on Hackage.
|
|
|
|
-------------------------------------------------------------------
|
|
Sat Nov 20 17:29:58 UTC 2021 - psimons@suse.com
|
|
|
|
- Update aeson to version 1.5.6.0 revision 4.
|
|
Upstream has revised the Cabal build instructions on Hackage.
|
|
|
|
-------------------------------------------------------------------
|
|
Tue Nov 16 19:52:56 UTC 2021 - psimons@suse.com
|
|
|
|
- Update aeson to version 1.5.6.0 revision 3.
|
|
Upstream has revised the Cabal build instructions on Hackage.
|
|
|
|
-------------------------------------------------------------------
|
|
Thu Sep 2 08:33:16 UTC 2021 - psimons@suse.com
|
|
|
|
- Update aeson to version 1.5.6.0 revision 2.
|
|
Upstream has revised the Cabal build instructions on Hackage.
|
|
|
|
-------------------------------------------------------------------
|
|
Thu May 6 06:49:35 UTC 2021 - Guillaume GARDET <guillaume.gardet@opensuse.org>
|
|
|
|
- Set memory constraints to avoid OOM
|
|
|
|
-------------------------------------------------------------------
|
|
Tue Mar 23 14:56:10 UTC 2021 - psimons@suse.com
|
|
|
|
- Update aeson to version 1.5.6.0 revision 1.
|
|
Upstream has revised the Cabal build instructions on Hackage.
|
|
|
|
-------------------------------------------------------------------
|
|
Fri Feb 19 23:03:07 UTC 2021 - psimons@suse.com
|
|
|
|
- Update aeson to version 1.5.6.0.
|
|
### 1.5.6.0
|
|
* Make `Show Value` instance print object keys in lexicographic order.
|
|
|
|
-------------------------------------------------------------------
|
|
Mon Jan 4 11:48:32 UTC 2021 - psimons@suse.com
|
|
|
|
- Update aeson to version 1.5.5.1.
|
|
### 1.5.5.1
|
|
* Fix a bug in `FromJSON QuarterOfYear` instance.
|
|
|
|
### 1.5.5.0
|
|
* Add instances for `Month`, `Quarter` and `QuarterOfYear` (from `time-1.11`), thanks to Oleg Grenrus.
|
|
|
|
* The aeson repository has been moved to the haskell github organization!
|
|
|
|
-------------------------------------------------------------------
|
|
Thu Dec 17 12:20:00 UTC 2020 - Ondřej Súkup <mimi.vx@gmail.com>
|
|
|
|
- disable %{ix86} build
|
|
|
|
-------------------------------------------------------------------
|
|
Tue Oct 6 08:56:45 UTC 2020 - psimons@suse.com
|
|
|
|
- Update aeson to version 1.5.4.1.
|
|
#### 1.5.4.1
|
|
* Use `Text.Encoding.decodeLatin1` to speed up ASCII string decoding, thanks to Dmitry Ivanov.
|
|
* Support `bytestring 0.11.*` and `th-abstraction 0.4.*`, thanks to Oleg Grenrus.
|
|
|
|
-------------------------------------------------------------------
|
|
Sun Oct 4 18:06:49 UTC 2020 - Ondřej Súkup <mimi.vx@gmail.com>
|
|
|
|
- add constraints for s390x and riscv64
|
|
|
|
-------------------------------------------------------------------
|
|
Mon Aug 31 02:02:42 UTC 2020 - psimons@suse.com
|
|
|
|
- Update aeson to version 1.5.4.0.
|
|
### 1.5.4.0
|
|
|
|
* Add instances for `ToJSONKey` and `FromJSONKey` to `Const`, thanks to Dan Fithian.
|
|
* Add support for template-haskell 2.17, thanks to Galen Huntington.
|
|
* Documentation typo fix, thanks to Jean-Baptiste Mazon.
|
|
|
|
-------------------------------------------------------------------
|
|
Tue Aug 18 10:43:55 UTC 2020 - Peter Simons <psimons@suse.com>
|
|
|
|
- Replace %setup -q with the more modern %autosetup macro.
|
|
|
|
-------------------------------------------------------------------
|
|
Mon Aug 10 08:46:53 UTC 2020 - psimons@suse.com
|
|
|
|
- Update aeson to version 1.5.3.0.
|
|
### 1.5.3.0
|
|
|
|
* Add instances for types in `strict` and `data-fix` packages, thanks to Oleg Grenrus.
|
|
* CPP cleanup, thanks to Oleg Grenrus.
|
|
* Instances for `dlist`'s `Data.DList.DNonEmpty.DNonEmpty`, thanks to Oleg Grenrus.
|
|
|
|
-------------------------------------------------------------------
|
|
Mon Jun 15 02:00:21 UTC 2020 - psimons@suse.com
|
|
|
|
- Update aeson to version 1.5.2.0.
|
|
### 1.5.2.0
|
|
|
|
* Add `Ord Value` instance, thanks to Oleg Grenrus.
|
|
* Export `rejectUnknownFields` from `Data.Aeson`
|
|
|
|
-------------------------------------------------------------------
|
|
Tue Jun 9 09:10:55 UTC 2020 - psimons@suse.com
|
|
|
|
- Update aeson to version 1.5.1.0.
|
|
### 1.5.1.0
|
|
|
|
* Add instances for `these`, thanks to Oleg Grenrus.
|
|
|
|
## 1.5.0.0
|
|
|
|
* Fix bug in `rejectUnknownFields` not respecting `fieldLabelModifier`, thanks to Markus Schirp.
|
|
* `GFromJSON` members are no longer exported from `Data.Aeson(.Types)`, if you are using `gParseJSON` consider switching to `gParseJSON'`, thanks to Oleg Grenrus.
|
|
* Aeson no longer accepts unescaped control characters, thanks to Oleg Grenrus.
|
|
* Remove `CoerceText` since GHC >=7.8 has `Coercible`, thanks to Oleg Grenrus.
|
|
* Rename the `GToJSON` class to `GToJSON'` and expose it, thanks to Oleg Grenrus.
|
|
|
|
Closed tickets: https://github.com/bos/aeson/milestone/21
|
|
|
|
-------------------------------------------------------------------
|
|
Wed May 6 06:54:16 UTC 2020 - psimons@suse.com
|
|
|
|
- Update aeson to version 1.4.7.1.
|
|
#### 1.4.7.1
|
|
|
|
* GHC 8.10 compatibility, thanks to Ryan Scott.
|
|
|
|
### 1.4.7.0
|
|
|
|
Long overdue release (once again), so there's quite a bit of stuff
|
|
included even though it's a "minor" release. Big thanks to all the
|
|
contributors, the project would not exist without you!
|
|
|
|
Special thanks to Oleg Grenrus and Xia Li-Yao for reviewing tons
|
|
of stuff.
|
|
|
|
New stuff:
|
|
|
|
* Add `rejectUnknownFields` to Options which rejects unknown fields on
|
|
deserialization. Useful to find errors during development, but
|
|
enabling this should be considered a breaking change as previously
|
|
accepted inputs may now be rejected. Thanks to rmanne.
|
|
|
|
```
|
|
instance FromJSON Foo where
|
|
parseJSON = gParseJSON defaultOptions { rejectUnknownFields = True }
|
|
```
|
|
|
|
* `FromJSON` instance of `Ratio a` now parses numbers in addtion to
|
|
standard `{numerator=..., denumerator=...}` encoding. Thanks to
|
|
Aleksey Khudyakov.
|
|
|
|
* Add more information to parse errors, including a sample of the
|
|
surrounding text. Hopefully this will lead to less "Failed to read:
|
|
satisfy" confusion! Thanks to Sasha Bogicevic. We expect some
|
|
downstream test suites to break because of this, apologies in
|
|
advance. Hopefully you will like the improvement anyway :-)
|
|
|
|
* Add `parseFail` to `Data.Aeson.Types`. `parseFail = fail` but
|
|
doesn't require users to know about `MonadFail`. Thanks to Colin
|
|
Woodbury.
|
|
|
|
* Make Template Haskell type family detection smarter when deriving
|
|
`ToJSON1` instances, thanks to Ryan Scott.
|
|
|
|
* Optimize string parsing for the common case of strings without
|
|
escapes, thanks to Yuras.
|
|
|
|
Misc:
|
|
|
|
* Clean up compiler warnings and switch from base-compat to
|
|
base-compat-batteries. Thanks to Colin Woodbury & Oleg Grenrus.
|
|
|
|
* Clarification & fixes to documentation regarding treatment of Maybe fields, thanks to Roman Cheplyaka.
|
|
|
|
* Add documentation for internal development workflows. Thanks to Guru
|
|
Devanla.
|
|
|
|
* Drop support for GHC < 7.8. We've chosen to support older GHCs as
|
|
long as it doesn't prevent us from adding new features, but now it
|
|
does! Thanks to Oleg Grenrus for the patch.
|
|
|
|
* Allow generic-deriving 1.13 in test suite.
|
|
|
|
* Some DRY fixes thanks to Mark Fajkus.
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Nov 13 03:02:25 UTC 2019 - psimons@suse.com
|
|
|
|
- Update aeson to version 1.4.6.0.
|
|
### 1.4.6.0
|
|
|
|
* Provide a clearer error message when a required tagKey for a constructor is missing, thanks to Guru Devanla.
|
|
The error message now looks like this: `Error in $: parsing Types.SomeType failed, expected Object with key "tag" containing one of ["nullary","unary","product","record","list"], key "tag" not found`
|
|
|
|
* Add `formatPath` and `formatRelativePath` functions to turn a `JSONPath` into a `String`, thanks to Robbie McMichael
|
|
|
|
-------------------------------------------------------------------
|
|
Fri Nov 8 16:13:10 UTC 2019 - Peter Simons <psimons@suse.com>
|
|
|
|
- Drop obsolete group attributes.
|
|
|
|
-------------------------------------------------------------------
|
|
Tue Sep 10 02:02:48 UTC 2019 - psimons@suse.com
|
|
|
|
- Update aeson to version 1.4.5.0.
|
|
### 1.4.5.0
|
|
|
|
* Expose `(<?>)`, `JSONPath` and `JSONPathElement(..)` from `Data.Aeson.Types`. Previously only available through internal modules. Thanks to Luke Clifton.
|
|
|
|
* Support for base-compat 0.11, thanks to Ryan Scott.
|
|
|
|
* Travis build for GHC 8.8, thanks to Oleg Grenrus.
|
|
|
|
-------------------------------------------------------------------
|
|
Tue Jun 25 02:02:15 UTC 2019 - psimons@suse.com
|
|
|
|
- Update aeson to version 1.4.4.0.
|
|
### 1.4.4.0
|
|
|
|
**New features**:
|
|
|
|
* Adds a parameterized parser `jsonWith` that can be used to choose how to handle duplicate keys in objects, thanks to Xia Li-Yao.
|
|
|
|
* Add generic implementations of `FromJSONKey` and `ToJSONKey`, thanks to Xia Li-Yao. Example:
|
|
|
|
```haskell
|
|
data Foo = Bar
|
|
deriving Generic
|
|
|
|
opts :: JSONKeyOptions
|
|
opts = defaultJSONKeyOptions { keyModifier = toLower }
|
|
|
|
instance ToJSONKey Foo where
|
|
toJSONKey = genericToJSONKey opts
|
|
|
|
instance FromJSONKey Foo where
|
|
fromJSONKey = genericFromJSONKey opts
|
|
```
|
|
|
|
**Minor**:
|
|
* aeson now uses `time-compat` instead of `time-locale-compat`, thanks to Oleg Grenrus.
|
|
* Prepare for `MonadFail` breakages in GHC 8.8, thanks to Oleg Grenrus.
|
|
* Require `bytestring >= 0.10.8.1` for newer GHCs to avoid build failures, thanks to Oleg Grenrus.
|
|
* Support `primitive 0.7.*`, thanks to Adam Bergmark.
|
|
* Allow `semigroups 0.19.*` and `hashable 1.3.*`, thanks to Oleg Grenrus.
|
|
* Fix a typo in the error message when parsing `NonEmpty`, thanks to Colin Woodbury.
|
|
* Document surprising behavior when using `omitNothingFields` with type variables, thanks to Xia Li-Yao.
|
|
|
|
**Internal changes**:
|
|
* Code cleanup by Oleg Grenrus
|
|
* Fix dependencies of the benchmarks on older GHC's, thanks to Xia Li-Yao.
|
|
|
|
-------------------------------------------------------------------
|
|
Tue Apr 30 09:23:03 UTC 2019 - psimons@suse.com
|
|
|
|
- Update aeson to version 1.4.3.0.
|
|
### 1.4.3.0
|
|
* Improve error messages for FromJSON in existing instances and GHC Generic implementation. Thanks to Xia Li-Yao & Igor Pashev.
|
|
* Tweak error-reporting combinators and their documentation. Thanks to Xia Li-Yao.
|
|
* `typeMismatch` is now about comparing JSON types (i.e., the expected and actual names of the Value constructor).
|
|
* `withObject` and other `with*` combinators now also mention the JSON types they expect
|
|
* New `unexpected` and `prependFailure` combinators.
|
|
* Add `Contravariant` `ToJSONKeyFunction` instance. Thanks to Oleg Grenrus.
|
|
* Add `KeyValue` instance for `Object`. Thanks to Robert Hensing.
|
|
* Improve performance when parsing certain large numbers, thanks to Oleg Grenrus.
|
|
* Add `Data.Aeson.QQ.Simple` - A limited version of aeson-qq. Thanks to Oleg Grenrus.
|
|
* Exposes internal helper functions like `<?>`, `JSONPath`, and `parseIndexedJSON` from `Data.Aeson` module. Thanks to Abid Uzair.
|
|
* Better error messages when there are syntax errors parsing objects and arrays. Thanks to Fintan Halpenny.
|
|
* Support building with `th-abstraction-0.3.0.0` or later. Thanks to Ryan Scott.
|
|
|
|
-------------------------------------------------------------------
|
|
Sat Jan 19 12:33:33 UTC 2019 - Peter Simons <psimons@suse.com>
|
|
|
|
- Update Cabal build instructions for more accurate dependencies.
|
|
|
|
-------------------------------------------------------------------
|
|
Sun Nov 25 03:01:12 UTC 2018 - psimons@suse.com
|
|
|
|
- Update aeson to version 1.4.2.0.
|
|
Upstream has edited the change log file since the last release in
|
|
a non-trivial way, i.e. they did more than just add a new entry
|
|
at the top. You can review the file at:
|
|
http://hackage.haskell.org/package/aeson-1.4.2.0/src/changelog.md
|
|
|
|
-------------------------------------------------------------------
|
|
Thu Oct 4 09:42:52 UTC 2018 - psimons@suse.com
|
|
|
|
- Update aeson to version 1.4.1.0.
|
|
#### 1.4.1.0
|
|
|
|
* Optimizations of generics, thanks to Rémy Oudompheng, here are some numbers for GHC 8.4:
|
|
* Compilation time: G/BigProduct.hs is 25% faster, G/BigRecord.hs is 2x faster.
|
|
* Runtime performance: BigRecord/toJSON/generic and BigProduct/encode/generic are more than 2x faster.
|
|
* Added To/FromJSON instances for `Void` and Generics's `V1`, thanks to Will Yager
|
|
* Added To/FromJSON instances for `primitive`'s `Array`, `SmallArray`, `PrimArray` and `UnliftedArray`, thanks to Andrew Thad.
|
|
* Fixes handling of `UTCTime` wrt. leap seconds , thanks to Adam Schønemann
|
|
* Warning and documentation fixes thanks to tom-bop, Gabor Greif, Ian Jeffries, and Mateusz Curyło.
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Jul 18 14:26:12 UTC 2018 - psimons@suse.com
|
|
|
|
- Cosmetic: replace tabs with blanks, strip trailing white space,
|
|
and update copyright headers with spec-cleaner.
|
|
|
|
-------------------------------------------------------------------
|
|
Tue Jul 17 19:30:59 UTC 2018 - psimons@suse.com
|
|
|
|
- Update aeson to version 1.4.0.0.
|
|
### 1.4.0.0
|
|
|
|
This release introduces bounds on the size of `Scientific` numbers when they are converted to other arbitrary precision types that do not represent them efficiently in memory.
|
|
|
|
This means that trying to decode a number such as `1e1000000000` into an `Integer` will now fail instead of using a lot of memory. If you need to represent large numbers you can add a newtype (preferably over `Scientific`) and providing a parser using `withScientific`.
|
|
|
|
The following instances are affected by this:
|
|
* `FromJSON Natural`
|
|
* `FromJSONKey Natural`
|
|
* `FromJSON Integer`
|
|
* `FromJSONKey Integer`
|
|
* `FromJSON NominalDiffTime`
|
|
|
|
For the same reasons the following instances & functions have been removed:
|
|
* Remove `FromJSON Data.Attoparsec.Number` instance. Note that `Data.Attoparsec.Number` is deprecated.
|
|
* Remove deprecated `withNumber`, use `withScientific` instead.
|
|
|
|
Finally, encoding integral values with large exponents now uses scientific notation, this saves space for large numbers.
|
|
|
|
### 1.3.1.1
|
|
|
|
* Catch 0 denominators when parsing Ratio
|
|
|
|
### 1.3.1.0
|
|
|
|
* Fix bug in generically derived `FromJSON` instances that are using `unwrapUnaryRecords`, thanks to Xia Li-yao
|
|
* Allow base-compat 0.10.*, thanks to Oleg Grenrus
|
|
|
|
## 1.3.0.0
|
|
|
|
Breaking changes:
|
|
* `GKeyValue` has been renamed to `KeyValuePair`, thanks to Xia Li-yao
|
|
* Removed unused `FromJSON` constraint in `withEmbeddedJson`, thanks to Tristan Seligmann
|
|
|
|
Other improvements:
|
|
* Optimizations of TH toEncoding, thanks to Xia Li-yao
|
|
* Optimizations of hex decoding when using the default/pure unescape implementation, thanks to Xia Li-yao
|
|
* Improved error message on `Day` parse failures, thanks to Gershom Bazerman
|
|
* Add `encodeFile` as well as `decodeFile*` variants, thanks to Markus Hauck
|
|
* Documentation fixes, thanks to Lennart Spitzner
|
|
* CPP cleanup, thanks to Ryan Scott
|
|
|
|
-------------------------------------------------------------------
|
|
Mon May 14 17:02:11 UTC 2018 - psimons@suse.com
|
|
|
|
- Update aeson to version 1.2.4.0.
|
|
* Add `Ord` instance for `JSONPathElement`, thanks to Simon Hengel.
|
|
* Added `withEmbeddedJSON` to help parse JSON embedded inside a JSON string, thanks to Jesse Kempf.
|
|
* Memory usage improvements to the default (pure) parser, thanks to Jonathan Paugh. Also thanks to Neil Mitchell & Oleg Grenrus for contributing a benchmark.
|
|
* `omitNothingFields` now works for the `Option` newtype, thanks to Xia Li-yao.
|
|
* Some documentation fixes, thanks to Jonathan Paug & Philippe Crama.
|
|
* Add `FromJSON` and `ToJSON` instances for
|
|
* `DiffTime`, thanks to Víctor López Juan.
|
|
* `CTime`, thanks to Daniel Díaz.
|
|
* Fix handling of fractions when parsing Natural, thanks to Yuriy Syrovetskiy.
|
|
* Change text in error messages for Integral types to make them follow the common pattern, thanks to Yuriy Syrovetskiy.
|
|
* Add missing `INCOHERENT` pragma for `RecordToPair`, thanks to Xia Li-yao.
|
|
* Everything related to `Options` is now exported from `Data.Aeson`, thanks to Xia Li-yao.
|
|
* Optimizations to not escape text in clear cases, thanks to Oleg Grenrus.
|
|
* Some documentation fixes, thanks to Phil de Joux & Xia Li-yao.
|
|
* Add `parserThrowError` and `parserCatchError` combinators, thanks to Oleg Grenrus.
|
|
* Add `Generic` instance for `Value`, thanks to Xia Li-yao.
|
|
* Fix a mistake in the 1.2.0.0 changelog, the `cffi` flag is disabled by default! Thanks to dbaynard.
|
|
* `tagSingleConstructors`, an option to encode single-constructor types as tagged sums was added to `Options`. It is disabled by default for backward compatibility.
|
|
* The `cffi` flag is now turned off (`False`) by default, this means C FFI code is no longer used by default. You can flip the flag to get C implementation.
|
|
* The `Options` constructor is no longer exposed to prevent new options from being breaking changes, use `defaultOptions` instead.
|
|
* The contents of `GToJSON` and `GToEncoding` are no longer exposed.
|
|
* Some INLINE pragmas were removed to avoid GHC running out of simplifier ticks.
|
|
|
|
-------------------------------------------------------------------
|
|
Thu Aug 3 15:38:38 UTC 2017 - psimons@suse.com
|
|
|
|
- Updated with latest spec-cleaner version 0.9.8-8-geadfbbf.
|
|
|
|
-------------------------------------------------------------------
|
|
Thu Jul 27 14:07:48 UTC 2017 - psimons@suse.com
|
|
|
|
- Update to version 1.1.2.0 revision 1.
|
|
|
|
-------------------------------------------------------------------
|
|
Tue Apr 4 11:04:08 UTC 2017 - psimons@suse.com
|
|
|
|
- Update to version 1.0.2.1 revision 1 with cabal2obs.
|
|
|
|
-------------------------------------------------------------------
|
|
Sun Feb 12 14:08:22 UTC 2017 - psimons@suse.com
|
|
|
|
- Update to version 1.0.2.1 with cabal2obs.
|
|
|
|
-------------------------------------------------------------------
|
|
Thu Jan 26 16:20:17 UTC 2017 - psimons@suse.com
|
|
|
|
- Update to version 0.11.3.0 with cabal2obs.
|
|
|
|
-------------------------------------------------------------------
|
|
Mon Sep 19 10:39:23 UTC 2016 - psimons@suse.com
|
|
|
|
- Update to version 0.11.2.1 revision 1 with cabal2obs.
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Aug 17 18:30:25 UTC 2016 - psimons@suse.com
|
|
|
|
- Update to version 0.11.2.1 revision 0 with cabal2obs.
|
|
|
|
-------------------------------------------------------------------
|
|
Sun Jul 10 17:33:06 UTC 2016 - psimons@suse.com
|
|
|
|
- Update to version 0.11.2.0 revision 1 with cabal2obs.
|
|
|
|
-------------------------------------------------------------------
|
|
Thu May 26 06:06:35 UTC 2016 - mimi.vx@gmail.com
|
|
|
|
- update to 0.11.2.0
|
|
* Enable PolyKinds to generalize Proxy, Tagged, and Const instances.
|
|
* Add unsafeToEncoding in Data.Aeson.Types, use with care!
|
|
|
|
-------------------------------------------------------------------
|
|
Fri Mar 25 07:41:45 UTC 2016 - mimi.vx@gmail.com
|
|
|
|
- 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
|
|
instances.
|
|
All ToJSON and FromJSON instances except for [Char] are no longer
|
|
incoherent, this means you may need to replace your incoherent instances
|
|
with a newtyped instance.
|
|
+ Additions:
|
|
Introduce .:! that behaves like .:? did in 0.10.
|
|
Allow HH:MM format for ZonedTime and UTCTime. This is one of the formats
|
|
allowed by ISO 8601.
|
|
Added ToJSON and FromJSON instances for the Version, Ordering, and Natural
|
|
types.
|
|
+ Bug fixes:
|
|
JSONPath identifiers are now escaped if they contain invalid characters.
|
|
Fixed JSONPath messages for Seq to include indices.
|
|
Fixed JSONPath messages for Either to include left/right.
|
|
Fix missing quotes surrounding time encodings.
|
|
Fix #293: Type error in TH when using omitNothingFields = True.
|
|
|
|
-------------------------------------------------------------------
|
|
Mon Sep 28 18:42:15 UTC 2015 - mimi.vx@gmail.com
|
|
|
|
- update to 0.9.0.1
|
|
* A stray export of encodeToBuilder got away!
|
|
* The json and json' parsers are now synonyms for value and value', in conformance
|
|
with the looser semantics of RFC 7159.
|
|
* Renamed encodeToByteStringBuilder to the more compact encodeToBuilder.
|
|
* The dependency on the unordered-containers package was too lax, and has been
|
|
corrected.
|
|
* Encoding a Scientific value with a huge exponent is now handled efficiently.
|
|
(This would previously allocate a huge arbitrary-precision integer, potentially
|
|
leading to a denial of service.)
|
|
* Handling of strings that contain backslash escape sequences is greatly improved.
|
|
For a pathological string containing almost a megabyte of consecutive backslashes,
|
|
the new implementation is 27x faster and uses 42x less memory.
|
|
* The ToJSON instance for UTCTime is rendered with higher (picosecond) resolution.
|
|
* The value parser now correctly handles leading whitespace.
|
|
* New instances of ToJSON and FromJSON for Data.Sequence and Data.Functor.Identity.
|
|
The Value type now has a Read instance.
|
|
* ZonedTime parser ordering now favours the standard JSON format, increasing
|
|
efficiency in the common case.
|
|
* Encoding to a Text.Builder now escapes '<' and '>' characters, to reduce XSS risk.
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Apr 22 10:47:20 UTC 2015 - mimi.vx@gmail.com
|
|
|
|
- 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.
|
|
|
|
-------------------------------------------------------------------
|
|
Sun Nov 9 15:24:35 UTC 2014 - peter.trommler@ohm-hochschule.de
|
|
|
|
- drop aeson-disable-TH.patch
|
|
* Template Haskell (TH) now available on all supprted archs
|
|
|
|
-------------------------------------------------------------------
|
|
Sat Oct 18 14:50:27 UTC 2014 - dvaleev@suse.com
|
|
|
|
- disable TH module on arch's without ghci
|
|
aeson-disable-TH.patch
|
|
|
|
-------------------------------------------------------------------
|
|
Mon Oct 28 19:50:03 UTC 2013 - sbahling@suse.com
|
|
|
|
- Remove redundant Requires for ghc-compiler
|
|
|
|
-------------------------------------------------------------------
|
|
Mon Oct 7 13:35:59 UTC 2013 - sbahling@suse.com
|
|
|
|
- Initial package - version 0.6.2.0
|