Skip to content

Commit

Permalink
ci: Set up cargo-deny
Browse files Browse the repository at this point in the history
  • Loading branch information
torokati44 committed Oct 23, 2023
1 parent 7b3ae30 commit 2fcbba4
Show file tree
Hide file tree
Showing 2 changed files with 76 additions and 0 deletions.
4 changes: 4 additions & 0 deletions .github/workflows/test_rust.yml
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,10 @@ jobs:
# Don't fail the build for clippy on nightly, since we get a lot of false-positives
run: cargo clippy --all --all-features --tests ${{ (matrix.rust_version != 'nightly' && '-- -D warnings') || '' }}

- name: Check licensing and duplicates in used crates
if: ${{ runner.os == 'Linux' && matrix.rust_version == 'stable' }}
uses: EmbarkStudios/cargo-deny-action@v1

- name: Check documentation
run: cargo doc --no-deps --all-features
env:
Expand Down
72 changes: 72 additions & 0 deletions deny.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@

# If true, metadata will be collected with `--all-features`.
all-features = true

[licenses]
# The lint level for crates which do not have a detectable license
unlicensed = "deny"

# List of explicitly allowed licenses
allow = [
"MIT",
"Apache-2.0",
"Apache-2.0 WITH LLVM-exception",
"Zlib",
"BSD-2-Clause",
"BSD-3-Clause",
"ISC",
"Unicode-DFS-2016",
"MPL-2.0",
"BSL-1.0",
"CC0-1.0",
"OFL-1.1",
"LicenseRef-UFL-1.0",
]

# List of explicitly disallowed licenses
deny = [
"GPL-1.0",
"GPL-2.0",
"GPL-3.0",
]

# Some crates don't have (easily) machine readable licensing information,
# adding a clarification entry for it allows you to manually specify the
# licensing information.

# Some parts of NihAV were kindly relicenced for us under MIT by the author.
# See: https://codecs.multimedia.cx/nihav-relicensed-code/
[[licenses.clarify]]
name = "nihav_core"
expression = "MIT"
license-files = []

[[licenses.clarify]]
name = "nihav_duck"
expression = "MIT"
license-files = []

[[licenses.clarify]]
name = "nihav_codec_support"
expression = "MIT"
license-files = []

[bans]
# Lint level for when multiple versions of the same crate are detected
multiple-versions = "warn"

[sources]
# Lint level for what to happen when a crate from a crate registry that is not
# in the allow list is encountered
unknown-registry = "warn"
# Lint level for what to happen when a crate from a git repository that is not
# in the allow list is encountered
unknown-git = "warn"

[sources.allow-org]
# github.com organizations to allow git sources for
github = [
"ruffle-rs",
"kyren",
"gfx-rs",
]

0 comments on commit 2fcbba4

Please sign in to comment.