-
Notifications
You must be signed in to change notification settings - Fork 87
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
Nickel to Cabal #945
Comments
Would this yield a substantial advantage over hpack? |
To the best of my knowledge Hpack only provides a YAML API. That is:
Typically I don't think Hpack is able to address the use case I mentioned in the first message (several files with common parts) |
Thanks for writing this up @sir4ur0n! Just a few additional remarks:
|
Also, I think all bullet points in dhall-to-cabal's "Why?" section should also apply for a hypothetical nickel-to-cabal: https://github.com/dhall-lang/dhall-to-cabal/#why |
I am creating this issue in the name of @amesgen as we had a conversation on that topic recently.
I am sure @amesgen will have more input, and probably great ideas, on the kind of solution we may want if we decide to move forward with this.
@amesgen obviously feel free to edit or correct anything I write 😄
Is your feature request related to a problem? Please describe.
@amesgen currently works on a Haskell project with various packages and various Cabal files.
Currently the various Cabal files must use some shared parts (e.g. a common set of GHC default extensions, dependencies or dependency versions, flags, etc.).
So far they just duplicate these parts, but as you can imagine, this is brittle (and in practice inconsistent).
Cabal apparently does not provide a convenient way to share this kind of things across Cabal files.
Describe the solution you'd like
A convenient way to express Cabal files in Nickel, and a Nickel-to-Cabal converter.
Describe alternatives you've considered
Apparently dhall-to-cabal was considered/prototyped but they met the following shortcomings:
The text was updated successfully, but these errors were encountered: