Skip to content

Improve documentation for custom-setup & setup-depends #4538

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

Open
hvr opened this issue May 25, 2017 · 1 comment
Open

Improve documentation for custom-setup & setup-depends #4538

hvr opened this issue May 25, 2017 · 1 comment

Comments

@hvr
Copy link
Member

hvr commented May 25, 2017

The documentation at http://cabal.readthedocs.io/en/latest/developing-packages.html#custom-setup-scripts is rather terse.

Users are sometimes confused about the semantics in case of a missing custom-setup and whether you can add a custom-setup stanza even w/o saying cabal-version:>=1.24. (See e.g. haskell-CI/haskell-ci#81 for an example).

Consequently, we should flesh out the documentation for custom-setup, and document at least the following aspects:

  • Which setup-depends are implied with recent exe:cabal versions for a missing custom-setup
  • How do old cabal versions react if you add a custom-setup (which those version didn't support yet),
    • or more generally: How lib:Cabal version and exe:cabal versions relate to each other in the context of (non)existence of custom-setup
  • Recommended practice if compatiblity with older Cabal versions is required.
    • and thus the relevance of cabal-version:>=1.24 when using custom-setup
@hvr hvr changed the title Improve documentaiton for custom-setup / setup-depends Improve documentation for custom-setup & setup-depends May 27, 2017
@andreasabel
Copy link
Member

Yes, these question are still terribly interesting and their answers very hard to discover.
Please, someone who knows the answers, have mercy on us dumb users and extend the docs.

For instance, I read in the docs that build-tools: hspec-discover needs Cabal 2.0. But it is very unclear where to place this requirement in the cabal file. (For reference, here is a failed build: https://github.com/BNFC/bnfc/runs/1594499971?check_suite_focus=true)

However, I cannot claim to have understood the logic behind that. (Even more since the build claimed to have run under Cabal/cabal-install 3.2.0.0, which shouldn't have raised the issue in the first place---see versions flab.)

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

No branches or pull requests

3 participants