在阴谋文件的依赖项部分:
Build-Depends: base >= 3 && < 5, transformers >= 0.2.0我是不是该做点什么
Build-Depends: base >= 3 && < 5, transformers >= 0.2.0 && < 0.3.0(对我所依赖的软件包的版本设置上限)
还是不想?
我将使用一个实际的例子:我的“列表”包的黑客(列表单变压器和类)
lift和liftIO中使用ListT,因为它只是这些类型变压器的一个实例-0.2.x我想应用程序应该始终设置上限,这样它们才不会中断,所以这个问题只是关于库的:
我是否应该使用依赖项的上限?
发布于 2010-05-13 21:26:27
有一个明确的政策推荐上界--特别是参见第3节(“Cabal中的依赖项”)。其他答案为这一政策提供了进一步的理由。
简而言之,上限应该是< A.(B+1)的形式,其中A和B是当前版本(A.B.C...)的第一个元素。这是因为增加A.B应该意味着版本打破了旧的API。
发布于 2010-05-13 01:30:32
想想失败的模式:
放上上界。
发布于 2010-05-13 00:31:57
国际海事组织对公认的版本号设置上限是正确的。考虑到Hackage使用的版本号的语义,当然不能保证您的包将在这种情况下使用转换器0.3.0。
不过,我还没有看到任何关于这个问题的真正讨论,除了基本包之外,似乎没有使用上限的一般建议。
https://stackoverflow.com/questions/2823522
复制相似问题