<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apt/apt-pkg/contrib/configuration.cc, branch 1.4.2</title>
<subtitle>Debians commandline package manager</subtitle>
<id>https://git.kalnischkies.de/apt/atom?h=1.4.2</id>
<link rel='self' href='https://git.kalnischkies.de/apt/atom?h=1.4.2'/>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/'/>
<updated>2017-01-27T20:06:09Z</updated>
<entry>
<title>avoid malloc if option whitelist is disabled (default)</title>
<updated>2017-01-27T20:06:09Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2017-01-27T11:30:13Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=2f8f58512dbb478f23149b57d33f788c26c04445'/>
<id>urn:sha1:2f8f58512dbb478f23149b57d33f788c26c04445</id>
<content type='text'>
Config options are checked in various paths, so making "useless" memory
allocations wastes time and can also cause problems like #852757.
The unneeded malloc was added in ae73a2944a89e0d2406a2aab4a4c082e1e9da3f9.
(We have no explicit malloc here – its std:string doing this internally)
</content>
</entry>
<entry>
<title>fix various typos reported by spellintian</title>
<updated>2017-01-19T14:59:38Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2017-01-19T14:14:19Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=93cff633a830e222693fc0f3d78e6e534d1126ee'/>
<id>urn:sha1:93cff633a830e222693fc0f3d78e6e534d1126ee</id>
<content type='text'>
Most of them in (old) code comments. The two instances of user visible
string changes the po files of the manpages are fixed up as well.

Gbp-Dch: Ignore
Reported-By: spellintian
</content>
</entry>
<entry>
<title>allow warning generation for non-whitelisted options</title>
<updated>2016-12-31T17:24:12Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2016-12-31T17:24:12Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=ae73a2944a89e0d2406a2aab4a4c082e1e9da3f9'/>
<id>urn:sha1:ae73a2944a89e0d2406a2aab4a4c082e1e9da3f9</id>
<content type='text'>
The idea is simple: Each¹ Find*( call starts with a call check if the
given option (with the requested type) exists in the whitelist. The
whitelist is specified via our configure-index file so that we have
a better chance at keeping it current. the whitelist is loaded via a
special (undocumented for now) configuration stanza and if none is
loaded the empty whitelist will make it so that no warnings are shown.

Much needs to be done still, but that is as good a time as any to take a
snapshot of the current state and release it into the wild given that it
found some bugs already and has no practical effect on users.

¹ not all in this iteration, but many
</content>
</entry>
<entry>
<title>ensure Cnf::FindFile doesn't return files below /dev/null</title>
<updated>2016-07-19T16:05:13Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2016-07-19T16:05:13Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=bbd8308cc01941e51e2cbcf88168a5560abe6042'/>
<id>urn:sha1:bbd8308cc01941e51e2cbcf88168a5560abe6042</id>
<content type='text'>
Very unlikely, but if the parent is /dev/null, the child empty and the
grandchild a value we returned /dev/null/value which doesn't exist, so
hardly a problem, but for best operability we should be consistent in
our work and return /dev/null always.
</content>
</entry>
<entry>
<title>remove 100-levels config nesting limit</title>
<updated>2016-05-03T11:49:45Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2016-05-02T16:18:37Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=6afe25b56467b228fdd7c045d1062b12c0408e7c'/>
<id>urn:sha1:6afe25b56467b228fdd7c045d1062b12c0408e7c</id>
<content type='text'>
The actual reason for this commit isn't the limit – there isn't much
point in using that much nesting – its in shutting up gcc mostly:

apt/apt-pkg/contrib/configuration.cc: In function ‘bool ReadConfigFile(Configuration&amp;, const string&amp;, const bool&amp;, const unsigned int&amp;)’:
apt/apt-pkg/contrib/configuration.cc:686:20: warning: cannot optimize loop, the loop counter may overflow [-Wunsafe-loop-optimizations]
    string Stack[100];
                    ^
by replacing this with C++s handy std::stack container (adapter).
Also cleans some whitespace noise from the file in the process.
</content>
</entry>
<entry>
<title>add binary-specific options via Binary scope</title>
<updated>2015-11-04T17:04:02Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2015-10-16T16:03:52Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=c3ded84c6f99bda4caf63c8662416ffb0189d31b'/>
<id>urn:sha1:c3ded84c6f99bda4caf63c8662416ffb0189d31b</id>
<content type='text'>
Especially with apt now, it can be useful to set an option only for apt
and not for apt-get. Using a binary-specific subtree which is merged into
the root seems like a simple enough trick to achieve this.
</content>
</entry>
<entry>
<title>remove the compatibility markers for 4.13 abi</title>
<updated>2015-08-10T15:27:58Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2015-07-15T11:21:21Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=4dc77823d360158d6870a5710cc8c17064f1308f'/>
<id>urn:sha1:4dc77823d360158d6870a5710cc8c17064f1308f</id>
<content type='text'>
We aren't and we will not be really compatible again with the previous
stable abi, so lets drop these markers (which never made it into a
released version) for good as they have outlived their intend already.

Git-Dch: Ignore
</content>
</entry>
<entry>
<title>configureable acquire targets to download additional files</title>
<updated>2015-06-09T10:57:36Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2015-06-09T09:59:22Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=1e0f0f28e1025f42a8172eb72f3e87984eb2b939'/>
<id>urn:sha1:1e0f0f28e1025f42a8172eb72f3e87984eb2b939</id>
<content type='text'>
First pass at making the acquire system capable of downloading files
based on configuration rather than hardcoded entries. It is now possible
to instruct 'deb' and 'deb-src' sources.list lines to download more than
just Packages/Translation-* and Sources files. Details on how to do that
can be found in the included documentation file.
</content>
</entry>
<entry>
<title>fix some new compiler warnings reported by gcc-5</title>
<updated>2015-03-16T17:01:21Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2015-03-09T14:54:39Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=2b4cead3c8eb3afb5aa5390b88c511477a7628d8'/>
<id>urn:sha1:2b4cead3c8eb3afb5aa5390b88c511477a7628d8</id>
<content type='text'>
Git-Dch: Ignore
</content>
</entry>
<entry>
<title>explicit overload methods instead of adding parameters</title>
<updated>2014-11-08T13:29:25Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2014-11-07T17:18:14Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=fa5404ab01bdf06eaf147d9f133139e6c89b906a'/>
<id>urn:sha1:fa5404ab01bdf06eaf147d9f133139e6c89b906a</id>
<content type='text'>
Adding a new parameter (with a default) is an ABI break, but you can
overload a method, which is "just" an API break for everyone doing
references to this method (aka: nobody).

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