<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apt/apt-pkg, branch 1.4.5</title>
<subtitle>Debians commandline package manager</subtitle>
<id>https://git.kalnischkies.de/apt/atom?h=1.4.5</id>
<link rel='self' href='https://git.kalnischkies.de/apt/atom?h=1.4.5'/>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/'/>
<updated>2017-05-31T12:39:53Z</updated>
<entry>
<title>Fix parsing of or groups in build-deps with ignored packages</title>
<updated>2017-05-31T12:39:53Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2017-05-30T20:24:14Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=7ddf958e370d13f93edc6923bee289b2f6444b41'/>
<id>urn:sha1:7ddf958e370d13f93edc6923bee289b2f6444b41</id>
<content type='text'>
If the last alternative(s) of an Or group is ignored, because it does
not match an architecture list, we would end up keeping the or flag,
effectively making the next AND an OR.

For example, when parsing (on amd64):

    debhelper (&gt;= 9), libnacl-dev [amd64] | libnacl-dev [i386]
 =&gt; debhelper (&gt;= 9), libnacl-dev |

Which can cause python-apt to crash.

Even worse:

     debhelper (&gt;= 9), libnacl-dev [amd64] | libnacl-dev [i386], foobar
  =&gt; debhelper (&gt;= 9), libnacl-dev [amd64] | foobar

By setting the previous alternatives Or flag to the current Or flag
if the current alternative is ignored, we solve the issue.

LP: #1694697
</content>
</entry>
<entry>
<title>Fix and avoid quoting in CommandLine::AsString</title>
<updated>2017-03-19T13:32:59Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2017-03-19T12:53:33Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=2ce15bdeac6ee93faefd4b42b57f035bef80c567'/>
<id>urn:sha1:2ce15bdeac6ee93faefd4b42b57f035bef80c567</id>
<content type='text'>
In the intended usecase where this serves as a hack there is no problem
with double/single quotes being present as we write it to a log file
only, but nowadays our calling of apt-key produces a temporary config
file containing this "setting" as well and suddently quoting is
important as the config file syntax is allergic to it.

So the fix is to ignore all quoting whatsoever in the input and just
quote (with singles) the option values with spaces. That gives us 99% of
the time the correct result and the 1% where the quote is an integral
element of the option … doesn't exist – or has bigger problems than a
log file not containing the quote. Same goes for newlines in values.

LP: #1672710
</content>
</entry>
<entry>
<title>Fix mistake in CHANGEPATH comment example</title>
<updated>2017-03-13T20:44:53Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2017-03-13T20:44:53Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=e6dddfec2552c798a820d31691d59928929c0905'/>
<id>urn:sha1:e6dddfec2552c798a820d31691d59928929c0905</id>
<content type='text'>
It says SRCNAME_SRCVER, but the example just gives
the SRCVER part.

Reported-By: Nishanth Aravamudan (nacc) in #ubuntu-devel
</content>
</entry>
<entry>
<title>Ignore \.ucf-[a-z]+$ like we do for \.dpkg-[a-z]+$</title>
<updated>2017-03-07T16:33:54Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2017-03-07T16:33:54Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=5094697fe4b2459ff6f706a22006d3028369f3fa'/>
<id>urn:sha1:5094697fe4b2459ff6f706a22006d3028369f3fa</id>
<content type='text'>
This gets rid of warnings about .ucf-dist files

Reported-By: Axel Beckert (on IRC)
</content>
</entry>
<entry>
<title>Don't use -1 fd and AT_SYMLINK_NOFOLLOW for faccessat()</title>
<updated>2017-02-11T21:17:08Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2017-02-11T21:17:08Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=25f54c960d7a4ceca7bd3e21f87baf48d6cbc2d3'/>
<id>urn:sha1:25f54c960d7a4ceca7bd3e21f87baf48d6cbc2d3</id>
<content type='text'>
-1 is not an allowed value for the file descriptor, the only
allowed non-file-descriptor value is AT_FDCWD. So use that
instead.

AT_SYMLINK_NOFOLLOW has a weird semantic: It checks whether
we have the specified access on the symbolic link. It also
is implemented only by glibc on Linux, so it's inherently
non-portable. We should just drop it.

Thanks: James Clarke for debugging these issues
Reported-by: James Clarke &lt;jrtc27@jrtc27.com&gt;
</content>
</entry>
<entry>
<title>Do not package names representing .dsc/.deb/... files</title>
<updated>2017-02-10T22:12:52Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2017-02-10T21:39:00Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=85ee4036c68d8ecd2c973d413a17aca81380900b'/>
<id>urn:sha1:85ee4036c68d8ecd2c973d413a17aca81380900b</id>
<content type='text'>
In the case of build-dep and other commands where a file can be
passed we must make sure not to normalize the path name as that
can have odd side effects, or well, cause the operation to do
nothing.

Test for build-dep-file is adjusted to perform the vcard check
once as "vcard" and once as "VCard", thus testing that this
solves the reported bug.

We inline the std::transform() and optimize it a bit to not
write anything in the common case (package names are defined
to be lowercase, the whole transformation is just for names
that should not exist...) to counter the performance hit of
the added find() call (it's about 0.15% more instructions
than with the existing transform, but we save about 0.67%
in writes...).

Closes: #854794
</content>
</entry>
<entry>
<title>add Auto-Built-Package to tagfile-order</title>
<updated>2017-02-09T11:59:05Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2017-02-09T09:15:18Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=f09735bfa051b8c830b467ee8d78138c9f1aa808'/>
<id>urn:sha1:f09735bfa051b8c830b467ee8d78138c9f1aa808</id>
<content type='text'>
Added in dpkg commit 6c8203440bf443d3031ee2ab8485b16c1b6da3b6
</content>
</entry>
<entry>
<title>algorithms: Fix typo: gental -&gt; gentle</title>
<updated>2017-01-30T23:57:58Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2017-01-30T23:55:44Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=c20e18fd8161b97f3ca41424e082df0f13d920e1'/>
<id>urn:sha1:c20e18fd8161b97f3ca41424e082df0f13d920e1</id>
<content type='text'>
Oh dear, nobody (or rather no tool) saw that yet...

Gbp-Dch: ignore
</content>
</entry>
<entry>
<title>Only merge acquire items with the same meta key</title>
<updated>2017-01-28T13:06:29Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2017-01-25T02:38:59Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=7b78e8bef1fc9de22d826db1db9df25f97d3710c'/>
<id>urn:sha1:7b78e8bef1fc9de22d826db1db9df25f97d3710c</id>
<content type='text'>
Since the introduction of by-hash, two differently named
files might have the same real URL. In our case, the files
icons-64x64.tar.gz and icons-128x128.tar.gz of empty tarballs.

APT would try to merge them and end with weird errors because
it completed the first download and enters the second stage for
decompressing and verifying. After that it would queue a new item
to copy the original file to the location, but that copy item would
be in the wrong stage, causing it to use the hashes for the
decompressed item.

Closes: #838441
</content>
</entry>
<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>
</feed>
