-
-
Notifications
You must be signed in to change notification settings - Fork 17
Expand file tree
/
Copy pathCargo.toml
More file actions
130 lines (121 loc) · 4.71 KB
/
Cargo.toml
File metadata and controls
130 lines (121 loc) · 4.71 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
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
[workspace]
members = ["crates/*"]
resolver = "3"
[workspace.package]
authors = ["Stackable GmbH <info@stackable.de>"]
license = "Apache-2.0"
edition = "2024"
repository = "https://github.com/stackabletech/operator-rs"
[workspace.dependencies]
product-config = { git = "https://github.com/stackabletech/product-config.git", tag = "0.8.0" }
arc-swap = "1.7.0"
async-trait = "0.1.89"
axum = { version = "0.8.1", features = ["http2"] }
base64 = "0.22"
clap = { version = "4.5.17", features = ["derive", "cargo", "env"] }
const_format = "0.2.33"
# Cannot be updated until x509-cert uses a newer version
const-oid = { version = "0.9.6", features = ["db"] }
convert_case = "0.11.0"
convert_case_extras = "0.2.0"
darling = "0.23.0"
delegate = "0.13.0"
dockerfile-parser = "0.9.0"
ecdsa = { version = "0.16.9", features = ["digest", "pem"] }
educe = { version = "0.6.0", default-features = false, features = ["Clone", "Debug", "Default", "PartialEq", "Eq"] }
either = "1.13.0"
futures = "0.3.30"
futures-util = "0.3.30"
http = "1.3.1"
humantime = "2.1.0"
indexmap = "2.5.0"
indoc = "2.0.6"
jiff = "0.2.18"
insta = { version = "1.40", features = ["glob"] }
hyper = { version = "1.4.1", features = ["full"] }
hyper-util = "0.1.8"
itertools = "0.14.0"
json-patch = "4.0.0"
k8s-openapi = { version = "0.27.0", default-features = false, features = ["schemars", "v1_35"] }
# We use rustls instead of openssl for easier portability, e.g. so that we can build stackablectl without the need to vendor (build from source) openssl
# We use ring instead of aws-lc-rs, as this currently fails to build in "make run-dev"
kube = { version = "3.1.0", default-features = false, features = ["client", "jsonpatch", "runtime", "derive", "admission", "rustls-tls", "ring"] }
opentelemetry = "0.31.0"
opentelemetry_sdk = { version = "0.31.0", features = ["rt-tokio"] }
opentelemetry-appender-tracing = "0.31.0"
opentelemetry-otlp = "0.31.0"
opentelemetry-semantic-conventions = "0.31.0"
p256 = { version = "0.13.2", features = ["ecdsa"] }
paste = "1.0.15"
pin-project = "1.1.5"
prettyplease = "0.2.22"
proc-macro2 = "1.0.86"
quote = "1.0.37"
# Cannot be updated until x509-cert uses a newer version
rand = "0.9.0"
rand_core = "0.6.4"
regex = "1.10.6"
rsa = { version = "0.9.6", features = ["sha2"] }
rstest = "0.26.1"
rstest_reuse = "0.7.0"
schemars = { version = "1.0.0", features = ["url2"] }
semver = "1.0.23"
serde = { version = "1.0.210", features = ["derive"] }
serde_json = "1.0.128"
serde_yaml = "0.9.34" # This is the last available version, see https://github.com/dtolnay/serde-yaml/releases/tag/0.9.34 for details
sha2 = { version = "0.10.8", features = ["oid"] }
signature = "2.2.0"
snafu = "0.9.0"
stackable-operator-derive = { path = "stackable-operator-derive" }
strum = { version = "0.28.0", features = ["derive"] }
syn = "2.0.77"
tempfile = "3.12.0"
time = { version = "0.3.36" }
tokio = { version = "1.40.0", features = ["macros", "rt-multi-thread", "fs"] }
# We use ring instead of aws-lc-rs, as this currently fails to build in "make run-dev"
tokio-rustls = { version = "0.26.0", default-features = false, features = ["ring", "logging", "tls12"] }
tokio-test = "0.4.4"
tower = { version = "0.5.1", features = ["util"] }
tower-http = { version = "0.6.1", features = ["trace"] }
tracing = "0.1.40"
tracing-appender = "0.2.3"
tracing-opentelemetry = "0.32.0"
tracing-subscriber = { version = "0.3.18", features = ["env-filter", "json"] }
trybuild = "1.0.99"
url = { version = "2.5.2", features = ["serde"] }
x509-cert = { version = "0.2.5", features = ["builder"] }
zeroize = "1.8.1"
[workspace.lints.clippy]
# Enable all pedantic lints (with lower priority so individual lints can override)
pedantic = { level = "deny", priority = -1 }
# Pedantic lints we don't enforce (yet)
doc_markdown = "allow"
missing_errors_doc = "allow"
must_use_candidate = "allow"
return_self_not_must_use = "allow"
missing_panics_doc = "allow"
cast_possible_truncation = "allow"
float_cmp = "allow"
cast_sign_loss = "allow"
cast_precision_loss = "allow"
unchecked_time_subtraction = "allow"
# We should be able to deny this, but it lint's on code generated by darling, raised https://github.com/TedDriggs/darling/pull/429
needless_continue = "allow"
# Additional nursery lints we enforce
use_self = "deny"
or_fun_call = "deny"
derive_partial_eq_without_eq = "deny"
unnecessary_struct_initialization = "deny"
# Additional restriction lints we enforce
unwrap_in_result = "deny"
unwrap_used = "deny"
panic = "deny"
# Use O3 in tests to improve the RSA key generation speed in the stackable-certs crate
[profile.test.package]
stackable-certs.opt-level = 3
rsa.opt-level = 3
# Run snapshot testing faster even as a dev dependency.
# See https://insta.rs/docs/quickstart/#optional-faster-runs
[profile.dev.package]
insta.opt-level = 3
similar.opt-level = 3