堆栈构建计划异常是什么意思?

What do stack build plan exceptions mean?

我有一个项目需要一些操作才能编译。对于某些依赖项,错误消息指出两个版本和一个范围。这些条目的实际含义是什么?

    Cabal-1.24.2.0 must match ==2.0.* (latest applicable is 2.0.0.2)

在任何情况下,我都不希望 Cabal-1.24.2.0 匹配 2.0.* 范围内的版本。 stack 似乎也有这样的要求,但没有解释为什么。

鉴于 LTS 版本是 1.24.2.0,为什么 2.0.0.2 被认为是适用的?这是否意味着它兼容?

这是说 LTS 版本 Cabal-1.24.2.0 与来自某个包的 ==2.0.* 约束不匹配,可能在您尝试构建的项目中。

"latest applicable" 是符合约束范围的最新版本的黑客攻击。您可以尝试将其添加到您的 extra-deps.

也许应该改进此消息传递,但话又说回来,这将使其更难搜索。