[Hackage] #175: cabal-install needs a new package dependency resolution algorithm

Hackage trac at galois.com
Mon Nov 12 08:42:32 EST 2007


#175: cabal-install needs a new package dependency resolution algorithm
----------------------------+-----------------------------------------------
  Reporter:  duncan         |        Owner:         
      Type:  task           |       Status:  new    
  Priority:  normal         |    Milestone:         
 Component:  cabal-install  |      Version:  1.2.2.0
  Severity:  normal         |     Keywords:         
Difficulty:  normal         |   Ghcversion:  6.4.2  
  Platform:  Linux          |  
----------------------------+-----------------------------------------------
 The current package dependency algorithm is pretty simple. It's main
 failing is that it cannot backtrack if it finds the solution is
 impossible.

 What we would like is a new dependency resolution algorithm that can
 backtrack. We would also like to be able to configure policy issues
 separately, perhaps as a parameter. It may also be handy to let users or
 the system add extra version constraints.

 The input is the set of available packages and the output is a list of
 packages to install, and the assignment of configuration flags to use for
 each one. As for the policy input, this might take the form of a function
 that picks between possible dependencies in a slot, this could then allow
 us to make choices like preferring installed packages over the latest
 available package version, or vica versa.

 See also symptoms of the existing system:
  * bug #168  -- lack of configurable policy
  * bug #174  -- lack of backtracking

-- 
Ticket URL: <http://hackage.haskell.org/trac/hackage/ticket/175>
Hackage <http://haskell.org/cabal/>
Hackage: Cabal and related projects


More information about the cabal-devel mailing list