Files
matrix-authentication-service/deny.toml
T
2024-07-01 10:20:33 +02:00

104 lines
3.5 KiB
TOML

[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" },
{ name = "socket2", version = "0.4.10" },
# 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" },
# async-graphql -> toml_edit depends on this old version
{ name = "winnow", version = "0.5.40" },
]
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"]