[package]
name = "solana-vortexor"
description = "Solana TPU Vortexor"
documentation = "https://docs.rs/solana-vortexor"
default-run = "solana-vortexor"
publish = false
version = { workspace = true }
authors = { workspace = true }
repository = { workspace = true }
homepage = { workspace = true }
license = { workspace = true }
edition = { workspace = true }

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

[lib]
crate-type = ["lib"]
name = "solana_vortexor"

[features]
default = ["agave-unstable-api"]
agave-unstable-api = []
dev-context-only-utils = []

[dependencies]
agave-banking-stage-ingress-types = { workspace = true }
agave-logger = { workspace = true }
bytes = { workspace = true }
clap = { version = "4.5.31", features = ["cargo", "derive", "error-context"] }
crossbeam-channel = { workspace = true }
dashmap = { workspace = true }
futures  = { workspace = true }
futures-util = { workspace = true }
histogram = { workspace = true }
indexmap = { workspace = true }
itertools = { workspace = true }
libc = { workspace = true }
log = { workspace = true }
nix = { workspace = true, features = ["net"] }
pem = { workspace = true }
percentage = { workspace = true }
quinn = { workspace = true }
quinn-proto = { workspace = true }
rand = { workspace = true }
rustls = { workspace = true }
signal-hook = { workspace = true }
smallvec = { workspace = true }
socket2 = { workspace = true }
solana-clap-utils = { workspace = true }
solana-client = { workspace = true }
solana-clock = { workspace = true }
solana-commitment-config = { workspace = true }
solana-core = { workspace = true }
solana-keypair = { workspace = true }
solana-measure = { workspace = true }
solana-metrics = { workspace = true }
solana-net-utils = { workspace = true }
solana-perf = { workspace = true }
solana-pubkey = { workspace = true }
solana-quic-definitions = { workspace = true }
solana-signer = { workspace = true }
solana-streamer = { workspace = true }
solana-transaction-metrics-tracker = { workspace = true }
solana-version = { workspace = true }
thiserror = { workspace = true }
tokio = { workspace = true, features = ["full"] }
tokio-util = { workspace = true }
url = { workspace = true }
x509-parser = { workspace = true }

[dev-dependencies]
assert_matches = { workspace = true }
solana-local-cluster = { workspace = true, features = ["dev-context-only-utils"] }
solana-native-token = { workspace = true }
solana-streamer = { workspace = true, features = ["dev-context-only-utils"] }
