-
Notifications
You must be signed in to change notification settings - Fork 8
/
Copy pathCargo.toml
125 lines (116 loc) · 3.64 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
[package]
authors = { workspace = true }
edition = { workspace = true }
name = "spfs"
version = { workspace = true }
license-file = { workspace = true }
homepage = { workspace = true }
repository = { workspace = true }
readme = { workspace = true }
description = { workspace = true }
[lints]
workspace = true
[features]
default = []
# If enabled, will create the "local" repository in a subdirectory
# of the standard storage root, named "ci/pipeline_${CI_PIPELINE_ID}".
gitlab-ci-local-repo-isolation = []
sentry = ["dep:sentry"]
server = ["hyper/server", "tokio-util/codec", "tokio-util/io-util"]
"protobuf-src" = ["dep:protobuf-src"]
fuse-backend = ["dep:fuser"]
winfsp-backend = []
[dependencies]
arc-swap = { workspace = true }
async-compression = { version = "0.3.15", features = ["tokio", "bzip2"] }
async-trait = "0.1.52"
async-recursion = "1.0"
async-stream = "0.3"
bytes = { workspace = true }
cached = { workspace = true }
chrono = { workspace = true }
close-err = "1.0"
colored = "2.0"
config = { workspace = true }
dashmap = { workspace = true }
data-encoding = "2.3"
derive_builder = { workspace = true }
dirs = { workspace = true }
dunce = { workspace = true }
enum_dispatch = { workspace = true }
faccess = "0.2.3"
flatbuffers = { workspace = true }
futures = { workspace = true }
futures-core = { workspace = true }
gitignore = "1.0"
glob = { workspace = true }
hyper = { version = "0.14.16", features = ["client"] }
indicatif = { workspace = true }
itertools = { workspace = true }
libc = { workspace = true }
miette = { workspace = true }
nix = { workspace = true, features = ["fs"] }
nonempty = "0.8.1"
num_cpus = "1.13.1"
once_cell = { workspace = true }
parsedbuf = { path = "../parsedbuf" }
pin-project-lite = { workspace = true }
progress_bar_derive_macro = { workspace = true }
prost = { workspace = true }
rand = { workspace = true }
relative-path = { workspace = true, features = ["serde"] }
ring = { workspace = true }
semver = "1.0"
sentry = { workspace = true, optional = true }
serde = { workspace = true, features = ["derive"] }
serde_json = { workspace = true }
serde_yaml = { workspace = true }
serde_qs = "0.10.1"
shellexpand = { workspace = true }
spfs-encoding = { workspace = true }
spfs-proto = { path = "../spfs-proto", features = ["serde"] }
strum = { workspace = true, features = ["derive"] }
tar = "0.4.30"
tempfile = { workspace = true }
tokio = { version = "1.20", features = [
"fs",
"io-util",
"io-std",
"rt",
"rt-multi-thread",
"macros",
"sync",
"process",
"signal",
] }
tokio-retry = { workspace = true }
tokio-stream = { version = "0.1", features = ["net", "fs"] }
tokio-util = { version = "0.7.3", features = ["compat", "io"] }
tonic = { workspace = true }
tracing = { workspace = true }
ulid = { workspace = true }
unix_mode = "0.1.3"
url = { version = "2.2", features = ["serde"] }
uuid = { version = "1.1", features = ["v4"] }
walkdir = "2.3"
whoami = { workspace = true }
thiserror = { workspace = true }
[target.'cfg(unix)'.dependencies]
fuser = { workspace = true, optional = true }
procfs = { workspace = true }
caps = "0.5.3"
[target.'cfg(windows)'.dependencies.windows]
version = "0.51"
features = ["Win32_Storage_FileSystem", "Win32_Foundation"]
[build-dependencies]
protobuf-src = { version = "1.0.5", optional = true } # protoc @ 3.19.3
tonic-build = { workspace = true }
[dev-dependencies]
criterion = { version = "0.3", features = ["async_tokio", "html_reports"] }
rstest = { version = "0.15.0", default-features = false }
serial_test = { workspace = true }
tracing-subscriber = { workspace = true, features = ["env-filter"] }
static_assertions = { workspace = true }
[[bench]]
name = "spfs_bench"
harness = false