[package]
edition = "2024"
rust-version = "1.88.0"
name = "keyring"
version = "4.1.1"
authors = ["Daniel Brotsky <dev@brotsky.com>"]
build = false
exclude = [".github"]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "All-in-One Rust Keyring"
homepage = "https://github.com/open-source-cooperative/keyring-rs/wiki/Keyring"
readme = "README.md"
keywords = [
"password",
"credential",
"keychain",
"keyring",
"cross-platform",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/open-source-cooperative/keyring-rs"
[package.metadata.docs.rs]
all-features = true
targets = [
"x86_64-unknown-linux-gnu",
"x86_64-pc-windows-gnu",
"x86_64-linux-android",
"x86_64-unknown-freebsd",
"aarch64-apple-darwin",
"aarch64-apple-ios",
]
[features]
cli = [
"keyring-core/sample",
"apple-native-keyring-store/keychain",
"apple-native-keyring-store/protected",
"windows-native-keyring-store",
"zbus-secret-service-keyring-store",
"dbus-secret-service-keyring-store",
"linux-keyutils-keyring-store",
"db-keystore",
]
default = ["v1"]
v1 = [
"apple-native-keyring-store/keychain",
"windows-native-keyring-store",
"zbus-secret-service-keyring-store",
]
[lib]
name = "keyring"
path = "src/lib.rs"
[[example]]
name = "keyring-cli"
path = "examples/cli/main.rs"
required-features = ["cli"]
[[example]]
name = "keyring-v1-usage"
path = "examples/v1/main.rs"
required-features = ["v1"]
[[example]]
name = "leak-test"
path = "examples/leak-test/main.rs"
required-features = ["cli"]
[[example]]
name = "set-or-clear-three"
path = "examples/set-or-clear-three.rs"
required-features = ["cli"]
[[example]]
name = "unit-test"
path = "examples/unit-test/main.rs"
required-features = ["cli"]
[dependencies.keyring-core]
version = "1.0.0"
[dev-dependencies.base64]
version = "0.22.1"
[dev-dependencies.clap]
version = "4.6.1"
features = ["derive"]
[dev-dependencies.fastrand]
version = "2.4.1"
[dev-dependencies.rpassword]
version = "7.5.4"
[dev-dependencies.rprompt]
version = "2.2.0"
[dev-dependencies.zeroize]
version = "1.9.0"
[target.'cfg(any(target_os = "linux", target_os = "freebsd"))'.dependencies.dbus-secret-service-keyring-store]
version = "1.0.0"
features = [
"crypto-rust",
"vendored",
]
optional = true
[target.'cfg(any(target_os = "linux", target_os = "freebsd"))'.dependencies.zbus-secret-service-keyring-store]
version = "1.0.0"
features = ["crypto-rust"]
optional = true
[target.'cfg(any(target_os = "macos", target_os = "ios"))'.dependencies.apple-native-keyring-store]
version = "1.0.0"
optional = true
[target.'cfg(not(any(target_os = "ios", target_os = "android")))'.dependencies.db-keystore]
version = "0.4.3"
optional = true
[target.'cfg(target_os = "android")'.dependencies.android-native-keyring-store]
version = "1.0.0"
optional = true
[target.'cfg(target_os = "linux")'.dependencies.linux-keyutils-keyring-store]
version = "1.0.0"
optional = true
[target.'cfg(target_os = "windows")'.dependencies.windows-native-keyring-store]
version = "1.1.0"
optional = true