<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apt/test/integration/test-solver3-dependencies, branch main</title>
<subtitle>Debians commandline package manager</subtitle>
<id>https://git.kalnischkies.de/apt/atom?h=main</id>
<link rel='self' href='https://git.kalnischkies.de/apt/atom?h=main'/>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/'/>
<updated>2024-12-02T10:37:16Z</updated>
<entry>
<title>solver3: Fix intransitivity of version comparison on upgrade</title>
<updated>2024-12-02T10:37:16Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2024-12-02T09:25:44Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=63721d8271430c1a0996c08cc96a3a7e6f69dc52'/>
<id>urn:sha1:63721d8271430c1a0996c08cc96a3a7e6f69dc52</id>
<content type='text'>
We only compared candidate to installed version, but candidate
should dominate all versions, otherwise we end up in the fancy
problem of elpa-notmuch in
  upgrade-noble-t64-remove-desktop-2024-03-29.edsp

Where we had three versions:

    not-installable 0.38.3-1ubuntu1
    candidate 0.38.2-1.1ubuntu2
    installed 0.38.2-1ubuntu2

And received an ordering:

    installed &gt; non-installable &gt; candidate

despite

    candidate &gt; installed

This is only visible with no-strict-pinning right now, as we are
otherwise filtering out invalid choices (and hence we only have
candidate and installed otherwise).
</content>
</entry>
<entry>
<title>solver3: Do not accidentally promote Replaces and Enhances to dependencies</title>
<updated>2024-07-01T14:28:53Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2024-07-01T14:27:15Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=b636668788fe8b1f7183b21eaf7b87f34209169e'/>
<id>urn:sha1:b636668788fe8b1f7183b21eaf7b87f34209169e</id>
<content type='text'>
As part of the refactoring, we allowed the code to work on unimportant
dependencies as we needed to promote Suggests to Depends if they are
currently satisfied.

However, Replaces and Enhances were not considered properly and both
are not negative dependencies so they were accidentally promoted to
Depends too if they were currently satisfied.
</content>
</entry>
</feed>
