[package]
name = "agave-ledger-tool"
documentation = "https://docs.rs/agave-ledger-tool"
version = { workspace = true }
authors = { workspace = true }
description = { workspace = true }
repository = { workspace = true }
homepage = { workspace = true }
license = { workspace = true }
edition = { workspace = true }
workspace = "../dev-bins"

[package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"]

[features]
agave-unstable-api = []
dev-context-only-utils = []
dummy-for-ci-check = []
frozen-abi = []

[dependencies]
agave-feature-set = { workspace = true }
agave-logger = { workspace = true }
agave-reserved-account-keys = { workspace = true }
agave-snapshots = { workspace = true }
agave-syscalls = { workspace = true }
bs58 = { workspace = true }
chrono = { workspace = true, features = ["default"] }
clap = { workspace = true }
crossbeam-channel = { workspace = true }
csv = { workspace = true }
dashmap = { workspace = true }
futures = { workspace = true }
histogram = { workspace = true }
itertools = { workspace = true }
log = { workspace = true }
num_cpus = { workspace = true }
pretty-hex = { workspace = true }
rayon = { workspace = true }
regex = { workspace = true }
serde = { workspace = true }
serde_bytes = { workspace = true }
serde_json = { workspace = true }
solana-account  = { workspace = true }
solana-account-decoder = { workspace = true }
solana-accounts-db = { workspace = true }
solana-bpf-loader-program = { workspace = true }
solana-clap-utils = { workspace = true }
solana-cli-output = { workspace = true }
solana-clock = { workspace = true }
solana-cluster-type = { workspace = true }
solana-compute-budget = { workspace = true }
solana-core = { workspace = true, features = ["dev-context-only-utils"] }
solana-cost-model = { workspace = true }
solana-entry = { workspace = true }
solana-feature-gate-interface = { workspace = true }
solana-genesis-config = { workspace = true }
solana-genesis-utils = { workspace = true }
solana-geyser-plugin-manager = { workspace = true }
solana-gossip = { workspace = true }
solana-hash = { workspace = true }
solana-inflation = { workspace = true }
solana-instruction = { workspace = true }
solana-keypair = { workspace = true }
solana-ledger = { workspace = true, features = ["dev-context-only-utils", "agave-unstable-api"] }
solana-loader-v3-interface = { workspace = true }
solana-measure = { workspace = true }
solana-message = { workspace = true }
solana-native-token = { workspace = true }
solana-program-runtime = { workspace = true, features = ["metrics"] }
solana-pubkey = { workspace = true }
solana-rent = { workspace = true }
solana-rpc = { workspace = true, features = ["dev-context-only-utils"] }
solana-runtime = { workspace = true, features = ["dev-context-only-utils"] }
solana-runtime-transaction = { workspace = true }
solana-sbpf = { workspace = true, features = ["debugger", "jit"] }
solana-sdk-ids = { workspace = true }
solana-shred-version = { workspace = true }
solana-signature = { workspace = true }
solana-stake-interface = { workspace = true }
solana-storage-bigtable = { workspace = true }
solana-svm-callback = { workspace = true }
solana-svm-feature-set = { workspace = true }
solana-svm-log-collector = { workspace = true }
solana-svm-type-overrides = { workspace = true }
solana-system-interface = { workspace = true }
solana-transaction = { workspace = true }
solana-transaction-context = { workspace = true }
solana-transaction-status = { workspace = true }
solana-unified-scheduler-pool = { workspace = true }
solana-version = { workspace = true }
solana-vote = { workspace = true }
solana-vote-program = { workspace = true }
thiserror = { workspace = true }
tokio = { workspace = true, features = ["full"] }

[target.'cfg(not(any(target_env = "msvc", target_os = "freebsd")))'.dependencies]
jemallocator = { workspace = true }

[target."cfg(unix)".dependencies]
signal-hook = { workspace = true }

[dev-dependencies]
assert_cmd = { workspace = true }
