]> git.saurik.com Git - apt.git/log
apt.git
9 years agoCopyFile: fix BufSize to a sane value
Pino Toscano [Sat, 19 Dec 2015 11:00:43 +0000 (12:00 +0100)] 
CopyFile: fix BufSize to a sane value

Commit e977b8b9234ac5db32f2f0ad7e183139b988340d tries to make BufSize
calculated based on the size of the buffer; the problem is that
std::unique_ptr::size() returns a pointer to the data, so sizeof()
equals to the size of a pointer (later divided by sizeof(char), which
is 1). The result is that the CopyFile copies in chunks of 8 bytes,
which is not exactly ideal...

As solution, declare BufSize in advance, and use its value to allocate
the Buf array.

Closes: #808381
9 years agoFix FileUtlTest.GetTempDir failure when run as root
Pino Toscano [Sat, 19 Dec 2015 11:09:18 +0000 (12:09 +0100)] 
Fix FileUtlTest.GetTempDir failure when run as root

Testing /usr as TMPDIR assumes that GetTempDir() cannot use it
because it cannot write to it; this is true for non-root users, but
not so much for root.

Since root can access everything, perform this particular test case
only when not running as root.

Closes: #808383
9 years agoRelease 1.1.5 1.1.5
Julian Andres Klode [Mon, 14 Dec 2015 15:57:32 +0000 (16:57 +0100)] 
Release 1.1.5

9 years agotest-apt-download-progress: Run the https test multiple times
Julian Andres Klode [Mon, 14 Dec 2015 15:43:27 +0000 (16:43 +0100)] 
test-apt-download-progress: Run the https test multiple times

This filters out errors due to timing issues. Early exits if
enough pulses occured.

9 years agopkgcache: Make hash arch-independent using fixed size integer
Julian Andres Klode [Mon, 14 Dec 2015 15:15:36 +0000 (16:15 +0100)] 
pkgcache: Make hash arch-independent using fixed size integer

This helps writing test cases. Also adapt the test case that
expected 64-bit.

Nothing changes performance wise, the distribution of the hash
values remains intact.

9 years agodebian/apt.auto-removal.sh: Adjust -dbg exclusion for multi-arch
Julian Andres Klode [Mon, 14 Dec 2015 13:12:59 +0000 (14:12 +0100)] 
debian/apt.auto-removal.sh: Adjust -dbg exclusion for multi-arch

Allow an optional colon followed by anything at the end.

9 years agotagfile: Hardcode error message for out of range integer values
Julian Andres Klode [Mon, 14 Dec 2015 12:58:46 +0000 (13:58 +0100)] 
tagfile: Hardcode error message for out of range integer values

This makes the test suite work on 32 bit-long platforms.

Gbp-Dch: ignore

9 years agotest framework: More noopchroot fixes
Julian Andres Klode [Mon, 14 Dec 2015 12:39:52 +0000 (13:39 +0100)] 
test framework: More noopchroot fixes

Use asprintf() so we have easy error detection and do not depend
on PATH_MAX.

Do not add another separator to the generated path, in both cases
the path inside the chroot is guaranteed to have a leading /
already.

Also pass -Wall to gcc.

9 years agotest framework: Unset no_proxy as well
Julian Andres Klode [Mon, 14 Dec 2015 12:33:55 +0000 (13:33 +0100)] 
test framework: Unset no_proxy as well

This caused test-bug-717891-abolute-uris-for-proxies to fail

Gbp-Dch: ignore

9 years agotest framework: Unset http proxy variables in setupenvironment
Julian Andres Klode [Mon, 14 Dec 2015 12:27:00 +0000 (13:27 +0100)] 
test framework: Unset http proxy variables in setupenvironment

This breaks a lot of test cases

Gbp-Dch: ignore

9 years agotest framework: Correctly generate new paths in noopchroot
Julian Andres Klode [Mon, 14 Dec 2015 12:12:37 +0000 (13:12 +0100)] 
test framework: Correctly generate new paths in noopchroot

The allocated buffer was one byte too small. Allocate a buffer
of PATH_MAX instead and use snprintf(), as suggested by Martin
Pitt.

9 years agotest-apt-download-progress: Limit rate to 600k
Julian Andres Klode [Mon, 14 Dec 2015 09:43:26 +0000 (10:43 +0100)] 
test-apt-download-progress: Limit rate to 600k

This reduces the chance that the test fails.

Gbp-Dch: ignore

9 years agotest-apt-download-progress: Allow smaller progress change
Julian Andres Klode [Mon, 14 Dec 2015 09:42:38 +0000 (10:42 +0100)] 
test-apt-download-progress: Allow smaller progress change

Instead of checking for [10%, 100%), check for (0%, 100%),
that is everything < 100% and >0%.

Gbp-Dch: ignore

9 years agotest-sourceslist-lang-plusminus-options: Use amd64 architecture
Julian Andres Klode [Mon, 14 Dec 2015 09:04:09 +0000 (10:04 +0100)] 
test-sourceslist-lang-plusminus-options: Use amd64 architecture

This should make the test work on non-amd64 systems

Gbp-Dch: ignore

9 years agotests: Depend on libfile-fcntllock-perl to shut up dpkg-gencontrol
Julian Andres Klode [Mon, 14 Dec 2015 08:58:59 +0000 (09:58 +0100)] 
tests: Depend on libfile-fcntllock-perl to shut up dpkg-gencontrol

Ubuntu's autopkgtest server always prints

  dpkg-gencontrol: warning: File::FcntlLock not available; using flock which is not NFS-safe

which is somewhat annoying. Work around that by depending on that
perl stuff for the test suite.

Gbp-Dch: ignore

9 years agonon-existing directories don't need to be cleaned
David Kalnischkies [Mon, 14 Dec 2015 02:21:20 +0000 (03:21 +0100)] 
non-existing directories don't need to be cleaned

Trying to clean up directories which do not exist seems rather silly if
you think about it, so let apt think about it and stop it.

Depends a bit on the caller if this is fixing anything for them as they
might try to acquire a lock or doing other clever things as apt does.

Closes: 807477
9 years agosupport regex and co in 'apt-cache policy $pkg' again
David Kalnischkies [Mon, 14 Dec 2015 01:38:34 +0000 (02:38 +0100)] 
support regex and co in 'apt-cache policy $pkg' again

Regression of 1e064088bf7b3e29cd36d30760fb3e4143a1a49a (1.1~exp4) which
moved code around and renamed methods heavily ending up calling the
wrong method matching packagenames only instead of calling the full
array. Most commands work with versions, so this managed to fly under
the radar for quite a while.

Closes: 807870
9 years agoshow a more descriptive error for weak Release files
David Kalnischkies [Mon, 14 Dec 2015 01:18:25 +0000 (02:18 +0100)] 
show a more descriptive error for weak Release files

If we can't work with the hashes we parsed from the Release file we
display now an error message if the Release file includes only weak
hashes instead of downloading the indexes and failing to verify them
with "Hash Sum mismatch" even through the hashes didn't mismatch (they
were just weak).

If for some (unlikely) reason we have got weak hashes only for
individual targets we will show a warning to this effect (again, befor
downloading and failing the index itself).

Closes: 806459
9 years agoredirect which stderr to /dev/null for consistency
David Kalnischkies [Sun, 13 Dec 2015 23:33:22 +0000 (00:33 +0100)] 
redirect which stderr to /dev/null for consistency

The "standard" which (debianutils) has no output whatsoever on stderr,
bash and dash which use this implementation therefore haven't either.
In zsh 'which' is a shell built-in – and has no stderr output either, it
does print an error message on stdout…

So, realistically, a redirection isn't needed at all, but it also can't
hurt (<- I have said that before in this context ->) so why not for
consistency with… well, not with "command -v" as that hasn't an error
message either. Lets say for consistency with my mental image of shell,
as I am still a bit puzzled by zsh's which and now could imagine even
more strange things in other shells.

Closes: 807373
9 years agomention APT::AutoRemove::{Recommends,Suggests}Important option
Andreas Metzler [Sun, 13 Dec 2015 23:24:21 +0000 (00:24 +0100)] 
mention APT::AutoRemove::{Recommends,Suggests}Important option

Closes: 807413
9 years agofix incorrect Korean translation of "manually" and "automatically"
Seo Sanghyeon [Sun, 13 Dec 2015 23:14:42 +0000 (00:14 +0100)] 
fix incorrect Korean translation of "manually" and "automatically"

Korean translation update is attached.
I downloaded the original from https://www.debian.org/international/l10n/po/ko.

Originally, "manually" and "automatically" were translated same,
which was confusing.

Mail-Reference: <CAPrzcnL_YynHQkCSE4xH29eW1O0Q6SPhoSf21KOFTu=Vv6-0Nw@mail.gmail.com>
Mail-Archive: https://lists.debian.org/deity/2015/12/msg00108.html

9 years agoparse .diff/Index hashes in reverse order
David Kalnischkies [Sun, 13 Dec 2015 17:53:08 +0000 (18:53 +0100)] 
parse .diff/Index hashes in reverse order

Reversing the parsing order ensures that we parse weaker hashes (like
SHA1) before we touch newer/stronger hashes (like SHA256) as the weaker
ones will usually be there for a longer time already with data already
present, which we would discard if we start with the strong one first.

The discarding is visible in the debug logs:
File X wasn't in the list for the first parsed hash! (history)
File X wasn't in the list for the first parsed hash! (patches)
which if file X is part of the patch-path means apt will not find a path and
fallback to acquire the whole file instead needlessly.
If file X isn't part of the patch-path that is no problem, so that
effects only the update-call which updates with patches coming from
before and after the addition of a new hash.

9 years agofix typos and docs in GlobalError documentation
David Kalnischkies [Sun, 13 Dec 2015 16:43:55 +0000 (17:43 +0100)] 
fix typos and docs in GlobalError documentation

Reported-By: Manuel A. Fernandez Montecelo <mafm@debian.org>
Git-Dch: Ignore

9 years agoupdate symbols files to 1.1.4 state of affairs
David Kalnischkies [Mon, 7 Dec 2015 15:32:11 +0000 (16:32 +0100)] 
update symbols files to 1.1.4 state of affairs

9 years agocheck library was built before comparing with symbols file
David Kalnischkies [Mon, 7 Dec 2015 15:26:01 +0000 (16:26 +0100)] 
check library was built before comparing with symbols file

Git-Dch: Ignore

9 years ago.travis.yml: Switch to new trusty machines
Julian Andres Klode [Fri, 11 Dec 2015 14:10:01 +0000 (15:10 +0100)] 
.travis.yml: Switch to new trusty machines

Yay, newer server

Gbp-Dch: ignore

9 years agommap: Define _DEFAULT_SOURCE instead of _BSD_SOURCE
Julian Andres Klode [Fri, 11 Dec 2015 14:02:24 +0000 (15:02 +0100)] 
mmap: Define _DEFAULT_SOURCE instead of _BSD_SOURCE

Fixes a warning reported by gcc.

Gbp-Dch: ignore

9 years agoapt-internal-solver: Make ShowHelp() and GetCommands() static
Julian Andres Klode [Fri, 11 Dec 2015 14:00:17 +0000 (15:00 +0100)] 
apt-internal-solver: Make ShowHelp() and GetCommands() static

This fixes a warning reported by gcc.

Gbp-Dch: ignore

9 years agoBump cache minor version to 2 to trigger rebuilds
Julian Andres Klode [Fri, 11 Dec 2015 13:32:44 +0000 (14:32 +0100)] 
Bump cache minor version to 2 to trigger rebuilds

With the package names now normalized to lower case, the caches
of affected systems need to be rebuild. Adjust the minor version
to trigger such a rebuild.

Gbp-Dch: ignore

9 years agoConvert package names from Packages files to lower case
Julian Andres Klode [Fri, 11 Dec 2015 13:27:56 +0000 (14:27 +0100)] 
Convert package names from Packages files to lower case

dpkg does that when reading package files, so we should do
the same. This only deals with parsing names from binary
package paragraphs, it does not look at source package names
and/or the list of binaries in a dsc file.

Closes: #807012
9 years agotest: Fix testcases relying on mixed case package names
Julian Andres Klode [Fri, 11 Dec 2015 13:42:11 +0000 (14:42 +0100)] 
test: Fix testcases relying on mixed case package names

Gbp-Dch: ignore

9 years agoDo not swap required and important in pkgCache::Priority()
Julian Andres Klode [Thu, 10 Dec 2015 08:48:21 +0000 (09:48 +0100)] 
Do not swap required and important in pkgCache::Priority()

required and important were swapped, leading to wrong
output.

Closes: #807523
Thanks: Manuel A. Fernandez Montecelo for discovering this

9 years agoRelease 1.1.4 1.1.4
Julian Andres Klode [Mon, 7 Dec 2015 14:31:55 +0000 (15:31 +0100)] 
Release 1.1.4

9 years agoUse 0llu instead of 0ull in one place too
Julian Andres Klode [Mon, 7 Dec 2015 13:45:52 +0000 (14:45 +0100)] 
Use 0llu instead of 0ull in one place too

Gbp-Dch: ignore

9 years agoAvoid overflow when summing up file sizes
Julian Andres Klode [Mon, 7 Dec 2015 13:42:25 +0000 (14:42 +0100)] 
Avoid overflow when summing up file sizes

We need to pass 0llu instead of 0 as the init value, otherwise
std::accumulate will calculate with ints.

Reported-by: Raphaël Hertzog
9 years agopart revert, part redo 'which' replacement
David Kalnischkies [Sun, 6 Dec 2015 23:09:10 +0000 (00:09 +0100)] 
part revert, part redo 'which' replacement

In e75e5879 'replace "which" with "command -v" for portability' I missed
that command -v isn't actually required to be available in debian, so
for the 5 files we are using it:

Two (abicheck/run_abi_test & test/integration/framework) are called in
environments were I believe sh is at least dash or 'better' as the first
one is "interactive" for apt developers and the later is sourced by ~200
tests in the same directory run by hand and ci-services – for the later
we have pulled some uglier hacks for worser things already, so if there
should actually end up needing something more compatible we will notice
eventually (and the later actually had a command -v call for some time
already and nobody came running).

debian/rules and debian/apt.cron.daily I switched back to which as that
is more or less debian-specific or at least highly non-critical.

That leaves cmdline/apt-key.in with a bunch of calls where I will
implement that functionality in shell as this is relatively short-lived
as it is used to detect wget (for net-update, which Michael wants to
revive and in that process will properly use apt-helper instead of wget)
and to detect gpg vs. gpg2 systems, where the earlier is supposed to go
away in the longrun (or the later, but by replacing the earlier…).
[and this gpg/gpg2 detection is new in sid, so I have some sympathy for
that being a problem now.]

Thanks: Jakub Wilk for pointing out #747320

9 years agoreplace run-parts with find|sort to avoid debianutils usage
David Kalnischkies [Sun, 6 Dec 2015 13:46:11 +0000 (14:46 +0100)] 
replace run-parts with find|sort to avoid debianutils usage

After e75e5879 the reason for an implicit dependency on debianutils
(which is essential for debian, but likely not on other systems) was
just two uses of run-parts, which can be replaced with the a lot more
portable find-piped-into-sort duo.

9 years agoreplace "which" with "command -v" for portability
David Kalnischkies [Sun, 6 Dec 2015 13:03:35 +0000 (14:03 +0100)] 
replace "which" with "command -v" for portability

which is a debian specific tool packaged in debianutils (essential)
while command is a shell builtin defined by POSIX.

Closes: 807144
Thanks: Mingye Wang for the suggestion.

9 years agoapt-helper.cc: include <stdlib.h> for atoi
Fredrik Fornwall [Sun, 6 Dec 2015 12:30:51 +0000 (13:30 +0100)] 
apt-helper.cc: include <stdlib.h> for atoi

Include <stdlib.h> to ensure that atoi(3) is defined to improve
general portability and fix a specific build failure on Android.

Closes: 807031
9 years agouse @CHANGEPATH@ as placeholder in changelog URI templates
David Kalnischkies [Wed, 2 Dec 2015 11:43:33 +0000 (12:43 +0100)] 
use @CHANGEPATH@ as placeholder in changelog URI templates

This should make it more obvious that CHANGEPATH is a placeholder which
apt will replace with a package specific path rather than a string
constant.

Mail-Reference: <87d1upgvaf.fsf@deep-thought.43-1.org>
Mail-Archive: https://lists.debian.org/debian-dak/2015/12/msg00005.html

9 years agotests: apt build-dep actually reports no depends correctly
David Kalnischkies [Wed, 2 Dec 2015 11:56:04 +0000 (12:56 +0100)] 
tests: apt build-dep actually reports no depends correctly

'Regression' of 7d19ee92f2368a40e739cb27d22d6d28f37ebf45, just that it
now works more as expected than previously. Of course, build-essentials
are implicitly also build dependencies, so by definition all packages
have build dependencies, but that isn't what this message wants to say
and it isn't what the user expects.

Git-Dch: Ignore

9 years agorequire explicit paths to dsc/control as we do for deb files
David Kalnischkies [Tue, 1 Dec 2015 13:09:23 +0000 (14:09 +0100)] 
require explicit paths to dsc/control as we do for deb files

Otherwise a user is subject to unexpected content-injection depending on
which directory she happens to start apt in. This also cleans up the code
requiring less implementation details in build-dep which is always good.

Technically, this is an ABI break as we override virtual methods, but
that they weren't overridden was a mistake resulting in pure classes,
which shouldn't be pure, so they were unusable – and as they are new in
1.1 nobody is using them yet (and hopefully ever as they are borderline
implementation details).

Closes: 806693
9 years agodeal with configured build-essential first
David Kalnischkies [Tue, 1 Dec 2015 10:29:17 +0000 (11:29 +0100)] 
deal with configured build-essential first

There is no need to check configured build-essentials for each package,
doing it once at the start ought to be enough.

Git-Dch: Ignore

9 years agosplit build-dep satisfier loop out of DoBuildDep
David Kalnischkies [Tue, 1 Dec 2015 09:49:40 +0000 (10:49 +0100)] 
split build-dep satisfier loop out of DoBuildDep

Lets do this non-behaviour change before we modify the source for real
as the reflow and moving would otherwise hide all the interesting changes.

Git-Dch: Ignore

9 years agoadd a apt breaks (apt-utils << 1.1.3) for partial-upgrades
David Kalnischkies [Tue, 1 Dec 2015 13:22:03 +0000 (14:22 +0100)] 
add a apt breaks (apt-utils << 1.1.3) for partial-upgrades

You could think a0bf789783ea283914d059aea0f4d0f77d6bbaaf would be
enough, but it turns out its only half of the puzzle.

Closes: 806765
Suggested-By: Julian Andres Klode <jak@debian.org>
9 years agodefaults.mak: Set LC_COLLATE=C.UTF-8 for reproducible sort order
Julian Andres Klode [Mon, 30 Nov 2015 19:33:43 +0000 (20:33 +0100)] 
defaults.mak: Set LC_COLLATE=C.UTF-8 for reproducible sort order

With the 1.1.3 release we have seen some re-ordering of the
translation template and the translations. It turns out that
this is because sort sorts differently depending on the locale,
so let's force it to always sort in the C locale.

9 years agorelease 1.1.3 1.1.3
Michael Vogt [Mon, 30 Nov 2015 07:51:37 +0000 (08:51 +0100)] 
release 1.1.3

Git-dch: ignore

9 years agoadd apt-utils Depends apt (= ${binary:Version})
David Kalnischkies [Sun, 29 Nov 2015 15:25:56 +0000 (16:25 +0100)] 
add apt-utils Depends apt (= ${binary:Version})

As we ship some tools in apt-utils which depend on our private library
we have to ensure that apt-utils depends on a proper apt version.
An exact version is probably a bit much, but the simplest way out.

9 years agodrop some needlessly public declarations in libapt-private
David Kalnischkies [Sun, 29 Nov 2015 15:57:58 +0000 (16:57 +0100)] 
drop some needlessly public declarations in libapt-private

Git-Dch: Ignore

9 years agomove 'unmet' handling into libapt-private
David Kalnischkies [Sun, 29 Nov 2015 14:49:55 +0000 (15:49 +0100)] 
move 'unmet' handling into libapt-private

Git-Dch: Ignore

9 years agoaccept ../ on the cmdline as start for a deb file as well
David Kalnischkies [Sun, 29 Nov 2015 13:27:25 +0000 (14:27 +0100)] 
accept ../ on the cmdline as start for a deb file as well

Regression of 14341a7ee1ca3dbcdcdbe10ad19b947ce23d972d.

Reported-By: Julian Andres Klode <jak@debian.org>
9 years agotests: fix typos, correct helpmsgs and test tests
David Kalnischkies [Sun, 29 Nov 2015 13:05:38 +0000 (14:05 +0100)] 
tests: fix typos, correct helpmsgs and test tests

Git-Dch: Ignore

9 years agodo not override exact targetrelease matches with lesser matches
Andreas Cadhalpun [Sun, 29 Nov 2015 12:36:28 +0000 (13:36 +0100)] 
do not override exact targetrelease matches with lesser matches

The relevant testcases are in test/integration/test-apt-get-source.
There is a test for #731853 that is supposed to "ensure that apt will
pick the higher version number" of 0.0.1 (stable) and 0.1 (stable).
However, this works by pure chance, as simply reversing the order
of the two insertsource lines makes the test fail.
So #731853 isn't really fixed, yet.

Actually, that's related to the problem I reported, as the underlying
issue for both is the same:
In the FindSrc function apt chooses a new 'best hit', if either
 * there is a target release and it matches the release of the package,
 * or the version of the package is higher than the last best hit.

Consider having 1.0 (stable), 2.0 (unstable) and 1.5 (unstable),
in this order.

Looking for the version in stable, apt first selects 1.0, because the
release matches the target release, but then subsequently selects 2.0,
because the version is higher.

Looking for the version in unstable, apt first selects 2.0, because the
release matches the target release, but then subsequently selects 1.5,
because the release also matches the target release.

The correct way would be to choose a new 'best hit', if either
 * there is a target release and it matches the release of the package,
 * or there is no target release
and the version is higher than the last best hit.

Closes: 746412
Mail-Reference: <565A604B.7090104@googlemail.com>
Mail-Archive: https://lists.debian.org/debian-devel/2015/11/msg00470.html

9 years agouse function pointers instead of weak symbols for cmdline parsing
David Kalnischkies [Sun, 29 Nov 2015 12:12:38 +0000 (13:12 +0100)] 
use function pointers instead of weak symbols for cmdline parsing

Passing function pointers around while working on this was very icky,
but if weak symbols are too much to ask for…

Reverts "do not use "-Wl,-Bsymbolic-functions" during the build to avoid
breakage" aka a5fc9be36211a290a7abc3ca2a8bf98943bc1f57.

9 years agodoc: VerifyFile checks all hashes instead of best only
David Kalnischkies [Sat, 28 Nov 2015 16:11:23 +0000 (17:11 +0100)] 
doc: VerifyFile checks all hashes instead of best only

The implementation changed in
495b7a615a2d8f485beadf88c6ed298f5bbe50c2

Git-Dch: Ignore
Reported-By: Julian Andres Klode <jak@debian.org>
9 years agoRelease 1.1.2 1.1.2
Julian Andres Klode [Sat, 28 Nov 2015 21:49:07 +0000 (22:49 +0100)] 
Release 1.1.2

9 years agoRevert "Revert "appease adequate with some weak symbols for -private""
Julian Andres Klode [Sat, 28 Nov 2015 21:36:25 +0000 (22:36 +0100)] 
Revert "Revert "appease adequate with some weak symbols for -private""

This reverts commit 7ac9386cb6e272625490fcf3e8183b45e28bbc43.

9 years agodo not use "-Wl,-Bsymbolic-functions" during the build to avoid breakage
Michael Vogt [Sat, 28 Nov 2015 20:59:18 +0000 (21:59 +0100)] 
do not use "-Wl,-Bsymbolic-functions" during the build to avoid breakage

9 years agoRevert "appease adequate with some weak symbols for -private"
Julian Andres Klode [Sat, 28 Nov 2015 21:27:15 +0000 (22:27 +0100)] 
Revert "appease adequate with some weak symbols for -private"

This reverts commit 28f24d3dad1844af316337d565ba2ebc11c8ce97.

This fails on Ubuntu as they build with -Bsymbolic-functions.

9 years agodisable privilege dropping for rsh/ssh method by default
David Kalnischkies [Sat, 28 Nov 2015 15:09:42 +0000 (16:09 +0100)] 
disable privilege dropping for rsh/ssh method by default

ssh expects various configuration bits to be usable like known hosts,
possibly keys and co. Setting this up needs some user work for probably
not a whole lot of benefits, so instead of forcing it upon users on
upgrade disable dropping for it by default.

Closes: 806511
9 years agofix program name detection in rsh method
David Kalnischkies [Sat, 28 Nov 2015 14:46:31 +0000 (15:46 +0100)] 
fix program name detection in rsh method

Regression intoduced in 23e64f6d0facf9610c1042326ad9850e071e8349

9 years agodisable privilege-drop verification by default as fakeroot trips over it
David Kalnischkies [Sat, 28 Nov 2015 12:17:57 +0000 (13:17 +0100)] 
disable privilege-drop verification by default as fakeroot trips over it

Dropping privileges is an involved process for code and system alike so
ideally we want to verify that all the work wasn't in vain. Stuff
designed to sidestep the usual privilege checks like fakeroot (and its
many alternatives) have their problem with this through, partly through
missing wrapping (#806521), partly as e.g. regaining root from an
unprivileged user is in their design. This commit therefore disables
most of these checks by default so that apt runs fine again in a
fakeroot environment.

Closes: 806475
9 years agoshow the group we failed to drop via setgroups
David Kalnischkies [Fri, 27 Nov 2015 23:07:07 +0000 (00:07 +0100)] 
show the group we failed to drop via setgroups

This also deals with the unlikely case of groups being mentioned
multiple times or if the effective group isn't mentioned at all.
In practice, it is a debugging aid through like for #806475.

Git-Dch: Ignore

9 years agoautopkgtest: use the quiet mode as for travis and co
David Kalnischkies [Sat, 28 Nov 2015 00:30:53 +0000 (01:30 +0100)] 
autopkgtest: use the quiet mode as for travis and co

Git-Dch: Ignore

9 years agotests: use id to get user/group instead of environment
David Kalnischkies [Sat, 28 Nov 2015 00:27:49 +0000 (01:27 +0100)] 
tests: use id to get user/group instead of environment

debci seems to have a cleaner environment now and even if not we could
never guess nogroup, so figure it out properly via 'id'.

Git-Dch: Ignore

9 years agoignore deprecated method calls in deprecated method
David Kalnischkies [Fri, 27 Nov 2015 22:49:15 +0000 (23:49 +0100)] 
ignore deprecated method calls in deprecated method

Git-Dch: Ignore

9 years agooutsmart gcc -O3 over-optimization in pkgCdrom::FindPackages
David Kalnischkies [Fri, 27 Nov 2015 21:22:21 +0000 (22:22 +0100)] 
outsmart gcc -O3 over-optimization in pkgCdrom::FindPackages

Seems like a simpler workaround than forcing a lower optimization
level just for this for all of apt.

See also:
https://bugs.launchpad.net/ubuntu/+source/gcc-5/+bug/1473674

9 years agoupdate arch-specific symbols in symbols file
David Kalnischkies [Fri, 27 Nov 2015 16:37:16 +0000 (17:37 +0100)] 
update arch-specific symbols in symbols file

Git-Dch: Ignore

9 years ago./prepare-release pre-export 1.1.1
Michael Vogt [Fri, 27 Nov 2015 15:06:20 +0000 (16:06 +0100)] 
./prepare-release pre-export

9 years agoprepare 1.1.1 release
Michael Vogt [Fri, 27 Nov 2015 15:05:45 +0000 (16:05 +0100)] 
prepare 1.1.1 release

9 years agosay 'master' is default branch in README, too
David Kalnischkies [Fri, 27 Nov 2015 14:47:35 +0000 (15:47 +0100)] 
say 'master' is default branch in README, too

Git-Dch: Ignore

9 years agoadd messages to our deprecation warnings in libapt
David Kalnischkies [Fri, 27 Nov 2015 14:40:47 +0000 (15:40 +0100)] 
add messages to our deprecation warnings in libapt

Git-Dch: Ignore

9 years agoappease adequate with some weak symbols for -private
David Kalnischkies [Fri, 27 Nov 2015 13:02:49 +0000 (14:02 +0100)] 
appease adequate with some weak symbols for -private

Closes: #806422
9 years agouse pre-build hook to check for pre-export execution
David Kalnischkies [Fri, 27 Nov 2015 12:06:15 +0000 (13:06 +0100)] 
use pre-build hook to check for pre-export execution

Git-Dch: Ignore

9 years agodebian/gbp.conf: point debian-branch to master
Michael Vogt [Fri, 27 Nov 2015 11:56:22 +0000 (12:56 +0100)] 
debian/gbp.conf: point debian-branch to master

Git-Dch: ignore

9 years agoCheck if the Apt::Sandbox::User exists in CheckDropPrivsMustBeDisabled()
Michael Vogt [Fri, 27 Nov 2015 11:29:22 +0000 (12:29 +0100)] 
Check if the Apt::Sandbox::User exists in CheckDropPrivsMustBeDisabled()

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
9 years agoDeal with killed acquire methods properly instead of hanging
Michael Vogt [Fri, 27 Nov 2015 11:07:48 +0000 (12:07 +0100)] 
Deal with killed acquire methods properly instead of hanging

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
9 years agorelease apt 1.1 1.1
Michael Vogt [Thu, 26 Nov 2015 11:41:49 +0000 (12:41 +0100)] 
release apt 1.1

9 years agoDo not run pre*export* functions in the pre*build* hook
Michael Vogt [Thu, 26 Nov 2015 11:58:20 +0000 (12:58 +0100)] 
Do not run pre*export* functions in the pre*build* hook

Unfortunately it seems like git-buildpackage does not have a
pre-export hook so the hook is disabled for now.

Git-Dch: ignore

9 years agoFix missing </literal> in sources.list.5.xml page
Michael Vogt [Thu, 26 Nov 2015 11:39:06 +0000 (12:39 +0100)] 
Fix missing </literal> in sources.list.5.xml page

Git-Dch: ignore

9 years agoMerge remote-tracking branch 'donkult/debian/experimental' into debian/experimental
Michael Vogt [Thu, 26 Nov 2015 11:32:51 +0000 (12:32 +0100)] 
Merge remote-tracking branch 'donkult/debian/experimental' into debian/experimental

9 years agoreword Trusted paragraph in sources.list(5)
Justin B Rye [Thu, 26 Nov 2015 11:16:44 +0000 (12:16 +0100)] 
reword Trusted paragraph in sources.list(5)

Git-Dch: Ignore

9 years agoRun ./prepare-release pre-export
Michael Vogt [Wed, 25 Nov 2015 15:04:35 +0000 (16:04 +0100)] 
Run ./prepare-release pre-export

9 years agoPrepare release 1.1~exp17
Michael Vogt [Wed, 25 Nov 2015 15:03:54 +0000 (16:03 +0100)] 
Prepare release 1.1~exp17

9 years agoupdate manpage last-modified from git via pre-export hook
David Kalnischkies [Sun, 22 Nov 2015 18:02:13 +0000 (19:02 +0100)] 
update manpage last-modified from git via pre-export hook

Never updating this information is wrong, updating it automatically
isn't super correct either, but it seems conventional to have it and
updating it more often than needed seems better than updating it never.

Git-Dch: Ignore

9 years agoenforce a slightly more sensible default header
David Kalnischkies [Sun, 22 Nov 2015 17:07:12 +0000 (18:07 +0100)] 
enforce a slightly more sensible default header

In 12f7536 I chose to opt for a slightly better text which avoids
assigning copyright to the FSF (not because it would be wrong to do it,
but is usually not what the contributor intended, but just the default.

xgettext has a --foreign flag for avoiding the copyright, but po4a
hasn't and an empty copyright-holder doesn't work either, so this little
rework of files with sed and cat.

Git-Dch: Ignore

9 years agotypo: run s#frontend#front-end# on all of src:apt
David Kalnischkies [Sun, 22 Nov 2015 14:09:50 +0000 (15:09 +0100)] 
typo: run s#frontend#front-end# on all of src:apt

The manpages were fixed by Justin B Rye, lets deal with the rest now.

Git-Dch: Ignore

9 years agoreview sources.list(5) manpage
Justin B Rye [Sun, 22 Nov 2015 13:29:49 +0000 (14:29 +0100)] 
review sources.list(5) manpage

9 years agoreview apt-secure(8) manpage
Justin B Rye [Sun, 22 Nov 2015 10:14:47 +0000 (11:14 +0100)] 
review apt-secure(8) manpage

9 years agoreview apt-mark(8) manpage
Justin B Rye [Sun, 22 Nov 2015 10:05:45 +0000 (11:05 +0100)] 
review apt-mark(8) manpage

9 years agoreview apt(8) manpage
Justin B Rye [Sun, 22 Nov 2015 09:56:25 +0000 (10:56 +0100)] 
review apt(8) manpage

9 years agoslightly rephrase notice shown for insecure repositories
Justin B Rye [Sun, 22 Nov 2015 09:14:12 +0000 (10:14 +0100)] 
slightly rephrase notice shown for insecure repositories

Git-Dch: Ignore

9 years agoreleasing package apt version 1.1~exp16 1.1_exp16
Michael Vogt [Tue, 24 Nov 2015 20:29:56 +0000 (21:29 +0100)] 
releasing package apt version 1.1~exp16

9 years agoshow potentially arch-qualified fullname in 'apt show'
David Kalnischkies [Sat, 21 Nov 2015 17:15:22 +0000 (18:15 +0100)] 
show potentially arch-qualified fullname in 'apt show'

We do not show the architecture as a dedicated field as this is rather
technical information, but as packagename it makes sense to show the
architecture as other part of apt will refer to it in this way.

9 years agoreview of new/changed translatable program strings
Justin B Rye [Sat, 21 Nov 2015 16:50:06 +0000 (17:50 +0100)] 
review of new/changed translatable program strings

Reference mail:
https://lists.debian.org/debian-l10n-english/2015/11/msg00006.html

9 years agodo not sent Last-Modified if we expect a changed file
David Kalnischkies [Sat, 21 Nov 2015 12:47:19 +0000 (13:47 +0100)] 
do not sent Last-Modified if we expect a changed file

In 8d041b4f we made apt figure out based on the last Release file it has
if it should request a file or not given that the hashes changed or not.
So if we have a last Release file and do a request, do not sent a
Last-Modified header as we expect a change so much that a non-change
would indeed be an error. The Last-Modified header is therefore at best
ignored by the server, so sending it is just wasted effort. In the worst
case as time is a fragile thing the server decides against sending us an
update with the idea that we already have the latest content, which we
know for a fact that we haven't. Given that we sent less information to
the server our request is on its own also less identifiable as coming
from a returning or new user.

The disadvantage is that if we end up getting an old index file after
getting a new Release file from another mirror the old mirror will not
be able to tell us 'Hit', but instead sends us the complete file we
discard, but both lets us end up with the same error class in the end,
so the difference isn't big in practice.

9 years agofix a few typos in code-comments/apt manpage
David Kalnischkies [Fri, 20 Nov 2015 08:46:18 +0000 (09:46 +0100)] 
fix a few typos in code-comments/apt manpage

Reported-By: codespell
Git-Dch: Ignore

9 years agodo not segfault in cache generation on mmap failure
David Kalnischkies [Thu, 19 Nov 2015 23:54:07 +0000 (00:54 +0100)] 
do not segfault in cache generation on mmap failure

Out of memory and similar circumstanzas could cause MMap::Map to fail
and especially the mmap/malloc calls in it. With some additional
checking we can avoid segfaults and similar in such situations – at
least in theory as if this is a real out of memory everything we do to
handle the error could just as well run into a memory problem as well…

But at least in theory (if MMap::Map is made to fail always) we can deal
with it so good that a user actually never sees a failure (as the cache
it tries to load with it fails and is discarded, so that DynamicMMap
takes over and a new one is build) instead of segfaulting.

Closes: 803417
9 years agodo not rerun ./configure causing FTCBFS with newer autotools-dev
David Kalnischkies [Thu, 19 Nov 2015 21:39:13 +0000 (22:39 +0100)] 
do not rerun ./configure causing FTCBFS with newer autotools-dev

If the config.{sub,guess} files we linked in were newer than our
configure script we ended up recreating configure and then rerun it
without all the configuration options which were (potentially) present
for a previous run.

We avoid this by changing to the same ruleset as in the debian/rules
file which compares the config.* files against a stamp file rather than
the configure script itself as its the configuration itself which
depends on all scripts, not configure on the config scripts.

While at it, we also drop the 'make -s dirs' call as we don't need to do
it explicitly here as proper dependencies will take care of it.

Thanks: Helmut Grohne for the detailed bugreport.
Closes: 804923
9 years agoupdate libapt-{pkg,inst} symbols files
David Kalnischkies [Thu, 19 Nov 2015 21:38:44 +0000 (22:38 +0100)] 
update libapt-{pkg,inst} symbols files