ppx_protocol_conv

Pluggable serialization and deserialization of ocaml data strucures based on type_conv

BSD-3-CLAUSE License

Stars
45
Committers
8

Bot releases are hidden (Show)

ppx_protocol_conv - Latest Release

Published by andersfugmann over 1 year ago

  • Set minimum ocaml version to 4.08
  • Remove warnings on using kprintf and switch to reference Stdlib and not Caml
  • Require yojson >= 1.6.0 and remove upper constraint on yojson
  • Fix package description for yaml driver
ppx_protocol_conv - 5.2.0

Published by andersfugmann about 3 years ago

  • 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
ppx_protocol_conv -

Published by andersfugmann about 4 years ago

Remove dependency on stdio
Fix warning when compiling with 4.11

ppx_protocol_conv - 5.1.1

Published by andersfugmann over 4 years ago

  • Add xmlm driver for xml (by Nick Betteridge)
ppx_protocol_conv -

Published by andersfugmann almost 5 years ago

  • 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)
ppx_protocol_conv - Major rewrite

Published by andersfugmann over 5 years ago

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)
ppx_protocol_conv -

Published by andersfugmann over 5 years ago

Require yojson >= 1.6.0
Require ppxlib >= 0.3.0