[package] name = "uv-keyring" version = "0.0.8" description = "This is an internal component crate of uv" edition = { workspace = true } rust-version = { workspace = true } homepage = { workspace = true } repository = { workspace = true } authors = { workspace = true } license = { workspace = true } [lib] doctest = false [lints] workspace = true [features] default = ["apple-native", "secret-service", "windows-native"] native-auth = [] ## Use the built-in Keychain Services on macOS apple-native = ["dep:security-framework"] ## Use the secret-service on *nix. secret-service = ["dep:secret-service"] ## Use the built-in credential store on Windows windows-native = ["dep:windows", "dep:byteorder"] [dependencies] async-trait = { workspace = true } thiserror = { workspace = true } tokio = { workspace = true } [target.'cfg(target_os = "macos")'.dependencies] security-framework = { workspace = true, optional = true } [target.'cfg(any(target_os = "linux",target_os = "freebsd", target_os = "openbsd"))'.dependencies] secret-service = { workspace = true, features = ["rt-tokio-crypto-rust"], optional = true } [target.'cfg(target_os = "windows")'.dependencies] byteorder = { workspace = true, optional = true } windows = { workspace = true, features = ["Win32_Foundation", "Win32_Security_Credentials"], optional = true } zeroize = { workspace = true } [dev-dependencies] doc-comment = "0.3" env_logger = "0.11.5" fastrand = { workspace = true } [package.metadata.docs.rs] default-target = "x86_64-unknown-linux-gnu" targets = ["x86_64-unknown-linux-gnu", "aarch64-apple-darwin", "x86_64-pc-windows-msvc"]