gpt4 book ai didi

haskell - 我的 Haskell 包可以依赖哪些版本的包?

转载 作者:行者123 更新时间:2023-12-03 14:59:13 24 4
gpt4 key购买 nike

我几乎准备好将我的第一个包上传到 Hackage!

我的 hstest.cabal 中有这个:

Executable hstest
Main-Is: hstest.hs
Build-Depends: base, mtl, directory, ghc, ghc-paths, random, QuickCheck

我知道简单地列出我的包所依赖的包是一种不好的形式;相反,我应该说明需要这些软件包的哪些版本。

我安装的版本是
  • 基数 = 4.1.0.0
  • mtl = 1.1.0.2
  • 目录 = 1.0.0.3
  • ghc = 6.10.3
  • ghc 路径 = 0.1.0.5
  • 随机 = 1.0.0.1
  • 快速检查 = 1.2.0.0

  • 有没有一种简单的方法可以找出我的包实际需要的每个包的最早可接受版本? (即不安装大量过时版本并一一测试?)

    我可以假设我的包可以依赖这些包的哪些 future 版本?

    最佳答案

    Is there an easy way of finding out what the earliest acceptable versions of each of these packages my package actually needs



    不,没有工具可以做到这一点。

    Which future versions of these packages can I assume my package can depend on?



    最安全的方法是关注 the package versioning policy ,它说只依赖于 API 扩展版本的包。那是表单的版本: A.B.* .正如政策所述:

    To minimize breakage when new package versions are released, you can use dependencies that are insensitive to minor version changes (e.g. foo >= 1.2.1 && < 1.3).



    所以你会做这样的事情:
     QuickCheck >= 1.2 && < 1.3

    现在,测试可能会揭示您实际使用的功能的下限或上限。

    关于haskell - 我的 Haskell 包可以依赖哪些版本的包?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2841956/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com