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.
closes: #353
This PR addresses the following:
Previously, it was assumed that if decoding failed, the file format must be incorrect. However, decoding failures can occur for several reasons:
For example, a user-provided SBOM in JSON format with a content error (
newline characters
) was incorrectly assumed to be a non-JSON file because decoding failed. This was a misconception.To address this, the format is now validated first:
"{"
or"["
, it is identified as JSON.":"
or"-"
, it is identified as YAML.Once the format is determined, the corresponding switch-case for JSON or YAML is executed. Any subsequent decoding failures are correctly identified as content issues rather than format misidentification. This ensures more robust and accurate handling of SBOM files.