我正在使用精益定理证明器,我想构建类似于堆栈的功能并开始构建库缓存。我不确定的一件事是何时删除缓存中的旧包。我可以认为,如果我安装了两个版本的 Lean,比如 3.3.0 和 3.3.1,我可以主张保留所有适用于这些版本的软件包的所有版本。由于精益语法发展迅速,因此限制性很大。
另一方面,我可以看到任何给定软件包只保留 10 个版本。这可能是最近 10 个版本或最近请求的 10 个版本。
我很想知道在 build 中考虑的一些想法stack
和相关工具。
最佳答案
stack
将包永久保存在缓存中。或者直到您手动删除这些包。 stack
中没有实现快照垃圾收集.所以你唯一能做的就是手动调用
rm -rf ~/.stack
删除 整体堆栈缓存。通常,定期执行此操作以删除在一段时间内累积的过时软件包是一种很好的做法。但一定要备份
.stack/global-project/stack.yaml
如果您手动更改它。stack
为您处理缓存删除的命令正在开发中:https://github.com/commercialhaskell/stack/issues/133
关于haskell - 堆栈将包保存在其缓存中多长时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46980225/