All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
gix
v0.60. This fixes build issues due to a semver-incompatible change in the interaction of gix
and tame-index
.fix
module. (#1113)Cargo.lock
as opposed to Cargo.toml
, and performs only semver-compatible upgrades.cargo update
, migrating away from the unmaintained cargo-edit-9
crate.fix
feature is removed and the module is always enabled now that it requires no additional dependencies.tame-index
0.9.3 or later, which fixes issues with some enterprise firewalls. (#1103)schema_version
field to OsvAdvisory
Deserialize
implementation for OsvAdvisory
OsvAdvisory
contentgix
to 0.58.x and tame-index
to 0.9.x (#1099)gix
to 0.55.x and tame-index
to 0.8.x (#1061)CachedIndex
now acquires the global Cargo package lock. This was necessary to avoid racing with Cargo when updating crates.io index via Git or writing sparse index entries. Note that this also prevents most Cargo operations for the current user until CachedIndex
is dropped. (#1032)gix
crate is now used in the max-performance-safe
configuration, enabling multi-threading. (#1045)Severity
type now implements Hash
(#1042)tame-index
0.6.0 and gix
0.53.1 to fix a vulnerability in gix
, see RUSTSEC-2023-0064 (#1015)affected
field to Warning
, to communicate e.g. warnings specific to a particular platform. (#964)license
field to the advisory format in preparation for data import from GHSA. (#682)CommitHash
type to represent git commit hashes independently from the git implementation used. (#961)fix
feature is not yet converted; enabling it will pull in OpenSSL.libgit2
to gitoxide
as the git implementation. (#925)crates-index
to tame-index
for crates.io access. (#923)rustsec::registry::Index
because it is impractically slow when the sparse crates.io index is used. Use rustsec::registry::CachedIndex
instead. (#923)rustsec::registry::CachedIndex.is_yanked()
. Use .find_yanked()
instead. Checking a large number of crates at once is orders of magnitude faster when using the sparse index. (#937)From
implementations from rustsec::Error
to avoid tying rustsec
SemVer to that of dependency crates. This should result in less frequent SemVer bumps for rustsec
in the future. (#961)rustsec
can now be used in Alpine Linux containers (#466).rustsec
running in parallel can now fetch Git repositories without races (#490).cargo-lock
v9.0.0, which enables support for sparse registries.cargo-edit
v0.9.x to fix CVE-2023-22742 in the transitive dependency libgit2-sys
(#831)registry::CachedIndex
now correctly handles invalid semver versions in crates.io registry, which crates.io allows for some reason (#762)registry::CachedIndex
which is orders of magnitude faster than registry::Index
when scanning multiple Cargo.lock
files or binaries (#730)withdrawn
(#642)yanked
(#631)git2
dependency to v0.14; MSRV 1.57 (#524)platforms
dependency to v3.0 (#532)Query::crate_scope()
as the Default
(#544)cvss
dependency to v2.0 (#550)cargo-lock
dependency to v8.0 (#561)warnings
module; rename WarningKind
(#572)advisory::id
module; rename IdKind
(#573)platforms
dependency to v2.0.0 (#485)cargo-edit
dependency from 0.7.0 to 0.8.0 (#439)advisory::id::Kind
lowercase (#471)pub
; re-export type from parent (#478)vendored-libgit2
feature (#432)~
and =
operators in version specification (#402)crates-index
from 0.16.7 to 0.17.0 (#403)cargo-lock
to v7.0 (#379)master
branch to main
references
as a URL list[advisory]
tablethread-safety
categoryreferences
field to related
url
crate to parse metadata URLsmol_str
to v0.1.17; MSRV 1.46+chrono
with humantime
SystemTime
instead of a git::Timestamp
typefetch
Cargo feature to git
repository::GitRepository
to repository::git::Repository
markdown
featureAdvisory
and VulnerabilityInfo
fetch
featurecargo-lock
to v6; semver
to v0.11advisory.title
and advisory.description
struct fieldsadvisory::parser
module as pub
cargo-edit
to 0.7.0crates-index
from 0.15.4 to 0.16.0advisory
: laxer function path handlinglinter
: fully deprecate obsolete
in favor of yanked
advisory
: markdown
feature and Advisory::description_html
linter
: add support for V3 advisory formatplatforms
crate to v1linter
: correctly handle crates with dashes in namesadvisory.metadata.title
and advisory.metadata.description
year
, month
, and day
methods to advisory::Date
unsound
informational advisory kindcrates-index
from 0.14 to 0.15obsolete
advisories to yanked
warning::Kind::Informational
to ::Notice
warning::Kind
a #[non_exhausive]
enumInformational
a #[non_exhausive]
enumpatched_versions
and unaffected_versions
advisory::Id::numerical_part()
WarningInfo
into a simple type aliaslibgit2
dynamicallyWarningInfo
and modify Warning
structcargo-audit
cargo-lock
requirement from 3.0 to 4.0cargo audit fix
logic into Fixer
vendored-openssl
featuresupport.toml
parsing>
version requirementsinformational
as an allowable [advisory]
keyauthentication
modulecargo-lock
crate v3.0cargo-lock
crate v2.0Vulnerability
cvss
crate v1.0cargo-lock
crate v1.0cargo-lock
craterustsec::db
module to rustsec::database
affected_functions()
rustsec::advisory::Linter
report
module and built-in report-generatingrust
advisory directory from RustSec/advisory-db
support.toml
for indicating supported versionsrustsec::advisory::Category
[affected]
and [versions]
sectionscvss
field with CVSS v3.1 scorehome
, remove directories
and failure
Version
and VersionReq
newtypesadvisory::paths::*
platforms
crate to v0.2affected_functions
as affected_paths
affected_functions
advisory attributeunaffected_versions
advisory-db
repo diradvisory-db
into existing, empty dirplatforms
crate for platform-related functionalityAdvisoryId::new()
to parse RUSTSEC-0000-0000
--no-default-features
readme
attributeAdvisoryIdKind
and limited support for parsing advisory IDsVulnerabilities
collection struct.toml
files rather than Advisories.tomlgit2
-based fetcher for advisory-db
Cargo.lock
filesfailure
crate for error handlingsemver::Version
for lockfile::Package
versionsAdvisoryDatabase
under the ::db
moduleAdvisoryDatabase::fetch_from_url()
advisory
and error
modules publicAdvisoryDatabase::find_vulns_for_crate()
AdvisoryDatabase::find_vulns_for_crate()
crate_name
TOML attribute back to package
package
TOML attribute to crate_name
AdvisoryDatabase