<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apt/apt-pkg/acquire.cc, branch 1.2.2</title>
<subtitle>Debians commandline package manager</subtitle>
<id>https://git.kalnischkies.de/apt/atom?h=1.2.2</id>
<link rel='self' href='https://git.kalnischkies.de/apt/atom?h=1.2.2'/>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/'/>
<updated>2016-01-15T01:45:35Z</updated>
<entry>
<title>revert file-hash based action-merging in acquire</title>
<updated>2016-01-15T01:45:35Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2016-01-15T01:45:35Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=feb674aba51dcb26f5281b5b38fbc5893f757170'/>
<id>urn:sha1:feb674aba51dcb26f5281b5b38fbc5893f757170</id>
<content type='text'>
Introduced in 9d2a8a7388cf3b0bbbe92f6b0b30a533e1167f40 apt tries to
merge actions like downloading the same (as judged by hashes) file
into doing it once. The implementation was very simple in that it isn't
planing at all. Turns out that it works 90% of the time just fine, but
has issues in more complicated situations in which items can be in
different stages downloading different files emitting potentially the
"wrong" hash – like while pdiffs are worked on we might end up copying
the patch instead of the result file giving us very strange errors in
return. Reverting the change until we can implement a better planing
solution seems to be the best course of action even if its sad.

Closes: 810046
</content>
</entry>
<entry>
<title>acquire: Allow parallelizing methods without hosts</title>
<updated>2016-01-07T16:31:24Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2016-01-07T16:06:55Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=b89cd2e36f9696ccd56167593c792116ae4fc97f'/>
<id>urn:sha1:b89cd2e36f9696ccd56167593c792116ae4fc97f</id>
<content type='text'>
The maximum parallelization soft limit is the number of CPU
cores * 2 on systems defining _SC_NPROCESSORS_ONLN. The hard
limit in all cases is Acquire::QueueHost::Limit.
</content>
</entry>
<entry>
<title>Use 0llu instead of 0ull in one place too</title>
<updated>2015-12-07T13:45:52Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2015-12-07T13:45:52Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=e551e1237da3cbba71f08f17dc57b07832b8d9ac'/>
<id>urn:sha1:e551e1237da3cbba71f08f17dc57b07832b8d9ac</id>
<content type='text'>
Gbp-Dch: ignore
</content>
</entry>
<entry>
<title>Avoid overflow when summing up file sizes</title>
<updated>2015-12-07T13:44:15Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2015-12-07T13:42:25Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=5a97834817dd43b7833881f38f512a9f2fdac8a9'/>
<id>urn:sha1:5a97834817dd43b7833881f38f512a9f2fdac8a9</id>
<content type='text'>
We need to pass 0llu instead of 0 as the init value, otherwise
std::accumulate will calculate with ints.

Reported-by: Raphaël Hertzog
</content>
</entry>
<entry>
<title>Check if the Apt::Sandbox::User exists in CheckDropPrivsMustBeDisabled()</title>
<updated>2015-11-27T11:29:22Z</updated>
<author>
<name>Michael Vogt</name>
<email>mvo@ubuntu.com</email>
</author>
<published>2015-11-27T11:29:22Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=ef39c148105cf30aea822022a5f41a120897cc65'/>
<id>urn:sha1:ef39c148105cf30aea822022a5f41a120897cc65</id>
<content type='text'>
If it does not exist disabled priv dropping as there is nothing
we can drop to. This will unblock people with special chroots
or systems that deleted the "_apt" user.

Closes: #806406
</content>
</entry>
<entry>
<title>Deal with killed acquire methods properly instead of hanging</title>
<updated>2015-11-27T11:10:57Z</updated>
<author>
<name>Michael Vogt</name>
<email>mvo@ubuntu.com</email>
</author>
<published>2015-11-27T11:07:48Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=a416a90b631a430306df6ed3fa1d4f3a1bdc7949'/>
<id>urn:sha1:a416a90b631a430306df6ed3fa1d4f3a1bdc7949</id>
<content type='text'>
This fixes a regression caussed by commit
95278287f4e1eeaf5d96749d6fc9bfc53fb400d0
that moved the error detection of RunFds() later into the loop.
However this broke detecting issues like dead acquire methods.
Instead of relying on the global error state (which is bad)
we now pass a boolean value back from RunFds() and break on
false.

Closes: #806406
</content>
</entry>
<entry>
<title>ignore lost+found in private directory cleanup</title>
<updated>2015-11-19T16:56:07Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2015-11-19T15:19:15Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=6aef1942f441e6e667982b92802907026d8cc7c6'/>
<id>urn:sha1:6aef1942f441e6e667982b92802907026d8cc7c6</id>
<content type='text'>
In ce1f3a2c we started warning about failing unlinking, which we
consistently do for directories. That isn't a problem as directories
usually aren't in the places we do want to clean up – with the potential
exeception of "lost+found", so lets ignore it like we ignore our own
partial/ subdirectory.

Closes: 805424
</content>
</entry>
<entry>
<title>do not use _apt for file/copy sources if it isn't world-accessible</title>
<updated>2015-11-19T15:46:29Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2015-11-18T18:31:40Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=514a25cbcd2babb2a9c4485fc7b9a4256b7f6ff3'/>
<id>urn:sha1:514a25cbcd2babb2a9c4485fc7b9a4256b7f6ff3</id>
<content type='text'>
In 0940230d we started dropping privileges for file (and a bit later for
copy, too) with the intend of uniforming this for all methods. The
commit message says that the source will likely fail based on the
compressors already – and there isn't much secret in the repository
content. After all, after apt has run the update everyone can access the
content via apt anyway…

There are sources through which worked before which are mostly
single-deb (and those with the uncompressed files available).
The first one being especially surprising for users maybe, so instead of
failing, we make it so that apt detects that it can't access a source as
_apt and if so doesn't drop (for all sources!) privileges – but we limit
this to file/copy, so the uncompress which might be needed will still
fail – but that failed before this regression.

We display a notice about this, mostly so that if it still fails (e.g.
compressed) the user has some idea what is wrong.

Closes: 805069
</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>use std-algorithms instead of manual loops to avoid overflow warning</title>
<updated>2015-09-14T13:22:18Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2015-09-11T18:53:07Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=ae732225ec2fa0d7434c9f40a92ced8683752211'/>
<id>urn:sha1:ae732225ec2fa0d7434c9f40a92ced8683752211</id>
<content type='text'>
Reported-By: gcc
Understandable: no
Git-Dch: Ignore
</content>
</entry>
</feed>
