propagate a negative score point along breaks/conflicts
authorDavid Kalnischkies <david@kalnischkies.de>
Sat, 15 Feb 2014 12:38:39 +0000 (13:38 +0100)
committerDavid Kalnischkies <david@kalnischkies.de>
Thu, 13 Mar 2014 12:57:34 +0000 (13:57 +0100)
commit8daf68e366fa9fa2794ae667f51562663856237c
tree3049c2e1cbcbea990c26530280696330e5866f6d
parent93bd01f7e0606b3f778401fb772fb3cb56cb3697
propagate a negative score point along breaks/conflicts

versioned -dev packages like db and boost have the problem of no
dependencies which would give them a competitive advantage against an
older incarnation of the -dev package, so they tend to be kept back
until the old version is removed from the archive, which, if the user
has older releases in its sources can take a long time (or never happens).

The newer version has a conflicts/breaks against the older one, but the
older one hasn't against the newer, so by giving via the conflicts the
older one a reduced score the newer one can win if there is no other
reason to keep it. If both have a conflict against each other the
scoring will cancel itself out, so no harm done.

This gives "action" a slightly bigger edge in breaks/conflicts cases
than before, but holding back isn't a really good solution anyway.
apt-pkg/algorithms.cc
test/integration/test-allow-scores-for-all-dependency-types [new file with mode: 0755]