忽略了 cabal-version 选项

cabal-version option ignored

我正在尝试使用堆栈安装一个相当旧的软件包(请参阅 here)。它使用自定义 Setup.hs 脚本,该脚本依赖于 cabal >= 1.20,因为(除其他外)依赖 BuildFlags 类型的 buildNumJobs 字段。

出于某种原因,cabal-version 被设置为 >= 1.10,这显然太低了。一旦我弄清楚发生了什么,我就改变了它,但问题仍然存在。我需要做什么才能让 stack 和 cabal 接受新的 cabal-version 约束?

我尝试简单地将 buildNumJobs 值替换为默认值,这导致在构建时出现以下错误:

Warning: skia.cabal: This package requires at least Cabal version 1.20
Configuring skia-0.1.0.0...
setup.EXE: This package description follows version 1.20 of the Cabal
specification. This tool only supports up to version 1.18.1.5.

同样,我需要做什么才能使堆栈遵守 cabal-version 选项?

事实证明,我所要做的就是 运行 stack setup --upgrade-cabal。我仍然想知道为什么堆栈不自动检测不一致...