-
Notifications
You must be signed in to change notification settings - Fork 1
/
Cargo.toml
96 lines (73 loc) · 2.56 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
[package]
name = "faf-dns-proxy"
version = "0.9.2"
authors = ["James Bates <[email protected]>"]
edition = "2021"
[profile.dev]
opt-level = 1
debug = true
debug-assertions = true
overflow-checks = true
lto = false
panic = 'unwind'
incremental = true
codegen-units = 256
rpath = false
[profile.dev.package."*"]
opt-level = 3
[profile.release]
opt-level = 3
panic = 'abort'
codegen-units = 1
lto = "thin"
debug = false
incremental = false
overflow-checks = false
strip = 'symbols'
[features]
default = []
[dependencies]
# error handling
anyhow = "1.0.79"
clap = { version = "4.4.11", default-features = true, features = ["derive"] }
lazy_static = "1.4.0"
once_cell = "1.19.0"
webpki-roots = "0.26.0"
dashmap = { version = "5.5.3", default-features = true, features = ["inline"] }
# faster channel
kanal = "0.1.0-pre8"
# async runtime/executor
tokio = { version = "1.34.0", features = ["rt-multi-thread", "net", "io-util", "time", "macros", "sync"] }
tokio-rustls = { version = "0.25.0", features = ["default", "early-data"] }
# walk directories, enumerating files
walkdir = "2.3.2"
# easy serialization and deserialization
serde = { version = "1.0.193", default-features = false, features = ["derive"] }
# disk storage format
bincode = { version = "1.3.3", default-features = false }
# compression
flate2 = { version = "1.0.28", default-features = false, features = ["zlib"] }
# http
reqwest = "0.11.23"
# chrono, parse rfc2822 dates from http Last-Modified header
chrono = "0.4.31"
# fast hasher
xxhash-rust = { version = "0.8.8", features = ["xxh3"] }
# faster hasher for keys that are particular primitives
nohash-hasher = "0.2.0"
# charts to visualize distribution of latency
charming = { version = "0.3.1", default-features = true }
[dev-dependencies]
fastrand = "2.0.1"
[target.'cfg(target_os = "linux")'.dependencies]
# get pid of sending process (if local machine)
netlink-packet-core = "0.7.0"
netlink-packet-sock-diag = "0.4.2"
netlink-sys = "0.8.5"
procfs = "0.16.0"
# faster alloc
tcmalloc = { version = "0.3.0", default-features = false, features = ["bundled"] }
[target.'cfg(any(all(any(target_arch = "arm", target_arch = "aarch64"), target_feature = "aes", target_feature = "neon"), all(any(target_arch = "x86", target_arch = "x86_64"), target_feature = "aes", target_feature = "sse2")))'.dependencies]
gxhash = "3.1.0"
[target.'cfg(not(any(all(any(target_arch = "arm", target_arch = "aarch64"), target_feature = "aes", target_feature = "neon"), all(any(target_arch = "x86", target_arch = "x86_64"), target_feature = "aes", target_feature = "sse2"))))'.dependencies]
ahash = "0.8.7"