[package]
edition = "2024"
rust-version = "1.88"
name = "rite"
version = "0.4.2"
build = "build.rs"
publish = true
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Author, execute, and verify cryptographic key ceremonies (the `rite` CLI)"
homepage = "https://ritely.io"
readme = "README.md"
keywords = [
"cli",
"ceremony",
"rite",
]
categories = [
"security",
"command-line-utilities",
]
license = "GPL-3.0-only"
repository = "https://github.com/rite-ly/rite"
resolver = "2"
[features]
attestation = ["rite-stdlib/attestation"]
crypto = ["rite-stdlib/crypto"]
default = [
"render",
"openssl",
"verification",
"attestation",
"crypto",
"pki",
"tui",
]
openssl = [
"rite-stdlib/openssl",
"dep:openssl",
]
openssl-vendored = [
"rite-stdlib/openssl-vendored",
"openssl",
]
piv = ["rite-stdlib/piv"]
pki = ["rite-stdlib/pki"]
render = ["dep:rite-render"]
tui = ["dep:rite-tui"]
verification = ["rite-stdlib/verification"]
yubikey = ["rite-stdlib/yubikey"]
[[bin]]
name = "rite"
path = "src/main.rs"
[[test]]
name = "examples"
path = "tests/examples.rs"
[[test]]
name = "exit_codes"
path = "tests/exit_codes.rs"
[[test]]
name = "integration"
path = "tests/integration.rs"
[dependencies.clap]
version = "4.6.1"
features = ["derive"]
[dependencies.clap_complete]
version = "4.6.2"
[dependencies.crossbeam-channel]
version = "0.5.15"
[dependencies.openssl]
version = "0.10.78"
optional = true
[dependencies.rite-model]
version = "0.4"
[dependencies.rite-render]
version = "0.4"
optional = true
[dependencies.rite-resolver]
version = "0.4"
[dependencies.rite-runtime]
version = "0.4"
[dependencies.rite-stdlib]
version = "0.4"
default-features = false
[dependencies.rite-tui]
version = "0.4"
optional = true
[dependencies.rpassword]
version = "7.5.2"
[dependencies.secrecy]
version = "0.10.3"
[dependencies.serde_json]
version = "1.0.149"
features = ["raw_value"]
[dev-dependencies.assert_cmd]
version = "2.2.2"
[dev-dependencies.chrono]
version = "0.4.44"
features = [
"clock",
"std",
"serde",
]
default-features = false
[dev-dependencies.insta]
version = "1.47.2"
features = [
"yaml",
"filters",
]
[dev-dependencies.tempfile]
version = "3.27.0"
[build-dependencies.chrono]
version = "0.4.44"
features = [
"clock",
"std",
"serde",
]
default-features = false
[lints.clippy]
arithmetic_side_effects = "warn"
dbg_macro = "deny"
expect_used = "warn"
indexing_slicing = "warn"
missing_errors_doc = "allow"
missing_panics_doc = "allow"
module_name_repetitions = "allow"
must_use_candidate = "allow"
print_stdout = "warn"
self_named_module_files = "deny"
todo = "deny"
unimplemented = "deny"
unwrap_used = "warn"
wildcard_imports = "deny"
[lints.clippy.pedantic]
level = "warn"
priority = -1
[lints.rust]
unsafe_code = "forbid"