[package]
name = "avalanche-types"
version = "0.0.90"
edition = "2021"
rust-version = "1.64"
publish = true
description = "Avalanche types"
license = "BSD-3-Clause"
homepage = "https://avax.network"
repository = "https://github.com/ava-labs/avalanche-rust/tree/main/crates/avalanche-types"
readme = "README.md"
[dependencies]
async-trait = "0.1.58"
bech32 = "0.9.1"
big-num-manager = "0.0.2"
bs58 = "0.4.0"
bytes = "1.2.1"
chrono = "0.4.22"
cmp-manager = "0.0.1"
futures = "0.3.25"
hex = "0.4.3"
lazy_static = "1.4.0"
log = "0.4.17"
num-bigint = "0.4.3"
prefix-manager = "0.0.2"
rfc-manager = "0.0.1"
ring = "0.16.20"
rust-embed = "6.4.2"
rustls-pemfile = "1.0.1"
serde = { version = "1.0.147", features = ["derive"] }
serde_json = "1.0.87"
serde_with = { version = "2.0.1", features = ["hex"] }
serde_yaml = "0.9.14"
thiserror = "1.0.37"
zerocopy = "0.6.1"
ecdsa = { version = "0.14.8", optional = false }
hmac = { version = "0.12.1", optional = false }
k256 = { version = "0.11.6", features = ["ecdsa", "keccak256"], optional = false }
primitive-types = { version = "0.12.0", optional = false }
rand = { version = "0.8.5", optional = false }
ripemd = { version = "0.1.3", optional = false }
sha2 = { version = "0.10.6", optional = false }
sha3 = { version = "0.10.5", optional = false }
ethers-core = { version = "0.17.0", optional = true }
secp256k1 = { version = "0.24.0", features = ["global-context", "rand-std", "recovery"], optional = true }
aws-manager = { version = "0.19.8", optional = true }
aws-sdk-kms = { version = "0.19.0", optional = true }
aws-smithy-types = { version = "0.49.0", optional = true }
rcgen = { version = "0.10.0", optional = true }
rsa = { version = "0.6.1", features = ["pem"], optional = true }
rustls = { version = "0.20.6", optional = true }
flate2 = { version = "1.0.24", optional = true }
bip32 = { version = "0.4.0", optional = true }
rand_core = { version = "0.6.4", features = ["std"], optional = true }
avalanche-proto = { version = "0.16.1", features = ["aliasreader", "keystore", "sharedmemory", "subnetlookup", "rpcdb", "google_protobuf"], optional = true }
http = {version = "0.2.8", optional = true}
hyper = "0.14.20"
jsonrpc-core = {version = "18.0.0", optional = true }
jsonrpc-http-server = {version = "18.0.0", optional = true }
num-derive = { version = "0.3.3", optional = true }
num-traits = { version = "0.2.15", optional = true }
prost = { version = "0.11.0", optional = true }
semver = { version = "1.0.14", optional = true }
tokio = { version = "1.21.2", features = ["fs", "rt-multi-thread"], optional = true }
tokio-stream = { version = "0.1.11", features = ["net"], optional = true }
tonic = { version = "0.8.2", features = ["gzip"], optional = true }
tonic-health = { version = "0.7.1", optional = true }
tonic-reflection = { version = "0.5.0", optional = true }
tower-service = "0.3.2"
[dev-dependencies]
env_logger = "0.9.1"
id-manager = "0.0.1"
random-manager = "0.0.1"
tempfile = "3.3.0"
tokio-stream = { version = "0.1.11", features = ["net"]}
tokio-test = "0.4.2"
[features]
default = [
"cert",
"jsonrpc",
"message_compress_gzip",
"mnemonic",
"rpcchainvm",
"ethers_core",
]
avalanchego = []
aws_kms = ["aws-manager", "aws-sdk-kms", "aws-smithy-types"]
cert = ["rcgen", "rsa", "rustls"]
ethers_core = ["ethers-core"]
jsonrpc = []
libsecp256k1 = ["secp256k1"]
message_compress_gzip = ["flate2"]
mnemonic = ["bip32", "rand_core"]
rpcchainvm = ["avalanche-proto", "http", "jsonrpc-core", "num-derive", "num-traits", "prost", "semver", "tokio", "tokio-stream", "tonic", "tonic-health", "tonic-reflection"]
subnet_evm = []
[[example]]
name = "key_cert"
required-features = ["cert"]
[[example]]
name = "key_secp256k1_aws_kms"
required-features = ["aws_kms"]
[[example]]
name = "key_secp256k1_mnemonic_derive_load"
required-features = ["mnemonic"]
[[test]]
name = "integration"
path = "tests/integration_tests.rs"
required-features = ["rpcchainvm"]
[package.metadata.cargo-udeps.ignore]
normal = ["rsa"]
development = ["id-manager", "tokio-test"]