Recompilation is a bit broken with hs-boot files
Consider the following 4 modules.
https://gist.github.com/mpickering/7b0e181caab30e265f092f78505a35a2
Recompilation warns about a "missing old dependency" when compiling M despite nothing being changed.
[nix-shell:~/ghc-hash-builds]$ ghci M.hs -fwrite-interface -fno-code
GHCi, version 8.10.2: https://www.haskell.org/ghc/ :? for help
[1 of 4] Compiling O ( O.hs, nothing )
[2 of 4] Compiling N[boot] ( N.hs-boot, nothing )
[3 of 4] Compiling N ( N.hs, nothing )
[4 of 4] Compiling M ( M.hs, nothing )
Ok, four modules loaded.
*M> :q
[nix-shell:~/ghc-hash-builds]$ ghci M.hs -fwrite-interface -fno-code
GHCi, version 8.10.2: https://www.haskell.org/ghc/ :? for help
[4 of 4] Compiling M ( M.hs, nothing ) [missing old dependency]
Ok, four modules loaded.
*M>
For some reason we don't following boot dependencies in checkForNewHomeDependency
which is why the error happens.