【发布时间】:2012-01-28 13:52:12
【问题描述】:
我正在尝试将我的第一个包上传到 Hackage(耶!),我收到了这个错误:
依赖“build-depends:base”没有指定版本号的上限。 'base' 包的每个主要版本都会以各种方式更改 API,大多数包都需要一些更改才能使用它进行编译。推荐的做法是在“base”包的版本上指定一个上限。这可确保在发布“基本”包的新主要版本时,您的包将继续构建。如果您不确定要使用什么上限,请使用下一个主要版本。例如,如果您使用 'base' 版本 2 和 3 测试了您的包,则使用 'build-depends: base >= 2 &&
这似乎是一个完全可以接受的拒绝我的包裹的理由。
是否有一个很好的工具可以针对各种版本的base 测试我的包,以便我可以看到界限是什么(而不仅仅是猜测)?我能想到的最好的方法是使用一些 shell 脚本来执行以下操作:
% for v in $BASE_VERSIONS
do
cabal install base-$v &&\
cabal configure --enable-tests &&\
cabal build &&\
cabal test && echo "$v ok" || echo "$v fail"
done
但我觉得应该有更好的东西。
【问题讨论】: