~cprov/britney/boottesting-no-skip-notice

Viewing all changes in revision 297.1.74.

  • Committer: Niels Thykier
  • Date: 2013-11-27 18:46:59 UTC
  • mto: This revision was merged to the branch mainline in revision 419.
  • Revision ID: git-v1:7051d5b0e968936ebbd8a93040e9a2cbe9d3a7e1
Rewrite installability tester

The new Installability Tester (IT) module replaces the remaining
C-parts.  Unlike C-implementation, it does not give up and emit an
"AIEEE" half-way through.

In order to determine installability, it uses two sets "musts" and
"never".  As the names suggest, the sets represents the packages that
must be (co-)installable with the package being tested and those that
can never be co-installable.  For a package to be installable, "musts"
and "never" have remain disjoint.

These sets are also used to reduce the number of alternatives that are
available to satisfy a given dependency.  When these sets are unable
to remove the choice completely, the new IT defers the choice to later.
This occasionally reduces backtracking as a later package may conflict
or unconditionally depend on one of the remaining alternatives.

Signed-off-by: Niels Thykier <niels@thykier.net>

expand all expand all

Show diffs side-by-side

added added

removed removed

Lines of Context: