<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apt/apt-pkg/pkgcache.cc, branch 1.4_beta3</title>
<subtitle>Debians commandline package manager</subtitle>
<id>https://git.kalnischkies.de/apt/atom?h=1.4_beta3</id>
<link rel='self' href='https://git.kalnischkies.de/apt/atom?h=1.4_beta3'/>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/'/>
<updated>2016-11-22T21:58:19Z</updated>
<entry>
<title>Compare size before data when ordering cache bucket entries</title>
<updated>2016-11-22T21:58:19Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2016-09-27T16:59:11Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=f378b41f9ab2493bcbc5892d482b18826b0b84c0'/>
<id>urn:sha1:f378b41f9ab2493bcbc5892d482b18826b0b84c0</id>
<content type='text'>
This has the effect of significantly reducing actual string
comparisons, and should improve the performance of FindGrp
a bit, although it's hardly measureable (callgrind says it
uses 10% instructions less now).
</content>
</entry>
<entry>
<title>Introduce tolower_ascii_unsafe() and use it for hashing</title>
<updated>2016-11-22T21:58:18Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2016-09-27T16:20:02Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=7a3b00b10b6a5a740e07fc1b68a4f3fb3bcdac23'/>
<id>urn:sha1:7a3b00b10b6a5a740e07fc1b68a4f3fb3bcdac23</id>
<content type='text'>
This one has some obvious collisions for non-alphabetical characters,
like some control characters also hashing to numbers, but we don't
really have those, and these are hash functions which are not
collision free to begin with.
</content>
</entry>
<entry>
<title>Bump the cache major version for non-backportable changes</title>
<updated>2016-11-22T21:58:18Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2016-09-27T16:36:10Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=1236419d67e119acc7c0df48f8b14a277e0b5683'/>
<id>urn:sha1:1236419d67e119acc7c0df48f8b14a277e0b5683</id>
<content type='text'>
We already have two stable series with major version 10, and
the next commits will introduce non-backportable performance
changes that affect the cache algorithms, so we need to bump
the major version now to prevent future problems.
</content>
</entry>
<entry>
<title>VersionHash: Do not skip too long dependency lines</title>
<updated>2016-09-18T12:17:17Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2016-09-18T11:24:35Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=708e2f1fe99e6f067292bc909f03f12c181e4798'/>
<id>urn:sha1:708e2f1fe99e6f067292bc909f03f12c181e4798</id>
<content type='text'>
If the dependency line does not contain spaces in the repository
but does in the dpkg status file (because dpkg normalized the
dependency list), the dpkg line might be longer than the line
in the repository. If it now happens to be longer than 1024
characters, it would be skipped, causing the hashes to be
out of date.

Note that we have to bump the minor cache version again as
this changes the format slightly, and we might get mismatches
with an older src cache otherwise.

Fixes Debian/apt#23
</content>
</entry>
<entry>
<title>cache: Bump minor version to 6</title>
<updated>2016-06-28T20:15:50Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2016-06-28T15:54:31Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=33aa2752e7c7a6f0a01b191111aa35a5fe69cf20'/>
<id>urn:sha1:33aa2752e7c7a6f0a01b191111aa35a5fe69cf20</id>
<content type='text'>
Needed for the previous change
</content>
</entry>
<entry>
<title>factor out Pkg/DepIterator prettyprinters into own header</title>
<updated>2016-04-28T08:08:32Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2016-04-28T07:22:55Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=84573326f41dd09b914b8374548e7ee7c93d0439'/>
<id>urn:sha1:84573326f41dd09b914b8374548e7ee7c93d0439</id>
<content type='text'>
The old prettyprinters have only access to the struct they pretty print,
which isn't enough usually as we want to know for a package also a bit
of state information like which version is the candidate.

We therefore need to pull the DepCache into context and hence use a
temporary struct which is printed instead of the iterator itself.
</content>
</entry>
<entry>
<title>cachefile: Only set members that were initialized successfully</title>
<updated>2016-03-19T06:19:24Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2016-03-19T00:56:38Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=f40fdaa43271edf98b80c08e20f401b5da591501'/>
<id>urn:sha1:f40fdaa43271edf98b80c08e20f401b5da591501</id>
<content type='text'>
Otherwise, things will just start failing later down the stack,
because (a) the lazy getters do not check if building was successful
and (b) any further getter call would return the invalid object
anyway.

Also initialize VS in pkgCache to nullptr by default.

Closes: #818628
</content>
</entry>
<entry>
<title>Fix several typos</title>
<updated>2016-03-06T23:14:48Z</updated>
<author>
<name>Veres Lajos</name>
<email>vlajos@gmail.com</email>
</author>
<published>2016-03-06T23:13:26Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=8d89cda7d66b6f125c457f36beeb84abb0df07f1'/>
<id>urn:sha1:8d89cda7d66b6f125c457f36beeb84abb0df07f1</id>
<content type='text'>
This effectively merges branch 'typofixes-vlajos-20150807' of github.com:vlajos/apt
with the following commit:

commit 13cacb3e2e2352ba701e769fc889e3344fabbf7e
Author: Veres Lajos &lt;vlajos@gmail.com&gt;
Date:   Sun Aug 9 00:12:53 2015 +0100

    typofix - https://github.com/vlajos/misspell_fixer

It has been rebased for a better commit message.
</content>
</entry>
<entry>
<title>Fix crash with empty architecture list</title>
<updated>2016-02-25T15:46:42Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2016-02-25T15:46:42Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=9de2fd4d117e57824f4a0795efa7379995a804cb'/>
<id>urn:sha1:9de2fd4d117e57824f4a0795efa7379995a804cb</id>
<content type='text'>
If the architecture list is empty somehow, fail normally.

LP: #1549819
</content>
</entry>
<entry>
<title>parse version correctly from binary Source field</title>
<updated>2016-01-26T18:17:11Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2016-01-26T18:17:11Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=d17f2b1b748c8d297474707cfc9706f673ef0346'/>
<id>urn:sha1:d17f2b1b748c8d297474707cfc9706f673ef0346</id>
<content type='text'>
In commit a221efc331693f8905da870141756c892911c433 I promoted the source
package name and version to the binary cache for faster access by e.g.
EDSP, but due to changing the interpretation length to soon we always
ignored the version part of the Source field, so that packages ended up
having the binary version as source version – which while usually just
fine it is wrong for binary rebuilds.

Closes: 812492
</content>
</entry>
</feed>
