Source

meta_conv / Changes

Full commit
1.1.4 (not yet)
-------------

- Added xml_conv
- Added ref encoder/decoder for conv(ocaml)

1.1.3
-------------

- Update for OCaml 4.01.0 

1.1.2
-------------

- Code cleanup

1.1.1
-------------

* Fixed the parsing of with 'conv(foo(bar))' (still requires a bug fix of type_conv 108.08.00
* Added special handling of identity encoder and decoder
* Added encoder support of GADT. Do NOT expect decoder support.
* Added support of manifest types, i.e., type t = M.t = .... It does not use encoders and decoders of the alias (even if they exist), but builds encoders and decoders from the local definition.
* Bug fixes of OCaml_conv: save_with, load_with, and its list decoder 

1.1.0
-------------

INCOMPATIBLES    Sorry, lots of incompatibilities introduced but mainly name space fixes

* Meta_conv.Internal.Make => Meta_conv.Coder.Make. 
     Custom coder now needs to use less Internal.

* Following name changes in Types.S:

     Encode => Constr
     Decode => Deconstr
        In order to remove the confusion between the real decoders and encoders. 

     Decode' => DeconstrDecoder

     prim_decode => Helper.of_deconstr
     generic_* => Helper.*

     integer_of_float is now in Make functor as Helper.integer_of_float

- Error.LocalException for locally bound exceptions for target specific errors

1.0.0
-------------

- Incompatible: decoders now take 'trace' optional argument to record decoding trace.

- Generated decoders now use try..with instead of bunch of monadic binds for efficiency.

- Meta_conv.Internal.Make now should be used to write the conversions.

- Added some tool functions

- Bug: due to a bug of type_conv 108.08.00, conv(json(Json.t, Json_conv)) does not work properly.


0.11.0
-------------

- Added (partial) polymorphic variant and object type support

- Removed Address.t, since it just complicates the code base.
  Tree addresses must be handled by the tree data themselves.

- Removed (: Leftovers :) annotation. Use mc_leftovers special type instead.

- [t mc_leftovers] can live with more than one conv()s. 
  [t mc_leftovers] works as leftover fields only for a conv(type) with the same
  syntactic target type. For example, [Json.t mc_leftovers] works as leftover field
  for conv(json), but not for conv(ocaml).

- ocaml_conv now has parser by compiler-libs

- Bug fixes

0.10.0
-------------

- Decoding of lazy_t is now done lazily.
- Added OCaml decoder/encoder

0.9.0
-------------

- Initial release