[go: up one dir, main page]

keyring 3.3.0

Cross-platform library for managing passwords/credentials
Documentation
[package]
authors = ["Walther Chen <walther.chen@gmail.com>", "Daniel Brotsky <dev@brotsky.com>"]
description = "Cross-platform library for managing passwords/credentials"
homepage = "https://github.com/hwchen/keyring-rs"
keywords = ["password", "credential", "keychain", "keyring", "cross-platform"]
license = "MIT OR Apache-2.0"
name = "keyring"
repository = "https://github.com/hwchen/keyring-rs.git"
version = "3.3.0"
rust-version = "1.75"
edition = "2021"
exclude = [".github/"]
readme = "README.md"

[features]
linux-native = ["dep:linux-keyutils"]
apple-native = ["dep:security-framework"]
windows-native = ["dep:windows-sys", "dep:byteorder"]

sync-secret-service = ["dep:dbus-secret-service"]
async-secret-service = ["dep:secret-service", "dep:zbus"]
crypto-rust = ["dbus-secret-service?/crypto-rust", "secret-service?/crypto-rust"]
crypto-openssl = ["dbus-secret-service?/crypto-openssl", "secret-service?/crypto-openssl"]
tokio = ["zbus?/tokio"]
async-io = ["zbus?/async-io"]
vendored = ["dbus-secret-service?/vendored", "openssl?/vendored"]

[dependencies]
openssl = { version = "0.10.55", optional = true }

[target.'cfg(any(target_os = "macos", target_os = "ios"))'.dependencies]  # see issue #190
security-framework = { version = "2", optional = true }

[target.'cfg(target_os = "linux")'.dependencies]
secret-service = { version = "4", optional = true }
zbus = { version = "4", optional = true }
linux-keyutils = { version = "0.2", features = ["std"], optional = true }
dbus-secret-service = { version = "4.0.0-rc.2", optional = true }

[target.'cfg(target_os = "freebsd")'.dependencies]
secret-service = { version = "4", optional = true }
zbus = { version = "4", optional = true }
dbus-secret-service = { version = "4.0.1", optional = true }

[target.'cfg(target_os = "openbsd")'.dependencies]
secret-service = { version = "4", optional = true }
zbus = { version = "4", optional = true }
dbus-secret-service = { version = "4.0.0-rc.1", optional = true }

[target.'cfg(target_os = "windows")'.dependencies]
byteorder = { version = "1.2", optional = true }
windows-sys = { version = "0.59", features = ["Win32_Foundation", "Win32_Security_Credentials"], optional = true }

[[example]]
name = "iostest"
path = "examples/ios.rs"
crate-type = ["staticlib"]

[[example]]
name = "keyring-cli"
path = "examples/cli.rs"

[dev-dependencies]
base64 = "0.22"
clap = { version = "4", features = ["derive", "wrap_help"] }
rpassword = "7"
rprompt = "2"
rand = "0.8"
doc-comment = "0.3"
whoami = "1"

[package.metadata.docs.rs]
features = ["apple-native", "windows-native", "sync-secret-service", "crypto-rust"]