[package]
name = "subxt-cli"
version.workspace = true
authors.workspace = true
edition.workspace = true
rust-version.workspace = true
publish = true

license.workspace = true
repository.workspace = true
documentation = "https://docs.rs/subxt-cli"
homepage.workspace = true
description = "Command line utilities for working with subxt codegen"

[[bin]]
name = "subxt"
path = "src/main.rs"
doc = false

[lints]
workspace = true

[features]
# Compute the state root hash from the genesis entry.
# Enable this to create a smaller chain spec file.
chain-spec-pruning = ["smoldot"]

[dependencies]
subxt-codegen = { workspace = true }
scale-typegen = { workspace = true }
subxt-utils-fetchmetadata = { workspace = true, features = ["url"] }
subxt-utils-stripmetadata = { workspace = true }
subxt-metadata = { workspace = true }
subxt = { workspace = true, features = ["default"] }
clap = { workspace = true }
serde = { workspace = true, features = ["derive"] }
color-eyre = { workspace = true }
serde_json = { workspace = true }
hex = { workspace = true }
frame-metadata = { workspace = true }
codec = { package = "parity-scale-codec", workspace = true }
scale-info = { workspace = true }
scale-value = { workspace = true }
syn = { workspace = true }
quote = { workspace = true }
jsonrpsee = { workspace = true, features = ["async-client", "client-ws-transport-tls", "http-client"] }
tokio = { workspace = true, features = ["rt-multi-thread"] }
scale-typegen-description = { workspace = true }
heck = { workspace = true }
indoc = { workspace = true }
thiserror = { workspace = true }
smoldot = { workspace = true, optional = true }

[dev-dependencies]
strip-ansi-escapes = { workspace = true }
pretty_assertions = { workspace = true }
