Files
matrix-authentication-service/deny.toml
T
2023-09-22 22:30:20 +02:00

93 lines
2.9 KiB
TOML

targets = [
{ triple = "x86_64-unknown-linux-gnu" },
{ triple = "aarch64-unknown-linux-gnu" },
{ triple = "x86_64-apple-darwin" },
{ triple = "aarch64-apple-darwin" },
]
[advisories]
db-path = "~/.cargo/advisory-db"
db-urls = ["https://github.com/rustsec/advisory-db"]
vulnerability = "deny"
unmaintained = "warn"
yanked = "warn"
notice = "warn"
ignore = [
# `wasmtime` depends on `mach`
# PR to migrate to `mach2`: https://github.com/bytecodealliance/wasmtime/pull/6164
"RUSTSEC-2020-0168",
]
[licenses]
# Deny unlicensed crates and those with a copyleft license
unlicensed = "deny"
copyleft = "deny"
default = "deny"
# By default, allow all licenses that are OSI or FSF approved
allow-osi-fsf-free = "both"
allow = [
"MPL-2.0",
"0BSD", # Used by `quoted_printable`
"OpenSSL", # Used by `ring`
"Unicode-DFS-2016", # Used by `unicode-ident`
]
deny = []
# 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 = "webpki-roots" }, # We, lettre and sqlx have different versions :(
{ name = "rustls-webpki" },
{ name = "syn", version = "1.0.109" }, # There are a few crates still depdending on the 1.x
{ name = "spin", version = "0.5.2" }, # lazy_static and ring 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 = "ordered-float", version = "2.10.0" }, # opentelemetry-jaeger -> thrift depends on the old version
{ name = "itertools", version = "0.10.5" }, # wasmtime & others depends on the old version
{ name = "idna", version = "0.3.0" }, # lettre depends on an old version
{ name = "hashbrown" }, # Too many versions :(
]
skip-tree = [
# Let's ignore wiremock for now, we want to get rid of it
{ name = "wiremock", depth = 3 },
{ name = "rustix", version = "0.37.23", depth = 2 }, # wasmtime depends on the old version
{ name = "darling", version = "0.14.4", depth = 2 }, # sea-query-attr depends on an old version
]
# 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"]