Resolve "Conan version ranges not handled properly by GitLab"
-
Please check this box if this contribution uses AI-generated content (including content generated by GitLab Duo features) as outlined in the GitLab DCO & CLA
What does this MR do and why?
Resolve issue #287819 (closed).
Remove the specific code to handle "singe package" search, as the assumptions to decide if only one package is needed are wrong. Instead we have only one service that manages all cases: one or multiple packages needed. I also merged the test cases.
Note about the issue:
The version range was not working because when looking for a version range, for example "hello/[~1.2.3] @gitlab-org+conan/stable", conan is calling search with a star for version: hello/* @gitlab-org+conan/stable. As we have a @, we were going to the simgle package service. This code was not handling stars, as it suppose we will always search for only one package.
The code was wrong in his assumption. It is not because there is a @ that we are looking for one package. This is why I merged both services in one.
MR acceptance checklist
Please evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.
Screenshots or screen recordings
Screenshots are required for UI changes, and strongly recommended for all other merge requests.
Before | After |
---|---|
How to set up and validate locally
Numbered steps to set up and validate the change are strongly suggested.
Related to #287819 (closed)