Skip to content

Collection of third-party modules managed and synced by Buf.

License

Notifications You must be signed in to change notification settings

bufbuild/modules

Repository files navigation

modules

Description

This repository contains first and third-party modules synced and published to the Buf Schema Registry.

If you'd like a common third-party module to be managed by Buf, open an issue using the Managed Module Request for Buf Schema Registry issue template and our team will follow up.

Managed modules

We currently sync automatically the following modules:

Module Source Community Repository Depends on
bufbuild/confluent https://github.com/bufbuild/confluent-proto
bufbuild/protovalidate https://github.com/bufbuild/protovalidate
bufbuild/protovalidate-testing https://github.com/bufbuild/protovalidate - bufbuild/protovalidate
bufbuild/reflect https://github.com/bufbuild/reflect
cncf/xds https://github.com/cncf/xds - envoyproxy/protoc-gen-validate
- google/cel-spec
- googleapis/googleapis
envoyproxy/envoy https://github.com/envoyproxy/envoy - cncf/xds
- envoyproxy/protoc-gen-validate
- googleapis/googleapis
- opencensus/opencensus
- opentelemetry/opentelemetry
- prometheus/client-model
envoyproxy/protoc-gen-validate https://github.com/envoyproxy/protoc-gen-validate
envoyproxy/ratelimit https://github.com/envoyproxy/ratelimit - envoyproxy/envoy
gogo/protobuf https://github.com/gogo/protobuf
google/cel-spec https://github.com/google/cel-spec - googleapis/googleapis
googleapis/googleapis https://github.com/googleapis/googleapis
googlechrome/lighthouse https://github.com/GoogleChrome/lighthouse
googlecloudplatform/bq-schema-api https://github.com/GoogleCloudPlatform/protoc-gen-bq-schema
grpc/grpc https://github.com/grpc/grpc-proto - googleapis/googleapis
grpc-ecosystem/grpc-gateway https://github.com/grpc-ecosystem/grpc-gateway
opencensus/opencensus https://github.com/census-instrumentation/opencensus-proto
opentelemetry/opentelemetry https://github.com/open-telemetry/opentelemetry-proto
prometheus/client-model https://github.com/prometheus/client_model
protocolbuffers/gofeatures https://github.com/protocolbuffers/protobuf-go - protocolbuffers/wellknowntypes
protocolbuffers/wellknowntypes https://github.com/protocolbuffers/protobuf

How we handle dependencies

Dependencies are an essential part of these community modules as they help developers reuse well known Protobuf types, reduce errors and speed up the development process. We do not control the source of these modules, and managing and pinning dependencies to their exact commit can be difficult, especially when multiple module sources and build systems are involved.

To minimize issues with pinned dependencies on these modules, we sync them in the following order. First, we sync standalone modules. After they succeed, we then sync the modules that depend on them, which use the latest pushed dependency commit. As long as the dependencies don’t have any breaking change in the source code, this should be sufficient and stable for upstream modules.

Community

For help and discussion regarding Protobuf managed modules, join us on Slack.

For feature requests, bugs, or technical questions, email us at [email protected].

Legal

Offered under the Apache 2 license.