<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apt/apt-pkg/pkgcachegen.h, branch 1.1.10</title>
<subtitle>Debians commandline package manager</subtitle>
<id>https://git.kalnischkies.de/apt/atom?h=1.1.10</id>
<link rel='self' href='https://git.kalnischkies.de/apt/atom?h=1.1.10'/>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/'/>
<updated>2015-12-29T15:29:05Z</updated>
<entry>
<title>pkgCacheGenerator: Allow passing down an already created cache</title>
<updated>2015-12-29T15:29:05Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2015-12-29T14:59:41Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=f161603953f92cc3e778439d7149e5b852f65277'/>
<id>urn:sha1:f161603953f92cc3e778439d7149e5b852f65277</id>
<content type='text'>
If we already have opened a cache, there is no point in having
to open it again.
</content>
</entry>
<entry>
<title>pkgcachegen.h: Hack around unordered_map not existing before C++11</title>
<updated>2015-12-27T15:43:28Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2015-12-27T15:43:28Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=2837a71877c0f5c1aca8f70e30130018bc53acac'/>
<id>urn:sha1:2837a71877c0f5c1aca8f70e30130018bc53acac</id>
<content type='text'>
This is for public users only, which cannot use the class at all,
except for the static methods.
</content>
</entry>
<entry>
<title>pkgcachegen: Use std::unordered_map instead of std::map</title>
<updated>2015-12-27T00:46:06Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2015-12-27T00:33:38Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=e9185eca390435b4060ef26c7c69d39f994da7a7'/>
<id>urn:sha1:e9185eca390435b4060ef26c7c69d39f994da7a7</id>
<content type='text'>
std::unordered_map is faster than std::map in our use case,
reducing cache generation time by about 10% in my benchmark.
</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>Drop C++11 elements from headers</title>
<updated>2015-08-11T11:59:15Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2015-08-11T09:49:21Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=350d30d24fee9a1aa5fedc7a30e7416999653417'/>
<id>urn:sha1:350d30d24fee9a1aa5fedc7a30e7416999653417</id>
<content type='text'>
</content>
</entry>
<entry>
<title>eliminate dead file-provides code in cache generation</title>
<updated>2015-08-10T15:27:59Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2015-07-20T08:33:07Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=1d3eea5caf65aacd7f112d14030a0499f32b9c75'/>
<id>urn:sha1:1d3eea5caf65aacd7f112d14030a0499f32b9c75</id>
<content type='text'>
The code was never active in production, it just sits there collecting
dust and given that it is never tested probably doesn't even work
anymore the way it was supposed to be (whatever that was exactly in the
first place). So just remove it before I have to "fix" it again next
time.

Git-Dch: Ignore
</content>
</entry>
<entry>
<title>elimate duplicated code in pkgIndexFile subclasses</title>
<updated>2015-08-10T15:27:59Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2015-07-20T08:17:29Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=c9443c01208377f0cba9706412ea3a98ad97b56d'/>
<id>urn:sha1:c9443c01208377f0cba9706412ea3a98ad97b56d</id>
<content type='text'>
Trade deduplication of code for a bunch of new virtuals, so it is
actually visible how the different indexes behave cleaning up the
interface at large in the process.

Git-Dch: Ignore
</content>
</entry>
<entry>
<title>add volatile sources support in libapt-pkg</title>
<updated>2015-08-10T15:27:59Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2015-07-18T16:03:54Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=5465192b9aeb1ccea778950ccf2d1b7b32f2cd91'/>
<id>urn:sha1:5465192b9aeb1ccea778950ccf2d1b7b32f2cd91</id>
<content type='text'>
Sources are usually defined in sources.list (and co) and are pretty
stable, but once in a while a frontend might want to add an additional
"source" like a local .deb file to install this package (No support for
'real' sources being added this way as this is a multistep process).

We had a hack in place to allow apt-get and apt to pull this of for a
short while now, but other frontends are either left in the cold by this
and/or the code for it looks dirty with FIXMEs plastering it and has on
top of this also some problems (like including these 'volatile' sources
in the srcpkgcache.bin file).

So the biggest part in this commit is actually the rewrite of the cache
generation as it is now potentially a three step process. The biggest
problem with adding support now through is that this makes a bunch of
previously mostly unusable by externs and therefore hidden classes
public, so a bit of further tuneing on this now public API is in order…
</content>
</entry>
<entry>
<title>just-in-time creation for (explicit) negative deps</title>
<updated>2015-08-10T15:27:59Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2015-07-17T08:53:01Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=bb0f6a34c4cebea7884de828c011dc85765ff820'/>
<id>urn:sha1:bb0f6a34c4cebea7884de828c011dc85765ff820</id>
<content type='text'>
Now that we deal with provides in a more dynamic fashion the last
remaining problem is explicit dependencies like 'Conflicts: foo' which
have to apply to all architectures, but creating them all at the same
time requires us to know all architectures ending up in the cache which
isn't needed to be the same set as all foreign architectures.

The effect is visible already now through as this prevents the creation
of a bunch of virtual packages for arch:all packages and as such also
many dependencies, just not very visible if you don't look at the stats…

Git-Dch Ignore
</content>
</entry>
<entry>
<title>just-in-time creation for (implicit) Provides</title>
<updated>2015-08-10T15:27:59Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2015-07-16T17:41:45Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=ecc138f858fab61e0b888d3d13854d1422c3432b'/>
<id>urn:sha1:ecc138f858fab61e0b888d3d13854d1422c3432b</id>
<content type='text'>
Expecting the worst is easy to code, but has its disadvantages e.g.
by creating package structures which otherwise would have never
existed. By creating the provides instead at the time a package
structure is added we are well prepared for the introduction of partial
architectures, massive amounts of M-A:foreign (and :allowed) and co as
far as provides are concerned at least. We have something relatively
similar for dependencies already.

Many tests are added for both M-A states and the code cleaned to
properly support implicit provides for foreign architectures and
architectures we 'just' happen to parse.

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