<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apt/apt-pkg/cacheset.h, branch 1.3.1</title>
<subtitle>Debians commandline package manager</subtitle>
<id>https://git.kalnischkies.de/apt/atom?h=1.3.1</id>
<link rel='self' href='https://git.kalnischkies.de/apt/atom?h=1.3.1'/>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/'/>
<updated>2016-04-28T08:08:32Z</updated>
<entry>
<title>deprecate confusing Pkg.CandVersion() method</title>
<updated>2016-04-28T08:08:32Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2016-04-28T07:06:39Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=29636cc759c6fbb92c6c462c90611eefb67cbbd4'/>
<id>urn:sha1:29636cc759c6fbb92c6c462c90611eefb67cbbd4</id>
<content type='text'>
This method does not return the 'current' candidate of the DepCache
which would be most expected, but instead returns the version which
would be candidate in a default-only policy setting – aka ignoring
apt_preferences settings and co.
</content>
</entry>
<entry>
<title>add messages to our deprecation warnings in libapt</title>
<updated>2015-11-27T14:40:47Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2015-11-27T14:40:47Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=5dd00edbcf702cac1ea22392796c65881a8ef6f9'/>
<id>urn:sha1:5dd00edbcf702cac1ea22392796c65881a8ef6f9</id>
<content type='text'>
Git-Dch: Ignore
</content>
</entry>
<entry>
<title>add cacheset push_back wrapping for std::back_inserter</title>
<updated>2015-11-04T17:04:00Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2015-09-17T11:13:41Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=2fc9d1ebca203b4a159dba5e817081155099f6ab'/>
<id>urn:sha1:2fc9d1ebca203b4a159dba5e817081155099f6ab</id>
<content type='text'>
As usual by now, not all containers wrapped by the cacheset containers
support all methods, like push_back now, but they fail on use of these
unusable methods only.

Would be nice to not expose these methods for unsupporting containers at
all, but that means either a lot of classes or a lot of std::enable_if
magic, which seems like too big work for this small wrapper for now.

Git-Dch: Ignore
</content>
</entry>
<entry>
<title>implement operator* for cacheset iterators</title>
<updated>2015-11-04T17:04:00Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2015-09-17T08:50:30Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=b2a893dda28aea05128394cd61c7ce38cfa0624b'/>
<id>urn:sha1:b2a893dda28aea05128394cd61c7ce38cfa0624b</id>
<content type='text'>
Technically an abi-break as we change a template parameter to
std::iterator for this, but this class is empty in all instances and
just causes the right typedefs to be set – which were incorrect as
detected by std::stable_partition as its implementation uses ::pointer
and needs also a operator* implementation.

In practice CacheSets have no external users (yet) and the difference is
visible only at compile time (which was an error before and now works),
not while linking.

The changes to apt-mark are functionally identical to the code before,
just that we use a std:: algorithm now instead of trying hard on our
own.
</content>
</entry>
<entry>
<title>cacheset: Fix compilation on new GCC in C++98 mode</title>
<updated>2015-10-30T14:17:59Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2015-10-30T13:54:18Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=2c1e4917d9fac693033723742ec5d4d76fd74c76'/>
<id>urn:sha1:2c1e4917d9fac693033723742ec5d4d76fd74c76</id>
<content type='text'>
Since gcc 4.9, the API for erase slightly changed. In
commit 3dddcdf2432e78f37c74d8c76c2c519a8d935ab2 the
existing checks for __cplusplus where changed to
check the gcc version, as the __cplusplus check
did nothing, because gcc 4.8 already provided the
standard value in there.

Fix the code to check for the gcc version in two
more places, and change the existing checks to
use a convenience macro.
</content>
</entry>
<entry>
<title>Re-add support for G++ 4.8 and configure travis to use it</title>
<updated>2015-08-17T16:33:22Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2015-08-17T16:33:22Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=3dddcdf2432e78f37c74d8c76c2c519a8d935ab2'/>
<id>urn:sha1:3dddcdf2432e78f37c74d8c76c2c519a8d935ab2</id>
<content type='text'>
This makes tests work again!

Gbp-Dch: ignore
</content>
</entry>
<entry>
<title>avoid virtual in the iterators</title>
<updated>2015-08-10T15:27:18Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2015-07-13T21:10:53Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=3707fd4faab3f2e2521263070b68fd0afaae2900'/>
<id>urn:sha1:3707fd4faab3f2e2521263070b68fd0afaae2900</id>
<content type='text'>
With a bit of trickery and the Curiously recurring template pattern we
can free us from our use of virtual in the iterators were it is unneeded
bloat as we never deal with pointers to iterators and similar such.

Git-Dch: Ignore
</content>
</entry>
<entry>
<title>show or-groups in not-installed recommends and suggests lists</title>
<updated>2015-08-10T15:27:18Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2015-07-13T01:36:59Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=9112f77703c39d46e2e0471c48c8a5e1f93f4abf'/>
<id>urn:sha1:9112f77703c39d46e2e0471c48c8a5e1f93f4abf</id>
<content type='text'>
Further abstracting our new ShowList allows to use it for containers of
strings as well giving us the option to implement an or-groups display
for the recommends and suggests lists which is a nice trick given that
it also helps with migrating the last remaining other cases of old
ShowList.
</content>
</entry>
<entry>
<title>implement a more generic ShowList method</title>
<updated>2015-08-10T15:27:17Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2015-07-12T11:41:12Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=a0c19a217ca2ed38ae0ecb4b8d2d4f8c4e53289f'/>
<id>urn:sha1:a0c19a217ca2ed38ae0ecb4b8d2d4f8c4e53289f</id>
<content type='text'>
apt-get is displaying various lists of package names, which until now it
was building as a string before passing it to ShowList, which inserted
linebreaks at fitting points and showed a title if needed, but it never
really understood what it was working with. With the help of C++11 the
new generic knows not only what it works with, but generates the list on
the fly rather than asking for it and potentially discarding parts of
the input (= the non-default verbose display). It also doubles as a test
for how usable the CacheSets are with C++11.

(Not all callers are adapted yet.)

Git-Dch: Ignore
</content>
</entry>
<entry>
<title>implement reverse_iterators for cachesets</title>
<updated>2015-08-10T15:25:26Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2015-07-08T20:44:09Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=2893325927f6e4d55dc4bd148093351d4f8300f9'/>
<id>urn:sha1:2893325927f6e4d55dc4bd148093351d4f8300f9</id>
<content type='text'>
By further abstracting the iterator templates we can wrap the reverse
iterators of the wrapped containers and share code in a way that
iterator creating is now more template intensive, but shorter in code.

Git-Dch: Ignore
</content>
</entry>
</feed>
