Crates.io | cosmos-sdk-proto-althea |
lib.rs | cosmos-sdk-proto-althea |
version | 0.18.0 |
source | src |
created_at | 2021-11-23 16:04:49.82691 |
updated_at | 2024-10-03 18:58:23.356817 |
description | Protobuf stuct defintions for interacting with Cosmos SDK powered blockchains |
homepage | |
repository | https://github.com/althea-net/proto/tree/main/cosmos_sdk_proto |
max_upload_size | |
id | 486316 |
size | 822,482 |
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.
This crate is supported on Rust 1.56 or newer.
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.