Use YARPC protobuf v2 codegen#204
Merged
Merged
Conversation
There was a problem hiding this comment.
Pull request overview
This PR migrates the repository’s YARPC protobuf stub generation to the YARPC protobuf v2 codegen/tooling, updating generated client/server glue to use go.uber.org/yarpc/encoding/protobuf/v2 and removing the legacy gogo/protobuf dependency from the build configuration.
Changes:
- Switch Bazel proto codegen to use
protoc-gen-yarpc-go-v2and--yarpc-go-v2_{out,opt}flags. - Regenerate YARPC
.pb.yarpc.gostubs to use YARPC protobuf v2 APIs andgoogle.golang.org/protobuf/proto. - Update Bazel deps / module deps and Go module deps to drop
gogo/protobufand depend on the Google protobuf module.
Reviewed changes
Copilot reviewed 7 out of 12 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| tool/proto/proto_codegen.bzl | Updates Bazel proto generation to invoke the YARPC protobuf v2 plugin and flags. |
| submitqueue/orchestrator/protopb/orchestrator.pb.yarpc.go | Regenerated YARPC stubs to use encoding/protobuf/v2 APIs and Google protobuf proto.Message. |
| submitqueue/orchestrator/protopb/BUILD.bazel | Updates Go library deps to match regenerated stubs (adds google protobuf + YARPC protobuf v2). |
| submitqueue/gateway/protopb/gateway.pb.yarpc.go | Regenerated YARPC stubs to use encoding/protobuf/v2 APIs and Google protobuf proto.Message. |
| submitqueue/gateway/protopb/BUILD.bazel | Updates Go library deps to match regenerated stubs (adds google protobuf + YARPC protobuf v2). |
| stovepipe/orchestrator/protopb/orchestrator.pb.yarpc.go | Regenerated YARPC stubs to use encoding/protobuf/v2 APIs and Google protobuf proto.Message. |
| stovepipe/orchestrator/protopb/BUILD.bazel | Updates Go library deps to match regenerated stubs (adds google protobuf + YARPC protobuf v2). |
| stovepipe/gateway/protopb/gateway.pb.yarpc.go | Regenerated YARPC stubs to use encoding/protobuf/v2 APIs and Google protobuf proto.Message. |
| stovepipe/gateway/protopb/BUILD.bazel | Updates Go library deps to match regenerated stubs (adds google protobuf + YARPC protobuf v2). |
| MODULE.bazel | Removes Bazel module repo usage for com_github_gogo_protobuf. |
| go.mod | Removes github.com/gogo/protobuf (and related indirects) from module requirements. |
| go.sum | Updates sums to reflect dependency graph changes after removing direct gogo usage. |
Files not reviewed (4)
- stovepipe/gateway/protopb/gateway.pb.yarpc.go: Language not supported
- stovepipe/orchestrator/protopb/orchestrator.pb.yarpc.go: Language not supported
- submitqueue/gateway/protopb/gateway.pb.yarpc.go: Language not supported
- submitqueue/orchestrator/protopb/orchestrator.pb.yarpc.go: Language not supported
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
behinddwalls
approved these changes
Jun 5, 2026
mnoah1
approved these changes
Jun 5, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
The previous yarpc transport code was compiled for gogo/protobuf, which is incompatible with proto v2 shapes + structs.
This PR fixes the yarpc transport code to use proto v2.
Before Example:
After Example:
Test Plan
✅
make fmt && make build && make test && make e2e-test