haskell/cabal

fail and warnings for build configurations

Closed this issue · 1 comments

bos commented

(Imported from Trac #400, reported by @dcoutts on 2008-11-08)

People expect buildable: False to fail the current configuration (rather than letting it configure and then not working at build time). But perhaps we should make that more explicit and allow a message, eg instead of:

if os(windows)
  buildable: False
allow
if os(windows)
  fail: it doesn't work on windows because, blah blah blah
And similarly we might want to warn users about selecting particular configurations eg:
if flag(http)
  ...
else
  warn: no http implementation selected, only local
        operations will be possible. You probably really
        want some http implementation.
The semantics roughly is that it's a workable but sub-optimal configuration.

The solver should try to avoid warnings, by selecting another alternative.

Closing in favor of #3072, which has more comments.