[package]
name = "hx-solver"
version.workspace = true
edition.workspace = true
rust-version.workspace = true
license.workspace = true
authors.workspace = true
description = "Dependency resolver for Haskell packages"

[dependencies]
hx-core.workspace = true

# Parsing
tar = "0.4"
flate2 = "1.0"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"

# Paths
dirs-next = "2.0"

# Time
chrono = { version = "0.4", features = ["serde"] }

# TOML
toml = "0.8"

# Utilities
thiserror = "2"
tracing = "0.1"

# Caching
bincode = "1.3"
sha2 = "0.10"

# Cryptography
ed25519-dalek = { workspace = true }
hex = { workspace = true }

# Async/HTTP
tokio = { version = "1", features = ["fs", "sync"] }
reqwest = { workspace = true, features = ["stream"] }
futures = "0.3"

# Progress
indicatif = "0.17"

[dev-dependencies]
tempfile = "3"
criterion = { version = "0.5", features = ["html_reports"] }

[[bench]]
name = "solver_bench"
harness = false
