-
Notifications
You must be signed in to change notification settings - Fork 28
/
deny.toml
100 lines (90 loc) · 3.31 KB
/
deny.toml
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
[graph]
targets = [
{ triple = "x86_64-unknown-linux-gnu" },
{ triple = "aarch64-unknown-linux-gnu" },
{ triple = "x86_64-apple-darwin" },
{ triple = "aarch64-apple-darwin" },
]
[advisories]
version = 2
db-path = "~/.cargo/advisory-db"
db-urls = ["https://github.com/rustsec/advisory-db"]
ignore = [
# RSA key extraction "Marvin Attack". This is only relevant when using
# PKCS#1 v1.5 encryption, which we don't
"RUSTSEC-2023-0071",
]
[licenses]
version = 2
allow = [
"0BSD",
"Apache-2.0 WITH LLVM-exception",
"Apache-2.0",
"BSD-2-Clause",
"BSD-3-Clause",
"ISC",
"MIT",
"MPL-2.0",
"OpenSSL",
"Unicode-3.0",
"Unicode-DFS-2016",
]
# Ring's license is a bit complicated, so we need to specify it manually
[[licenses.clarify]]
name = "ring"
version = "*"
expression = "MIT AND ISC AND OpenSSL"
license-files = [
{ path = "LICENSE", hash = 0xbd0eed23 }
]
[bans]
# List of crates to deny
deny = [
# We should never depend on openssl
{ name = "openssl" },
{ name = "openssl-sys" },
{ name = "native-tls" },
]
# We try to avoid duplicating crates and track exceptions here
multiple-versions = "deny"
skip = [
{ name = "base64", version = "0.13.1" }, # async-graphql depends on this old version
{ name = "base64", version = "0.21.7" }, # many dependencies depends on this old version
{ name = "spin", version = "0.5.2" }, # lazy_static and ring depends on the old version
{ name = "syn", version = "1.0.109" }, # sea-query, sqlx, schemars depend on the old version
{ name = "strsim", version = "0.10.0" }, # darling depends on the old version
{ name = "event-listener", version = "2.5.3" }, # async-channel (wiremock) and sqlx-core depend on the old version
{ name = "regex-syntax", version = "0.6.29" }, # tracing-subscriber[env-filter] -> matchers depends on the old version
{ name = "regex-automata", version = "0.1.10" }, # ^
{ name = "regex-automata", version = "0.2.0" }, # icu_list depends on this old version
{ name = "indexmap", version = "1.9.3" }, # schemars depends on this old version
{ name = "object", version = "0.32.2" }, # sentry-backtrace depends on this old version
{ name = "bitflags", version = "1.3.2" }, # axum depends on an old version
{ name = "hashbrown" }, # Too many versions :(
# sqlx uses old versions of those:
{ name = "rustls", version = "0.21.10" },
{ name = "rustls-pemfile", version = "1.0.4" },
{ name = "rustls-webpki", version = "0.101.7" },
{ name = "webpki-roots", version = "0.25.3" },
# axum-macros, sqlx-macros and sea-query-attr use an old version
{ name = "heck", version = "0.4.1" },
# we depend on old http/http-body/hyper versions, but some dependencies already upgraded
{ name = "http", version = "0.2.12" },
# sea-query-attr uses an old version of darling
{ name = "darling", version = "0.14.4" },
{ name = "darling_core", version = "0.14.4" },
{ name = "darling_macro", version = "0.14.4" },
]
skip-tree = []
# We should never enable the (default) `oldtime` feature of `chrono`
[[bans.features]]
name = "chrono"
deny = ["oldtime"]
[sources]
unknown-registry = "warn"
unknown-git = "warn"
allow-registry = ["https://github.com/rust-lang/crates.io-index"]
allow-git = []
[sources.allow-org]
# Allow our own crates
github = ["matrix-org"]