# cargo-deny configuration
# https://embarkstudios.github.io/cargo-deny/

[graph]
targets = [
    "x86_64-unknown-linux-gnu",
    "x86_64-unknown-linux-musl",
    "aarch64-unknown-linux-gnu",
    "aarch64-unknown-linux-musl",
    "x86_64-apple-darwin",
    "aarch64-apple-darwin",
    "x86_64-pc-windows-msvc",
]

# Advisories — checks for known vulnerable crate versions
[advisories]
ignore = []
db-urls = ["https://github.com/rustsec/advisory-db"]

# Licenses — allowlist of acceptable licenses
[licenses]
allow = [
    "Apache-2.0",
    "Apache-2.0 WITH LLVM-exception",
    "MIT",
    "BSD-2-Clause",
    "BSD-3-Clause",
    "ISC",
    "Unicode-3.0",
    "Unicode-DFS-2016",
    "Zlib",
    "OpenSSL",
    "MPL-2.0",
    "CC0-1.0",
    "BSL-1.0",
]

# Bans — reject problematic and duplicate crates
[bans]
multiple-versions = "warn"
wildcards = "deny"
deny = []

# Sources — restrict where crates can come from
[sources]
unknown-registry = "deny"
unknown-git = "deny"
allow-registry = ["https://github.com/rust-lang/crates.io-index", "https://index.crates.io/"]
allow-git = []
