-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCargo.toml
141 lines (135 loc) · 4.36 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
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
[package]
name = "sib"
version = "0.0.8"
authors = ["mail@pooya.ai"]
description = "A high-performance, secure, and cross-platform modules optimized for efficiency, scalability, and reliability."
documentation = "https://docs.rs/sib"
edition = "2024"
keywords = ["sib", "networking", "real-time", "streaming", "web"]
license = "Apache-2.0"
repository = "https://github.com/PooyaEimandar/sib"
categories = ["development-tools"]
readme = "README.md"
[lib]
path = "src/lib.rs"
#crate-type = ["lib", "staticlib", "cdylib"]
[dependencies]
anyhow = { version = "1.0.97", default-features = false }
arc-swap = { version = "1.7.1", optional = true, default-features = false }
async-trait = { version = "0.1.88", default-features = false }
base64 = { version = "0.22.1", optional = true, default-features = false, features = [
"alloc",
] }
bytes = { version = "1.10.1", optional = true, default-features = false }
chrono = { version = "0.4.40", optional = true, default-features = false, features = [
"clock",
] }
dashmap = { version = "6.1.0", optional = true, default-features = false, features = [
"rayon",
] }
deadpool = { version = "0.12.2", optional = true, default-features = false, features = [
"managed",
] }
foundationdb = { version = "0.9.2", optional = true, default-features = false, features = [
"uuid",
"fdb-7_3",
] }
futures = { version = "0.3.17", optional = true, default-features = false }
http = { version = "1.3.1", optional = true, default-features = false }
httpdate = { version = "1.0.3", optional = true, default-features = false }
klickhouse = { version = "0.13.2", optional = true }
lru = { version = "0.14.0", optional = true, default-features = false, features = [
"hashbrown",
] }
memmap2 = { version = "0.9.5", optional = true, default-features = false }
mime_guess = { version = "2.0.5", optional = true, default-features = false }
moka = { version = "0.12.10", optional = true, default-features = false, features = [
"future",
] }
num_cpus = { version = "1.16.0" }
pingora = { version = "0.4.0", optional = true, default-features = false, features = [
"boringssl",
"time",
] }
reqwest = { version = "0.12.15", optional = true, default-features = false, features = [
"cookies",
"brotli",
"json",
"rustls-tls",
] }
serde = { version = "1.0.219", optional = true, default-features = false, features = [
"derive",
] }
serde_json = { version = "1.0.140", optional = true, default-features = false }
sha2 = { version = "0.10.8", optional = true, default-features = false }
tikv-jemallocator = { version = "0.6.0", optional = true, default-features = false }
tracing = { version = "0.1.41", optional = true, default-features = false }
tracing-subscriber = { version = "0.3.19", optional = true, features = [
"env-filter",
"fmt",
] }
tracing-appender = { version = "0.2.3", optional = true, default-features = false }
tokio = { version = "1.44.2", optional = true, default-features = false, features = [
"full",
] }
tokio-stream = { version = "0.1.17", optional = true, default-features = false }
tokio-quiche = { version = "0.4.2", optional = true, default-features = false, features = [
"zero-copy",
] }
# tokio-uring = { version = "0.5.0", optional = true, default-features = false, features = [
# "bytes",
# ] }
flate2 = { version = "1.1.1", optional = true, default-features = false, features = [
"rust_backend",
] }
brotli = { version = "8.0.0", optional = true, default-features = false, features = [
"std",
] }
zstd = { version = "0.13.3", optional = true }
[features]
default = ["database", "http-client", "http-server", "system"]
database = [
"arc-swap",
"deadpool",
"foundationdb",
"klickhouse",
"moka",
"system",
]
http-client = ["dashmap", "deadpool", "reqwest"]
http-server = [
"base64",
"brotli",
"bytes",
"chrono",
"flate2",
"futures",
"http",
"httpdate",
"lru",
"memmap2",
"mime_guess",
"moka",
"pingora",
"serde_json",
"serde",
"sha2",
"tokio-quiche",
"tokio-stream",
# "tokio-uring",
"tokio",
"zstd",
]
system = [
"tikv-jemallocator",
"tracing-appender",
"tracing-subscriber",
"tracing",
]
[dev-dependencies]
url = { version = "2.5.4" }
rayon = { version = "1.10.0" }
[build-dependencies]
chrono = { version = "0.4.40" }
[patch.crates-io]
sfv = { git = "https://github.com/undef1nd/sfv.git", tag = "v0.9.4" }