-
-
Notifications
You must be signed in to change notification settings - Fork 36
Expand file tree
/
Copy pathCargo.toml
More file actions
100 lines (91 loc) · 3.38 KB
/
Cargo.toml
File metadata and controls
100 lines (91 loc) · 3.38 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
[package]
name = "instant-acme"
version = "0.8.5"
edition = "2021"
rust-version = "1.70"
license = "Apache-2.0"
description = "Async pure-Rust ACME client"
homepage = "https://github.com/djc/instant-acme"
repository = "https://github.com/djc/instant-acme"
documentation = "https://docs.rs/instant-acme"
keywords = ["letsencrypt", "acme"]
categories = ["web-programming", "api-bindings"]
[features]
default = ["aws-lc-rs", "hyper-rustls"]
aws-lc-rs = ["dep:aws-lc-rs", "hyper-rustls?/aws-lc-rs", "rcgen/aws_lc_rs"]
fips = ["aws-lc-rs", "aws-lc-rs?/fips"]
hyper-rustls = ["dep:hyper", "dep:hyper-rustls", "dep:hyper-util", "dep:rustls"]
rcgen = ["dep:rcgen"]
ring = ["dep:ring", "hyper-rustls?/ring", "rcgen/ring"]
time = ["dep:time"]
x509-parser = ["dep:x509-parser"]
[dependencies]
async-trait = "0.1"
aws-lc-rs = { version = "1.8.0", optional = true }
base64 = "0.22"
bytes = "1"
http = "1"
httpdate = "1.0.3"
http-body = "1"
http-body-util = "0.1.2"
hyper = { version = "1.3.1", features = ["client", "http1", "http2"], optional = true }
hyper-rustls = { version = "0.27.7", default-features = false, features = ["http1", "http2", "native-tokio", "tls12", "rustls-platform-verifier"], optional = true }
hyper-util = { version = "0.1.5", features = ["client", "client-legacy", "http1", "http2", "tokio"], optional = true }
rcgen = { version = "0.14.2", default-features = false, features = ["pem"], optional = true }
ring = { version = "0.17", features = ["std"], optional = true }
rustls = { version = "0.23", default-features = false, optional = true }
rustls-pki-types = "1.1.0"
serde = { version = "1.0.104", features = ["derive"] }
serde_json = "1.0.78"
time = { version = "0.3", default-features = false, features = ["serde", "parsing"], optional = true }
thiserror = "2.0.3"
tokio = { version = "1.22", features = ["time"] }
x509-parser = { version = "0.18", default-features = false, optional = true }
[dev-dependencies]
anyhow = "1.0.66"
clap = { version = "4.0.29", features = ["derive"] }
rustls = { version = "0.23", default-features = false }
tempfile = "3"
tokio = { version = "1.22.0", features = ["macros", "rt", "rt-multi-thread", "time"] }
tracing = "0.1.37"
tracing-subscriber = { version = "0.3.16", features = ["env-filter"] }
[[example]]
name = "provision"
required-features = ["hyper-rustls", "rcgen"]
# Pebble integration test.
# Ignored by default because it requires pebble & pebble-challtestsrv.
# Run with:
# PEBBLE=path/to/pebble CHALLTESTSRV=path/to/pebble-challtestsrv cargo test -- --ignored
[[test]]
name = "pebble"
required-features = ["hyper-rustls"]
[package.metadata.docs.rs]
# all non-default features except fips (cannot build on docs.rs environment)
features = ["aws-lc-rs", "x509-parser", "time"]
rustdoc-args = ["--cfg", "instant_acme_docsrs"]
[package.metadata.cargo_check_external_types]
allowed_external_types = [
"bytes::*",
"http::*",
"http_body::*",
"hyper::*",
"rustls_pki_types::*",
"serde_core::*",
"serde_json::*",
"time::*",
]
[lints.rust]
elided_lifetimes_in_paths = "warn"
trivial_numeric_casts = "warn"
unexpected_cfgs = { level = "warn", check-cfg = ["cfg(instant_acme_docsrs)"] }
unnameable_types = "warn"
unreachable_pub = "warn"
unused_extern_crates = "warn"
unused_import_braces = "warn"
unused_qualifications = "warn"
[lints.clippy]
cloned_instead_of_copied = "warn"
manual_let_else = "warn"
or_fun_call = "warn"
upper_case_acronyms = "warn"
use_self = "warn"