<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apt/test/integration/test-solver3-obsoleted-by, branch 3.1.3</title>
<subtitle>Debians commandline package manager</subtitle>
<id>https://git.kalnischkies.de/apt/atom?h=3.1.3</id>
<link rel='self' href='https://git.kalnischkies.de/apt/atom?h=3.1.3'/>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/'/>
<updated>2025-06-10T14:27:36Z</updated>
<entry>
<title>solver3: Ignore Architecture: all for obsoleted-by</title>
<updated>2025-06-10T14:27:36Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2025-06-10T09:47:41Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=15f48dcd65fb17a4cb4cd1f93b872b3bb810c3b2'/>
<id>urn:sha1:15f48dcd65fb17a4cb4cd1f93b872b3bb810c3b2</id>
<content type='text'>
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.
</content>
</entry>
<entry>
<title>solver3: Do not prefer new installs over manually installed obsoletes</title>
<updated>2025-03-09T13:53:53Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2025-03-09T13:52:53Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=5daf6dbfd272be2f8e3c59d4bab4be8c119b7aa1'/>
<id>urn:sha1:5daf6dbfd272be2f8e3c59d4bab4be8c119b7aa1</id>
<content type='text'>
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
</content>
</entry>
<entry>
<title>solver3: Reject all non-candidates outright for strict pinning</title>
<updated>2024-12-03T08:44:18Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2024-11-02T11:45:07Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=8f317d97c9fb821e839342ae445c824207678eb7'/>
<id>urn:sha1:8f317d97c9fb821e839342ae445c824207678eb7</id>
<content type='text'>
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.
</content>
</entry>
<entry>
<title>Fix obsoleted-by handling for experimental</title>
<updated>2024-08-12T14:05:54Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2024-08-12T13:27:31Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=5d2c0e600656db690aaeb0768f3df8e71127808a'/>
<id>urn:sha1:5d2c0e600656db690aaeb0768f3df8e71127808a</id>
<content type='text'>
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.
</content>
</entry>
</feed>
