#ibc #tendermint #cosmos #consensus #blockchain #data-structures

无std ibc-types-transfer

用于跨链通信(IBC)协议的数据类型。本包定义了可由不同的IBC实现或生态系统工具重用的通用数据结构。

18个版本 (10个破坏性更新)

0.14.1 2024年7月17日
0.13.0 2024年4月4日
0.12.0 2024年3月1日
0.11.0 2023年12月30日
0.10.0 2023年11月27日

#39 in #tendermint

Download history 947/week @ 2024-04-20 873/week @ 2024-04-27 1040/week @ 2024-05-04 661/week @ 2024-05-11 706/week @ 2024-05-18 853/week @ 2024-05-25 975/week @ 2024-06-01 1005/week @ 2024-06-08 751/week @ 2024-06-15 838/week @ 2024-06-22 874/week @ 2024-06-29 644/week @ 2024-07-06 1374/week @ 2024-07-13 1249/week @ 2024-07-20 1107/week @ 2024-07-27 830/week @ 2024-08-03

每月下载量4,629
ibc-types 中使用

Apache-2.0

15KB
119

ibc-types

本包定义了跨链通信(IBC)消息的通用数据结构,这些数据结构可以被不同的IBC实现或IBC生态系统工具重用。

与提供特定且具有见解的IBC实现的 ibc-rs 不同,ibc-types 仅定义允许处理IBC消息的Rust类型,允许使用通用语言在顶部构建IBC实现或IBC生态系统工具。

除了定义IBC消息的Rust类型外,ibc-types 还定义了IBC事件的Rust类型,并提供了解析IBC事件到和从ABCI消息的代码。IBC事件实际上是IBC的关键部分,因为它们需要与中继器互操作,但并没有真正在某个地方进行指定。在ibc-types中提供事件解析代码允许IBC实现和中继器实现共享生成和消耗事件的通用代码。

ibc-types 包是一个顶级包装包,重新导出由IBC模块范围限定的子包的内容。这种结构意味着库的外部用户可以使用一个通用包,但允许不同IBC模块之间的依赖关系。例如,ibc-types 包重新导出了在ibc-types-core-client包中定义的客户类型,以及ibc-types-lightclients-tendermint包中定义的Tendermint轻客户端类型。但由于这些都是独立的包,Tendermint轻客户端类型可以依赖于核心IBC客户端类型,防止循环依赖问题。

贡献

IBC在cosmos/ibc仓库中以英文进行指定。任何协议更改或澄清都应在此处贡献。

此仓库包含模拟IBC消息的Rust数据类型。

版本控制

我们遵循语义版本控制,尽管API仍在积极开发中。

资源

许可证

版权所有 © 2023 ibc-types 作者。

这个crate最初是从ibc-rs分叉而来的。

版权所有 © 2022 Informal Systems Inc. 及 ibc-rs 作者。

遵循Apache许可证2.0版本(以下简称“许可证”);除非适用法律要求或书面同意,否则不得在遵守许可证的前提下使用此存储库中的文件。您可以在以下地址获取许可证副本:

https://apache.ac.cn/licenses/LICENSE-2.0

除非适用法律要求或书面同意,否则根据许可证分发的软件按“原样”分发,不提供任何明示或暗示的保证或条件。有关许可证的具体语言、许可范围和限制,请参阅许可证。

依赖项

~0.3–11MB
~123K SLoC