首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >cabal new-sdist还包括测试文件

cabal new-sdist还包括测试文件
EN

Stack Overflow用户
提问于 2021-02-08 01:55:45
回答 1查看 60关注 0票数 0

我想为我的Haskell项目创建一个sdist包。为了简单起见,我们假设项目结构如下:

代码语言:javascript
复制
/ root
  | src
    | MyLib.hs
  | test
    | MyLibTest.hs
  | Changelog.md
  | MyProject.cabal
  | LICENSE

在cabal文件中定义了两个目标

代码语言:javascript
复制
library
  exposed-modules:    MyLib
  hs-source-dirs:     src
  -- ...

test-suite: MyProject-test
  type:               exitcode-stdio-1.0
  hs-source-dirs:     test
  main-is:            MyLibTest.hs
  -- ...

当我执行cabal new-sdist --list-only时,我得到以下列表:

代码语言:javascript
复制
./changelog.md
./MyProject.cabal
./LICENSE
./src/MyLib.hs
./test/MyLibTest.hs

我的问题是:是否可以在sdist包中包含与测试相关的文件,或者是否应该删除它们(如果可以-如何删除)?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-02-08 23:47:24

如果您尝试生成一个仅限库的sdist,则会得到以下错误:

代码语言:javascript
复制
$ cabal new-sdist --list-only <library-name>
cabal: The component library cannot be packaged for distribution on its own.
Only entire packages may be packaged for distribution.

所以我建议你把所有的东西都上传。

Hackage确实允许您使用候选包在发布之前预览库。我会说upload your source tarball作为一个包候选人,并仔细检查您的测试没有显示出来。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66091239

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档