]> git.saurik.com Git - apt.git/commit
allow repositories to forbid arch:all for specific index targets
authorDavid Kalnischkies <david@kalnischkies.de>
Sun, 27 Dec 2015 16:04:33 +0000 (17:04 +0100)
committerDavid Kalnischkies <david@kalnischkies.de>
Sun, 27 Dec 2015 16:04:33 +0000 (17:04 +0100)
commita628ca5256b4a2f3ae300697b17adf150b6e17b0
treef9eac83a81436461fd9e1f8e7ea273a11553d6dc
parent2837a71877c0f5c1aca8f70e30130018bc53acac
allow repositories to forbid arch:all for specific index targets

Debian has a Packages file for arch:all already, but the arch:any files
contain arch:all packages as well, so downloading it would be a total
waste of resources. Getting this solved is on the list of things to do,
but it is also the hardest part – for index targets like Contents the
situation is much easier and less server/client implementations are
involved so we might not want to stall them.

A repository can now declare via:
No-Support-for-Architecture-all: Packages
that even if an arch:all Packages exists, it shouldn't be downloaded, so
that support for Contents files can be added now.

See also 1dd20368486820efb6ef4476ad739e967174bec4 for the implementation
of downloading arch:all index targets, which this is limiting.

The field uses the name of the target from the apt configuration for
simplicity and is negative by design as this field is intended to be
supported/needed only for a "short" time (one or two Debian releases).

While this commit theoretically supports any target, its expected to
only see "Packages" as a value in reality.
apt-pkg/acquire-item.cc
apt-pkg/deb/debmetaindex.cc
apt-pkg/deb/debmetaindex.h
apt-pkg/metaindex.cc
apt-pkg/metaindex.h
test/integration/test-acquire-binary-all