ssh-vault 1.3.2

encrypt/decrypt using ssh keys
Documentation
[package]
name = "ssh-vault"
version = "1.3.2"
authors = ["Nicolas Embriz <nbari@tequila.io>"]
description = "encrypt/decrypt using ssh keys"
documentation = "https://ssh-vault.com/"
repository = "https://github.com/ssh-vault/ssh-vault"
homepage = "https://ssh-vault.com/"
readme = "README.md"
keywords = ["ssh", "encryption", "fingerprint"]
categories = ["command-line-utilities", "cryptography"]
license = "BSD-3-Clause"
edition = "2024"

[lints.rust]
warnings = "deny"

[lints.clippy]
# Allow unstable/opinionated lints (lower priority so individual lints can override)
nursery = { level = "allow", priority = -1 }

# Enforce pedantic lints
pedantic = "deny"

# Core lint groups
all = "deny"
correctness = "deny"
suspicious = "deny"
perf = "deny"
complexity = "deny"

# Safety-critical lints
unwrap_used = "deny"
expect_used = "deny"
panic = "deny"
indexing_slicing = "deny"
await_holding_lock = "deny"

# Performance + memory reliability
needless_borrow = "deny"
needless_collect = "deny"
large_stack_arrays = "deny"

[dependencies]
aes-gcm = "0.11.0"
anyhow = "1"
base58 = "0.2.0"
base64ct = { version = "1.8.3", features = ["alloc"] }
chacha20poly1305 = "0.11.0"
clap = { version = "4.6", features = ["env", "color"] }
config = { version = "0.15", default-features = false, features = ["yaml"] }
ed25519-dalek = "3.0.0"
# ssh-key 0.6 pins ed25519-dalek 2.x without its `zeroize` feature; this renamed
# dependency re-enables it so secret keys inside ssh-key are wiped on drop
# (remove once ssh-key moves to ed25519-dalek 3)
ed25519-dalek-v2 = { package = "ed25519-dalek", version = "2", default-features = false, features = ["zeroize"] }
hex-literal = "1.1.0"
hkdf = "0.13.0"
home = "0.5.12"
md5 = "0.8.1"
rand = "0.10"
regex = "1.13"
reqwest = { version = "0.13", features = ["blocking"] }
rpassword = "7.5"
rsa = { version = "0.9.10", features = ["sha2"] }
secrecy = "0.10.3"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
sha2 = "0.11.0"
shell-words = "1.1.1"
ssh-key = { version = "0.6.7", features = ["ed25519", "rsa", "encryption"] }
temp-env = "0.3.6"
tempfile = "3.27"
url = "2.5"
x25519-dalek = { version = "3.0.0", features = ["getrandom", "static_secrets"] }
zeroize = "1.9.0"

[package.metadata.generate-rpm]
assets = [
    { source = "target/release/ssh-vault", dest = "/usr/bin/ssh-vault", mode = "0755" },
]

[package.metadata.deb]
assets = [
  ["target/release/ssh-vault", "/usr/bin/ssh-vault", "755"],
]
depends = ""

[profile.release]
opt-level = 3
lto = "fat"
codegen-units = 1
strip = true
panic = "abort"