我应该使用堆栈构建并上传到Hackage吗?

时间:2016-12-28 20:08:30

标签: haskell cabal haskell-stack hackage

随着时间的推移,我开发了一个混乱的系统级Haskell安装,我not sure how to completely clean up。但是在大多数情况下,这并不是很重要,因为我只是使用stack来管理每个项目的Haskell配置。但是,由于我的项目要求与我的系统Haskell设置不同,我想知道为Hackage构建和上传包的最佳方法是什么。

特别是(1)我应该使用

stack exec -- cabal sdist
stack exec -- cabal upload

而不是简单

cabal sdist
cabal upload

和(2)是否有任何理由安装项目版本的cabal(stack build cabal?)

或者是否有一些更好的基于堆栈的方法来构建和分发到Hackage,而不涉及直接调用cabal

1 个答案:

答案 0 :(得分:6)

根据我之前的评论添加答案。

<小时/> stack通过

提供相同的功能
  • stack sdist
  • stack upload

命令,不需要在基于堆栈的项目中直接与cabal连接。

堆栈支持的完整命令列表可以通过以下方式获得:

$ stack --help

official documentation

单个命令还支持--help以查看它们支持的命令行标记。