我的Haskell软件包可以依赖哪些版本的软件包?
我已经准备好将我的第一个包上传到Hackage了!
我在我的hstest.cabal中有这个: Executable hstest Main-Is: hstest.hs Build-Depends: base,mtl,directory,ghc,ghc-paths,random,QuickCheck 我知道简单地列出我的包依赖的包是不好的形式;相反,我应该说明需要这些软件包的哪些版本. 我安装的版本是 > base = 4.1.0.0 有没有一种简单的方法可以找出我的包实际需要的每个包的最早可接受的版本? (即没有安装大量过时版本并逐个测试?) 我可以假设我的软件包可以依赖于这些软件包的未来版本?
不,没有工具可以做到这一点.
最安全的方法是遵循the package versioning policy,它说只依赖于API扩展版本的软件包.这是形式的版本:A.B.*.正如该政策所述:
所以你会做类似的事情: QuickCheck >= 1.2 && < 1.3 现在,测试可能会显示您实际使用的功能的上限或上限. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |