Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[bug] Version range without qualifiers creates ambiguous dependency retrieval #965

Closed
lumjjb opened this issue Jun 22, 2023 · 1 comment
Closed
Labels
bug Something isn't working

Comments

@lumjjb
Copy link
Contributor

lumjjb commented Jun 22, 2023

This issue was raised by @knrc

Today, Version ranges don’t have the ability to encode qualifiers, therefore, through a version range specified, it may be insufficient alone to retrieve the original package version used (with qualifiers and matching to hashes).

For example let's say we ingest SBOM 1 where
Artifact X1 --IsOccurrence--> Pkg X
Pkg X --IsDepedency { VersionRange: 1.3.0 }-> Pkg Y {Version 1.3.0, qualifiers: "OS=linux"} --IsOccurrence--> Artifact Y1

and we ingest SBOM 2 where
Artifact X2 --IsOccurrence--> Pkg X
Pkg X --IsDepedency { VersionRange: 1.3.0 }-> Pkg Y {Version 1.3.0, qualifiers: "OS=windows"} --IsOccurrence--> Artifact Y2

It would be impossible to be able to know just by retrieving and following the edges of Artifact X1 that it is using version 1.3.0 OS=linux instead of OS=windows. This introduces undifferentiatable ambiguity.

@lumjjb
Copy link
Contributor Author

lumjjb commented Apr 2, 2024

With #1125, this is no longer required since we can point directly to version nodes

@lumjjb lumjjb closed this as completed Apr 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant