]> git.saurik.com Git - apt.git/log
apt.git
10 years agoparse and retrieve multiple Descriptions in one record
David Kalnischkies [Sun, 18 Aug 2013 20:20:25 +0000 (22:20 +0200)] 
parse and retrieve multiple Descriptions in one record

It seems unlikely for now that proper archives will carry multiple
Description-* stanzas in the Packages (or Translation-*) file, but
sometimes apt eats its own output as shown by the usage of the CD team
and it would be interesting to let apt output multiple translations
e.g. in 'apt-cache show'.

10 years agoreenable pipelining via hashsum reordering support
David Kalnischkies [Mon, 28 Apr 2014 08:02:27 +0000 (10:02 +0200)] 
reenable pipelining via hashsum reordering support

Now that methods have the expected hashes available they can check if
the response from the server is what they expected. Pipelining is one of
those areas in which servers can mess up by not supporting it properly,
which forced us to disable it for the time being. Now, we check if
we got a response out of order, which we can not only use to disable
pipelining automatically for the next requests, but we can fix it up
just like the server responded in proper order for the current requests.

To ensure that this little trick works pipelining is only attempt if we
have hashsums for all the files in the chain which in theory reduces the
use of pipelining usage even on the many servers which work properly,
but in practice only the InRelease file (or similar such) will be
requested without a hashsum – and as it is the only file requested in
that stage it can't be pipelined even if we wanted to.

Some minor annoyances remain: The display of the progress we have
doesn't reflect this change, so it looks like the same package gets
downloaded multiple times while others aren't at all. Further more,
partial files are not supported in this recovery as the received data
was appended to the wrong file, so the hashsum doesn't match.

Both seem to be minor enough to reenable pipelining by default until
further notice through to test if it really solves the problem.
This therefore reverts commit 8221431757c775ee875a061b184b5f6f2330f928.

10 years agotell download methods the expected hashes
David Kalnischkies [Sun, 27 Apr 2014 21:02:00 +0000 (23:02 +0200)] 
tell download methods the expected hashes

Now that we have all hashes in the acquire system, pass the info down to
the methods, so that it can use it in the request and/or to precheck the
response.

10 years agopromote ExpectedHashes to a pkgAcquire::Item member
David Kalnischkies [Sun, 27 Apr 2014 20:25:33 +0000 (22:25 +0200)] 
promote ExpectedHashes to a pkgAcquire::Item member

Beside being another big API break with hopefully zero fallout in
reality it avoids having the same member and helper code in each and
every subclass.

10 years agodeal with hashes in ftparchive more dynamic as well
David Kalnischkies [Sun, 27 Apr 2014 16:23:20 +0000 (18:23 +0200)] 
deal with hashes in ftparchive more dynamic as well

Now that libapts acquire system happily passes around hashes and can be
made to support new ones without an ABI break in the future, we can
free ftparchive from all the deprecation warnings the last commit
introduced for it.

The goal here isn't to preserve ABI as we have none to keep here, but to
help avoiding introduction problems of 'new' hashes later as bugs creep
into the copy&paste parts, so short/less of them is good.

10 years agouse HashStringList in the acquire system
David Kalnischkies [Sun, 18 Aug 2013 22:00:23 +0000 (00:00 +0200)] 
use HashStringList in the acquire system

It is not very extensible to have the supported Hashes hardcoded
everywhere and especially if it is part of virtual method names.
It is also possible that a method does not support the 'best' hash
(yet), so we might end up not being able to verify a file even though we
have a common subset of supported hashes. And those are just two of the
cases in which it is handy to have a more dynamic selection.

The downside is that this is a MAJOR API break, but the HashStringList
has a string constructor for compatibility, so with a bit of luck the
few frontends playing with the acquire system directly are okay.

10 years agouse 'best' hash for source authentication
David Kalnischkies [Sun, 18 Aug 2013 21:27:24 +0000 (23:27 +0200)] 
use 'best' hash for source authentication

Collect all hashes we can get from the source record and put them into a
HashStringList so that 'apt-get source' can use it instead of using
always the MD5sum.

We therefore also deprecate the MD5 struct member in favor of the list.

While at it, the parsing of the Files is enhanced so that records which
miss "Files" (aka MD5 checksums) are still searched for other checksums
as they include just as much data, just not with a nice and catchy name.

LP: 1098738

10 years agoadd a simple container for HashStrings
David Kalnischkies [Sun, 18 Aug 2013 21:17:05 +0000 (23:17 +0200)] 
add a simple container for HashStrings

APT supports more than just one HashString and even allows to enforce
the usage of a specific hash. This class is intended to help with
storage and passing around of the HashStrings.

Git-Dch: Ignore

10 years agotests: be able to disable "Fetched …" statistics message
David Kalnischkies [Thu, 8 May 2014 23:22:50 +0000 (01:22 +0200)] 
tests: be able to disable "Fetched …" statistics message

The line contains everchanging execution statistics which is harmful for
testcases as they need to filter out such lines, but this is hard so we
can just add an option to disable them instead and be done.

Git-Dch: Ignore

10 years agouse a std::vector instead of hardcoded array
David Kalnischkies [Thu, 8 May 2014 19:51:26 +0000 (21:51 +0200)] 
use a std::vector instead of hardcoded array

Arrays with predefined lengths are very fragile as they are
likely forgotten in future changes and the size in this case
is dynamic making it even more dangerous.

Git-Dch: Ignore

10 years agomark as Automatic/Downloadable pure as gcc suggests
David Kalnischkies [Thu, 8 May 2014 17:03:33 +0000 (19:03 +0200)] 
mark as Automatic/Downloadable pure as gcc suggests

Git-Dch: Ignore
Reported-By: gcc
10 years agomake test independent from the actual Install-Size
David Kalnischkies [Thu, 8 May 2014 16:52:51 +0000 (18:52 +0200)] 
make test independent from the actual Install-Size

Git-Dch: Ignore

10 years agofix apt-config test now that PATH changed in 8c617819
David Kalnischkies [Thu, 8 May 2014 16:51:24 +0000 (18:51 +0200)] 
fix apt-config test now that PATH changed in 8c617819

Git-Dch: Ignore

10 years agoapt-pkg/deb/debindexfile.cc: do not hardcode dpkg
Michael Vogt [Thu, 8 May 2014 12:39:51 +0000 (14:39 +0200)] 
apt-pkg/deb/debindexfile.cc: do not hardcode dpkg

10 years agoapt-private/acqprogress.cc: do not show file size on IMSHit, it wasn't fetched, so...
Michael Vogt [Thu, 8 May 2014 12:31:10 +0000 (14:31 +0200)] 
apt-private/acqprogress.cc: do not show file size on IMSHit, it wasn't fetched, so why bother

10 years agoRevert "fix test-bug-602412-dequote-redirect by removing the aptget update size infor...
Michael Vogt [Thu, 8 May 2014 12:30:18 +0000 (14:30 +0200)] 
Revert "fix test-bug-602412-dequote-redirect by removing the aptget update size information"

This reverts commit 773642528b6d9858c2c68ada42705ea71c8db37e.

10 years agoMerge remote-tracking branch 'mvo/feature/build-dep-dsc2' into debian/experimental
Michael Vogt [Thu, 8 May 2014 12:29:30 +0000 (14:29 +0200)] 
Merge remote-tracking branch 'mvo/feature/build-dep-dsc2' into debian/experimental

Conflicts:
apt-pkg/deb/debindexfile.cc
apt-pkg/deb/debindexfile.h
apt-pkg/deb/debsrcrecords.cc

10 years agoMerge remote-tracking branch 'mvo/bugfix/update-progress-reporting' into debian/exper...
Michael Vogt [Thu, 8 May 2014 11:43:46 +0000 (13:43 +0200)] 
Merge remote-tracking branch 'mvo/bugfix/update-progress-reporting' into debian/experimental

10 years agoupdate test-apt-progress-fd
Michael Vogt [Thu, 8 May 2014 11:43:18 +0000 (13:43 +0200)] 
update test-apt-progress-fd

10 years agoMerge remote-tracking branch 'upstream/debian/sid' into bugfix/update-progress-reporting
Michael Vogt [Thu, 8 May 2014 11:41:21 +0000 (13:41 +0200)] 
Merge remote-tracking branch 'upstream/debian/sid' into bugfix/update-progress-reporting

10 years agoMerge branch 'debian/sid' into debian/experimental
Michael Vogt [Thu, 8 May 2014 09:51:19 +0000 (11:51 +0200)] 
Merge branch 'debian/sid' into debian/experimental

10 years agoMerge remote-tracking branch 'mvo/feature/apt-ftparchive-srccache2' into debian/sid
Michael Vogt [Thu, 8 May 2014 09:51:09 +0000 (11:51 +0200)] 
Merge remote-tracking branch 'mvo/feature/apt-ftparchive-srccache2' into debian/sid

10 years agofix regression from commit 215b0faf
Michael Vogt [Thu, 8 May 2014 09:46:29 +0000 (11:46 +0200)] 
fix regression from commit 215b0faf

10 years agoMerge remote-tracking branch 'mvo/bugfix/update-progress-reporting' into debian/exper...
Michael Vogt [Thu, 8 May 2014 07:48:51 +0000 (09:48 +0200)] 
Merge remote-tracking branch 'mvo/bugfix/update-progress-reporting' into debian/experimental

10 years agocheck for UnfetchedReleaseFiles when calculating the update percent value
Michael Vogt [Thu, 8 May 2014 07:43:44 +0000 (09:43 +0200)] 
check for UnfetchedReleaseFiles when calculating the update percent value

10 years agoMerge remote-tracking branch 'upstream/debian/sid' into bugfix/update-progress-reporting
Michael Vogt [Thu, 8 May 2014 07:18:39 +0000 (09:18 +0200)] 
Merge remote-tracking branch 'upstream/debian/sid' into bugfix/update-progress-reporting

10 years agofix tests
Michael Vogt [Wed, 7 May 2014 20:34:34 +0000 (22:34 +0200)] 
fix tests

10 years agoadd BUILDDIRECTORY to PATH in the tests
Michael Vogt [Wed, 7 May 2014 20:05:26 +0000 (22:05 +0200)] 
add BUILDDIRECTORY to PATH in the tests

10 years agofix some compile errors in the now enabled #if (APT_PKG_MAJOR >= 4 && APT_PKG_MINOR...
Michael Vogt [Wed, 7 May 2014 19:39:53 +0000 (21:39 +0200)] 
fix some compile errors in the now enabled #if (APT_PKG_MAJOR >= 4 && APT_PKG_MINOR < 13)

10 years agoapt-pkg/contrib/macros.h: bump library version to 4.13
Michael Vogt [Wed, 7 May 2014 19:07:10 +0000 (21:07 +0200)] 
apt-pkg/contrib/macros.h: bump library version to 4.13

10 years agoshow progress in run-tests
Michael Vogt [Wed, 7 May 2014 19:03:45 +0000 (21:03 +0200)] 
show progress in run-tests

10 years agofix test-bug-602412-dequote-redirect by removing the aptget update size information
Michael Vogt [Wed, 7 May 2014 18:55:41 +0000 (20:55 +0200)] 
fix test-bug-602412-dequote-redirect by removing the aptget update size information

10 years agoMerge remote-tracking branch 'mvo/bugfix/update-progress-reporting' into debian/exper...
Michael Vogt [Wed, 7 May 2014 16:11:00 +0000 (18:11 +0200)] 
Merge remote-tracking branch 'mvo/bugfix/update-progress-reporting' into debian/experimental

10 years agoMerge remote-tracking branch 'mvo/feature/apt-install-deb' into debian/experimental
Michael Vogt [Wed, 7 May 2014 16:10:52 +0000 (18:10 +0200)] 
Merge remote-tracking branch 'mvo/feature/apt-install-deb' into debian/experimental

10 years agoMerge remote-tracking branch 'mvo/feature/apt-ftparchive-srccache2' into debian/sid
Michael Vogt [Wed, 7 May 2014 16:10:01 +0000 (18:10 +0200)] 
Merge remote-tracking branch 'mvo/feature/apt-ftparchive-srccache2' into debian/sid

10 years agoMerge remote-tracking branch 'donkult/debian/sid' into debian/sid
Michael Vogt [Wed, 7 May 2014 16:09:11 +0000 (18:09 +0200)] 
Merge remote-tracking branch 'donkult/debian/sid' into debian/sid

10 years agoMerge branch 'debian/sid' into debian/experimental
Michael Vogt [Wed, 7 May 2014 15:55:10 +0000 (17:55 +0200)] 
Merge branch 'debian/sid' into debian/experimental

Conflicts:
apt-pkg/cachefilter.h
apt-pkg/contrib/fileutl.cc
apt-pkg/contrib/netrc.h
apt-pkg/deb/debsrcrecords.cc
apt-pkg/init.h
apt-pkg/pkgcache.cc
debian/apt.install.in
debian/changelog

10 years agomove pkgSourceList::AddMetaIndex() into a private subclass until we decide about...
Michael Vogt [Wed, 7 May 2014 14:41:25 +0000 (16:41 +0200)] 
move pkgSourceList::AddMetaIndex() into a private subclass until we decide about a good API

10 years agorename pkgSourceList::Add() to pkgSourceList::AddMetaIndex()
Michael Vogt [Wed, 7 May 2014 14:23:37 +0000 (16:23 +0200)] 
rename pkgSourceList::Add() to pkgSourceList::AddMetaIndex()

10 years agoMerge branch 'debian/sid' into bugfix/update-progress-reporting
Michael Vogt [Wed, 7 May 2014 13:41:54 +0000 (15:41 +0200)] 
Merge branch 'debian/sid' into bugfix/update-progress-reporting

10 years agoprepare release 1.0.3 1.0.3
Michael Vogt [Mon, 5 May 2014 14:26:12 +0000 (16:26 +0200)] 
prepare release 1.0.3

10 years agoRevert "add bash completion for the "apt" command"
Michael Vogt [Mon, 5 May 2014 14:24:52 +0000 (16:24 +0200)] 
Revert "add bash completion for the "apt" command"

This reverts commit 697c9314c8ba24f3e393b5de11a3fad7adae4bfc.

Conflicts:
debian/rules

10 years agoMerge remote-tracking branch 'upstream/debian/sid' into debian/sid
Michael Vogt [Mon, 5 May 2014 14:03:03 +0000 (16:03 +0200)] 
Merge remote-tracking branch 'upstream/debian/sid' into debian/sid

10 years agoOnly do openpty() if both stdin/stdout are terminals
Michael Vogt [Wed, 30 Apr 2014 15:04:29 +0000 (17:04 +0200)] 
Only do openpty() if both stdin/stdout are terminals

Closes: 746434
10 years agoinitialize Verify in second pkgAcqIndex constructor
David Kalnischkies [Mon, 28 Apr 2014 15:36:54 +0000 (17:36 +0200)] 
initialize Verify in second pkgAcqIndex constructor

gcc reports in testcase ./test-bug-596498-trusted-unsigned-repo:
apt-pkg/acquire-item.cc:1059:7: runtime error: load of value 234, which
is not a valid value for type 'bool'

This happens as the bool Verify is initialized only in one of the two
constructors of the pkgAcqIndex class. It isn't a problem through as the
verification controlled by this flag is optional and used to fail early
on garbage files (like network portal pages) instead of later on in the
hashsum verification or while parsing (the then untrusted) file.

Reported-By: gcc-4.9 -fsanitize=undefined
10 years agoMerge branch 'feature/abspath' into feature/apt-install-deb
Michael Vogt [Mon, 28 Apr 2014 15:45:07 +0000 (17:45 +0200)] 
Merge branch 'feature/abspath' into feature/apt-install-deb

10 years agofix tests
Michael Vogt [Mon, 28 Apr 2014 15:44:34 +0000 (17:44 +0200)] 
fix tests

10 years agouse flAbsPath()
Michael Vogt [Mon, 28 Apr 2014 15:40:50 +0000 (17:40 +0200)] 
use flAbsPath()

10 years agoMerge branch 'feature/abspath' into feature/apt-install-deb
Michael Vogt [Mon, 28 Apr 2014 15:25:28 +0000 (17:25 +0200)] 
Merge branch 'feature/abspath' into feature/apt-install-deb

Conflicts:
test/libapt/fileutl_test.cc

10 years agoadd flAbsPath() as a wrapper to realpath()
Michael Vogt [Mon, 28 Apr 2014 15:24:35 +0000 (17:24 +0200)] 
add flAbsPath() as a wrapper to realpath()

10 years agouse new Popen()
Michael Vogt [Mon, 28 Apr 2014 15:09:29 +0000 (17:09 +0200)] 
use new Popen()

10 years agoMerge branch 'feature/popen' into feature/apt-install-deb
Michael Vogt [Mon, 28 Apr 2014 15:01:58 +0000 (17:01 +0200)] 
Merge branch 'feature/popen' into feature/apt-install-deb

10 years agoImplement Popen() execv helper to avoid popen()
Michael Vogt [Mon, 28 Apr 2014 14:43:58 +0000 (16:43 +0200)] 
Implement Popen() execv helper to avoid popen()

10 years agoavoid deb specific code in private-install
Michael Vogt [Mon, 28 Apr 2014 12:50:11 +0000 (14:50 +0200)] 
avoid deb specific code in private-install

10 years agoFix missing ScreenWidth check in apt.cc
Michael Vogt [Mon, 28 Apr 2014 11:41:33 +0000 (13:41 +0200)] 
Fix missing ScreenWidth check in apt.cc

10 years agodebian/apt-doc.docs: remove README.MultiArch
Michael Vogt [Mon, 28 Apr 2014 10:57:01 +0000 (12:57 +0200)] 
debian/apt-doc.docs: remove README.MultiArch

10 years agol10n: vi.po: Update one new string
Trần Ngọc Quân [Mon, 28 Apr 2014 02:27:44 +0000 (09:27 +0700)] 
l10n: vi.po: Update one new string

Signed-off-by: Trần Ngọc Quân <vnwildman@gmail.com>
10 years agoWIP local deb install
Michael Vogt [Fri, 25 Apr 2014 22:00:51 +0000 (00:00 +0200)] 
WIP local deb install

10 years agoallow vendors to install configuration files
David Kalnischkies [Sat, 26 Apr 2014 11:31:41 +0000 (13:31 +0200)] 
allow vendors to install configuration files

Vendors like ubuntu need to change some options, so giving them
a way to do this less painfully avoids reducing differences.

10 years agofix FileFd::Size bitswap on big-endian architectures
Adam Conrad [Sat, 26 Apr 2014 08:24:40 +0000 (10:24 +0200)] 
fix FileFd::Size bitswap on big-endian architectures

gzip only gives us 32bit of size, storing it in a 64bit container and
doing a 32bit flip on it has therefore unintended results.
So we just go with a exact size container and let the flipping be handled
by eglibc provided le32toh removing our #ifdef machinery.

Closes: 745866
10 years agoenforce LFS for partial files in https range requests
David Kalnischkies [Thu, 24 Apr 2014 08:49:41 +0000 (10:49 +0200)] 
enforce LFS for partial files in https range requests

10 years agoremove unused duplicated acqprogress.{cc,h} files
David Kalnischkies [Thu, 24 Apr 2014 08:33:57 +0000 (10:33 +0200)] 
remove unused duplicated acqprogress.{cc,h} files

Those files are in apt-private and used from there.

Git-Dch: Ignore

10 years agobuild http request in a stringstream
David Kalnischkies [Thu, 24 Apr 2014 08:20:45 +0000 (10:20 +0200)] 
build http request in a stringstream

beside reducing code a bit, it avoids oddball problems while building
the string and doesn't trigger static analyse warnings.

10 years agoremove outdated README.MultiArch
David Kalnischkies [Tue, 22 Apr 2014 17:02:53 +0000 (19:02 +0200)] 
remove outdated README.MultiArch

Debian wheezy shipped MultiArch to the masses and the predictions
remained true in sofar as little changes in apt itself and many
other frontends were needed compared to the fallout if done differently.

The info included is this file is therefore no longer current and adds
no useful information anymore, so we can drop it for good.

10 years agoadd a README for vendor information
David Kalnischkies [Tue, 22 Apr 2014 16:59:22 +0000 (18:59 +0200)] 
add a README for vendor information

10 years agoadd vendor information for BlankOn
Mahyuddin Ramli [Tue, 22 Apr 2014 15:32:37 +0000 (17:32 +0200)] 
add vendor information for BlankOn

Modified by commiter to not publicily export the codename (as the
manpages do not use it that way) and removing the included additional
derives logic as it was not working (the link always exists at that
point) and isn't needed as we do the special casing for debian mainly
because it would shallow all distributions otherwise.
(similar, but not that strong for ubuntu)

Closes: 743595
10 years agohandle pkgnames shorter than modifiers
David Kalnischkies [Mon, 21 Apr 2014 11:26:55 +0000 (13:26 +0200)] 
handle pkgnames shorter than modifiers

The bugreport highlights the problem with an empty package name. We fix
this by 'ignoring' these so that it behaves just like "apt-get install".
The deeper problem is that modifier strings can be longer than a package
name in which case the comparison doesn't make sense, so don't compare
then. Was not noticed so far as all modifiers are of length 1, so the
only package name shorter than this is in fact the empty package name.

Closes: 744940
10 years agoproperly undo CD-ROM mount in all error cases
John Ogness [Mon, 21 Apr 2014 09:54:34 +0000 (11:54 +0200)] 
properly undo CD-ROM mount in all error cases

In bug #740673 various issues in the CD-ROM handling code were
identified, while most the issues ended up being fixed in another way,
the unmounting of the CD-ROM in error cases was not tackled so far.

(The patch was modified by the commiter to apply)

10 years agoprovide support for debian/apt.conf.$(lsb_release -i -s) vendor specific config files
Michael Vogt [Fri, 25 Apr 2014 16:18:28 +0000 (18:18 +0200)] 
provide support for debian/apt.conf.$(lsb_release -i -s) vendor specific config files

10 years agoadd bash completion for the "apt" command
Michael Vogt [Fri, 25 Apr 2014 13:16:46 +0000 (15:16 +0200)] 
add bash completion for the "apt" command

10 years agoreduce delta from ubuntu
Michael Vogt [Fri, 25 Apr 2014 12:41:35 +0000 (14:41 +0200)] 
reduce delta from ubuntu

10 years agoprepare release 1.0.2 1.0.2
Michael Vogt [Fri, 25 Apr 2014 11:16:18 +0000 (13:16 +0200)] 
prepare release 1.0.2

10 years agoadd support for apt-get build-dep unpacked-source-dir
Michael Vogt [Fri, 25 Apr 2014 07:47:50 +0000 (09:47 +0200)] 
add support for apt-get build-dep unpacked-source-dir

10 years agocreate debIFTypeDscFile type
Michael Vogt [Wed, 23 Apr 2014 11:51:48 +0000 (13:51 +0200)] 
create debIFTypeDscFile type

10 years agoadd support for apt-get build-dep foo.dsc
Michael Vogt [Tue, 22 Apr 2014 15:59:09 +0000 (17:59 +0200)] 
add support for apt-get build-dep foo.dsc

10 years agoMerge remote-tracking branch 'upstream/debian/sid' into debian/sid
Michael Vogt [Tue, 22 Apr 2014 14:21:05 +0000 (16:21 +0200)] 
Merge remote-tracking branch 'upstream/debian/sid' into debian/sid

10 years agoConsistently use Dpkg::Progress* in documentation
James McCoy [Mon, 21 Apr 2014 20:35:28 +0000 (16:35 -0400)] 
Consistently use Dpkg::Progress* in documentation

Closes: 745452
10 years agoUpdated Thai program translation (closes: #745120)
Theppitak Karoonboonyanan [Tue, 22 Apr 2014 13:21:38 +0000 (15:21 +0200)] 
Updated Thai program translation (closes: #745120)

10 years agoMerge remote-tracking branch 'donkult/debian/sid' into debian/sid
Michael Vogt [Tue, 22 Apr 2014 13:19:17 +0000 (15:19 +0200)] 
Merge remote-tracking branch 'donkult/debian/sid' into debian/sid

10 years agoFix option name DPkg::Progress-Fancy in apt.8 manpage (LP: #1310506)
Michael Vogt [Tue, 22 Apr 2014 13:14:03 +0000 (15:14 +0200)] 
Fix option name DPkg::Progress-Fancy in apt.8 manpage (LP: #1310506)

10 years agoapt-private/acqprogress.cc: fix output when ctrl-c is hit during apt update (LP:...
Michael Vogt [Tue, 22 Apr 2014 13:10:19 +0000 (15:10 +0200)] 
apt-private/acqprogress.cc: fix output when ctrl-c is hit during apt update (LP: #1310548, closes: #744297)

10 years agopass Target/MetaIndexParser around into pkgAcqDiffIndex so that this can be used...
Michael Vogt [Thu, 17 Apr 2014 09:39:58 +0000 (11:39 +0200)] 
pass Target/MetaIndexParser around into pkgAcqDiffIndex so that this can be used to create a proper pkgAcqIndex() with size information

10 years agosupport dist-upgrade options in full-upgrade
David Kalnischkies [Wed, 16 Apr 2014 20:47:25 +0000 (22:47 +0200)] 
support dist-upgrade options in full-upgrade

dist-upgrade is supposed to be an alias for full-upgrade in apt, but
dist-upgrade was the only command recognized of the two in the option
and flags recognition code.

10 years agoextract travis installs from build-depends automatically
David Kalnischkies [Wed, 16 Apr 2014 20:06:22 +0000 (22:06 +0200)] 
extract travis installs from build-depends automatically

I forgot to add libgtest-dev to the list of packages to install on
travis, so this slightly hacky oneliner might prevent us from having
the same problem again if we happen to change dependencies again.

Git-Dch: Ignore

10 years agouse Google C++ Testing Framework for libapt tests
David Kalnischkies [Wed, 16 Apr 2014 15:09:37 +0000 (17:09 +0200)] 
use Google C++ Testing Framework for libapt tests

My commit 45df0ad2 from 26. Nov 2009 had a little remark:
"The commit also includes a very very simple testapp."
This was never intended to be permanent, but as usually…

The commit adds the needed make magic to compile gtest statically
as it is required and links it against a small runner. All previous
testcase binaries are reimplemented in gtest and combined in this
runner. While most code is a 1:1 translation some had to be rewritten
like compareversion_test.cc, but the coverage remains the same.

10 years agocalculate Percent as part of pkgAcquireStatus to provide a weighted percent for both...
Michael Vogt [Wed, 16 Apr 2014 15:41:11 +0000 (17:41 +0200)] 
calculate Percent as part of pkgAcquireStatus to provide a weighted percent for both items and bytes

10 years agouse correct compression extension when loading the size of the size into the fetcher
Michael Vogt [Wed, 16 Apr 2014 15:40:11 +0000 (17:40 +0200)] 
use correct compression extension when loading the size of the size into the fetcher

10 years agoclear HitEof flag in FileFd::Seek
David Kalnischkies [Tue, 15 Apr 2014 08:21:52 +0000 (10:21 +0200)] 
clear HitEof flag in FileFd::Seek

fseek and co do this to their eof-flags and it is more logic this way as
we will usually seek away from the end (e.g. to re-read the file).

The commit also improves the testcase further and adds a test for the
binary compressor codepath (as gz, bzip2 and xz are handled by
libraries) via the use of 'rev' as a 'compressor'.

10 years agoadd Debug::acquire::progress debug option and fixme for index file loading with the...
Michael Vogt [Wed, 16 Apr 2014 14:34:01 +0000 (16:34 +0200)] 
add Debug::acquire::progress debug option and fixme for index file loading with the correct extension

10 years agoload the size from the metaindex into the fetcher to have even more accurate progress...
Michael Vogt [Wed, 16 Apr 2014 13:28:23 +0000 (15:28 +0200)] 
load the size from the metaindex into the fetcher to have even more accurate progress information

10 years agomake the TotalFiles more reliable in apt-get update
Michael Vogt [Wed, 16 Apr 2014 12:43:08 +0000 (14:43 +0200)] 
make the TotalFiles more reliable in apt-get update

10 years agoapt-private/acqprogress.cc: reset color in apt update
Michael Vogt [Wed, 16 Apr 2014 11:15:55 +0000 (13:15 +0200)] 
apt-private/acqprogress.cc: reset color in apt update

10 years agoforce fancy progressbar redraw on window size change
David Kalnischkies [Mon, 14 Apr 2014 15:12:09 +0000 (17:12 +0200)] 
force fancy progressbar redraw on window size change

We always reacted on the size change, but the bar is only redraw if the
precentage changes, which can take quiet a while in big upgrades, so
with a bit of refactoring we can now call for a redraw immediate to fix
this.

This refactor also helps in avoiding obscure pitfalls clangs static
analyser was complaining about (namely failure of ioctl resulting in
garbage values in the struct).

10 years agocompile with absolute paths to allow lcov use
David Kalnischkies [Sun, 13 Apr 2014 19:40:35 +0000 (21:40 +0200)] 
compile with absolute paths to allow lcov use

Instructing gcc (or clang) to prepare for capturing coverage data is
easy: Just build with: CXXFLAGS=--coverage

The hard part is that our buildsystem uses relative paths and so
confuses the hell out of lcov as it assumes this way that all our *.cc
files are in the same directory… by changing to absolute paths in the
compile rules we solve this problem.

Still not perfect as it refers to build/include files for most headers
and our forking/threading code isn't properly captured, but good enough
to see red reports for now:

CXXFLAGS=--coverage make
make test
./test/integration/run-tests -q
lcov --no-external --directory . --capture --output-file apt.info
genhtml --output-directory ./coverage/ apt.info

Git-Dch: Ignore

10 years agol10n: vi.po (624t): Update translation
Trần Ngọc Quân [Fri, 11 Apr 2014 18:19:40 +0000 (20:19 +0200)] 
l10n: vi.po (624t): Update translation

Signed-off-by: Michael Vogt <mvo@debian.org>
10 years agoMerge remote-tracking branch 'mvo/feature/helpful-apt-list' into debian/sid
Michael Vogt [Fri, 11 Apr 2014 12:40:08 +0000 (14:40 +0200)] 
Merge remote-tracking branch 'mvo/feature/helpful-apt-list' into debian/sid

Conflicts:
test/integration/test-apt-cli-list

10 years agoMerge remote-tracking branch 'mvo/bugfix/apt-list-rc-pkgs' into debian/sid
Michael Vogt [Fri, 11 Apr 2014 12:39:28 +0000 (14:39 +0200)] 
Merge remote-tracking branch 'mvo/bugfix/apt-list-rc-pkgs' into debian/sid

10 years agoconsider priorities only for downloadable pkgs in resolver
David Kalnischkies [Fri, 11 Apr 2014 11:33:31 +0000 (13:33 +0200)] 
consider priorities only for downloadable pkgs in resolver

A package which can't be downloaded anymore is very likely dropped from
a release and can therefore no longer be 'standard' (or similar). We
therefore do not grant points for them anymore and demote them to
prio:extra instead which helps other packages breaking them away even if
they have a lower priority.

The testcase was initially created by Michael Vogt and just amended.

10 years agoextend FileFd test behond basic permission tests
David Kalnischkies [Fri, 11 Apr 2014 09:29:31 +0000 (11:29 +0200)] 
extend FileFd test behond basic permission tests

We now do Open, Write and Read (the later multiple ways) for each
permission and each compressor we have configured to cover more cases
and especially ensure that compressors do not change our premissions.

This test is also to be credited for discovering the skippos-fix.

Git-Dch: Ignore

10 years agodeal with umask only if we really need to for mkstemp
David Kalnischkies [Fri, 11 Apr 2014 09:22:10 +0000 (11:22 +0200)] 
deal with umask only if we really need to for mkstemp

As the comment actually says: open() does the umask dance by itself, so
we don't need to do it for it. We have to do it after mkstemp in Atomic
though, so move it into the if.

Also removes the "micro-optimisation" "FilePermissions == 600" as it
doesn't trigger at the moment anyway as 600 != 0600.