forked from s3s-project/s3s
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCargo.toml
More file actions
122 lines (105 loc) · 2.57 KB
/
Cargo.toml
File metadata and controls
122 lines (105 loc) · 2.57 KB
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
121
122
[workspace]
members = ["crates/*", "codegen"]
resolver = "3"
[workspace.package]
edition = "2024"
repository = "https://github.com/Nugine/s3s"
license = "Apache-2.0"
rust-version = "1.92.0"
[workspace.lints.rust]
unsafe_code = "forbid"
[workspace.lints.clippy]
# deny
all = { level = "deny", priority = -1 }
pedantic = { level = "deny", priority = -1 }
cargo = { level = "deny", priority = -1 }
self_named_module_files = "deny"
# warn
dbg_macro = "warn"
# allow
module_name_repetitions = "allow"
multiple_crate_versions = "allow"
[profile.release]
debug = "line-tables-only"
[workspace.dependencies]
# Data structures
arc-swap = "1.8.2"
arrayvec = "0.7.6"
bytes = "1.11.1"
bytestring = "1.5.0"
indexmap = "2.13.0"
once_cell = "1.21.3"
smallvec = "1.15.1"
uuid = "1.21.0"
# Text encoding
atoi = { version = "2.0.0", default-features = false }
base64-simd = "0.8.0"
hex-simd = "0.8.0"
itoa = "1.0.17"
nom = "8.0.0"
# Date & time
chrono = { version = "0.4.44", default-features = false }
time = "0.3.47"
# Utilities
cfg-if = "1.0.4"
const-str = "1.1.0"
memchr = "2.8.0"
numeric_cast = "0.3.0"
path-absolutize = "3.1.1"
std-next = "0.1.9"
# Crypto
crc-fast = "1.9.0"
crc32c = "0.6.8"
hmac = "=0.13.0-rc.5"
md-5 = "=0.11.0-rc.5"
openssl = "0.10.75"
sha1 = "=0.11.0-rc.5"
sha2 = "=0.11.0-rc.5"
subtle = "2.6.1"
zeroize = "1.8.2"
# Error handling
anyhow = "1.0.102"
thiserror = "2.0.18"
# Serialization
quick-xml = { version = "0.37.5", features = ["serialize"] }
serde = { version = "1.0.228", features = ["derive"] }
serde_json = "1.0.149"
serde_urlencoded = "0.7.1"
# Async & concurrency
async-trait = "0.1.89"
futures = { version = "0.3.32", default-features = false }
futures-util = "0.3.32"
pin-project-lite = "0.2.17"
sync_wrapper = { version = "1.0.2", default-features = false }
tokio = "1.49.0"
tokio-util = "0.7.18"
transform-stream = "0.3.1"
# HTTP
axum = "0.8.8"
http = "1.4.0"
http-body = "1.0.1"
http-body-util = "0.1.3"
httparse = "1.10.1"
hyper = "1.8.1"
hyper-util = "0.1.20"
mime = "0.3.17"
tokio-rustls = "0.26.4"
tower = { version = "0.5.3", default-features = false }
url = "2.5.8"
urlencoding = "2.1.3"
# Logging & observability
tracing = "0.1.44"
tracing-error = "0.2.1"
tracing-subscriber = { version = "0.3.22", features = ["env-filter", "time"] }
# CLI
clap = { version = "4.5.60", features = ["derive"] }
# Storage backends
opendal = "0.55.0"
# AWS SDK
aws-config = { version = "1.8.14", default-features = false }
aws-credential-types = "1.2.13"
aws-sdk-s3 = "1.124.0"
aws-sdk-sts = "1.99.0"
aws-smithy-runtime-api = "1.11.5"
aws-smithy-types = "1.4.5"
aws-smithy-types-convert = "0.60.13"