chore: migrate to protoc#93
Conversation
|
Important Review skippedAuto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
The latest Buf updates on your PR. Results from workflow Buf CI / buf (pull_request).
|
0c3bbc0 to
dfdb930
Compare
There was a problem hiding this comment.
Actionable comments posted: 1
🧹 Nitpick comments (2)
README.md (1)
52-56: Consider removing$from shell examples.The markdownlint warnings about dollar signs are a stylistic choice. If you want to address them, you can remove the
$prefix since no output is shown.📝 Optional: Remove dollar signs from shell examples
-``` sh -$ protofetch -o vendor-proto fetch +```sh +protofetch -o vendor-proto fetchMakefile (1)
25-32: Theinstall-toolstarget is platform-specific.This target assumes macOS with Homebrew. Consider documenting this limitation or providing alternative installation paths for other platforms (e.g., Linux package managers, direct downloads).
The README does mention alternative installation methods, so this may be acceptable if
install-toolsis intended as a convenience for macOS developers.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 2e457f15-15be-444e-9d60-12492c431194
⛔ Files ignored due to path filters (19)
go.sumis excluded by!**/*.sumproto/kms/api/cmk/eventprocessor/task/v1/task.pb.gois excluded by!**/*.pb.goproto/kms/api/cmk/registry/auth/v1/auth.pb.gois excluded by!**/*.pb.goproto/kms/api/cmk/registry/auth/v1/auth_grpc.pb.gois excluded by!**/*.pb.goproto/kms/api/cmk/registry/mapping/v1/mapping.pb.gois excluded by!**/*.pb.goproto/kms/api/cmk/registry/mapping/v1/mapping_grpc.pb.gois excluded by!**/*.pb.goproto/kms/api/cmk/registry/system/v1/system.pb.gois excluded by!**/*.pb.goproto/kms/api/cmk/registry/system/v1/system_grpc.pb.gois excluded by!**/*.pb.goproto/kms/api/cmk/registry/tenant/v1/tenant.pb.gois excluded by!**/*.pb.goproto/kms/api/cmk/registry/tenant/v1/tenant_grpc.pb.gois excluded by!**/*.pb.goproto/kms/api/cmk/rpc/v1/error_details.pb.gois excluded by!**/*.pb.goproto/kms/api/cmk/sessionmanager/oidcmapping/v1/oidcmapping.pb.gois excluded by!**/*.pb.goproto/kms/api/cmk/sessionmanager/oidcmapping/v1/oidcmapping_grpc.pb.gois excluded by!**/*.pb.goproto/kms/api/cmk/sessionmanager/session/v1/session.pb.gois excluded by!**/*.pb.goproto/kms/api/cmk/sessionmanager/session/v1/session_grpc.pb.gois excluded by!**/*.pb.goproto/kms/api/cmk/types/v1/oidc.pb.gois excluded by!**/*.pb.goproto/kms/api/cmk/types/v1/region.pb.gois excluded by!**/*.pb.goproto/kms/api/cmk/types/v1/status.pb.gois excluded by!**/*.pb.goprotofetch.lockis excluded by!**/*.lock
📒 Files selected for processing (29)
MakefileREADME.mdbuf.gen.yamlbuf.yamlgo.modproto/kms/api/cmk/eventprocessor/task/v1/task.pb.validate.goproto/kms/api/cmk/eventprocessor/task/v1/task.protoproto/kms/api/cmk/registry/auth/v1/auth.pb.validate.goproto/kms/api/cmk/registry/auth/v1/auth.protoproto/kms/api/cmk/registry/mapping/v1/mapping.pb.validate.goproto/kms/api/cmk/registry/mapping/v1/mapping.protoproto/kms/api/cmk/registry/system/v1/system.pb.validate.goproto/kms/api/cmk/registry/system/v1/system.protoproto/kms/api/cmk/registry/tenant/v1/tenant.pb.validate.goproto/kms/api/cmk/registry/tenant/v1/tenant.protoproto/kms/api/cmk/rpc/v1/error_details.pb.validate.goproto/kms/api/cmk/rpc/v1/error_details.protoproto/kms/api/cmk/sessionmanager/oidcmapping/v1/oidcmapping.pb.validate.goproto/kms/api/cmk/sessionmanager/oidcmapping/v1/oidcmapping.protoproto/kms/api/cmk/sessionmanager/session/v1/session.pb.validate.goproto/kms/api/cmk/sessionmanager/session/v1/session.protoproto/kms/api/cmk/types/v1/oidc.pb.validate.goproto/kms/api/cmk/types/v1/oidc.protoproto/kms/api/cmk/types/v1/region.pb.validate.goproto/kms/api/cmk/types/v1/region.protoproto/kms/api/cmk/types/v1/status.pb.validate.goproto/kms/api/cmk/types/v1/status.protoprotofetch.tomlvendor-proto/buf/validate/validate.proto
💤 Files with no reviewable changes (12)
- buf.gen.yaml
- proto/kms/api/cmk/types/v1/region.pb.validate.go
- proto/kms/api/cmk/types/v1/oidc.pb.validate.go
- proto/kms/api/cmk/types/v1/status.pb.validate.go
- proto/kms/api/cmk/sessionmanager/session/v1/session.pb.validate.go
- proto/kms/api/cmk/registry/auth/v1/auth.pb.validate.go
- proto/kms/api/cmk/sessionmanager/oidcmapping/v1/oidcmapping.pb.validate.go
- proto/kms/api/cmk/rpc/v1/error_details.pb.validate.go
- proto/kms/api/cmk/eventprocessor/task/v1/task.pb.validate.go
- proto/kms/api/cmk/registry/mapping/v1/mapping.pb.validate.go
- proto/kms/api/cmk/registry/system/v1/system.pb.validate.go
- proto/kms/api/cmk/registry/tenant/v1/tenant.pb.validate.go
bufuses a completely proprietary buf's-hosted BSR (Buf Schema Registry) for storing remote plugins and.proto-definitions. It silently locks us in on thebufvendor and their quotas.In order to generate code with
bufCLI, the tool does an RPC request to the remote registry, and sends all the code to their servers. It's a concern from the security standpoint.Additionally, BSR quota on a public tier is 10 requests per hour, which means we can only run
buf generate10 times per hour.We should be able to run the code generation locally and deterministically, independently on the vendor. This PR migrates code generation to the standard
protoccompilerchore: migrate to protoc
Summary by CodeRabbit