[package]
name = "hotfix"
description = "Buy-side FIX engine written in pure Rust"
version = "0.5.1"
authors.workspace = true
edition.workspace = true
license.workspace = true
readme.workspace = true
homepage.workspace = true
repository.workspace = true
keywords.workspace = true
categories.workspace = true

[features]
default = ["test-utils"]
fix44 = ["hotfix-message/fix44"]
mongodb = ["dep:mongodb"]
test-utils = []

[lints]
workspace = true

[dependencies]
hotfix-message = { version = "0.2.8", path = "../hotfix-message", features = ["utils-chrono"] }

anyhow = { workspace = true }
async-trait = { workspace = true }
chrono = { workspace = true, features = ["serde"] }
chrono-tz = { workspace = true, features = ["serde"] }
futures = { workspace = true }
mongodb = { workspace = true, optional = true }
rustls-pki-types = { workspace = true }
rustls = { workspace = true }
rustls-native-certs = { workspace = true }
rustls-pemfile = { workspace = true }
webpki-roots = { workspace = true }
serde = { workspace = true, features = ["derive"] }
thiserror = { workspace = true }
tokio = { workspace = true, features = ["full"] }
tokio-rustls = { workspace = true }
toml = { workspace = true }
tracing = { workspace = true }
uuid = { workspace = true, features = ["v4"] }

[dev-dependencies]
hotfix-message = { version = "0.2.8", path = "../hotfix-message", features = ["fix44", "utils-chrono"] }

rcgen = "0.13"
rustls = { workspace = true, features = ["ring"] }
tempfile = "3"
testcontainers = { workspace = true }
tokio = { workspace = true, features = ["test-util"] }
