Skip to content
  • Timo Teräs's avatar
    solver: rewrite backtracking and scoring system · 6ae57388
    Timo Teräs authored
    * properly do absolute scoring now, the previous scoring where
      preference could get reduced could have caused incorrect early
      pruning of search tree
    
    * backtracking is now separated from package state, and first
      branching point is the decision if a name is left unassigned
      or if something _has_ to be assigned. this allows multiple future
      search tree optimizations like handling of common dependencies
      early.
    
    * merge common dependency names early to provide deeper forward
      checking.
    6ae57388