This project is mirrored from https://github.com/haskell/Cabal. Pull mirroring updated .
  1. 02 Aug, 2008 3 commits
  2. 30 Jul, 2008 1 commit
  3. 25 Jul, 2008 1 commit
  4. 17 Jun, 2008 1 commit
  5. 12 Jun, 2008 3 commits
  6. 06 Jun, 2008 3 commits
  7. 04 Jun, 2008 1 commit
  8. 03 Jun, 2008 2 commits
  9. 30 May, 2008 1 commit
    • Duncan Coutts's avatar
      As a heuristic, use topological order for the order of package choices · 3f4868d1
      Duncan Coutts authored
      The general case in exploring the state space is that we have a set of
      choices (package names) and for each choice we have a number of
      versions of that package we could pick. If there's only one version of
      a package then we make that choice first. Otherwise we have to pick
      some package and select one of the available versions. The question is
      which package should we make a choice for first? Previously we picked
      completely arbitrarily. Surprisingly this actually works pretty well.
      An improvement is to pick packages in topological order. This works
      better because it allows dependencies from earlier choices to
      constrain our later choices.
      3f4868d1
  10. 29 May, 2008 1 commit
  11. 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
  12. 10 May, 2008 1 commit
  13. 09 May, 2008 1 commit
  14. 05 May, 2008 1 commit
    • 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
  15. 30 Apr, 2008 1 commit
  16. 13 Apr, 2008 1 commit
  17. 30 Mar, 2008 1 commit
  18. 29 Mar, 2008 1 commit
  19. 19 Mar, 2008 1 commit
  20. 18 Mar, 2008 1 commit
  21. 03 Mar, 2008 1 commit
  22. 23 Feb, 2008 1 commit
  23. 20 Feb, 2008 1 commit
  24. 15 Feb, 2008 1 commit
  25. 11 Feb, 2008 1 commit
  26. 18 Jan, 2008 3 commits
    • Duncan Coutts's avatar
      Add IndexUtils with functions to disambiguate packaage names · 17d15690
      Duncan Coutts authored
      To allow us to implement case-insensitivity in package names given on the
      command line. We lookup in the package index for packages with the same name
      case-insensitively. If there is no exact match exact case-sensitively and
      there are more than one packages matching case-insensitively then it aborts
      with a message listing the matches. This should not often happen since within
      any single HackageDB server, we can check that packages names are unique
      case-insensitively but it's possible to get ambiguities if cabal-install has
      been configured to use multiple repos.
      17d15690
    • Duncan Coutts's avatar
      Add Hackage.LocalIndex module as an index of installed packages · 3a5df959
      Duncan Coutts authored
      Very much like the RepoIndex module but only holds package ids at the moment
       rather that full InstalledPackageInfo records that we'd really prefer.
      3a5df959
    • Duncan Coutts's avatar
      Rename Hackage.Index -> Hackage.RepoIndex · ba0c0851
      Duncan Coutts authored
      In preperation to add Hackage.LocalIndex module
      ba0c0851
  27. 17 Jan, 2008 2 commits
  28. 14 Jan, 2008 1 commit
  29. 10 Jan, 2008 1 commit