<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apt/apt-private/private-install.cc, branch 2.7.4</title>
<subtitle>Debians commandline package manager</subtitle>
<id>https://git.kalnischkies.de/apt/atom?h=2.7.4</id>
<link rel='self' href='https://git.kalnischkies.de/apt/atom?h=2.7.4'/>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/'/>
<updated>2023-09-16T10:37:31Z</updated>
<entry>
<title>Only accept installs of usrmerge on unmerged-usr systems</title>
<updated>2023-09-16T10:37:31Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2023-09-16T10:34:48Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=99c888b5eabbb7008bf4451bc62c277f28bb925f'/>
<id>urn:sha1:99c888b5eabbb7008bf4451bc62c277f28bb925f</id>
<content type='text'>
As of bookworm, merged-usr is mandatory, and people got caught
in the crosshairs of the dpkg fsys-unmessusr debacle and inadvertently
reverted back to an unmerged configuration and continue to remain
on an unsupported system unknowingly.

Help them by erroring out when they are installing packages on /,
they are not in a chroot, and a usrmerge package is available.
</content>
</entry>
<entry>
<title>Add apt install,upgrade,... -U,--update options</title>
<updated>2023-05-02T13:16:54Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2023-04-11T14:37:51Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=3625351722e67903dc34993fe318e50863bd2d31'/>
<id>urn:sha1:3625351722e67903dc34993fe318e50863bd2d31</id>
<content type='text'>
This runs update before opening the cache and sources.list for
installing/upgrading.
</content>
</entry>
<entry>
<title>Respect users pkg order on `apt install` for resolving</title>
<updated>2022-09-02T21:37:58Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2022-09-02T09:07:58Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=e1f332324f81b589561a9d9bce8a55d4895f26ec'/>
<id>urn:sha1:e1f332324f81b589561a9d9bce8a55d4895f26ec</id>
<content type='text'>
The command line is evaluated in two steps: First all packages given
are marked for install and as a second step the resolver is started on
all of them in turn to get their dependencies installed.

This is done so a user can provide a non-default choice on the command
line and have it respected regardless of where on the command line it
appears.

On the other hand, the order in which dependencies are resolved can
matter, so instead of using a "random" order, we now do this in the
order given on the command line, so if you e.g. have a meta package
pulling in non-default choices and mention it first the choices are
respected predictably instead of depending on first appearance of the
package name while creating the binary cache.

I might have "broken" this more than a decade ago while introducing the
reworked command line parsing for Multi-Arch, which also brought in the
split into the two steps mentioned above which was the far more
impactful 'respect user choice' change. This one should hardly matter in
practice, but as the tests show, order can have surprising side effects.
</content>
</entry>
<entry>
<title>Avoid triggering unused variable ‘State’ in doAutoInstall</title>
<updated>2022-09-02T20:32:59Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2022-08-31T14:08:54Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=009cf61122b7a0ac22b541035a26e6092c9ac529'/>
<id>urn:sha1:009cf61122b7a0ac22b541035a26e6092c9ac529</id>
<content type='text'>
Reported-By: gcc
Gbp-Dch: Ignore
</content>
</entry>
<entry>
<title>Let the auto installer loose for non-broken packages too</title>
<updated>2022-07-11T14:37:35Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2022-07-08T11:37:41Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=e481022470322b50a3289d2397b42b6eeacfc6e7'/>
<id>urn:sha1:e481022470322b50a3289d2397b42b6eeacfc6e7</id>
<content type='text'>
Because the auto installer now also marks other binaries in the
package for upgrade, we do need to run it or we don't mark those
for upgrade.
</content>
</entry>
<entry>
<title>Spelling fixes</title>
<updated>2021-11-27T10:22:38Z</updated>
<author>
<name>Ville Skyttä</name>
<email>ville.skytta@iki.fi</email>
</author>
<published>2021-11-03T22:08:07Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=01eed4234440d82fc52c8186cf4268517bcd28bc'/>
<id>urn:sha1:01eed4234440d82fc52c8186cf4268517bcd28bc</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Require argument to remove essential packages, do not prompt</title>
<updated>2021-11-17T16:21:03Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2021-11-17T16:20:29Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=21cc694f55de7caede8dcef3831236b6ca855cd7'/>
<id>urn:sha1:21cc694f55de7caede8dcef3831236b6ca855cd7</id>
<content type='text'>
Let's make this one step harder.
</content>
</entry>
<entry>
<title>Check sources.list could be parsed before adding volatile files</title>
<updated>2021-07-01T09:34:04Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2021-07-01T09:34:04Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=690f6191a4332123a912c812a19a37cef253e90c'/>
<id>urn:sha1:690f6191a4332123a912c812a19a37cef253e90c</id>
<content type='text'>
We just used the pointer returned which might be nullptr, properly
call BuildSourceList() and check the result first.

Closes: #990518
</content>
</entry>
<entry>
<title>Merge branch 'pu/upgradecounter' into 'main'</title>
<updated>2021-04-29T08:28:08Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2021-04-29T08:28:08Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=a6cb741a2cd1fa132705f8f5644872fc9708fb68'/>
<id>urn:sha1:a6cb741a2cd1fa132705f8f5644872fc9708fb68</id>
<content type='text'>
Count uninstallable packages in "not upgraded"

See merge request apt-team/apt!169</content>
</entry>
<entry>
<title>Call MarkAndSweep only manually in apt-get for autoremove</title>
<updated>2021-04-26T11:00:24Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2021-03-18T16:37:49Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=d6f3458badf2cfea3ca7de7632ae31daff5742be'/>
<id>urn:sha1:d6f3458badf2cfea3ca7de7632ae31daff5742be</id>
<content type='text'>
An interactive tool like aptitude needs these flags current far more
often than we do as a user can see them in apt only in one very well
defined place – the autoremove display block – so we don't need to run
it up to four times while a normal "apt install" is processed as that is
just busywork.

The effect on runtime is minimal, as a single run doesn't take too long
anyhow, but it cuts down tremendously on debug output at the expense of
requiring some manual handholding.

This is opt-in so that aptitude doesn't need to change nor do we need to
change our own tools like "apt list" where it is working correctly as
intended.

A special flag and co is needed as we want to prevent the ActionGroup
inside pkgDepCache::Init to be inhibited already so we need to insert
ourselves while the DepCache is still in the process of being built.
This is also the reason why the debug output in some tests changed to
all unmarked, but that is fine as the marking could have been already
obsoleted by the actions taken, just inhibited by a proper action group.
</content>
</entry>
</feed>
