
On Wed, Feb 26, 2014 at 2:45 PM, Johan Tibell
On Wed, Feb 26, 2014 at 1:09 PM, Michael Snoyman
wrote: * The bounds will never help cabal choose a better build plan.
It won't help cabal but it might inform the user what's wrong so he/she can do something about it. Dependency errors are more high-level than compilation errors.
* The bounds make it very difficult to check and debug new versions of GHC.
I believe we added a cabal flag to skip the upper bounds check. Mikhail, do you remember?
Even with that flag, we'd still have a bit of a problem. It would be nice if cabal could ignore an upper bound on template-haskell, but respect an upper bound on some other package that *can* be installed with a newer GHC. Perhaps adding that flexibility to cabal would be possible.
* Including the bounds if you know the build will fail makes for more
user-friendly messages.
I think the more friendly message for base is: this package doesn't work with this (new) version of GHC. We sometimes have breaking base changes (like in the upcoming 7.8 release, which changes some primops.) Having an error on the base version is better than a compilation error in that case.