-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathCargo.toml
120 lines (107 loc) · 2.96 KB
/
Cargo.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
[workspace]
members = ["crates/*"]
resolver = "2"
[workspace.dependencies]
# Local Libraries
cds-assets = { path = "crates/assets" }
cds-media = { path = "crates/media" }
cds-db = { path = "crates/db" }
cds-config = { path = "crates/config" }
cds-email = { path = "crates/email" }
cds-web = { path = "crates/web" }
cds-queue = { path = "crates/queue" }
cds-metric = { path = "crates/metric" }
cds-cache = { path = "crates/cache" }
cds-cluster = { path = "crates/cluster" }
# Async
async-trait = { version = "0.1" }
tokio = { version = "1.43", features = ["full"] }
tokio-util = { version = "0.7.13" }
futures = { version = "^0.3" }
futures-util = { version = "0.3" }
tower = { version = "0.5" }
tower-http = { version = "0.6", features = ["cors", "fs", "trace"] }
# Web
axum = { version = "0.8", features = [
"ws",
"http2",
"multipart",
"macros",
"tower-log",
"tracing",
"json",
] }
rust-embed = { version = "8.5" }
mime = { version = "0.3" }
wsrx = { version = "0.3", features = ["server"] }
cookie = { version = "0.18.1" }
tower_governor = { version = "0.6" }
# Security
rustls = { version = "0.23", features = ["ring"] }
ring = { version = "0.17" }
jsonwebtoken = { version = "9.3.0" }
argon2 = { version = "0.5" }
# Data Handling
uuid = { version = "1.11", features = ["v4", "fast-rng", "macro-diagnostics"] }
regex = { version = "1.11" }
chrono = { version = "0.4" }
toml = { version = "0.8" }
serde = { version = "1.0", features = ["derive"] }
serde_json = { version = "1.0" }
serde_repr = { version = "0.1" }
# Error Handling
thiserror = { version = "2.0" }
anyhow = { version = "1.0" }
# Tracing
tracing = { version = "0.1" }
tracing-subscriber = { version = "0.3", features = [
"env-filter",
"std",
"json",
] }
tracing-appender = "0.2"
tracing-error = { version = "0.2" }
# Database
sea-orm = { version = "1.1", features = [
"sqlx-postgres",
"debug-print",
"with-uuid",
"macros",
"with-json",
"runtime-tokio-rustls",
] }
# Message Queue
async-nats = { version = "0.38" }
# Cache
fred = { version = "10.0", features = [
"enable-rustls-ring",
"dns",
"mocks",
"monitor",
"partial-tracing",
"sentinel-client",
"serde-json",
] }
# Containerization & Orchestration
kube = { version = "0.98", features = ["client", "config", "runtime", "derive", "rustls-tls", "ws"] }
k8s-openapi = { version = "0.24", features = ["latest"] }
# Miscellaneous
once_cell = { version = "1.20" }
prometheus = { version = "0.13" }
validator = { version = "0.19", features = ["derive"] }
reqwest = { version = "0.12", features = [
"json",
"rustls-tls",
], default-features = false }
sysinfo = { version = "0.33.1" }
tempfile = { version = "3.15.0" }
image = { version = "0.25.5" }
webp = { version = "0.3.0", features = ["image"] }
hex = { version = "0.4.3" }
lettre = { version = "0.11", features = ["tokio1-rustls-tls"], default-features = false }
[profile.release]
opt-level = 3
strip = true
lto = "thin"
panic = "abort"
codegen-units = 1