Ticket #392 (closed enhancement: fixed)

Opened 5 years ago

Last modified 4 years ago

Use the constraint solver for cabal configure

Reported by: duncan Owned by:
Priority: normal Milestone: cabal-install-0.6
Component: cabal-install tool Version: 1.2.3.0
Severity: normal Keywords:
Cc: Difficulty: normal
GHC Version: 6.8.3 Platform:

Description

Currently cabal install and cabal upgrade use the constraint solver to select the dependencies while cabal configure just selects the highest version of each package.

That means it sometimes picks bad combinations where cabal install would do something smarter. It also means it does not use preferences like base < 4.

However for cabal configure it's important that the solver not fail and prevent configuring at all. If the solver cannot find a consistent solution we should probably warn and fall back to the existing behavior. We may also want to prevent cabal configure from picking anything other than the current installed packages. Though again that's likely to increase the chance of failure.

Perhaps if there is no solution for the current installed packages then it should check if there would be a solution if we allowed re-installs and if so say so in the warning message. If not fall back to the highest versions of everything as now.

Change History

Changed 4 years ago by duncan

  • status changed from new to closed
  • resolution set to fixed
Sun Jan 25 17:09:51 GMT 2009  Duncan Coutts <duncan@haskell.org>
  * Make configure use the dependency resolver
  This means it makes smarter decisions and also decions that are more
  consistent with those taken by the install command.

Currently we do not really use the error message produced by the resolver, we just fall back to doing the old thing.

This could be improved if the error messages produced by the resolver were better and took into account broken packages etc.

Note: See TracTickets for help on using tickets.