2020-04-24 10:10:01 +00:00
|
|
|
[workspace]
|
2022-09-04 13:26:19 +00:00
|
|
|
resolver = "2"
|
2020-04-24 10:10:01 +00:00
|
|
|
members = [
|
2022-06-08 08:01:44 +00:00
|
|
|
"src/db",
|
2020-04-24 10:10:01 +00:00
|
|
|
"src/util",
|
2024-02-13 11:55:41 +00:00
|
|
|
"src/net",
|
2020-04-24 10:10:01 +00:00
|
|
|
"src/rpc",
|
|
|
|
"src/table",
|
2022-03-23 09:26:10 +00:00
|
|
|
"src/block",
|
2020-07-07 11:59:22 +00:00
|
|
|
"src/model",
|
2020-04-24 10:10:01 +00:00
|
|
|
"src/api",
|
2020-11-02 14:48:39 +00:00
|
|
|
"src/web",
|
2022-05-18 20:24:09 +00:00
|
|
|
"src/garage",
|
|
|
|
"src/k2v-client",
|
2023-05-17 11:01:37 +00:00
|
|
|
"src/format-table",
|
2020-04-24 10:10:01 +00:00
|
|
|
]
|
2020-04-21 12:54:55 +00:00
|
|
|
|
2022-05-18 20:24:09 +00:00
|
|
|
default-members = ["src/garage"]
|
|
|
|
|
2023-05-07 16:12:01 +00:00
|
|
|
[workspace.dependencies]
|
2024-02-05 12:02:02 +00:00
|
|
|
|
|
|
|
# Internal Garage crates
|
2023-05-17 11:06:37 +00:00
|
|
|
format_table = { version = "0.1.1", path = "src/format-table" }
|
2024-01-11 11:05:51 +00:00
|
|
|
garage_api = { version = "0.10.0", path = "src/api" }
|
|
|
|
garage_block = { version = "0.10.0", path = "src/block" }
|
|
|
|
garage_db = { version = "0.10.0", path = "src/db", default-features = false }
|
|
|
|
garage_model = { version = "0.10.0", path = "src/model", default-features = false }
|
2024-02-15 12:58:15 +00:00
|
|
|
garage_net = { version = "0.10.0", path = "src/net" }
|
2024-01-11 11:05:51 +00:00
|
|
|
garage_rpc = { version = "0.10.0", path = "src/rpc" }
|
|
|
|
garage_table = { version = "0.10.0", path = "src/table" }
|
|
|
|
garage_util = { version = "0.10.0", path = "src/util" }
|
|
|
|
garage_web = { version = "0.10.0", path = "src/web" }
|
2023-05-22 08:47:15 +00:00
|
|
|
k2v-client = { version = "0.0.4", path = "src/k2v-client" }
|
2023-05-07 16:12:01 +00:00
|
|
|
|
2024-02-05 12:02:02 +00:00
|
|
|
# External crates from crates.io
|
|
|
|
arc-swap = "1.0"
|
2024-02-29 09:57:07 +00:00
|
|
|
argon2 = "0.5"
|
2024-02-05 12:02:02 +00:00
|
|
|
async-trait = "0.1.7"
|
|
|
|
backtrace = "0.3"
|
|
|
|
base64 = "0.21"
|
|
|
|
blake2 = "0.10"
|
|
|
|
bytes = "1.0"
|
|
|
|
bytesize = "1.1"
|
2024-02-13 11:55:41 +00:00
|
|
|
cfg-if = "1.0"
|
2024-02-05 12:02:02 +00:00
|
|
|
chrono = "0.4"
|
|
|
|
crypto-common = "0.1"
|
|
|
|
digest = "0.10"
|
|
|
|
err-derive = "0.3"
|
|
|
|
gethostname = "0.4"
|
|
|
|
git-version = "0.3.4"
|
|
|
|
hex = "0.4"
|
|
|
|
hexdump = "0.1"
|
|
|
|
hmac = "0.12"
|
2024-02-05 12:10:56 +00:00
|
|
|
idna = "0.5"
|
|
|
|
itertools = "0.12"
|
2024-02-05 12:02:02 +00:00
|
|
|
lazy_static = "1.4"
|
|
|
|
md-5 = "0.10"
|
|
|
|
mktemp = "0.5"
|
|
|
|
nix = { version = "0.27", default-features = false, features = ["fs"] }
|
|
|
|
nom = "7.1"
|
2024-03-08 18:20:14 +00:00
|
|
|
ouroboros = "0.18"
|
2024-02-05 12:02:02 +00:00
|
|
|
parse_duration = "2.1"
|
|
|
|
pin-project = "1.0.12"
|
2024-02-05 12:10:56 +00:00
|
|
|
pnet_datalink = "0.34"
|
2024-02-05 12:02:02 +00:00
|
|
|
rand = "0.8"
|
|
|
|
sha2 = "0.10"
|
|
|
|
timeago = { version = "0.4", default-features = false }
|
|
|
|
xxhash-rust = { version = "0.8", default-features = false, features = ["xxh3"] }
|
|
|
|
|
2024-02-23 15:49:50 +00:00
|
|
|
aes-gcm = { version = "0.10", features = ["aes", "stream"] }
|
2024-02-13 11:55:41 +00:00
|
|
|
sodiumoxide = { version = "0.2.5-0", package = "kuska-sodiumoxide" }
|
|
|
|
kuska-handshake = { version = "0.2.0", features = ["default", "async_std"] }
|
|
|
|
|
2024-02-05 12:02:02 +00:00
|
|
|
clap = { version = "4.1", features = ["derive", "env"] }
|
|
|
|
pretty_env_logger = "0.5"
|
|
|
|
structopt = { version = "0.3", default-features = false }
|
|
|
|
tracing = "0.1"
|
|
|
|
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
|
|
|
|
|
|
|
|
heed = { version = "0.11", default-features = false, features = ["lmdb"] }
|
2024-02-05 12:10:56 +00:00
|
|
|
rusqlite = "0.30.0"
|
2024-02-05 12:02:02 +00:00
|
|
|
|
|
|
|
async-compression = { version = "0.4", features = ["tokio", "zstd"] }
|
2024-02-05 12:10:56 +00:00
|
|
|
zstd = { version = "0.13", default-features = false }
|
2024-02-05 12:02:02 +00:00
|
|
|
|
|
|
|
quick-xml = { version = "0.26", features = [ "serialize" ] }
|
|
|
|
rmp-serde = "1.1.2"
|
|
|
|
serde = { version = "1.0", default-features = false, features = ["derive", "rc"] }
|
|
|
|
serde_bytes = "0.11"
|
|
|
|
serde_json = "1.0"
|
2024-02-15 09:39:06 +00:00
|
|
|
toml = { version = "0.8", default-features = false, features = ["parse"] }
|
2024-02-05 12:02:02 +00:00
|
|
|
|
|
|
|
# newer version requires rust edition 2021
|
2024-02-08 17:49:38 +00:00
|
|
|
k8s-openapi = { version = "0.21", features = ["v1_24"] }
|
|
|
|
kube = { version = "0.88", default-features = false, features = ["runtime", "derive", "client", "rustls-tls"] }
|
2024-02-05 12:02:02 +00:00
|
|
|
schemars = "0.8"
|
|
|
|
reqwest = { version = "0.11", default-features = false, features = ["rustls-tls-manual-roots", "json"] }
|
|
|
|
|
|
|
|
form_urlencoded = "1.0.0"
|
2024-02-05 17:49:54 +00:00
|
|
|
http = "1.0"
|
2024-02-05 12:02:02 +00:00
|
|
|
httpdate = "1.0"
|
|
|
|
http-range = "0.1"
|
2024-02-05 17:49:54 +00:00
|
|
|
http-body-util = "0.1"
|
2024-02-15 09:39:06 +00:00
|
|
|
hyper = { version = "1.0", default-features = false }
|
2024-02-07 13:45:52 +00:00
|
|
|
hyper-util = { version = "0.1", features = [ "full" ] }
|
2024-02-05 12:10:56 +00:00
|
|
|
multer = "3.0"
|
2024-02-05 12:02:02 +00:00
|
|
|
percent-encoding = "2.2"
|
2024-02-05 12:10:56 +00:00
|
|
|
roxmltree = "0.19"
|
2024-02-05 12:02:02 +00:00
|
|
|
url = "2.3"
|
|
|
|
|
|
|
|
futures = "0.3"
|
|
|
|
futures-util = "0.3"
|
2024-02-13 11:55:41 +00:00
|
|
|
tokio = { version = "1.0", default-features = false, features = ["net", "rt", "rt-multi-thread", "io-util", "net", "time", "macros", "sync", "signal", "fs"] }
|
|
|
|
tokio-util = { version = "0.7", features = ["compat", "io"] }
|
2024-02-05 12:02:02 +00:00
|
|
|
tokio-stream = { version = "0.1", features = ["net"] }
|
|
|
|
|
|
|
|
opentelemetry = { version = "0.17", features = [ "rt-tokio", "metrics", "trace" ] }
|
|
|
|
opentelemetry-prometheus = "0.10"
|
|
|
|
opentelemetry-otlp = "0.10"
|
2024-02-13 11:55:41 +00:00
|
|
|
opentelemetry-contrib = "0.9"
|
2024-02-05 12:02:02 +00:00
|
|
|
prometheus = "0.13"
|
|
|
|
|
|
|
|
# used by the k2v-client crate only
|
2024-02-15 09:39:06 +00:00
|
|
|
aws-sigv4 = { version = "1.1" }
|
2024-02-05 18:57:35 +00:00
|
|
|
hyper-rustls = { version = "0.26", features = ["http2"] }
|
2024-02-05 12:02:02 +00:00
|
|
|
log = "0.4"
|
|
|
|
thiserror = "1.0"
|
|
|
|
|
|
|
|
# ---- used only as build / dev dependencies ----
|
|
|
|
assert-json-diff = "2.0"
|
|
|
|
rustc_version = "0.4.0"
|
|
|
|
static_init = "1.0"
|
|
|
|
|
2024-02-05 13:02:45 +00:00
|
|
|
aws-config = "1.1.4"
|
|
|
|
aws-sdk-config = "1.13"
|
|
|
|
aws-sdk-s3 = "1.14"
|
2024-02-05 12:02:02 +00:00
|
|
|
|
2020-04-10 20:55:01 +00:00
|
|
|
[profile.dev]
|
2024-02-07 18:41:23 +00:00
|
|
|
#lto = "thin" # disabled for now, adds 2-4 min to each CI build
|
2020-04-10 20:55:01 +00:00
|
|
|
lto = "off"
|
2020-04-16 18:46:43 +00:00
|
|
|
|
|
|
|
[profile.release]
|
2024-02-07 16:11:27 +00:00
|
|
|
lto = true
|
|
|
|
codegen-units = 1
|
|
|
|
opt-level = "s"
|
|
|
|
strip = true
|