cmd/govulncheck/integration: make expectation check more robust When checking test expectations (packages of called vulnerabilities), we would use equality. Given that a requirement of integration checking is to query the Go vulnerability database, the expectations need to change from time to time. With the new support for UNREVIEWED, this is happening more and more. To address this, the CL here checks that the expected packages are a subset of what is detected with govulncheck. This will make the test more robust. The list of expected packages is anyhow long, so the coverage is good and we are still testing against the same live db. Change-Id: I49f73dc2094686253ae222bbe92144f87b2637a5 Reviewed-on: https://go-review.googlesource.com/c/vuln/+/593155 Reviewed-by: Maceo Thompson <maceothompson@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Go's support for vulnerability management includes tooling for analyzing your codebase and binaries to surface known vulnerabilities in your dependencies. This tooling is backed by the Go vulnerability database, which is curated by the Go security team. Go’s tooling reduces noise in your results by only surfacing vulnerabilities in functions that your code is actually calling.
You can install the latest version of govulncheck using go install
go install golang.org/x/vuln/cmd/govulncheck@latest
Then, run govulncheck inside your module:
govulncheck ./...
See the govulncheck tutorial to get started, and https://go.dev/security/vuln for more information about Go's support for vulnerability management. The API documentation can be found at https://pkg.go.dev/golang.org/x/vuln/scan.
The privacy policy for govulncheck can be found at https://vuln.go.dev/privacy.
Unless otherwise noted, the Go source files are distributed under the BSD-style license found in the LICENSE file.
Database entries available at https://vuln.go.dev are distributed under the terms of the CC-BY 4.0 license.