# Independent package - not part of any workspace [package] name = "platform-encrypt" version = "0.1.0" edition = "2021" rust-version = "1.75" authors = ["Provctl Contributors"] license = "MIT" repository = "https://github.com/provctl" description = "Multi-backend encryption module for secrets management" documentation = "https://docs.rs/encrypt" keywords = ["encryption", "secrets", "infrastructure", "security", "iac"] categories = ["cryptography", "development-tools"] [lib] name = "encrypt" [dependencies] serde = { version = "1", features = ["derive"] } serde_json = "1.0" serde_yaml = "0.9" toml = "0.9" thiserror = "2" anyhow = "1" tracing = "0.1" hex = "0.4" # Age encryption backend (optional) age = { version = "0.11", optional = true } dirs = { version = "6.0", optional = true } # SOPS backend (optional) tempfile = { version = "3", optional = true } # SecretumVault and RustyVault HTTP backends (optional) reqwest = { version = "0.12", features = ["json", "blocking"], optional = true } tokio = { version = "1", features = ["rt"], optional = true } base64 = { version = "0.22", optional = true } [dev-dependencies] proptest = "1" tempfile = "3" mockall = "0.14" age = "0.11" dirs = "6.0" [features] default = ["age"] age = ["dep:age", "dep:dirs"] sops = ["dep:tempfile"] secretumvault = ["dep:reqwest", "dep:tokio", "dep:base64"] awskms = [] gcpkms = [] azurekms = [] cosmian = ["dep:reqwest", "dep:tokio"] nickel-integration = [] test-util = [] rustyvault = ["dep:reqwest", "dep:tokio"] all = ["age", "sops", "secretumvault", "awskms", "gcpkms", "azurekms", "cosmian", "nickel-integration"] all-backends = ["age", "sops", "secretumvault", "awskms", "gcpkms", "azurekms", "cosmian"]