This project is mirrored from https://github.com/haskell/Cabal. Pull mirroring updated .
  1. 30 May, 2008 1 commit
  2. 29 May, 2008 3 commits
  3. 28 May, 2008 2 commits
    • Duncan Coutts's avatar
      First version of the top-down package dependency resolver · bc07102a
      Duncan Coutts authored
      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.
      bc07102a
    • Duncan Coutts's avatar
      b2e5c1f9
  4. 21 May, 2008 2 commits
  5. 16 May, 2008 1 commit
  6. 12 May, 2008 1 commit
  7. 10 May, 2008 5 commits
  8. 09 May, 2008 6 commits
  9. 08 May, 2008 1 commit
    • Duncan Coutts's avatar
      Restructure the package installing code · 111e9bd0
      Duncan Coutts authored
      Previously each layer called the next layer down and therefore the
      top layer had to take all of the params that the bottom layer needed
      even though they were mostly or wholly unmodified on the way down.
      Now each layer takes the next layer as a parameter so we do not need
      to take the params that are not used directly by the current layer.
      The overall stack is then built by applying each layer to the next.
      111e9bd0
  10. 07 May, 2008 10 commits
  11. 06 May, 2008 3 commits
  12. 05 May, 2008 2 commits
    • Duncan Coutts's avatar
      Switch from DepGraph to InstallPlan · 5d8d0d74
      Duncan Coutts authored
      The dependency resolver has had to be extended in a slightly hacky
      way to gather the extra information needed by an install plan. In
      particular it requires the flags to use to configure each package,
      the actual versions of dependencies to use and all of the
      installed packages and their closure of dependencies.
      However the current resolver is fairly naive and so can be easily
      persuaded into producing an invalid install plan, in which case
      you'll get a detailed list of reasons as to why it is invalid.
      5d8d0d74
    • Duncan Coutts's avatar
  13. 04 May, 2008 3 commits