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.
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