cosmos-sdk-proto-althea

Crates.iocosmos-sdk-proto-althea
lib.rscosmos-sdk-proto-althea
version0.18.0
sourcesrc
created_at2021-11-23 16:04:49.82691
updated_at2024-10-03 18:58:23.356817
descriptionProtobuf stuct defintions for interacting with Cosmos SDK powered blockchains
homepage
repositoryhttps://github.com/althea-net/proto/tree/main/cosmos_sdk_proto
max_upload_size
id486316
size822,482
Justin Kilpatrick (jkilpatr)

documentation

README

cosmos-sdk-proto

Crate Docs Build Status Apache 2.0 Licensed MSRV

Rust crate for interacting with Protobufs defined by the Cosmos SDK.

The goal of this crate is to provide complete proto struct definitions for interacting with a Cosmos SDK blockchain.

Currently, this crate only provides a subset of the many total structs exported by Cosmos SDK proto files.

Pull requests to expand coverage are welcome.

Documentation

Minimum Supported Rust Version

This crate is supported on Rust 1.56 or newer.

Issues with the Cosmos Staking module prost file

Unfortunately (the upstream source for the CosmosSDK staking module proto definitions)[https://github.com/cosmos/cosmos-sdk/blob/v0.45.16/proto/cosmos/staking/v1beta1/authz.proto#L20-L30] causes a namespace conflict when using prost. Particularly there is a oneof named validators which becomes a Rust enum named Validators and a message named Validators which becomes a Rust struct named Validators, which causes a failure to compile.

Whenever this file is updated it has been manually fixed to rename the enum to ValidatorsEnum and the relative disuse of the StakingAuthorization types means that is OK for now. If you run proto_build and see the src/prost/cosmos.staking.v1beta1.rs file has changed in insignificant ways, it is fine to ignore that file.

Commit count: 0

cargo fmt