diff options
author | David Kalnischkies <david@kalnischkies.de> | 2016-05-12 16:21:10 +0200 |
---|---|---|
committer | David Kalnischkies <david@kalnischkies.de> | 2016-05-12 16:21:10 +0200 |
commit | 90e7fba4ac16fc764bf6aac7b59c17c3be551b60 (patch) | |
tree | 5a4f43c83cbfe0b11a872e8efbc813ac9c0f070a /doc/external-dependency-solver-protocol.txt | |
parent | d67db03c2ab853eba7b67c8870af41796eea387c (diff) |
edsp: warn if unexpected stanzas appear in the solution
Unexpected are for examples removal requests for versions which aren't
installed, installations of already installed versions & requests to
install and remove a package at the same time.
Diffstat (limited to 'doc/external-dependency-solver-protocol.txt')
-rw-r--r-- | doc/external-dependency-solver-protocol.txt | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/doc/external-dependency-solver-protocol.txt b/doc/external-dependency-solver-protocol.txt index d914db309..9b9073346 100644 --- a/doc/external-dependency-solver-protocol.txt +++ b/doc/external-dependency-solver-protocol.txt @@ -289,10 +289,15 @@ this protocol makes no assumption on the fact that a subsequent invocation of an Autoremove action will actually remove the very same packages indicated by Autoremove stanzas in the former solution. -The package identifiers of install, remove and autoremove stanzas from a single -solution are unique. That is, a package identifier does not occur more than -once in the solution. Every package identifier is only associated with a single -action (either install, remove or autoremove). +A package can't be installed in multiple versions at the same time, so +for each package there can at most one version be selected either for +installation or removal. This especially means that a solver is neither +allowed to represent package upgrades as a remove of the installed +version and the installation of another (the remove is implicit and must +be omitted from the solution) nor is it supported to revert previous +actions in the solution with later actions. APT is allowed to show +warnings and might even misbehave in earlier versions if a solver is +violating this assumption. In terms of expressivity, install and remove stanzas can carry one single field each, as APT-IDs are enough to pinpoint packages to be |