2 个不稳定版本
新版本 0.2.0 | 2024 年 8 月 9 日 |
---|---|
0.1.0 | 2024 年 5 月 13 日 |
#529 在 魔法豆
1,673 每月下载量
用于 ibc-testkit
69KB
1.5K SLoC
basecoin-rs
从高层次来看,basecoin 实现了位于 Tendermint 共识层和 ibc-rs 之间的应用逻辑。它是一个基本的 Tendermint ABCI 应用程序,以下功能以模块的形式实现-
bank
- 跟踪不同账户的余额并促进这些账户之间的交易。ibc
- 启用对 IBC (客户端、连接和通道) 的支持
其主要用例是作为 ibc-rs 模块的正确性和行为验证的测试平台和模拟实现。
要求
到目前为止,此应用程序已与以下内容进行了测试
- Rust > v1.64
- CometBFT v0.37
如何将 ibc-rs 变更集成到 basecoin 中
由于 basecoin 作为一套针对 ibc-rs 功能的集成测试,每个 ibc-rs PR 也需要一个相应的 basecoin PR。执行此操作的步骤是
- 在 basecoin 的一个新分支中,更新 ibc 修订版本 为 ibc-rs PR 的最新提交。
- 在 basecoin 中实施必要的更改,以使其能够与 ibc-rs 的最新提交版本一起工作。
- 运行
cargo clippy --all-features
和cargo clippy --no-default-features
并修复 clippy 提出的任何问题。 - 在basecoin-rs仓库中打开一个PR,确保链接到相关的ibc-rs PR。
- 检查集成测试是否通过。
启动basecoin实例
步骤1:重置您的本地CometBFT节点
$ cometbft init
$ cometbft unsafe-reset-all
步骤2:修改CometBFT配置
编辑CometBFT的config.toml
文件(默认位置~/.cometbft/config/config.toml
),如下更新proxy_app
和P2P的laddr
。
proxy_app = "tcp://127.0.0.1:26358"
# ...
[p2p]
laddr = "tcp://0.0.0.0:26356"
步骤3:模块特定设置
请参阅模块文档以获取更多信息——
步骤4:运行basecoin应用程序和CometBFT
# See all supported CLI options
$ cargo run -- --help
basecoin 0.1.0
USAGE:
basecoin [FLAGS] [OPTIONS]
Commands:
start
query Query a state of Basecoin application from the store
help Prints this message or the help of the given subcommand(s)
OPTIONS:
--config <FILE> The path to the configuration file [default: config.toml]
--verbose Increase output logging verbosity to DEBUG level
--quiet Suppress all output logging (overrides --verbose)
-h --help Prints help information
-V, --version Prints version information
# Run the ABCI application (from this repo)
# The -v is to enable trace-level logging
$ cargo run -- -v
# In another terminal
$ cometbft node
UML图
依赖关系
~9.5MB
~183K SLoC