<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apt/apt-pkg, branch 1.4_rc2</title>
<subtitle>Debians commandline package manager</subtitle>
<id>https://git.kalnischkies.de/apt/atom?h=1.4_rc2</id>
<link rel='self' href='https://git.kalnischkies.de/apt/atom?h=1.4_rc2'/>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/'/>
<updated>2017-02-11T21:17:08Z</updated>
<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>
<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>fix various typos reported by codespell</title>
<updated>2017-01-19T14:59:38Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2017-01-19T12:41:25Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=99b1cdd3a07576542c8bda40d93368f3f76db912'/>
<id>urn:sha1:99b1cdd3a07576542c8bda40d93368f3f76db912</id>
<content type='text'>
Nothing in user visible strings.

Gbp-Dch: Ignore
Reported-By: codespell
</content>
</entry>
<entry>
<title>remove 'old' FAILED files in the next acquire call</title>
<updated>2017-01-19T02:57:45Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2017-01-19T02:57:45Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=7ca83492e802967f183babf06ab541b1b51f1703'/>
<id>urn:sha1:7ca83492e802967f183babf06ab541b1b51f1703</id>
<content type='text'>
If apt renames a file to .FAILED it leaves its namespace and is never
touched again – expect since 1.1~exp4 in which "apt clean" will remove
those files. The usefulness of these files rapidly degrades if you don't
keep the update log itself (together with debug output in the best case)
through and on 99% of all system they will be kept around forever just
to collect dust over time and eat up space.

With this commit an update call will remove all FAILED files of previous
runs, so that the FAILED files you have on disk are always only the ones
related to the last apt run stopping apt from hoarding files.

Closes: 846476
</content>
</entry>
<entry>
<title>avoid validate/delete/load race in cache generation</title>
<updated>2017-01-19T01:13:54Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2017-01-19T01:13:54Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=06606f073210fe3902fe92d5ff77fa1ab621b972'/>
<id>urn:sha1:06606f073210fe3902fe92d5ff77fa1ab621b972</id>
<content type='text'>
Keeping the Fd of the cache file we have validated around to later load
it into the mmap ensures not only that we load the same file (which
wouldn't really be a problem in practice), but that this file also still
exists and wasn't deleted e.g. by a 'apt clean' call run in parallel.
</content>
</entry>
</feed>
