-
Notifications
You must be signed in to change notification settings - Fork 246
Add support for setting ghcOptions on all packages #1046
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
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,6 +1,15 @@ | ||
This file contains a summary of changes to Haskell.nix and `nix-tools` | ||
that will impact users. | ||
|
||
## Feb 18, 2021 | ||
* `ghcOptions` has been moved from package and is now a list of strings. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Why the move? Presumably the idea is that at some point in the future cabal might give us some per-package ghc-options and then putting them on List of strings is great, though. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The move is needed to make it work like the other "global options". We want to support a
We can't currently convert that as it is not captured in the
We have code in pace to make this sort of "global option", but they do not end up in the The option to add them at the component level is not something There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I meant moving where the option lives. Can we not do the same thing while still leaving the per-package option in There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
That's a good point, though. I guess we don't know where they'll end up so we're guessing regardless. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. As far as I can tell the options that can be set global are created here from There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
The only thing that sets In the future the |
||
old: packages.x.package.ghcOptions = "someGHCoption"; | ||
new: packages.x.ghcOptions = ["someGHCoption"]; | ||
To specify ghcOptions for all packages: | ||
ghcOptions = ["someGHCoption"]; | ||
For a single component: | ||
packages.x.compoents.library.ghcOptions = ["someGHCoption"]; | ||
|
||
## Feb 8, 2021 | ||
* Removed older versions of haskell-language-server from custom-tools | ||
(0.8.0 is in hackage so we can still get that version). | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just to be clear, the idea is that by including them in the call to
configure
we don't need to include them everywhere else like we were doing before?There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes I noticed that we passed other
--ghc-options
arguments (like theenableDWARF
one) to configure instead of to build. I can't think of a reason to treat them differently. It was confusing that the list of configure args that we log to the output in the did not include the--ghc-options
from this source.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah, it seems way better if it works!