Cargo Features

[dependencies]
ibc-types-core-commitment = { version = "0.14.1", default-features = false, features = ["std", "parity-scale-codec", "borsh", "with_serde", "upgrade_client", "mocks", "mocks-no-std"] }
default = std

The std feature is set by default whenever ibc-types-core-commitment is added without default-features = false somewhere in the dependency tree.

std default

Enables clock and std of tendermint ^0.34.0, std of tracing and uint ^0.9 and std of bytes, displaydoc, erased-serde ^0.3, hex, ibc-proto ^0.42.2, ibc-types-identifier, ibc-types-timestamp, ics23 ^0.11.3, num-traits, primitive-types ^0.12.0, prost ^0.12, serde, serde_json, sha2, and subtle-encoding

ibc-proto:

Proto definitions for all IBC-related interfaces, e.g., connections or channels.

parity-scale-codec

Enables parity-scale-codec and scale-info

parity-scale-codec:

for codec encode or decode

borsh

Enables borsh ^0.10.0

for borsh encode or decode

with_serde = erased-serde, serde, serde_derive, serde_json

This feature is required for token transfer (ICS-20)

upgrade_client

This feature guards the unfinished implementation of the UpgradeClient handler.

mocks = cfg-if, parking_lot, tendermint-testgen

This feature grants access to development-time mocking libraries, such as MockContext or MockHeader. Depends on the testgen suite for generating Tendermint light blocks.

Enables clock of tendermint ^0.34.0

mocks-no-std = cfg-if

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.

serde_derive with_serde?
serde std with_serde?
serde_json std with_serde?
erased-serde std with_serde?

Enables erased-serde ^0.3

parking_lot mocks?
cfg-if mocks? mocks-no-std?
tendermint-testgen mocks?

Enables tendermint-testgen ^0.34.0

Needed for generating (synthetic) light blocks.