Haskell 创建可与stack一起安装的黑客软件包
在我的项目目录中运行Haskell 创建可与stack一起安装的黑客软件包,haskell,haskell-stack,Haskell,Haskell Stack,在我的项目目录中运行stack sdist时,tarball中不包括stack.yaml文件(这似乎是错误的) 因此,当我将tarball上传到hackage时,然后stack install mypackage它会抱怨缺少我在stack.yaml文件中指定的依赖项(extra dep) $ stack install pandoc-placetable Run from outside a project, using implicit global project config Using
stack sdist
时,tarball中不包括stack.yaml
文件(这似乎是错误的)
因此,当我将tarball上传到hackage时,然后stack install mypackage
它会抱怨缺少我在stack.yaml
文件中指定的依赖项(extra dep
)
$ stack install pandoc-placetable
Run from outside a project, using implicit global project config
Using resolver: lts-5.17 from implicit global project's config file: ~/.stack/global-project/stack.yaml
While constructing the BuildPlan the following exceptions were encountered:
-- Failure when adding dependencies:
spreadsheet: needed (>=0.1.3 && <0.1.4), not present in build plan (latest applicable is 0.1.3.4)
needed for package: pandoc-placetable-0.4
-- While attempting to add dependency,
Could not find package spreadsheet in known packages
Recommended action: try adding the following to your extra-deps in /Users/maurobieg/.stack/global-project/stack.yaml
- spreadsheet-0.1.3.4
$stack安装pandoc placetable
使用隐式全局项目配置从项目外部运行
使用隐式全局项目配置文件~/.stack/global project/stack.yaml中的解析器:lts-5.17
构建BuildPlan时遇到以下异常:
--添加依赖项时失败:
电子表格:需要(>=0.1.3&&,正如@mgsloan在上面的评论中提到的:有一个开放的
我想在它被修复之前,我会告诉人们从GitHub(或者像@MichaelSnoyman提到的那样)克隆到stack unpack
),然后cd
到新创建的目录中,然后stack安装在那里。
。建议是什么(额外的源文件:stack.yaml
)在你链接工作的线程中?我希望是这样。Hackage包不应该是“stack installable”(stack除了调用完成所有工作的其他程序之外什么都不做,所以“stack installable”只是“cabal installable”),或者你应该从解析程序中获取stack.yaml
(请记住,包维护人员可能希望支持多个编译版本,并且将有多个stack.yaml
)。除了前面的评论,我建议您将软件包放入Stackage:@user2407038额外的源文件
没有帮助,请参阅我的更新。@MichaelSnoyman我的软件包只包含一个源代码文件,它是一个非常小的pandoc过滤器,不会有太大的变化。我们是否应该将这样的小东西推送到stacka还有ge?会不会给你们带来太多的管理开销?另外,我必须每隔几个月发布一个新的包,每当下一个lts
出现时,即使我的依赖项和代码根本没有改变,对吗?(如果我错了,请纠正我,并将其作为我作为haskell开发人员临时收集的信息的反馈)有关使用hackage软件包中stack.yaml的相关堆栈问题: