Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Please document how conflicting configuration options resolve in cabal.project #9091

Open
jberryman opened this issue Jul 6, 2023 · 0 comments

Comments

@jberryman
Copy link

In the docs we have:

  • They can be specified at the top-level, in which case they apply only to local package, or
  • They can be specified inside a package stanza, in which case they apply to the build of the package, whether or not it is local or external.
  • They can be specified inside an package * stanza, in which case they apply to all packages, local ones from the project and also external dependencies.

but I don't see mention of how conflicts are resolved, e.g.

package foo
  coverage: true

coverage: false

or...

coverage: false

package foo
  coverage: true

...as well as how import comes into play (presumably treated like the files are concatenated). With the introduction of import knowing how to override particular earlier options becomes important and an obvious use-case.

Documentation will help users as well as help avoid what would be a disaster if cabal changed behavior.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant