summaryrefslogtreecommitdiff
path: root/test/integration/test-solver3-obsoleted-by
Commit message (Collapse)AuthorAgeFilesLines
* solver3: Ignore Architecture: all for obsoleted-byJulian Andres Klode2025-06-101-2/+21
| | | | | | | | | | | | In case a new version of the source package is published, we check that if there's a newer binary for the same architecture and then consider the binary obsoleted. This logic did not properly account for Architecture: all packages which are considered as native architecture package with an "All" multi-arch flag set, and hence a native architecture package may inadvertently be considered obsoleted by a package that only built on Architecture: all.
* solver3: Do not prefer new installs over manually installed obsoletesJulian Andres Klode2025-03-091-0/+4
| | | | | | | | | | Only move obsolete packages last that are automatically installed, as we don't want to remove manually installed obsolete packages. Add some missing const annotations to the operator[] arguments as well that were needed. LP: #2100247
* solver3: Reject all non-candidates outright for strict pinningJulian Andres Klode2024-12-031-2/+5
| | | | | | | | Reimplement strict pinning by rejecting the non-candidates when translating the problem from the depcache to the solver. This is substantially better than restricting the list of alternatives for an or group to only include allowed ones for debugging purposes, albeit a bit slower.
* Fix obsoleted-by handling for experimentalJulian Andres Klode2024-08-121-0/+87
Basically this boils down to checking that the priority of the source candidate candidate is higher or equal than the priority of the package's candidate that is being under consideration. It stands to reason if we maybe we should actually calculate a source candidate version; this will look similar but may perhaps perform slightly different.