Upper bound on "time" in Cabal causes build failure

Hi cabal developers, Wasn't sure what best to do with this - please let me know if you'd rather I emailed it elsewhere, or opened an issue against the github project, or... I'm trying to build haskell-platform-2014.2 from source, with the latest cabal: cabal-install version 1.20.0.4 using version 1.20.0.3 of the Cabal library The build plan it constructs for the hptool sandbox includes Cabal-1.2.4! (That's not a typo.) The problem seems to be that it chooses time-1.5, and then discovers that all recent versions of Cabal have the constraint "time < 1.5", so digs up this fossil from the attic. So I think there are two problems here. The small and simple one is that we need a release of Cabal with "time < 1.6" - you appear to have this in the master branch already; can it go on the 1.20 branch? Do you want me to create an issue / pull request? The larger problem is that cabal should have found a better build plan. I'm naive about the internals of dependency resolution, but I would have expected it to prefer taking time back 1 release over taking Cabal back 18. It would also be nice if it could have deduced that Cabal-1.2.4 wasn't actually going to build with recent ghc versions. Thanks for your time, Toby.

It would perhaps be worth it for someone with the right permissions to
edit the (five) old versions on hackage, and add upper bounds. That
way cabal install wouldn't use this very old version assuming it works
(it probably doesn't).
Erik
On Wed, Dec 17, 2014 at 10:52 AM, Toby Goodwin
Hi cabal developers,
Wasn't sure what best to do with this - please let me know if you'd rather I emailed it elsewhere, or opened an issue against the github project, or...
I'm trying to build haskell-platform-2014.2 from source, with the latest cabal:
cabal-install version 1.20.0.4 using version 1.20.0.3 of the Cabal library
The build plan it constructs for the hptool sandbox includes Cabal-1.2.4! (That's not a typo.) The problem seems to be that it chooses time-1.5, and then discovers that all recent versions of Cabal have the constraint "time < 1.5", so digs up this fossil from the attic.
So I think there are two problems here. The small and simple one is that we need a release of Cabal with "time < 1.6" - you appear to have this in the master branch already; can it go on the 1.20 branch? Do you want me to create an issue / pull request?
The larger problem is that cabal should have found a better build plan. I'm naive about the internals of dependency resolution, but I would have expected it to prefer taking time back 1 release over taking Cabal back 18. It would also be nice if it could have deduced that Cabal-1.2.4 wasn't actually going to build with recent ghc versions.
Thanks for your time,
Toby. _______________________________________________ cabal-devel mailing list cabal-devel@haskell.org http://www.haskell.org/mailman/listinfo/cabal-devel

On 2014-12-17 at 11:14:36 +0100, Erik Hesselink wrote:
It would perhaps be worth it for someone with the right permissions to edit the (five) old versions on hackage, and add upper bounds. That way cabal install wouldn't use this very old version assuming it works (it probably doesn't).
FYI: I've added add a couple of base<4.2 constraints (as GHC 6.12/base-4.2 was the oldest GHC I had installed to prove that Cabal<1.4 is incompatible with base-4.2 ; probably base<4 would be correct as well, but I have no proof for that) That should keep Cabal<1.4 versions out of GHC 7.x install-plans... Cheers, hvr
participants (3)
-
Erik Hesselink
-
Herbert Valerio Riedel
-
Toby Goodwin