Perl 试发布后如何继续作为模块作者

Perl 试发布后如何继续作为模块作者,perl,cpan,Perl,Cpan,我使用Perl5进行编程,使用Dist::Zilla(dzil)部署到CPAN时会出现问题。但是这个问题可能是一个一般性的问题,意思是独立于编程语言 问题描述 假设我正在发布模块Foo的新版本0.1,其中包含一个名为bar的新功能。我想以试用版的形式发布它(dzil build--trial),以便能够获得关于更改的反馈,而不会将其强加给不知情的用户。当我使用工具链执行此操作时,更改文件将如下所示: 1 Revision history for Foo 2 3 0.1 2019-06

我使用Perl5进行编程,使用
Dist::Zilla
dzil
)部署到CPAN时会出现问题。但是这个问题可能是一个一般性的问题,意思是独立于编程语言

问题描述

假设我正在发布模块
Foo
的新版本
0.1
,其中包含一个名为
bar
的新功能。我想以试用版的形式发布它(
dzil build--trial
),以便能够获得关于更改的反馈,而不会将其强加给不知情的用户。当我使用工具链执行此操作时,
更改
文件将如下所示:

1 Revision history for Foo
2
3 0.1       2019-06-19 17:49:09+02:00 Continent/City (TRIAL RELEASE)
4  - added bar
打包发行版(用于上传到CPAN)是这样一个文件:
Foo-0.1-TRIAL.tar.gz

在这里之前,一切都很简单。但从现在起,我不确定如何应对即将到来的事件:

  • 反馈是积极的。不需要改变。将发行版投入生产
新的(但未更改的)版本应该是什么样子? 我应该用相同的版本发布一个版本,还是把版本加起来?我是否应该在
更改
文件中添加新行(例如“将试用版0.1投入生产”)或更改现有行(即仅删除
(试用版)

  • 反馈是负面的。需要改变。添加功能/更改
    baz
这里也有同样的问题。新的变化肯定需要在
Changes
中提及。但再说一次:数一数版本,还是听其自然?在
更改中创建新条目
还是更改现有条目

这就是我想问的问题之一:这可能没什么大不了的,但必须有一个“最佳实践”。从长远来看,正确的做法是值得的

问题:

在对特定的CPAN进行试用发布之后,我应该如何继续进行版本编号和
更改
文件


(与Perl和CPAN无关的一般答案也很有趣)

我的一般建议是:如果试验结果非常成功,除了发布相同的东西而没有
--TRIAL
,没有任何变化,那么您可以重用该版本,因为在运行时两个tarball将具有相同的行为。如果必须进行任何可能影响用户或测试的更改,请升级版本。如果您不确定,请更改版本--版本是免费的。请记住,如果没有不同的版本,其他发行版无法区分其依赖项中的更改,CPAN客户端无法轻松请求特定的版本,等等


就变更日志而言,Metaspan现在在其变更预览中包括任何导致稳定版本的试用版本的变更可能会有所帮助,前提是试用版本已标记为稳定版本。()所以我只需要为每个不同的版本添加一个条目。

我会说:总是增加版本号;切勿更改更改日志;添加一个新条目说“0.01-TRIAL没有变化”很好。我完全支持@melpomene。。。碰撞版本号。许多CPAN作者在发布他们的试验时使用了下划线数字后缀(例如:
Foo-0.1_06.tar.gz
),因此版本升级到
0.2
也绝对有意义。您不能两次将完全相同的发行名上载到CPAN,因此我更喜欢在任何情况下使用试用版的数字形式,因为在您的更改文件中,您可以轻松列出每个主要版本的每个试用版之间的所有更改。(例如
0.1\u 01…
0.1\u 02…
0.2…