A new version of the Protocol Compiler is available. It has been tagged with 'v1.1' so, if you have it checked out, you can get this version by specifying the tag:
$ git checkout v1.1
It hasn't yet been released in the console environment.
The protocol compiler is documented in the project's Wiki: https://cdcvs.fnal.gov/redmine/projects/protocol-compiler/wiki
Changes from the previous version:¶
- Although there have been updates to the protocol compiler over the past ten years, we never associated releases with a version number. With this release we're starting so bugs can be reported against a known version. We've arbitrarily chose this first version to be "1.1".
versionkeyword still works, but now also generates a warning since it is deprecated. It will be completely removed in v1.2.
- The names of anonymous structures have been simplified. Although this could cause compilation errors, most code accesses fields in the structure rather than specifying the structure by name.
- The C++ generator understands two, new options:
--c++-source-only, which prevents the generator from producing both a header and a source file.
- The C++ generator moves some internal functions deeper in its namespaces so that two or more protocols can be used in an application. Previously an application using more than one protocol would get "duplicate symbol" errors from the linker.
- The Erlang generator now defines enumerations using the
- The Erlang generator generates more-efficient unmarshal functions.