Haskell堆叠软件包和更改LTS(解析器)版本

示例

Stackage是Haskell软件包的存储库。我们可以将这些包添加到堆栈项目中。

将镜头添加到项目中。

在堆栈项目中,有一个名为的文件stack.yaml。在stack.yaml其中,一个段看起来像:

resolver: lts-6.8

Stackage会为每个版本的保留一份软件包列表lts。在我们的案例中,我们需要的软件包列表。lts-6.8要找到这些软件包,请访问:

https://www.stackage.org/lts-6.8 # if a different version is used, change 6.8 to the correct resolver number.

翻看包装,有一个镜头4.13。

现在,我们可以通过修改以下部分来添加语言包helloworld.cabal:

  build-depends: base >= 4.7 && < 5

至:

  build-depends: base >= 4.7 && 5,
                 lens == 4.13

显然,如果要更改较新的LTS(在发布后),我们只需更改解析器编号,例如:

resolver: lts-6.9

在下一个stack build版本中,Stack将使用LTS 6.9版本,因此将下载一些新的依赖项。