[package]
name = "attune-common"
version.workspace = true
edition.workspace = true
authors.workspace = true
license.workspace = true
repository.workspace = true

[dependencies]
# Async runtime
tokio = { workspace = true }
async-trait = { workspace = true }
async-recursion = "1.1"
futures = { workspace = true }

# Database
sqlx = { workspace = true }

# Serialization
serde = { workspace = true }
serde_json = { workspace = true }
serde_yaml_ng = { workspace = true }

# Configuration
config = { workspace = true }

# HTTP client
reqwest = { workspace = true }

# Message Queue
lapin = { workspace = true }

# Error handling
anyhow = { workspace = true }
thiserror = { workspace = true }

# Date/Time
chrono = { workspace = true }

# UUID
uuid = { workspace = true }

# Validation
validator = { workspace = true }

# Logging
tracing = { workspace = true }

# JSON Schema
schemars = { workspace = true }
jsonschema = { workspace = true }

# OpenAPI
utoipa = { workspace = true }

# JWT
jsonwebtoken = { workspace = true }
hmac = { workspace = true }
signature = { workspace = true }

# Encryption
argon2 = { workspace = true }
ring = { workspace = true }
base64 = { workspace = true }
aes-gcm = { workspace = true }
sha2 = { workspace = true }

# File system utilities
walkdir = { workspace = true }

# Regular expressions
regex = { workspace = true }

# Version matching
semver = { workspace = true }

[dev-dependencies]
mockall = { workspace = true }
tracing-subscriber = { workspace = true }
tempfile = { workspace = true }
