3 releases

4.0.0-alpha.2 Aug 23, 2022

#924 in Encoding

Download history 261/week @ 2023-10-22 208/week @ 2023-10-29 220/week @ 2023-11-05 185/week @ 2023-11-12 185/week @ 2023-11-19 162/week @ 2023-11-26 154/week @ 2023-12-03 167/week @ 2023-12-10 189/week @ 2023-12-17 146/week @ 2023-12-24 171/week @ 2023-12-31 233/week @ 2024-01-07 168/week @ 2024-01-14 164/week @ 2024-01-21 123/week @ 2024-01-28 327/week @ 2024-02-04

811 downloads per month
Used in 9 crates (3 directly)

MIT license

29K SLoC

Library to read and write protocol buffers data


This crate has one feature, which is with-bytes.

with-bytes enables protobuf crate support for bytes crate: when parsing bytes or strings from bytes::Bytes, protobuf will be able to reference the input instead of allocating subarrays.

Note, codegen also need to be instructed to generate Bytes or Chars for bytes or string protobuf types instead of default Vec<u8> or String, just enabling option on this crate is not enough.

See Customize struct in protobuf-codegen crate.

Accompanying crates

  • protobuf-json-mapping implements JSON parsing and serialization for protobuf messages.
  • protobuf-codegen can be used to rust code from .proto crates.
  • protoc-bin-vendored contains protoc command packed into the crate.
  • protobuf-parse contains .proto file parser. Rarely need to be used directly, but can be used for mechanical processing of .proto files.


~20K SLoC