[package]
name = "mockforge-data"
version.workspace = true
edition.workspace = true
authors.workspace = true
license.workspace = true
description = "Data generator for MockForge - faker + RAG synthetic data engine"
repository.workspace = true
homepage.workspace = true
documentation.workspace = true
keywords = ["faker", "data-generation", "synthetic-data", "testing", "mock"]
categories = ["development-tools::testing", "data-structures"]

[lints.rust]
missing_docs = "deny"

[dependencies]
serde = { workspace = true }
serde_json = { workspace = true }
serde_yaml = { workspace = true }
tokio = { workspace = true }
tracing = { workspace = true }
anyhow = { workspace = true }
thiserror = { workspace = true }
regex = { workspace = true }
uuid = { workspace = true }
chrono = { workspace = true }
rand = { workspace = true }
fake = { version = "3.0", features = ["derive", "http", "chrono", "uuid", "random_color"] }
fastrand = "2.4"
itertools = { workspace = true }
reqwest = { workspace = true }
url = { workspace = true }
async-trait = "0.1"
hex = "0.4"

# For vector operations and similarity calculations
ndarray = "0.17"
ndarray-stats = "0.5"

# For mock server functionality
axum = { version = "0.8", features = ["macros"] }
tower = "0.5"
tower-http = { version = "0.6", features = ["cors"] }

# For OpenAPI specification handling
openapiv3 = "2.2"
jsonschema = "0.33"

[features]
default = []

[dev-dependencies]
criterion = { version = "0.5", features = ["html_reports", "async_tokio"] }
proptest = "1.11.0"
tokio = { workspace = true, features = ["macros", "test-util"] }

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