Hi All,
I’m happy to announce the second release of ocaml-protoc-plugin.
Ocaml-protoc-plugin is a plugin to googles protoc
compiler which generates type idiomatic to ocaml from .proto
files including full compliant serialization and deserialization functions.
Most noteworthy changes in this release:
- Full proto2 support.
- The list of dependencies has been slimmed way down, and now only depends on
conf-protoc
(theprotoc
compiler and googles well known types). - Buckescript support.
- Added options to change the ocaml (type for scalar types (int, int64 or int32).
Many thanks to Wojtek Czekalski for helping trimming dependencies and for Buclescript support.
Full changelog:
- Support enum aliasing
- Avoid name clash with on ‘name’
- Fix code generation when argument contains a path
- Refactor internal types to make serialization and
deserialization type spec symmetrical. - Optimize deserialization for messages with max_id < 1024
- Don’t depend on Base in runtime
- Slim runtime dependencies: Remove need for base, ocplib-endian
and ppx_let - Honor [packed=…] flag.
- Make fixed scalar types default to int32 and int64
- Support proto2 specification
- Add options to switch between int64|int32 and int
- Fix name clash problem with special enum names
- Refactor serialization and deserialization to simplify emitted code
- Eagerly evaluate serialization (for speed).