| 1 |
[package] |
| 2 |
name = "zephyrfs-cli" |
| 3 |
version = "0.1.0" |
| 4 |
edition = "2021" |
| 5 |
authors = ["espadonne (mfw)"] |
| 6 |
license = "MIT" |
| 7 |
description = "Command-line interface for ZephyrFS distributed storage" |
| 8 |
repository = "https://github.com/ZephyrFS/zephyrfs-cli" |
| 9 |
|
| 10 |
[dependencies] |
| 11 |
# CLI framework |
| 12 |
clap = { version = "4.5", features = ["derive", "color"] } |
| 13 |
dialoguer = "0.11" |
| 14 |
indicatif = "0.17" |
| 15 |
|
| 16 |
# Async runtime |
| 17 |
tokio = { version = "1.39", features = ["full"] } |
| 18 |
|
| 19 |
# HTTP client for coordinator API |
| 20 |
reqwest = { version = "0.12", features = ["json"] } |
| 21 |
|
| 22 |
# Serialization |
| 23 |
serde = { version = "1.0", features = ["derive"] } |
| 24 |
serde_json = "1.0" |
| 25 |
serde_yaml = "0.9" |
| 26 |
toml = "0.8" |
| 27 |
|
| 28 |
# Configuration |
| 29 |
config = "0.14" |
| 30 |
dirs = "5.0" |
| 31 |
|
| 32 |
# File operations |
| 33 |
walkdir = "2.5" |
| 34 |
sha2 = "0.10" |
| 35 |
|
| 36 |
# Error handling |
| 37 |
anyhow = "1.0" |
| 38 |
thiserror = "1.0" |
| 39 |
|
| 40 |
# Logging |
| 41 |
tracing = "0.1" |
| 42 |
tracing-subscriber = { version = "0.3", features = ["env-filter"] } |
| 43 |
|
| 44 |
# Utilities |
| 45 |
humansize = "2.1" |
| 46 |
chrono = { version = "0.4", features = ["serde"] } |
| 47 |
async-trait = "0.1" |
| 48 |
lazy_static = "1.4" |
| 49 |
|
| 50 |
# ZephyrFS node dependency for crypto |
| 51 |
zephyrfs-node = { path = "../zephyrfs-node" } |
| 52 |
|
| 53 |
[dev-dependencies] |
| 54 |
tempfile = "3.8" |
| 55 |
tokio-test = "0.4" |
| 56 |
criterion = { version = "0.5", features = ["html_reports"] } |
| 57 |
|
| 58 |
[[bin]] |
| 59 |
name = "zephyrfs" |
| 60 |
path = "src/main.rs" |
| 61 |
|
| 62 |
[[bench]] |
| 63 |
name = "cli_benchmarks" |
| 64 |
harness = false |
| 65 |
|
| 66 |
[profile.release] |
| 67 |
codegen-units = 1 |
| 68 |
lto = true |
| 69 |
panic = "abort" |