xds-api

Crates.ioxds-api
lib.rsxds-api
version0.1.0
sourcesrc
created_at2024-09-05 15:28:39.452151
updated_at2024-09-05 15:28:39.452151
descriptionProtocol buffer types for working with Envoy's xDS APIs.
homepagehttps://github.com/junction-labs/xds-api
repositoryhttps://github.com/junction-labs/xds-api
max_upload_size
id1364774
size8,103,884
Ben Linsay (blinsay)

documentation

README

xds-api

This crate contains generated Tonic bindings for the xDS gRPC protocol. You should depend on this crate if you're interested in building an xDS client or server or are working with any of Envoy's configuration types.

xDS Versions

This crate targets the v3 versions of the xDS APIs. If you are interested in v2 API support, please reach out or open an issue.

WellKnownTypes

xDS makes heavy use of the protobuf Any type. To make working with Any easier, this crate generates its own Any implementation and provides [WellKnownTypes] for converting between Any and known type URLs.

Feature Flags

This crate provides feature flags for:

  • pbjson: Enables Serde serialization/deserialization for xDS types using the pbjson crate, which approximates the canonical json mapping with Serde APIs. Enabling this flag adds a Serialize and Deserialize implementation to all xDS types.

  • descriptor: Generates and includes an encoded protobuf descriptor for all of the types in the xDS API. That descriptor can be registered with tonic_reflection to make the xDS APIs visible to a gRPC Reflection Service.

Protoc

Because this crate compiles well-known types on its own, it depends on a pinned version of protoc. The currently pinned version is kept in .protoc-version.

Commit count: 0

cargo fmt