有适用于维护Cabal Haskell软件包更改日志的工具吗?

23
我正在为编译器编写者开发一个新的Haskell包,进展迅速。每天都在进行许多次小版本号更改,但是Haskell打包系统Cabal似乎没有提供任何更新版本号或维护变更日志的工具。(日志存储在git中,但对使用该软件包的任何人都不可见。)我很想得到类似于Debian的uupdatedch/debchange工具。

有人知道通用工具,可以自动增加版本号并添加变更日志条目吗?


这个问题现在有14个投票和零个答案。我不确定你想要什么。将变更日志提取到文件中以便与分发一起包含听起来像是一个1行脚本。再加上几行脚本应该能够从指定的标签获取文件版本并构建一个基于标签的版本号的软件包。所以如果不是这个,你到底需要什么? - Paul Johnson
@Paul:没有变更日志可以提取。Git日志肯定不适合分发,尽管对于创建变更日志的开发人员来说,这是有用的信息。至于我正在寻找的东西,我想要一个像uupdate这样的工具,它将管理版本号和变更日志编辑等事项。我同意这可能是一个脚本,但可能不止10行,而是100行左右。我可能会在今年夏天解决这个问题。 - Norman Ramsey
2个回答

2
我使用一个非常简单的方案来生成我的CHANGELOG。我只需要向darcs请求并将其包含在我的软件包的.cabal文件的extra-files部分中。尽管如此,这似乎对于您所要求的内容过于简单了。=)
话虽如此,您可以更进一步,使用自定义的cabal Setup.(hs|lhs),在cabal sdist期间构建CHANGELOG,以获取您的darcsgit存储库的提交信息(或者您决定使用的任何系统)。 darcs使用的Setup.lhs执行类似操作,包括版本号和自上个版本以来应用的补丁数的信息。查看Setup.lhs中的sdistHookgenerateVersionModule机制,以了解如何执行此操作。

我是一个频繁、强迫性的提交者,我不想让我的用户在我的RCS日志中受苦... - Norman Ramsey

0
为了不回答你的问题,我不知道有任何相关的东西。这似乎是一个很好的想法,可以在Haskell Proposals子论坛中发布,因为它看起来非常有用。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接