# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2021"
rust-version = "1.64"
name = "ibc-core-handler-types"
version = "0.48.1"
authors = ["Informal Systems <hello@informal.systems>"]
description = """
    Maintained by `ibc-rs`, encapsulates essential ICS-25 Handler Interface data structures and domain types,
    as specified in the Inter-Blockchain Communication (IBC) protocol. Designed for universal applicability 
    to facilitate development and integration across diverse IBC-enabled projects.
"""
readme = "README.md"
keywords = [
    "blockchain",
    "cosmos",
    "ibc",
    "handler",
    "types",
]
license = "Apache-2.0"
repository = "https://github.com/cosmos/ibc-rs"

[package.metadata.docs.rs]
all-features = true

[dependencies.borsh]
version = "0.10"
optional = true
default-features = false

[dependencies.derive_more]
version = "0.99.17"
features = [
    "from",
    "into",
    "display",
    "try_into",
]
default-features = false

[dependencies.displaydoc]
version = "0.2"
default-features = false

[dependencies.ibc-core-channel-types]
version = "0.48.1"
default-features = false

[dependencies.ibc-core-client-types]
version = "0.48.1"
default-features = false

[dependencies.ibc-core-commitment-types]
version = "0.48.1"
default-features = false

[dependencies.ibc-core-connection-types]
version = "0.48.1"
default-features = false

[dependencies.ibc-core-host-types]
version = "0.48.1"
default-features = false

[dependencies.ibc-core-router-types]
version = "0.48.1"
default-features = false

[dependencies.ibc-primitives]
version = "0.48.1"
default-features = false

[dependencies.ibc-proto]
version = "0.38.0"
default-features = false

[dependencies.parity-scale-codec]
version = "3.6.5"
features = ["full"]
optional = true
default-features = false

[dependencies.prost]
version = "0.12"
default-features = false

[dependencies.scale-info]
version = "2.10.0"
features = ["derive"]
optional = true
default-features = false

[dependencies.schemars]
version = "0.8.15"
optional = true

[dependencies.serde]
version = "1.0"
optional = true
default-features = false

[dependencies.subtle-encoding]
version = "0.5"
default-features = false

[dependencies.tendermint]
version = "0.34.0"
default-features = false

[features]
borsh = [
    "dep:borsh",
    "ibc-core-client-types/borsh",
    "ibc-core-connection-types/borsh",
    "ibc-core-channel-types/borsh",
    "ibc-core-commitment-types/borsh",
    "ibc-core-host-types/borsh",
    "ibc-core-router-types/borsh",
    "ibc-primitives/borsh",
    "ibc-proto/borsh",
]
default = ["std"]
parity-scale-codec = [
    "dep:parity-scale-codec",
    "dep:scale-info",
    "ibc-core-client-types/parity-scale-codec",
    "ibc-core-connection-types/parity-scale-codec",
    "ibc-core-channel-types/parity-scale-codec",
    "ibc-core-commitment-types/parity-scale-codec",
    "ibc-core-host-types/parity-scale-codec",
    "ibc-core-router-types/parity-scale-codec",
    "ibc-primitives/parity-scale-codec",
    "ibc-proto/parity-scale-codec",
]
schema = [
    "dep:schemars",
    "ibc-core-client-types/schema",
    "ibc-core-connection-types/schema",
    "ibc-core-channel-types/schema",
    "ibc-core-commitment-types/schema",
    "ibc-core-host-types/schema",
    "ibc-core-router-types/schema",
    "ibc-primitives/schema",
    "ibc-proto/json-schema",
    "serde",
    "std",
]
serde = [
    "dep:serde",
    "ibc-core-client-types/serde",
    "ibc-core-connection-types/serde",
    "ibc-core-channel-types/serde",
    "ibc-core-commitment-types/serde",
    "ibc-core-host-types/serde",
    "ibc-core-router-types/serde",
    "ibc-primitives/serde",
    "ibc-proto/serde",
]
std = [
    "displaydoc/std",
    "prost/std",
    "serde/std",
    "subtle-encoding/std",
    "ibc-core-client-types/std",
    "ibc-core-connection-types/std",
    "ibc-core-channel-types/std",
    "ibc-core-commitment-types/std",
    "ibc-core-host-types/std",
    "ibc-core-router-types/std",
    "ibc-primitives/std",
    "ibc-proto/std",
    "tendermint/std",
]
