Skip to content

Releases: EmbarkStudios/cargo-deny

0.16.3

28 Nov 13:23
Compare
Choose a tag to compare

Changed

  • PR#721 updated rust-version to 1.81.0 to accurately reflect the minimum rust version required to compile, resolving #720.
  • PR#722 updated the SPDX license list to 3.25.0.

Fixed

  • PR#726 resolved #725 by adding the unnecessary-skip diagnostic, emitted when there is a skip configured for a crate that only has one version in the graph.

0.16.2

15 Nov 09:32
Compare
Choose a tag to compare

Fixed

  • PR#703 resolved #696 by no longer emitting errors when failing to deserialize deprecated fields, and removed some lingering documentation that wasn't removed in PR#611.
  • PR#719 updated to krates -> 0.17.5, fixing an issue where cargo-deny could panic due to incorrectly resolving features for different versions of the same crate referenced by a single crate.
  • PR#719 resolved #706 by removing a warning issued when users use ignored scheme modifiers for source urls.
  • PR#719 resolved #718 by updating the book with missing arguments.

Added

  • PR#715 resolved #714 by adding support for Edition 2024. Thanks @kpcyrd!
  • PR#710 resolved #708 by allowing for unpublished workspace crates to be excluded from the dependency graph that checks are run against, either via the --exclude-unpublished CLI argument or the graph.exclude-unpublished config field. Thanks @Tastaturtaste!

Changed

  • PR#711 updated goblin -> 0.9.2
  • PR#713 updated various crates, notably rustsec -> 0.30.

0.16.1

05 Aug 11:08
Compare
Choose a tag to compare

Fixed

  • PR#691 fixed an issue where workspace dependencies that used the current dir '.' path component would incorrectly trigger the unused-workspace-dependency lint.

0.16.0

02 Aug 12:24
Compare
Choose a tag to compare

Removed

  • PR#681 finished the deprecation introduced in PR#611, making the usage of the deprecated fields into errors.

[advisories]

The following fields have all been removed in favor of denying all advisories by default. To ignore an advisory the ignore field can be used as before.

  • vulnerability - Vulnerability advisories are now deny by default
  • unmaintained - Unmaintained advisories are now deny by default
  • unsound - Unsound advisories are now deny by default
  • notice - Notice advisories are now deny by default
  • severity-threshold - The severity of vulnerabilities is now irrelevant

[licenses]

The following fields have all been removed in favor of denying all licenses that are not explicitly allowed via either allow or exceptions.

  • unlicensed - Crates whose license(s) cannot be confidently determined are now always errors. The clarify field can be used to help cargo-deny determine the license.
  • allow-osi-fsf-free - The OSI/FSF Free attributes are now irrelevant, only whether it is explicitly allowed.
  • copyleft - The copyleft attribute is now irrelevant, only whether it is explicitly allowed.
  • default - The default is now deny.
  • deny - All licenses are now denied by default, this field added nothing.

Changed

  • PR#685 follows up on PR#673, moving the fields that were added to their own separate bans.workspace-dependencies section. This is an unannounced breaking change but is fairly minor and 0.15.0 was never released on github actions so the amount of people affected by this will be (hopefully) small. This also makes the workspace duplicate detection off by default since the field is optional, but makes it so that if not specified workspace duplicates are now deny instead of warn.

Fixed

  • PR#685 resolved #682 by adding the include-path-dependencies field, allowing path dependencies to be ignored if it is false.

0.15.1

26 Jul 14:47
Compare
Choose a tag to compare

Fixed

  • PR#681 fixed #680 by always stripping .git from urls when matching sources to resolved nodes as they are allowed, but (generally) have no semantic meaning and are stripped by cargo when emitting metadata.

0.15.0

25 Jul 16:10
Compare
Choose a tag to compare

Added

  • PR#673 added linting of [workspace.dependencies], resolving #436 and #525.
    • Added lint workspace-duplicates, which allows checking for missing usage of workspace = true for direct workspace dependencies that are used more than once in the workspace.
    • Added lint unused-workspace-dependencies, which allows checking for dependencies declared in [workspace.dependencies] that aren't actually used.

Changed

  • PR#673 changed how span information for workspace dependencies worked, which meant improvements were made to the output for the bans.wildcards lint. Previously fake cargo manifests were created that weren't even necessarily valid toml files, however now the actual cargo manifests are used, meaning that the lint will now point to the correct file and line location of the dependency declaration that uses a wildcard.
  • PR#675 changed the utf-8 characters used in rendering diagnostics, inspired by rust-lang/rust#126597.
  • PR#676 updated crates notably gix -> 0.64 (and tame-index).

Fixed

  • PR#668 resolved #667 by adding a missing feature flag to allow local cargo registry support.

0.14.24

24 May 08:48
Compare
Choose a tag to compare

Changed

  • PR#663 updated some crates, notably gix -> 0.63 (and tame-index).5

0.14.23

03 May 14:43
Compare
Choose a tag to compare

Fixed

  • PR#657 resolved #652 by fixing an issue where the exit code was incorrect if logging was disabled.

Added

  • PR#659 adding publishing of aarch64-unknown-linux-musl binaries.

0.14.22

23 Apr 07:50
Compare
Choose a tag to compare

Changed

  • PR#653 updated jobserver -> 0.1.30
  • PR#656 updated gix -> 0.62.0, reqwest -> 0.12.4, tame-index -> 0.11.0

0.14.21

12 Apr 10:29
Compare
Choose a tag to compare

Fixed

  • PR#643 resolved #629 by making the hosted git (github, gitlab, bitbucket) org/user name comparison case-insensitive. Thanks @pmnlla!
  • PR#649 fixed an issue where depending on the same crate multiple times by using different cfg()/triple targets could cause features to be resolved incorrectly and thus crates to be not pulled into the graph used for checking.