Infer the package type from ELF package notes #3008
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is a follow up from #2939 and #2890 , fixing package type for packages discovered from ELF notes. Today all ELF packages are shown as binary packages, and though thats technically true, we should be honoring the package type that the ELF package notes list. This is also more useful downstream in Grype to match vulnerabilities.
This PR updates the behavior of when OS packages should override binary packages, specifically when there is a
.Metadata
that indicates that the package originated from a binary package. This allows us to deduplicate packages when we can, but allow for the binary package to remain in some cases.