[commit: Cabal] master: First version of the top-down package dependency resolver (6eae3ed)
Ian Lynagh
igloo at earth.li
Fri Jun 24 01:54:15 CEST 2011
Repository : ssh://darcs.haskell.org//srv/darcs/packages/Cabal
On branch : master
http://hackage.haskell.org/trac/ghc/changeset/6eae3ed6893f1fdf43ca212595275bbe22ada17a
>---------------------------------------------------------------
commit 6eae3ed6893f1fdf43ca212595275bbe22ada17a
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 6eae3ed6893f1fdf43ca212595275bbe22ada17a
More information about the Cvs-libraries
mailing list