commercialhaskell / commercialhaskell/stack
Consider if other order of combination is more appropriate for the monoids on config types
- Dominant language
- Haskell
- Stars
- 4.1k
- Forks
- 850
- Avg merge
- 10h 37m
- Merged PRs (30d)
- 4
Description
Many of the fields use `configField l <|> configField r`. This means the value on the left overrides the value on the right. I noticed that this isn't uniformly followed. For example,
> ```
> , configMonoidGhcOptions = Map.unionWith (++) (configMonoidGhcOptions l) (configMonoidGhcOptions r)
> ```
I would expect the order to be the opposite here, since ghc-options later in the list override earlier options. These definitions should be considered more carefully.
For now, in working on https://github.com/commercialhaskell/stack/issues/863, I am sticking with the same semantics as before. So, if this gets changed, that should also get modified.
Contributor guide
Assessment
This issue has not been assessed yet.