<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apt, branch 2.9.6</title>
<subtitle>Debians commandline package manager</subtitle>
<id>https://git.kalnischkies.de/apt/atom?h=2.9.6</id>
<link rel='self' href='https://git.kalnischkies.de/apt/atom?h=2.9.6'/>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/'/>
<updated>2024-07-02T20:28:51Z</updated>
<entry>
<title>Release 2.9.6</title>
<updated>2024-07-02T20:28:51Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2024-07-02T20:28:51Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=761852064521d9f34d3179c002427658342b6f03'/>
<id>urn:sha1:761852064521d9f34d3179c002427658342b6f03</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Merge branch 'solver3' into 'main'</title>
<updated>2024-07-02T18:41:22Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2024-07-02T18:41:22Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=69babfd1422be8b75586b7c1576720dc18813808'/>
<id>urn:sha1:69babfd1422be8b75586b7c1576720dc18813808</id>
<content type='text'>
Fixes for the Obsolete handling

See merge request apt-team/apt!361</content>
</entry>
<entry>
<title>solver3: Formatting cleanup</title>
<updated>2024-07-02T18:10:33Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2024-07-02T16:56:40Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=a16350427b8ce3865d2f11e637952210d34ee410'/>
<id>urn:sha1:a16350427b8ce3865d2f11e637952210d34ee410</id>
<content type='text'>
Run clang-format
</content>
</entry>
<entry>
<title>solver3: Only demote obsolete packages in choices for upgrades</title>
<updated>2024-07-02T18:10:33Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2024-07-02T16:53:33Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=ae141932d8b434098e3f77c75c428ca8caff9a6e'/>
<id>urn:sha1:ae141932d8b434098e3f77c75c428ca8caff9a6e</id>
<content type='text'>
If we are not upgraded, we should continue to keep the installed
package installed if possible.
</content>
</entry>
<entry>
<title>solver3: Consider packages as obsolete and not versions</title>
<updated>2024-07-02T18:08:38Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2024-07-02T16:51:11Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=8c13d9cb1c38ebb52cf6e1c8c7561c5c5d87c970'/>
<id>urn:sha1:8c13d9cb1c38ebb52cf6e1c8c7561c5c5d87c970</id>
<content type='text'>
This makes more sense, as all package versions are obsolete that
are not the candidate, usually.

Pay special attention to no-strict-pinning: If we don't have
strict pinning, a package without a candidate version may still
be non-obsolete if the latest version is not obsolete.

Likewise, in no-strict-pinning any later source version that exists
will cause the package to be considered obsolete, rather than just
candidates.
</content>
</entry>
<entry>
<title>Merge branch 'solver3-refactor-from' into 'main'</title>
<updated>2024-07-01T20:36:21Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2024-07-01T20:36:21Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=b2b59c85fa451ff232bc6400da732bb286b1cc0f'/>
<id>urn:sha1:b2b59c85fa451ff232bc6400da732bb286b1cc0f</id>
<content type='text'>
Rewrite the FromDepCache method to be smaller and more correct

See merge request apt-team/apt!360</content>
</entry>
<entry>
<title>solver3: Refactor (rewrite) FromDepCache()</title>
<updated>2024-07-01T19:49:26Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2024-06-13T15:55:10Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=b69f11fac9f4df52726ea7ac4f2c5920b7f71ccb'/>
<id>urn:sha1:b69f11fac9f4df52726ea7ac4f2c5920b7f71ccb</id>
<content type='text'>
Refactor the various Install requests into a single one and move
some stuff around, this should be a bit easier to maintain and
we don't repeat ourselves all the time.

This accidentally uncovered some bugs in the code, that get fixed
by this:

- The UpgradeManual and InstallManual groups did not work correctly,
  Essential packages were Install and others were Upgrade.

- Automatically installed packages falsely got promoted to the
  manual groups as they got promoted into the manual code path,
  whenever we ran without allowing their removal.

- The combination of --mark-auto --auto-remove now works correctly

  We previously skipped the installation of automatically installed
  packages when we did autoremoval, but we did not consider if the
  action was protected, that is specified on the command-line.

  Now we do not autoremove protected actions, and have added a test
  case for it.

- The AllowRemoveManual option no longer is applied if removals are
  generally denied.

Closes: #1071519
</content>
</entry>
<entry>
<title>solver3: Unmark packages before setting any in ToDepCache</title>
<updated>2024-07-01T15:15:54Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2024-06-13T15:54:13Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=7217910e75ce32938d28f9d653dec6b1d18e05b7'/>
<id>urn:sha1:7217910e75ce32938d28f9d653dec6b1d18e05b7</id>
<content type='text'>
We should set the Mark/Garbage flags for all packages so we don't
end up in an inconsistent state, so reset the flags for each package
before evaluating further.
</content>
</entry>
<entry>
<title>Merge branch 'solver3-replaces-are-not-really-deps' into 'main'</title>
<updated>2024-07-01T15:07:19Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2024-07-01T15:07:19Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=0b40f9f49b2396c1daf8dc417042f74eee92f7e3'/>
<id>urn:sha1:0b40f9f49b2396c1daf8dc417042f74eee92f7e3</id>
<content type='text'>
solver3: Do not accidentally promote Replaces and Enhances to dependencies

See merge request apt-team/apt!359</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>
