Releases: andersfugmann/ppx_protocol_conv
Releases · andersfugmann/ppx_protocol_conv
5.2.1
5.2.0
- Extend tests to serialize and deserialize to string for completeness
- Fix bugs when deserializing msgpck
- Test using yaml >= 3.0.0 and msgpck >= 1.7.0
- Enable tests for xmlm driver and fix naming of raw serialized composed types
- Enable tests for xml_light driver and fix naming of raw serialized composed types
5.1.3
Remove dependency on stdio
Fix warning when compiling with 4.11
5.1.1
- Add xmlm driver for xml (by Nick Betteridge)
5.1.0
- Add support for primitive type 'bytes'
- Add
of_<driver>_exn
for deserializing of Driver.t - Dont depend on ppxlib for the runtime
- Remove dependency on base
- Support result type
- Require ppx >= 0.9.0 => support ocaml 4.10 (Thanks kit-ty-kate)
Major rewrite
This release features a major rewrite, and complete compatibility with Ppx_deriving_yojson
, to allow Ppx_protocol_conv_json
be a drop in replacement.
The deserialization functions now returns a result
type. The previous exception style behavior is still available in function suffixed with _exn
.
This release is not backward compatible with previous releases.
A short list of changes since version 4.0.0:
- Add option make make lazy type indeed lazy
- Add option to mangle variant names
- Refactor tuple, variant and record code to be more efficient
- Reduce amount of closures in generated code
- Support nativeint
- Remove superfluous rec flag from generated code
- Cache partial results for recursive types
- Fix signatures for parameterized types
- Create helper module for tuple, record and variant.
- Add strict option
- create t_to_driver and t_to_driver_exn
- Move some documentation to wiki pages
- Add a TLDR to the README, including dune build instructions
- Allow core < v.013
- Switch to use alcotest
- Expose constructor to driver error type for custom parsers. (@paurkedal)
3.1.3
Require yojson >= 1.6.0
Require ppxlib >= 0.3.0