[package]
edition = "2024"
rust-version = "1.89"
name = "certon"
version = "0.1.2"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Automatic HTTPS/TLS certificate management via the ACME protocol"
readme = "README.md"
keywords = [
"acme",
"tls",
"https",
"certificate",
"letsencrypt",
]
categories = [
"network-programming",
"cryptography",
"web-programming",
]
license = "Apache-2.0"
repository = "https://github.com/salvo-rs/certon"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
"--cfg",
"docsrs",
]
[features]
aws-lc-rs = [
"dep:aws-lc-rs",
"rustls/aws_lc_rs",
"tokio-rustls/aws_lc_rs",
"rcgen/aws_lc_rs",
"reqwest/rustls",
]
default = ["aws-lc-rs"]
ring = [
"dep:ring",
"rustls/ring",
"tokio-rustls/ring",
"rcgen/ring",
"reqwest/rustls-no-provider",
]
[lib]
name = "certon"
path = "src/lib.rs"
[[example]]
name = "basic"
path = "examples/basic.rs"
[[example]]
name = "custom_config"
path = "examples/custom_config.rs"
[[example]]
name = "custom_storage"
path = "examples/custom_storage.rs"
[[example]]
name = "dns01_challenge"
path = "examples/dns01_challenge.rs"
[[example]]
name = "http01_challenge"
path = "examples/http01_challenge.rs"
[[example]]
name = "on_demand_tls"
path = "examples/on_demand_tls.rs"
[[example]]
name = "zerossl"
path = "examples/zerossl.rs"
[dependencies.async-trait]
version = "0.1"
[dependencies.aws-lc-rs]
version = "1"
optional = true
[dependencies.base64]
version = "0.22"
[dependencies.chrono]
version = "0.4"
features = [
"clock",
"serde",
]
default-features = false
[dependencies.ecdsa]
version = "0.16"
features = [
"signing",
"verifying",
]
[dependencies.ed25519-dalek]
version = "2"
features = ["rand_core"]
[dependencies.elliptic-curve]
version = "0.13"
features = ["sec1"]
[dependencies.futures]
version = "0.3"
[dependencies.hickory-resolver]
version = "0.25"
[dependencies.idna]
version = "1"
[dependencies.p256]
version = "0.13"
features = ["ecdsa"]
[dependencies.p521]
version = "0.13"
features = ["ecdsa"]
[dependencies.pem]
version = "3"
[dependencies.rand]
version = "0.10.0"
[dependencies.rcgen]
version = "0.14"
features = ["pem"]
default-features = false
[dependencies.reqwest]
version = "0.13"
features = [
"json",
"charset",
"form",
]
default-features = false
[dependencies.ring]
version = "0.17"
optional = true
[dependencies.rsa]
version = "0.9"
features = ["sha2"]
[dependencies.rustls]
version = "0.23"
features = [
"logging",
"std",
"tls12",
]
default-features = false
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
features = ["raw_value"]
[dependencies.sha1]
version = "0.10"
[dependencies.sha2]
version = "0.10"
[dependencies.signature]
version = "2"
[dependencies.thiserror]
version = "2"
[dependencies.tokio]
version = "1"
features = ["full"]
[dependencies.tokio-rustls]
version = "0.26"
features = ["logging"]
default-features = false
[dependencies.tracing]
version = "0.1"
[dependencies.url]
version = "2"
[dependencies.x509-parser]
version = "0.18"
[dev-dependencies.tempfile]
version = "3"
[dev-dependencies.tokio-test]
version = "0.4"
[dev-dependencies.tracing-subscriber]
version = "0.3"