GHC incorrectly concludes rebuild unnecessary, even when ghc-options have changed
- Dominant language
- Haskell
- Stars
- 1.7k
- Forks
- 750
- Avg merge
- 4d 3h
- Merged PRs (30d)
- 28
Description
Steps:
1. Compile your program (using `new-build`). Realize it has a space leak.
2. Change cabal.project to:
```
package ingest
ghc-options: -fno-full-laziness
```
1. Call `new-build` again:
```
# cabal new-build
In order, the following will be built (use -v for more details):
- ingest-0.1.0.0 (lib) --enable-profiling (configuration changed)
- ingest-0.1.0.0 (exe:ingest) --enable-profiling (configuration changed)
Configuring component lib from ingest-0.1.0.0
Preprocessing library ingest-0.1.0.0...
Configuring component exe:ingest from ingest-0.1.0.0
Preprocessing executable 'ingest' for ingest-0.1.0.0...
```
Note that although it detected "configuration changed", nothing actually got recompiled. The change only takes effect after I manually delete the `dist-newstyle` directory and rebuild again.
Contributor guide
Assessment
This issue has not been assessed yet.