6个版本 (3个重大更改)

0.4.1 2021年4月4日
0.4.0 2021年3月21日
0.3.0 2021年3月20日
0.2.1 2021年3月20日
0.1.0 2020年11月5日

#1031认证

每月34次下载
credent 中使用

MIT/Apache

51KB
1K SLoC

🔑 Credent

Crates.io CI Coverage Status

管理 ~/.config/<app>/credentials

使用方法

将以下内容添加到Cargo.toml中

credent = { version = "0.4.1", features = ["backend-smol"] } # or "backend-tokio"

示例代码

use credent::{
    cli::CredentialsCliReader,
    fs::{model::AppName, CredentialsFile, CredentialsFileStorer},
    model::Credentials,
};

/// Application name
const CREDENT: AppName<'_> = AppName("credent");

fn main() -> Result<(), Box<dyn std::error::Error>> {
    smol::run(async {
        let credentials = CredentialsCliReader::<Credentials>::read_from_tty().await?;
        println!("credentials: {}", credentials);

        CredentialsFileStorer::<Credentials>::store(CREDENT, &credentials).await?;

        println!(
            "credentials written to: {}",
            CredentialsFile::<Credentials>::path(CREDENT)?.display()
        );

        Result::<(), Box<dyn std::error::Error>>::Ok(())
    })
}

更多示例请参阅 示例

# Use either "backend-smol" or "backend-tokio"
cargo run --features "backend-smol" --example simple
cargo run --features "backend-smol" --example demo
cargo run --features "backend-smol" --example profiles
cargo run --features "backend-smol" --example profiles -- --profile development

许可协议

根据以下任一协议许可

任选其一。

贡献

除非你明确声明,否则你有意提交的任何贡献,根据Apache-2.0许可证定义,应按上述方式双重许可,不附加任何额外的条款或条件。

依赖

~1.6–2.6MB
~47K SLoC