正在更新堆栈中的全局 GHC/i 快照

Updating global GHC/i snapshot in Stack

我对整个 Haskell 生态系统和 TBH 很陌生,大部分时间都在学习 Haskell 我一直在使用 Haskell For Mac. Right now I'm trying to tackle projects manually using The Haskell Tool Stack,因为每个人都鼓励这种使用方式 Haskell.

在项目目录中使用堆栈时,一切都非常简单,我调用 stack setup 并准备好使用 stack.yaml 中生成或指定的解析器版本(通常是最新版本)。

当我想在项目外使用 stack ghci 时,我开始担心,因为它使用 ~/.stack/global-project/stack.yaml 中指定的 resolver。当然我可以手动将它更改为我想要的 resolver 版本,但让我高兴的是如果它可以在我调用 stack upgrade 或类似的东西时自动更新到最新的 resolver这个?

继续这个升级,我能以某种方式摆脱旧版本吗?因为 ~/stack/ 的大小很容易变得 太大 。假设我想实现类似 stack resolver cleanup 的目标,它只会保留最新版本。我看到一些建议不时删除整个 .stack 目录作为清理的一种方式,但这是相当 硬核方式 ,不是吗?

目前没有这样的命令。因此,如果您经常更改 lts,则可以定期执行 rm -rf ~/.stack。关于添加您想要的清洁命令及其设计的讨论存在一个未解决的问题:https://github.com/commercialhaskell/stack/issues/133

但是还没有人实现它。