<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apt/apt-pkg/edsp/edsplistparser.cc, branch 1.4.6</title>
<subtitle>Debians commandline package manager</subtitle>
<id>https://git.kalnischkies.de/apt/atom?h=1.4.6</id>
<link rel='self' href='https://git.kalnischkies.de/apt/atom?h=1.4.6'/>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/'/>
<updated>2016-11-22T21:58:33Z</updated>
<entry>
<title>Do not use MD5SumValue for Description_md5()</title>
<updated>2016-11-22T21:58:33Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2016-09-27T22:49:45Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=49521f87851089bdb4097b715d09a8bd348aa60a'/>
<id>urn:sha1:49521f87851089bdb4097b715d09a8bd348aa60a</id>
<content type='text'>
Our profile says we spend about 5% of the time transforming the
hex digits into the binary format used by HashsumValue, all for
comparing them against the other strings. That makes no sense
at all.

According to callgrind, this reduces the overall instruction
count from 5,3 billion to 5 billion in my example, which
roughly matches the 5%.
</content>
</entry>
<entry>
<title>Add missing includes and external definitions</title>
<updated>2016-08-26T13:49:10Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2016-08-23T11:15:15Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=24a59c62efafbdb8387b2d3c5616b04b9fd21306'/>
<id>urn:sha1:24a59c62efafbdb8387b2d3c5616b04b9fd21306</id>
<content type='text'>
Several modules use std::array without including the
array header. Bad modules.

Some modules use STDOUT_FILENO and friends, or close()
without including unistd.h, where they are defined.

One module also uses WIFEXITED() without including
sys/wait.h.

Finally, environ is not specified to be defined in unistd.h. We
are required to define it ourselves according to POSIX, so let's
do that.
</content>
</entry>
<entry>
<title>eipp: provide the internal planer as an external one</title>
<updated>2016-06-27T09:57:12Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2016-05-28T13:40:59Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=f74d99c6a78caafdc6e32d8cb135683b7154795c'/>
<id>urn:sha1:f74d99c6a78caafdc6e32d8cb135683b7154795c</id>
<content type='text'>
Testing the current implementation can benefit from being able to be
feed an EIPP request and produce a fully compliant response. It is also
a great test for EIPP in general.
</content>
</entry>
<entry>
<title>refactor EDSP classes for better internal reuse</title>
<updated>2016-06-05T11:15:55Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2016-06-05T11:05:30Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=d59671c9eef322c10abba22b0257fef37979dfd4'/>
<id>urn:sha1:d59671c9eef322c10abba22b0257fef37979dfd4</id>
<content type='text'>
The classes are all marked as hidden, so changing them is no problem ABI
wise and will help with introducing protocols similar to EDSP.
The change has no observeable behavior difference, its just code
juggling.

Git-Dch: Ignore
</content>
</entry>
<entry>
<title>edsp: use an ID mapping for the internal solver</title>
<updated>2016-06-04T16:45:01Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2016-06-04T16:45:01Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=307d9eb2d13ee59191b86ffec2f36ba3fffc5c20'/>
<id>urn:sha1:307d9eb2d13ee59191b86ffec2f36ba3fffc5c20</id>
<content type='text'>
Currently an EDSP solver gets send basically all versions which means
the absolute count is the same, but that might not be true forever (and
with the skipping of rc-only versions it kinda is already) and even if
it were true, segfaulting on bad input seems wrong.
</content>
</entry>
<entry>
<title>remove unused Description methods in listparsers</title>
<updated>2016-01-26T20:58:57Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2016-01-26T20:58:57Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=02ceb810fe0de9b267a8b6a302505967afce6b5a'/>
<id>urn:sha1:02ceb810fe0de9b267a8b6a302505967afce6b5a</id>
<content type='text'>
These virtual methods are implemented in hidden classes, so we can drop
them without breaking the ABI.

Git-Dch: Ignore
</content>
</entry>
<entry>
<title>wrap every unlink call to check for != /dev/null</title>
<updated>2015-11-04T17:42:28Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2015-11-02T17:49:52Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=ce1f3a2c616b86da657c1c796efa5f4d18c30c39'/>
<id>urn:sha1:ce1f3a2c616b86da657c1c796efa5f4d18c30c39</id>
<content type='text'>
Unlinking /dev/null is bad, we shouldn't do that. Also, we should print
at least a warning if we tried to unlink a file but didn't manage to
pull it of (ignoring the case were the file is /dev/null or doesn't
exist in the first place).

This got triggered by a relatively unlikely to cause problem in
pkgAcquire::Worker::PrepareFiles which would while temporary
uncompressed files (which are set to keep compressed) figure out that to
files are the same and prepare for sharing by deleting them. Bad move.
That also shows why not printing a warning is a bad idea as this hide
the error for in non-root test runs.

Git-Dch: Ignore
</content>
</entry>
<entry>
<title>sanify API to get 'the' candidate version</title>
<updated>2015-11-04T17:04:05Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2015-10-30T15:34:25Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=294a80209a0c6ea617a14fb2ae650d4fd329eab5'/>
<id>urn:sha1:294a80209a0c6ea617a14fb2ae650d4fd329eab5</id>
<content type='text'>
This was discussed a while ago on #debian-apt and now that I see myself
making this mistake lets bite the bullet and fix it in the easy way out
version: Using a new name which fits with a similar named setter and
deprecate the old method instead of 'hostily' changing API.

Closes: #803471
</content>
</entry>
<entry>
<title>implement autobit and pinning in EDSP solver 'apt'</title>
<updated>2015-09-14T13:22:18Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2015-09-08T20:14:11Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=188a6fcf4f13df1fd362a0aff27a23493ddd1ec5'/>
<id>urn:sha1:188a6fcf4f13df1fd362a0aff27a23493ddd1ec5</id>
<content type='text'>
The parser creates a preferences as well as an extended states file
based on the EDSP scenario file, which isn't the most efficient way of
dealing with this as thes text files have to be parsed again by another
layer of the code, but it needs the least changes and works good enough
for now. The 'apt' solver is in the end just a test solver like dump.
</content>
</entry>
<entry>
<title>Cleanup includes after running iwyu</title>
<updated>2015-08-17T10:01:45Z</updated>
<author>
<name>Michael Vogt</name>
<email>mvo@debian.org</email>
</author>
<published>2015-08-17T10:01:45Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=88a8975f156e452d9f3ebe76822b236e8962ebba'/>
<id>urn:sha1:88a8975f156e452d9f3ebe76822b236e8962ebba</id>
<content type='text'>
</content>
</entry>
</feed>
