Merge _configs/ into config/ for single configuration directory. Update all path references. Changes: - Move _configs/* to config/ - Update .gitignore for new patterns - No code references to _configs/ found Impact: -1 root directory (layout_conventions.md compliance)
65 lines
1.5 KiB
TOML
65 lines
1.5 KiB
TOML
|
|
[package]
|
|
name = "shared-api-lib"
|
|
version = "0.1.0"
|
|
edition = "2021"
|
|
|
|
[lib]
|
|
name = "shared_api_lib"
|
|
path = "src/lib.rs"
|
|
|
|
[features]
|
|
default = ["metrics", "auth", "rate-limit", "websocket"]
|
|
metrics = ["prometheus"]
|
|
auth = ["jsonwebtoken", "uuid"]
|
|
rate-limit = []
|
|
websocket = ["tokio-tungstenite", "futures"]
|
|
tls = ["tokio-rustls", "rustls", "rustls-pemfile"]
|
|
|
|
[dependencies]
|
|
# Web framework
|
|
axum = { version = "0.8", features = ["ws"] }
|
|
tokio = { version = "1.48", features = ["full"] }
|
|
tower = "0.5"
|
|
tower-http = { version = "0.6", features = ["trace", "cors"] }
|
|
|
|
# Serialization
|
|
serde = { version = "1.0", features = ["derive"] }
|
|
serde_json = "1.0"
|
|
toml = "0.9"
|
|
chrono = { version = "0.4", features = ["serde"] }
|
|
|
|
# Error handling
|
|
thiserror = "2.0"
|
|
anyhow = "1.0"
|
|
|
|
# Logging
|
|
tracing = "0.1"
|
|
tracing-subscriber = { version = "0.3", features = ["env-filter", "json"] }
|
|
|
|
# Utilities
|
|
http = "1.3"
|
|
hyper = "1.8"
|
|
ipnetwork = "0.21"
|
|
|
|
# Optional: Metrics
|
|
prometheus = { version = "0.14", optional = true }
|
|
|
|
# Optional: Auth
|
|
jsonwebtoken = { version = "10.2", features = ["aws_lc_rs"], optional = true }
|
|
uuid = { version = "1.18", features = ["v4", "serde"], optional = true }
|
|
|
|
# Optional: WebSocket
|
|
tokio-tungstenite = { version = "0.28", optional = true }
|
|
futures = { version = "0.3", optional = true }
|
|
|
|
# Optional: TLS
|
|
tokio-rustls = { version = "0.26", optional = true }
|
|
rustls = { version = "0.23", optional = true }
|
|
rustls-pemfile = { version = "2.2", optional = true }
|
|
|
|
# Testing
|
|
[dev-dependencies]
|
|
mockito = "1.7"
|
|
proptest = "1.9"
|