v0.5.0
PROST! is a Protocol Buffers implementation for the Rust Language. prost
generates simple, idiomatic Rust code from proto2
and proto3
files.
prost
0.5.0 should be mostly source-compatible with version 0.4.0, with one exception: prost
0.4.0 escapes field and message names which are Rust keyword by appending a suffix underscore; prost
0.5.0 does not escape field or message names, instead using the new raw-identifier feature. In addition, the minimum rustc
version has been bumped to 1.32.0.
0.5.0 ships with new features and bug fixes:
- @adeschamps fixed a bug which caused enum fields with a default value whose prefix is stripped to be incorrectly generated.
- @danburkert added an option for overriding the code-generation output directory with a new
prost_build::Config::out_dir()
method. - @danburkert added a re-export of
prost-derive
types inprost
. As a result, it should no longer be necessary for applications to depend directly on theprost-derive
crate. - @ebkalderon, @trha, and @danburkert added support to the code generator for referencing
prost
generated types in external crates with a newprost_build::Config::extern_path()
method. - @jeffparsons made code generation more robust by always fully-qualifying standard library types.
- @nrc added support for generating edition-2018 compatible code.
Many thanks to the generous contributors who have helped out since 0.4.0:
- Anthony Deschamps
- Dan Burkert
- Eliza Weisman
- Eyal Kalderon
- Jeff Parsons
- Nick Cameron
- Sebastian Hahn
- Timothy Hobbs
- Trinh Hoang Anh