关于Emacs包更新时的新功能/bug fix提醒的讨论

之前的帖子也有讨论

这次时emacs devel上的讨论,挺有意思的。 http://lists.gnu.org/archive/html/emacs-devel/2018-05/msg00697.html

概括起来就是说,实现一个类似What’s New的功能,在更新后显示一次新变化。很多应用软件都有这个功能,更新后会有一个小弹窗提示你有什么改进,修复了什么BUG(虽然我从来没看过,不过Emacs如果有的话肯定会看的)。

讨论里提到了在package文件里加一个News文件,然后发现已经有了,elpa上就会显示news(我都没上过elpa……)

我觉得可以写一个包来搞,跟踪各个包的版本(或者SHA?),更新了以后显示一次变化。

这个功能我以前玩Vim的时候和vundle和neobundler的作者提过这个要求,实现了显示包更新前和更新后两个git commit之间的log。

随便一套配置就是几百个 package,累积的 changelog 量相当可观,而且一些底层包即使看到更新,不一定能立刻知道它会产生什么影响。

除了让用户知道发生了什么变化,更应该让用户可以选择回滚/锁定某个版本、推迟修正自己配置。

4 个赞

问下这种情况一般都是怎么做的: 假设我当前的版本A

上游更新了两个版本 B,C

我更新时提示我更新到C

那我应该看到 A->B B->C 所有的日志吗

我觉得是呀,直接更新到C并不意味着B的更新就不存在啊。

平时更新的话没有这么夸张吧……除非你三年一更新

对用户没有直接影响的底层包可能可以选择不订阅change log。

锁版本的话,对于package.el来说就是单纯不更新呗。不过回滚就需要package.el支持了。

如果能在浏览package的时候查看change log,想必会方便很多:没啥大变化就更新,有较大变化就等有时间再说。

我也喜欢这种方式。