New Features
- protoc-gen-openapiv3: Brand new minimal OpenAPI v3 generator (#6623), plus follow-ups:
- openapiv3-merge: New standalone tool for merging OpenAPI v3 documents (#6771) — @johanbrandhorst
- protoc-gen-openapiv2 moved to the protoc toolchain (#6988) — @EliSauder
Fixes
| Change | PR | Contributor |
|---|---|---|
| OpenAPI v2: messages sorted before rendering definitions for determinism | #6732 | @alliasgher |
OpenAPI v2: enum comments now go to description instead of title
| #6785 | @superShen0916 |
| OpenAPI v2: include field schema metadata on parameters | #6894 | @puneetdixit200 |
| OpenAPI v2: omit empty body objects for nested path parameters | #7065 | @alliasgher |
| OpenAPI v3: omit empty body objects for nested path parameters | #7068 | @alliasgher |
OpenAPI v2: preserve x-nullable when use_allof_for_refs wraps a $ref
| #7026 | @pkhanaljc |
| OpenAPI v2: fix path joining for colon-prefixed segments | #7191 | @Ritik100-AIT |
| Prioritize OpenAPI config options over proto options | #6973 | @maskedmaxx |
| Support Service doc comments for OpenAPI/Swagger generation | #6200 | @majiayu000 |
| Fix nested body path initialization for oneof fields | #6948 | @cyphercodes |
| Remove redundant enum assignment for nested proto3 fields | #7059 | @abhishek-dalbanjan |
Drain request only after ParseForm in generated code
| #7192 | @paskozdilar |
Support field extensions with use_allof_for_refs
| #3100 | @same-id |
Ignore M import-path mappings in openapiv3 plugin params
| #6936 | @johanbrandhorst |
Documentation
- Clarify
HttpBodydownload usage (#6904) — @ketpatil77 - Clarify Go tool dependency options (#7042) — @hawk-roy
- Add a runnable OpenTelemetry tracing example (#7110) — @hsdfat
- Fix SLSA link in README (#7149) — @ZayanKhan-12
- Explain Buf strategy for shared API config (#7147) — @dlanov
Tests / CI / Infra
- Add test coverage for slice converters in
convert.go(#7041) — @viniciusmtsantos - Remove Java swagger generator test dependency (#6735) — @johanbrandhorst
- CI improvements — go-version-file usage, release workflow tag input, checkout ref fixes, node_test timeouts, Node 22 LTS for browser tests (avoids a Node 24
zlibhang) (#6627, #6632, #6633, #6867, #6868) — @johanbrandhorst - Better Bazel caching; auto-merge job for dependabot PRs (#6667, #6668) — @johanbrandhorst
- Run gazelle on openapiv3 files; add missing Bazel files (#6734, #6738) — @johanbrandhorst
New Contributors
@alliasgher, @superShen0916, @puneetdixit200, @ketpatil77, @EliSauder, @maskedmaxx, @hawk-roy, @viniciusmtsantos, @cyphercodes, @abhishek-dalbanjan, @hsdfat, @ZayanKhan-12, @dlanov, @maydietwice, @pkhanaljc, @Ritik100-AIT
Full Changelog: v2.29.0...v2.30.0