如何在 *.cabal 中自动填充“exposed-modules or other-modules”

met*_*eap 6 cabal haskell-stack

有点烦人的是,我不断收到此警告(对于某些 20 个左右的模块,会污染构建输出,否则我会在不滚动的情况下看到诸如实际的 ghc 警告等):

“以下模块应添加到proj-name.cabal 中的暴露模块或其他模块

和:

  • 一个新创建的(通过stack new proj-name simple)项目,
  • .cabal设置为仅包含一个executable proj-name(no library),
  • 然后我在从非堆栈/cabal 项目stack new ..复制src文件/子目录之后。

这里假设的工作流程是什么,我是否认真地手动保持这些模块列表.cabal与我的模块文件同步?

此线程中,有人建议“现代答案是 Stack(和 hpack)”,但我真的希望单独使用 stack 就足够了,或者可以设置为。如果我要为构建设置另一个(堆栈之后的第三个,因此隐式 cabal)工具,不妨回去构建调用 ghc 的脚本。

所以问题是:整体非常灵活、强大和强大的堆栈如何也能帮助克服这种阴谋集团的可憎之物?=)