<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apt/test/libapt/strutil_test.cc, branch 1.7.0_alpha0</title>
<subtitle>Debians commandline package manager</subtitle>
<id>https://git.kalnischkies.de/apt/atom?h=1.7.0_alpha0</id>
<link rel='self' href='https://git.kalnischkies.de/apt/atom?h=1.7.0_alpha0'/>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/'/>
<updated>2017-12-13T22:56:29Z</updated>
<entry>
<title>support multiline values in LookupTag</title>
<updated>2017-12-13T22:56:29Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2017-07-17T08:52:09Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=07cd99066c30e70a9f41851c80e7c51f4e507163'/>
<id>urn:sha1:07cd99066c30e70a9f41851c80e7c51f4e507163</id>
<content type='text'>
LookupTag is a little helper to deal with rfc822-style strings we use in
apt e.g. to pass acquire messages around for cases in which our usual
rfc822 parser is too heavy. All the fields it had to deal with so far
were single line, but if they aren't it should really produce the right
output and not just return the first line. Error messages are a prime
candidate for becoming multiline as at the moment they are stripped of
potential newlines due to the previous insufficiency of LookupTag.
</content>
</entry>
<entry>
<title>Reformat and sort all includes with clang-format</title>
<updated>2017-07-12T11:57:51Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2017-07-12T11:40:41Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=87274d0f22e1dfd99b2e5200e2fe75c1b804eac3'/>
<id>urn:sha1:87274d0f22e1dfd99b2e5200e2fe75c1b804eac3</id>
<content type='text'>
This makes it easier to see which headers includes what.

The changes were done by running

    git grep -l '#\s*include'  \
        | grep -E '.(cc|h)$' \
        | xargs sed -i -E 's/(^\s*)#(\s*)include/\1#\2 include/'

To modify all include lines by adding a space, and then running
./git-clang-format.sh.
</content>
</entry>
<entry>
<title>tests: silence -Wmissing-declarations</title>
<updated>2016-09-01T14:13:32Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2016-09-01T06:49:22Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=d8a57c1953b876917a9deb098d1ef3d2b093f3dc'/>
<id>urn:sha1:d8a57c1953b876917a9deb098d1ef3d2b093f3dc</id>
<content type='text'>
Gbp-Dch: Ignore
Reported-By: gcc -Wmissing-declarations
</content>
</entry>
<entry>
<title>avoid std::get_time usage to sidestep libstdc++6 bug</title>
<updated>2016-06-17T16:09:20Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2016-06-17T15:56:45Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=1d742e01470bba27715a8191c50adde4b39c2f19'/>
<id>urn:sha1:1d742e01470bba27715a8191c50adde4b39c2f19</id>
<content type='text'>
As reported upstream in
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71556
the implementation of std::get_time is currently not as accepting as
strptime is, especially in how hours should be formatted.

Just reverting 9febc2b238e1e322dce1f94ecbed46d595893b52 would be
possible, but then we would reopen the problems fixed by it, so instead
I opted here for a rewrite of the parsing logic which makes this method
a lot longer, but at least it provides the same benefits as the rewrite
in std::get_time was intended to give us and decouples us from the fix
of the issue in the standard library implementation of GCC.

LP: 1593583
</content>
</entry>
<entry>
<title>accept only the expected UTC timezones in date parsing</title>
<updated>2016-05-28T09:42:20Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2016-05-28T09:03:35Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=9febc2b238e1e322dce1f94ecbed46d595893b52'/>
<id>urn:sha1:9febc2b238e1e322dce1f94ecbed46d595893b52</id>
<content type='text'>
HTTP/1.1 hardcodes GMT (RFC 7231 §7.1.1.1) and what is good enough for the
internet must be good enough for us™ as we reuse the implementation
internally to parse (most) dates we encounter in various places like the
Release files with their Date and Valid-Until header fields.

Implementing a fully timezone aware parser just feels too hard for no
effective benefit as it would take 5+ years (= until LTS's are out of
fashion) until a repository could use non-UTC dates and expect it to
work. Not counting non-apt implementations which might or might not
only want to encounter UTC here as well.

As a bonus, this eliminates the use of an instance of setlocale in
libapt.

Closes: 819697
</content>
</entry>
<entry>
<title>encode UTF-8 characters correctly in QuoteString</title>
<updated>2015-11-05T11:21:33Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2015-11-04T22:38:40Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=4453cfdcf42f7fe6859bb0fc6b310a2a391bee77'/>
<id>urn:sha1:4453cfdcf42f7fe6859bb0fc6b310a2a391bee77</id>
<content type='text'>
Limit the field length to a char to avoid bogus FF for
utf-8 characters with the default length.

Closes: 799123
</content>
</entry>
<entry>
<title>reimplement the last uses of sprintf</title>
<updated>2015-04-10T18:18:17Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2015-03-10T13:11:54Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=b8eba208daebe3e3f235983e44da9c398d6f7a57'/>
<id>urn:sha1:b8eba208daebe3e3f235983e44da9c398d6f7a57</id>
<content type='text'>
Working with strings c-style is complicated and error-prune,
so by converting to c++ style we gain some simplicity and
avoid buffer overflows by later extensions.

Git-Dch: Ignore
</content>
</entry>
<entry>
<title>rewrite ReadMessages()</title>
<updated>2014-10-26T13:13:34Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2014-10-24T21:55:15Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=d8c71b3b5dc98daa247433503ad8242c9e7b77db'/>
<id>urn:sha1:d8c71b3b5dc98daa247433503ad8242c9e7b77db</id>
<content type='text'>
Central methods of our infrastructure like this one responsible for
communication with our methods shouldn't be more complicated then they
have to and not claim to have (albeit unlikely) bugs.

While I am not sure about having improved the first part, the bug is now
gone and a few explicit tests check that it stays that way, so nobody
will notice the difference (hopefully) – expect that this should a very
tiny bit faster as well as we don't manually proceed through the string.

Git-Dch: Ignore
</content>
</entry>
<entry>
<title>add test for Basic Authentication scheme</title>
<updated>2014-10-23T14:54:27Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2014-10-23T08:42:18Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=b0314abb0cbe5937d2d3cdcd6df9d322b69d03a0'/>
<id>urn:sha1:b0314abb0cbe5937d2d3cdcd6df9d322b69d03a0</id>
<content type='text'>
Git-Dch: Ignore
</content>
</entry>
<entry>
<title>Merge branch 'debian/sid' into debian/experimental</title>
<updated>2014-09-23T12:20:27Z</updated>
<author>
<name>Michael Vogt</name>
<email>mvo@ubuntu.com</email>
</author>
<published>2014-09-23T12:20:27Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=c511c5e8ed3f59ddee1b174b39e5cc16a2f11922'/>
<id>urn:sha1:c511c5e8ed3f59ddee1b174b39e5cc16a2f11922</id>
<content type='text'>
Conflicts:
	apt-pkg/acquire-item.cc
	apt-pkg/acquire-item.h
	apt-pkg/cachefilter.h
	configure.ac
	debian/changelog
</content>
</entry>
</feed>
