<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apt/apt-pkg/depcache.h, branch 1.0.9.5</title>
<subtitle>Debians commandline package manager</subtitle>
<id>https://git.kalnischkies.de/apt/atom?h=1.0.9.5</id>
<link rel='self' href='https://git.kalnischkies.de/apt/atom?h=1.0.9.5'/>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/'/>
<updated>2014-03-23T11:38:43Z</updated>
<entry>
<title>discard candidates via IsInstallOk to allow override</title>
<updated>2014-03-23T11:38:43Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2014-03-11T09:31:44Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=21b3eac8f9ab8e12b43fa8998a5aa5465f29adc5'/>
<id>urn:sha1:21b3eac8f9ab8e12b43fa8998a5aa5465f29adc5</id>
<content type='text'>
In commit 446551c8 I changed MarkInstall to discard the candidate if the
candidate can't satisfy the dependency. This breaks interactive solvers
like aptitude which can change the candidate on-the-fly later.

In commit df77d8a5 I introduced this 'early' loop-breaking to begin with
which can't be that helpful for interactive solvers as well, but makes
perfect sense for non-interactives to stop them from exploring trees
which can't be satisfied, but it isn't perfect as ideally we would check
this before auto-installing the first dependency.

This commit therefore moves the loop into its own IsInstallOk hook so
that frontends can override this check if they want to and in exchange
removes the loop-breaking from MarkInstall itself and does it before any
dependency is installed.

Closes: 740750
</content>
</entry>
<entry>
<title>follow method attribute suggestions by gcc</title>
<updated>2014-03-13T12:58:45Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2014-03-05T23:33:10Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=a02db58fd50ef7fc2f0284852c6b3f98e458a232'/>
<id>urn:sha1:a02db58fd50ef7fc2f0284852c6b3f98e458a232</id>
<content type='text'>
Git-Dch: Ignore
Reported-By: gcc -Wsuggest-attribute={pure,const,noreturn}
</content>
</entry>
<entry>
<title>cleanup headers and especially #includes everywhere</title>
<updated>2014-03-13T12:58:45Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2014-03-05T21:11:25Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=453b82a388013e522b3a1b9fcd6ed0810dab1f4f'/>
<id>urn:sha1:453b82a388013e522b3a1b9fcd6ed0810dab1f4f</id>
<content type='text'>
Beside being a bit cleaner it hopefully also resolves oddball problems
I have with high levels of parallel jobs.

Git-Dch: Ignore
Reported-By: iwyu (include-what-you-use)
</content>
</entry>
<entry>
<title>warning: unused parameter ‘foo’ [-Wunused-parameter]</title>
<updated>2014-03-13T12:58:45Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2014-03-01T14:11:42Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=655122418d714f342b5d9789f45f8035f3fe8b9a'/>
<id>urn:sha1:655122418d714f342b5d9789f45f8035f3fe8b9a</id>
<content type='text'>
Reported-By: gcc -Wunused-parameter
Git-Dch: Ignore
</content>
</entry>
<entry>
<title>make doxygen more quiet, fix issues and disable latex</title>
<updated>2014-03-13T12:58:45Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2014-02-25T21:10:40Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=255c9e4b74fe677d723c51d3450869ad45ca5463'/>
<id>urn:sha1:255c9e4b74fe677d723c51d3450869ad45ca5463</id>
<content type='text'>
Git-Dch: Ignore
</content>
</entry>
<entry>
<title>Fix typos in documentation (codespell)</title>
<updated>2014-02-22T17:34:33Z</updated>
<author>
<name>Michael Vogt</name>
<email>mvo@debian.org</email>
</author>
<published>2014-02-22T17:34:33Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=1e3f4083db29bba600b9725e9456b0e140975c99'/>
<id>urn:sha1:1e3f4083db29bba600b9725e9456b0e140975c99</id>
<content type='text'>
</content>
</entry>
<entry>
<title>don't consider holds for autoremoval</title>
<updated>2013-10-01T09:17:26Z</updated>
<author>
<name>David Kalnischkies</name>
<email>kalnischkies@gmail.com</email>
</author>
<published>2013-09-30T16:51:40Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=8fa042ca39dcb39d544f015f4a924c5dbc10ad2c'/>
<id>urn:sha1:8fa042ca39dcb39d544f015f4a924c5dbc10ad2c</id>
<content type='text'>
We can't remove packages which are held back by the user with a hold, so
marking them (or its dependencies) as garbage will lead our autoremover
into madness – and given that the package is important enough that the
user has held it back it can't be garbage (at least at the moment), so
even if a front-end wants to use the info just for information display
its a good idea to not consider it garbage for them.

Closes: 724995
</content>
</entry>
<entry>
<title>prevent MarkInstall of unsynced Multi-Arch:same siblings</title>
<updated>2013-07-11T16:42:54Z</updated>
<author>
<name>David Kalnischkies</name>
<email>kalnischkies@gmail.com</email>
</author>
<published>2013-07-10T11:06:05Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=486d190d3c66bb7271509dc002f8ec9e9eb0166c'/>
<id>urn:sha1:486d190d3c66bb7271509dc002f8ec9e9eb0166c</id>
<content type='text'>
Multi-Arch: same packages can be co-installed, but need to have the same
version for all installed packages (aka "siblings"). Otherwise the
unsynced versions will fight against each other and the auto-install as
wel as the problem resolver will later have to decide between holding the
packages or to remove one of the siblings (usually a foreign) taking a
bunch of packages (like the entire foreign setup) with them.

The idea here is now to be more pro-active: MarkInstall will fail for
a package if the siblings aren't synced, so we don't allow a situation
in which a resolver has to decide if to hold or to remove-upgrade under
the assumption that the remove-upgrade decision is always wrong and
doesn't deserve to be explored (expect valid out-of-syncs of course).

Thats a pretty bold move to take for a library which is used by
different solvers so this check is done in IsInstallOk and can be
overridden if front-ends want to.
</content>
</entry>
<entry>
<title>revert 2184.1.3: forward declaration instead of headers</title>
<updated>2011-12-13T00:22:38Z</updated>
<author>
<name>David Kalnischkies</name>
<email>kalnischkies@gmail.com</email>
</author>
<published>2011-12-13T00:22:38Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=b9dadc24b9477b466bc8058c765d76c65ecc7125'/>
<id>urn:sha1:b9dadc24b9477b466bc8058c765d76c65ecc7125</id>
<content type='text'>
The breakage is just to big for now, so guard the change with
#ifndef APT_8_CLEANER_HEADERS and be nice to library users
</content>
</entry>
<entry>
<title>use forward declaration in headers if possible instead of includes</title>
<updated>2011-09-19T17:14:19Z</updated>
<author>
<name>David Kalnischkies</name>
<email>kalnischkies@gmail.com</email>
</author>
<published>2011-09-19T17:14:19Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=472ff00ef2e48383805d281c6364ec27839e3f4d'/>
<id>urn:sha1:472ff00ef2e48383805d281c6364ec27839e3f4d</id>
<content type='text'>
</content>
</entry>
</feed>
