
On Sun, 2008-06-15 at 21:00 +0100, Duncan Coutts wrote:
On Sat, 2008-06-14 at 15:05 +0100, Neil Mitchell wrote:
Hi,
Using Cabal 1.4 Branch and Cabal-install HEAD:
C:\Neil\uniplate>cabal install --hugs Resolving dependencies... cabal: internal error: could not construct a valid install plan. The proposed (invalid) plan contained the following problems: Package uniplate-1.1 has an invalid configuration, in particular: the package has a dependency base >=3 but no package has been selected to sati sfy it. the package has a dependency containers -any but no package has been selected to satisfy it. the package has a dependency mtl -any but no package has been selected to sati sfy it.
We changed the dependency resolution stuff a lot and have not updated the grievous hacks required to do anything sensible when we do not know what is installed.
Generating install plans with hugs is actually impossible which does make things a bit tricky to do in a regular way since we do now rather rely on install plans as a unifying abstraction.
Actually it's not impossible. We just have to lie. We can make a valid install plan so long as we do not require that it reflect reality. The trick is to make one where we say that all the dependencies are already installed. So we fake it by making up exactly the installed dependencies that we know we need. We then say that each of those deps has no other deps and we're done. Duncan