[package]
name = "revive-runner"
version = "0.3.0"
license.workspace = true
edition.workspace = true
repository.workspace = true
authors.workspace = true
description = "Execute revive contracts in a simulated blockchain runtime"

[package.metadata.cargo-machete]
ignored = ["codec", "scale-info"]

[[bin]]
name = "revive-runner"
path = "src/main.rs"

[features]
std = ["polkadot-sdk/std"]
default = ["solidity"]
solidity = ["resolc", "revive-differential", "revive-llvm-context"]

[dependencies]
env_logger = { workspace = true }
clap = { workspace = true, features = ["help", "std", "derive"] }
anyhow = { workspace = true }
serde = { workspace = true }
serde_json = { workspace = true }
hex = { workspace = true, features = ["serde"] }
codec = { workspace = true, default-features = false }
scale-info = { workspace = true, default-features = false }
alloy-primitives = { workspace = true }
polkadot-sdk.workspace = true
polkadot-sdk.features = [
    "experimental",
    "runtime",
    "polkadot-runtime-common",
    "pallet-revive",
    "pallet-balances",
    "pallet-timestamp"
]

resolc = { workspace = true, optional = true }
revive-differential = { workspace = true, optional = true }
revive-llvm-context = { workspace = true, optional = true }
