What's Changed
- ci: fix protoc plugin release build under the pinned toolchain by @iainmcgin in #182
- buffa-yaml: add Phase 1 YAML serialization crate by @rsd-darshan in #155
- feat(buffa-types): add chrono interop feature by @yordis in #163
- decode: read length-delimited reader payloads incrementally by @iainmcgin in #185
- decode: limit unknown fields to bound memory amplification (owned, dynamic, and view paths) by @iainmcgin in #184
- codegen: add oneof_attribute() for oneof-only custom attributes by @jlucaso1 in #167
- codegen: customizable feature names for gate_impls_on_crate_features by @Susanpdl in #183
- codegen: idiomatic_imports — use-backed short names at package root (file_per_package) by @iainmcgin in #189
- views: additive FooLazyView family for opt-in lazy decoding by @jlucaso1 in #188
- Sync stale buffa-yaml Cargo.lock entry to workspace version 0.7.1 by @iainmcgin in #187
- benchmarks: lazy view variant in main benchmarks and charts by @iainmcgin in #190
- codegen: add type_name_prefix for generated message and enum names by @Susanpdl in #199
- tooling: run the conformance suite without Docker by @iainmcgin in #192
- views: track proto2 required-field presence on MessageView by @Susanpdl in #200
- Mark all checked-in generated code as linguist-generated by @iainmcgin in #204
- ci: bump CLA Assistant to v3.2.0 and relax comment trigger by @iainmcgin in #205
- runtime: add check_wire_type, fold per-arm wire guards into one call by @iainmcgin in #193
- Instructions for Homebrew by @chrisfinazzo in #203
- runtime: add map_codec, replace inline map-entry wire loops in owned codegen by @iainmcgin in #194
- runtime: add fused put_*_field writers, collapse tag+payload write pairs by @iainmcgin in #195
- runtime: macros for DefaultInstance / DefaultViewInstance / ViewReborrow by @iainmcgin in #196
- runtime: json adapter newtypes replace per-site _W serialize wrappers by @iainmcgin in #197
- view: move the decode tag loop into MessageView, mirroring Message::merge (BREAKING) by @iainmcgin in #198
- runtime: inline(always) the fused field writers to restore tag const-fold by @iainmcgin in #207
- Pluggable owned string/bytes types via from_wire; drop curated string presets (#156) by @iainmcgin in #206
- Pluggable owned collection types for repeated fields (ProtoList) by @iainmcgin in #208
- Pluggable owned pointer for message fields (ProtoBox) by @iainmcgin in #209
- Pluggable owned map container for map fields (MapStorage) by @iainmcgin in #210
- benchmarks: track per-release performance history by @iainmcgin in #211
- buffa: default map<K,V> hasher to foldhash on std builds by @iainmcgin in #224
- perf(size_cache): drop per-encode inline-array zeroing via MaybeUninit by @iainmcgin in #223
- task: run markdownlint as part of
task lintby @iainmcgin in #221 - Support custom string types for map keys and values by @iainmcgin in #222
- codegen: reserve packed varint views by element count, not byte length by @iainmcgin in #216
- feat(size_cache): opt-in SizeCachePool for spill-buffer reuse by @iainmcgin in #225
- benchmarks: per-message-isolated bench harness (clean by construction) by @iainmcgin in #217
- Fix closed enum map unknown preservation by @fallintoplace in #218
- Fix reader max size overflow by @fallintoplace in #219
- msrv: lower rust-version to 1.75 and revise MSRV policy by @iainmcgin in #228
- Fail googleapis stress test on generation errors by @fallintoplace in #238
- examples: add custom-types — end-to-end pluggable owned types (#214) by @iainmcgin in #234
- Add diagnostic hints to custom-type traits (#213) by @rsd-darshan in #229
- benchmarks: fair-profile cross-impl comparison on bare metal by @iainmcgin in #227
- Fix extern_path refs to use deconflicted nested module names by @th0114nd in #233
- Make plugin option parsing strict by @fallintoplace in #235
- DecodeOptions: add explicit unbounded reader option by @fallintoplace in #236
- Avoid quadratic extension JSON dedup by @fallintoplace in #237
- view: HasMessageView::decode_view default; MessageField::unwrap/expect by @iainmcgin in #240
- decode: validate string fields with smoothutf8 (default-on fast-utf8 feature) by @iainmcgin in #241
- release: v0.8.0 by @iainmcgin in #242
New Contributors
- @rsd-darshan made their first contribution in #155
- @Susanpdl made their first contribution in #183
- @chrisfinazzo made their first contribution in #203
- @fallintoplace made their first contribution in #218
Full Changelog: v0.7.1...v0.8.0