Prepare for v0.68.0 #9713
DmitriyLewen
started this conversation in
Development
Replies: 1 comment 1 reply
-
|
A gentle poke - is a new release in the making? |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Draft to collaborate on v0.68.0
📑 Table of Contents
--cacertflag ⛔🚀 What's new? 🚀
🗄️ Concurrent Vulnerability DB Access ⚡
Trivy’s vulnerability database is now opened in read-only mode, allowing multiple Trivy processes to access the same database concurrently without running into lock timeouts. This is especially useful when running parallel scans or using Trivy in multi-process environments.
When using in-memory caching (e.g., fs, rootfs, config, sbom) or Redis caching, scans can run entirely in parallel without contention.
When using the filesystem cache (e.g, image, repo), cache files still involve write operations, so file locks may occur. Parallelism is therefore limited by cache writes, not the vulnerability database.
Summary
Usage
🧩 Report Metadata Enhancements 📊
This release introduces new fields to the Trivy report format, improving traceability, consistency, and clarity across scan outputs.
Summary of Changes
ReportID— Introduces a UUID (v7) that uniquely identifies each individual scan report, enabling correlation acrossArtifactID— Provides a consistent, unique identifier for the scanned artifact (e.g., image, repository, or filesystem).systems.
Metadata.Reference— Captures the exact image reference used during the scan (e.g.,alpine:3.20), offering clearer context without ambiguity.Together, these additions make it easier to track scan origins, correlate results in external systems, and ensure reports remain uniquely identifiable — even when multiple scans target the same artifact.
Example Output
{ "SchemaVersion": 2, "ReportID": "278d4718-2366-46d0-8525-fc288c4eb5f9", "ArtifactID": "sha256:055936d39205...", "ArtifactName": "debian:11", "ArtifactType": "container_image", "Metadata": { "ImageID": "sha256:e7b300aee9f9b...", "Reference": "debian:11", "RepoTags": ["debian:latest", "debian:11"] } }Usage
These fields are automatically included in JSON and table outputs.
No user action is required to enable them.
🐳 Docker Archive RepoTags Support 🏷️
Trivy now preserves image repository tags when scanning Docker archives (
.tarfiles).This enhancement applies automatically when scanning Docker archives created via:
docker saveskopeo copy docker://... docker-archive:...Before
After
🧩 Change Artifact Type for Git Repositories 📁
When scanning a directory using
trivy fs, Trivy now automatically sets the artifact type torepositoryif the target is a Git repository. This behavior is automatic — no configuration needed.Summary of Changes
ArtifactTypefromfilesystem→repositorywhen Git information is found.filesystem.Example
Before
{ "ArtifactType": "filesystem", "Metadata": { "RepoURL": "https://github.com/aquasecurity/trivy-test-repo/", "Branch": "main", "Tags": ["v0.0.1"], "Commit": "8a19b492a589955c3e70c6ad8efd1e4ec6ae0d35", "CommitMsg": "Update README.md", "Author": "Teppei Fukuda <[email protected]>", "Committer": "GitHub <[email protected]>" } }After
{ "ArtifactType": "repository", "Metadata": { "RepoURL": "https://github.com/aquasecurity/trivy-test-repo/", "Branch": "main", "Tags": ["v0.0.1"], "Commit": "8a19b492a589955c3e70c6ad8efd1e4ec6ae0d35", "CommitMsg": "Update README.md", "Author": "Teppei Fukuda <[email protected]>", "Committer": "GitHub <[email protected]>" } }🧬 Vulnerability Fingerprint Generation 🆔
Trivy now generates unique fingerprints for each detected vulnerability, enabling consistent tracking across multiple scans.
Each fingerprint is a deterministic SHA256 digest derived from:
The resulting value uses the
sha256:prefix, consistent with Docker/OCI digest notation.Example
🌳 Dependency tree for .NET *.deps.json files 📦
Trivy can now build a dependency tree for .NET *.deps.json files.
It also detects the project’s package (RootRelationship), as well as direct and indirect dependencies.
Thanks to @alexinslc
⚙️ Remote repositories from settings.xml files 🫙
Trivy now uses remote repositories from
settings.xmlfiles when scanningpom.xmlfiles.Thanks to @ricardo-kh
📜 Separate SPDX IDs can be use in ignore SPDX expression 🪪
It’s no longer necessary to specify each SPDX expression individually to ignore them.
You can specify all included SPDX IDs, and if Trivy finds all of them in an expression, it’ll ignore that license.
For example you can use
--ignored-licenses LGPLv2+,MITto ignoreMIT AND GPL-2.0-or-laterexpression.Thanks to @yutatokoi
🏴 New
--cacertflag ⛔Unfortunately, the
SSL_CERT_FILEenvironment variable works only on Unix systems other than macOS.That’s why we added the
--cacertflag, which allows you to specify the path to a PEM-encoded CA certificate file on any OS.🪪 SPDX Attestation Support Added 🧷
Trivy now supports reading SBOM attestations in SPDX 2.3 format — specifically when wrapped as a DSSE (in-toto) envelope. This expands the input formats for SBOM scanning.
Usage
When you have an SPDX SBOM wrapped in DSSE/in-toto format, simply run:
The scanner will correctly parse the SPDX structure, allowing vulnerability scanning of SPDX-based SBOMs.
🧾 SBOM files wrapped in a Sigstore bundle support 🔐
Trivy can now extract and analyze SBOM files wrapped in a Sigstore bundle, as introduced in Sigstore v3+.
Thanks to @RingoDev
Trivy can now limit the number of Rego compile errors during policy compilation. You can control this using the
--rego-error-limitflag. If the number of errors exceeds the specified limit, Trivy will stop the scan. Setting--rego-error-limit 0enforces strict checking and disallows any compile errors.The default value is defined internally via CompileErrorLimit.
🧩 More accurate YAML snippets in diagnostics ✅
Trivy now captures the correct start line for map nodes in YAML manifests. Previously, snippets began at the first value and did not include the key, which could make diagnostics less clear.
Before:
After:
🏎️ Performance 🏎️
👷♂️ Notable Fixes 🛠️
--detection-priority comprehensiveflag. #9609 Thanks to @raghur-orcatrueas default value for Repository Release|Snapshot Enabled in pom.xml and settings.xml files #9751Beta Was this translation helpful? Give feedback.
All reactions