forked from deislabs/bindle
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Cargo.toml
102 lines (94 loc) · 3.31 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
[package]
name = "bindle"
version = "0.9.0-rc.1"
authors = [
"Matt Butcher <matt.butcher@microsoft.com>",
"Taylor Thomas <taylor.thomas@microsoft.com>"
]
edition = "2021"
license-file = "LICENSE.txt"
description = "An aggregate object storage system for applications"
repository = "https://github.com/deislabs/bindle"
readme = "docs/crate-readme.md"
keywords = [
"storage",
"package",
]
exclude = [
"docs/*",
".github/*",
".gitignore",
"bin/",
"test/"
]
[badges]
maintenance = { status = "actively-developed" }
[features]
default = ["server", "client", "caching", "test-tools", "native-tls"]
server = ["warp", "openid", "hyper", "mime", "either", "_common"]
client = ["mime_guess", "dirs", "time", "async-compression", "tokio-tar", "_common"]
# Internal use only feature that groups all of the optional deps we need for both server and client
_common = ["providers", "tokio/full", "tokio-util", "oauth2", "reqwest"]
# Activates provider implementations
providers = ["lru", "serde_cbor", "sled"]
caching = ["lru"]
test-tools = []
cli = ["clap", "tracing-subscriber", "atty"]
native-tls = ["reqwest?/default-tls"]
rustls-tls = ["reqwest?/rustls-tls"]
[package.metadata.docs.rs]
all-features = true
[dependencies]
anyhow = "1.0.44"
async-compression = { version = "0.3", default-features = false, features = ["tokio", "gzip"], optional = true }
async-trait = "0.1.51"
atty = { version = "0.2", optional = true }
base64 = "0.13.0"
bcrypt = "0.11"
bytes = "1.1.0"
clap = { version = "3", features = ["derive", "env", "cargo"], optional = true }
dirs = { version = "4.0.0", optional = true }
ed25519-dalek = "1.0.1"
either = { version = "1.6.1", optional = true }
futures = "0.3.17"
hyper = { version = "0.14.12", optional = true }
jsonwebtoken = "8.0.0-beta.6"
lru = { version = "0.7", optional = true }
mime = { version = "0.3.16", optional = true }
mime_guess = { version = "2.0.3", optional = true }
oauth2 = { version = "4.1.0", features = ["reqwest"], optional = true }
openid = { version = "0.9.3", optional = true }
# We need the older version of rand for dalek
rand = "0.7"
reqwest = { version = "0.11.4", features = ["stream"], default-features = false, optional = true }
semver = { version = "1.0.4", features = ["serde"] }
serde = { version = "1.0.130", features = ["derive"] }
serde_cbor = { version = "0.11.2", optional = true }
serde_json = "1.0.68"
sha2 = "0.10"
sled = { version = "0.34.7", optional = true }
tempfile = "3.2.0"
thiserror = "1.0.29"
time = { version = "0.3", features = ["serde"], optional = true }
tokio = { version = "1.11.0", default-features = false, features = ["fs", "sync", "io-util"] }
tokio-stream = { version = "0.1.7", features = ["fs"] }
tokio-tar = { version = "0.3", optional = true }
tokio-util = { version = "0.7", features = ["io", "codec"], optional = true }
toml = "0.5.8"
tracing = { version = "0.1.27", features = ["log"] }
tracing-futures = "0.2.5"
tracing-subscriber = { version = "0.3.7", features = ["env-filter"], optional = true }
url = "2.2.2"
warp = { version = "0.3", features = ["tls"], optional = true }
[target.'cfg(target_family = "windows")'.dependencies]
remove_dir_all = "0.7.0"
[dev-dependencies]
rstest = "0.15.0"
[[bin]]
name = "bindle-server"
path = "bin/server.rs"
required-features = ["cli"]
[[bin]]
name = "bindle"
path = "bin/client/main.rs"
required-features = ["cli"]