#tendermint #abci #cosmos #blockchain #proof-of-stake

bin+lib rust-abci

Tendermint Core使用的ABCI协议的实现。允许在Rust中构建ABCI应用程序。

1 个不稳定版本

使用旧的Rust 2015

0.1.0 2017年6月19日

#11#abci

MIT/Apache

345KB
7.5K SLoC

Rust ABCI

Tendermint的ABCI协议的Rust实现。

加入聊天!

我们有一个友好的社区,其中充满了一群乐于助人的人,他们总是乐于帮助那些需要建议或只是想闲聊的人。

行为准则

请阅读、理解并遵守我们的 行为准则


关于rust-abci

此库实现了ABCI协议,并可用于在Rust中编写Tendermint的ABCI应用程序。在这里您可以找到更多关于 TendermintABCI应用程序 的信息。

对于ABCI应用程序的实际示例,您可以查看 EthermintBasecoin


依赖项

请确保您已安装Rust。最简单的方法是按照 rustup 上的说明进行操作。

安装

要测试示例,请克隆此仓库。

git clone [email protected]:tendermint/rust-abci.git

请查看 src/bin 中的dummy或counter应用程序,以了解此服务器的工作原理。

要使用此库在Rust中构建自己的ABCI应用程序,您必须在您的 Cargo.toml 文件中包含以下内容。

[dependencies]
rust-abci = { git = "[email protected]:tendermint/rust-abci.git" }

运行示例

Tendermint

要运行示例应用程序之一,您必须已安装并初始化Tendermint。请按照这些 说明 进行安装。您还可以查看 Ethermint,以深入了解ABCI应用程序的工作原理。请记住,像这样以 --abci grpc 标志运行tendermint。

tendermint node --abci grpc

示例

一旦Tendermint实例启动并运行,您就可以像这样启动示例之一。当然,请记住切换到 rust-abci 文件夹。

cargo run --features "grpc_support" --bin dummy

cargo run --features "grpc_support" --bin counter

文档

// TODO - 发布到rust文档

// TODO - 提供快速示例


可选依赖项

ABCI协议的消息类型在protobuf文件中定义,可以从 这里 复制。

我们使用 rust-protobuf 从 protobuf 源文件生成兼容的 Rust 文件。为了方便,生成的 Rust 文件已经提交到 git 中,并将与库一起打包。如果您想自己生成它们,也可以。请安装这两个工具。

cargo install protobuf
cargo install grpc-compiler
protoc --rust_out src/ types.proto
protoc --rust-grpc_out src/ types.proto

依赖项

~23–35MB
~657K SLoC