[commit: Cabal] master: First version of the top-down package dependency resolver (bc07102)
Paolo Capriotti
p.capriotti at gmail.com
Tue May 8 00:14:55 CEST 2012
Repository : ssh://darcs.haskell.org//srv/darcs/packages/Cabal
On branch : master
http://hackage.haskell.org/trac/ghc/changeset/bc07102a7beb45b7ea6744c347c3f34f209b1331
>---------------------------------------------------------------
commit bc07102a7beb45b7ea6744c347c3f34f209b1331
Author: Duncan Coutts <duncan at haskell.org>
Date: Wed May 28 21:58:04 2008 +0000
First version of the top-down package dependency resolver
This is a new dependency resolver that produces valid install plans.
It works in polynomial time however because the search space is
exponential in size it is not guaranteed to find a solution even if
one exists. It works by generating and then exploring the search
space represented as a lazy tree. It uses constraints to prune
choices and heuristics when guesses are necessary. Currently it can
generate install plans for 99% of the packages on hackage. The
remaining 6 packages should be doable with two extra tricks.
It is not finished and is not yet usable in practice.
cabal-install/Hackage/Dependency.hs | 2 +
cabal-install/Hackage/Dependency/TopDown.hs | 400 ++++++++++++++++++++
.../Hackage/Dependency/TopDown/Constraints.hs | 244 ++++++++++++
cabal-install/Hackage/Dependency/TopDown/Types.hs | 77 ++++
cabal-install/Hackage/Dependency/Types.hs | 27 ++
cabal-install/cabal-install.cabal | 5 +-
6 files changed, 754 insertions(+), 1 deletions(-)
Diff suppressed because of size. To see it, use:
git show bc07102a7beb45b7ea6744c347c3f34f209b1331
More information about the Cvs-libraries
mailing list