Protocol Buffers (a.k.a., protobuf) are Google's language-neutral, platform-neutral, extensible mechanism for serializing structured data.
What's new in 36.2
Announcements
Protobuf News may include additional announcements or pre-announcements for upcoming changes.
Compiler
Detects single-crate cross-file symbol collisions and conditionally emits crate-root re-exports. (https://github.com/protocolbuffers/protobuf/commit/30780158a07394a22eba3d57527ef32cac795e76)
Prepend the file module name to Rust type paths to use canonical paths. (https://github.com/protocolbuffers/protobuf/commit/7390c85c5ce3707ab236aeb511eeeaba49c2f4fa)
Expose generated per-file Rust proto modules as public. (https://github.com/protocolbuffers/protobuf/commit/7ed8a4bd72ba92b741fae08d6f05cbf987b7bcf1)
Csharp
Regenerate stale files. (https://github.com/protocolbuffers/protobuf/commit/57ef94fbb3e947c242a0a0a4831960f04b8bbf38)
Rust
Update README to note that the protobuf crate is superseded by google-protobuf. (https://github.com/protocolbuffers/protobuf/commit/8b6311f91c2fe6fb0ae4c661bdbef6e5b670c403)
Add README.md to google-protobuf-codegen release crate (https://github.com/protocolbuffers/protobuf/commit/10b8b5e3222ffc8868c3338485dd1dfb007dab85)
Detects single-crate cross-file symbol collisions and conditionally emits crate-root re-exports. (https://github.com/protocolbuffers/protobuf/commit/30780158a07394a22eba3d57527ef32cac795e76)
Prepend the file module name to Rust type paths to use canonical paths. (https://github.com/protocolbuffers/protobuf/commit/7390c85c5ce3707ab236aeb511eeeaba49c2f4fa)
Expose generated per-file Rust proto modules as public. (https://github.com/protocolbuffers/protobuf/commit/7ed8a4bd72ba92b741fae08d6f05cbf987b7bcf1)
Remove iterator trait implementations for RepeatedMutIter (https://github.com/protocolbuffers/protobuf/commit/7aca0ec15c71505aced9eaf3ca3412d41aeb4d7e)
Enable inherent next() and next_back() API for RepeatedMutIter besides trait implementation. (https://github.com/protocolbuffers/protobuf/commit/2198c6b4016cae3f76595ed3b50b23c3bd8c0add)
*See also UPB changes below, which may affect Rust.*
UPB (Python/PHP/Ruby C-Extension)
Include .c files in the source_files glob in upb/port/BUILD (https://github.com/protocolbuffers/protobuf/commit/7ff0f8817b7a35185c94260ae7553b1df50ebbd1)