[workspace] resolver = "2" members = ["crates/rsh-types", "crates/rsh-backend", "crates/rsh", "crates/rshc"] [profile.release] strip = true [workspace.package] edition = "2021" license = "MIT" rust-version = "1.78" [workspace.dependencies] rsh-types = { path = "crates/rsh-types" } tokio = { version = "1.40", features = ["full"] } tokio-tungstenite = { version = "0.24", features = ["rustls-tls-native-roots"] } futures-util = "0.3" serde = { version = "1", features = ["derive"] } serde_json = "1" serde_yaml = "0.9" bytes = { version = "1", features = ["serde"] } anyhow = "1" thiserror = "1" tracing = "0.1" tracing-subscriber = { version = "0.3", features = ["env-filter"] } clap = { version = "4", features = ["derive", "env"] } uuid = { version = "1", features = ["v4", "serde"] } axum = { version = "0.7", features = ["ws", "macros"] } tower = "0.5" tower-http = { version = "0.6", features = ["trace"] } dashmap = "6" argon2 = "0.5" rand = "0.8" ssh-key = { version = "0.6", features = ["ed25519", "rsa", "ecdsa", "p256", "p384", "encryption"] } signature = "2" portable-pty = "0.8" hostname = "0.4" whoami = "1" inquire = "0.7" owo-colors = "4" comfy-table = "7" crossterm = { version = "0.28", features = ["event-stream"] } dirs = "5" reqwest = { version = "0.12", default-features = false, features = ["rustls-tls", "blocking"] } rustls = { version = "0.23.40", features = ["ring"] } rpassword = "7" humantime = "2" time = { version = "0.3", features = ["formatting", "macros"] } shellexpand = "3" tempfile = "3"