【问题标题】:Find earliest package version with function X使用函数 X 查找最早的包版本
【发布时间】:2015-04-26 15:22:07
【问题描述】:

所以我坐在这里想知道为什么我找不到我正在寻找的功能,结果发现它在我安装的软件包版本中不存在。

那么我如何让 Hackage 告诉我该功能是在哪个版本中添加的?

(特别是,我可以在我的 Cabal 描述中指定正确的包边界。)

【问题讨论】:

  • @BenjaminGruenbaum 我做到了。这如何帮助我知道几十个版本中的哪一个添加了我想要的功能?
  • 所以要明确一点,您想获得包含具有给定签名的特定函数的库的最小版本吗?
  • 我发现 Luite 从 hackage 创建的 git 存储库非常有用,例如:hdiff.luite.com/cgit/lens。您可以通过克隆相应的 repo 并应用一些 git-foo (git blame, git log -G) 来解决您的问题。
  • @BenjaminGruenbaum 是的,这就是我所追求的。

标签: haskell cabal hackage


【解决方案1】:

hackage-diff 可能是您正在寻找的工具。

注意我自己从未尝试过。

【讨论】:

  • 这是一个不错的发现...虽然我不得不说,该工具看起来有点暴力,因为它必须在临时目录上调用 cabal
  • 显然它并不完美,但这是我所知道的唯一部分方法。最好是维护者将 Since x.y.z 注释添加到新的导出中。
  • 我不确定...我宁愿浏览the git repo 来查找特定更改。使用hackage-diff,您基本上需要为此手动平分,而当它总是需要完全构建不太好的包时。
  • 啊,我还以为是hoogle dbs from hackage
猜你喜欢
  • 2021-10-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-08-23
  • 2023-03-04
相关资源
最近更新 更多