我有一个模块App::Assixt
,我最近对其进行了比较大的更改。我当然已经在我的本地系统上对其进行了测试,但想在将其称为“稳定版本”之前对其进行一些现场测试。
有没有办法将此版本“标记”为“alpha”或“release-candidate”,所以此版本只能由选择使用不稳定/测试版本的人安装?
我有一个模块App::Assixt
,我最近对其进行了比较大的更改。我当然已经在我的本地系统上对其进行了测试,但想在将其称为“稳定版本”之前对其进行一些现场测试。
有没有办法将此版本“标记”为“alpha”或“release-candidate”,所以此版本只能由选择使用不稳定/测试版本的人安装?
zef 将对待版本与 Perl 6 相同:
# true because "1.0.a" < "1.0.0"
$ perl6 -e 'say Version.new("1.0.PREVIEW") < Version.new("1.0")'
True
如果Foo:ver<1.0.PREVIEW>
安装了 a ,它可以用作Foo:ver<1.0.PREVIEW>
或Foo:ver<1.0>
。这意味着任何已Foo:ver<1.0.PREVIEW>
安装的系统都需要卸载它以Foo:ver<1.0>
在将来升级/安装(除非使用--force-install
),而且作者可以为最终版本编写代码,而无需在.PREVIEW
任何地方声明额外的内容。
这在发布方面不是很有用 - 尽管用户没有选择使用任何版本控制方案,但默认情况下 zef 将获取最新版本。由于用户想要选择加入,因此有两个选项。
1)创建例如不稳定、测试、稳定的索引并说服人们使用它们
这可以通过将 zef 配置复制到%*ENV<XDG_CONFIG_HOME>/zef/config.json
并合并以下内容来完成:
"Repository" : [
{
"short-name" : "unstable",
"enabled" : 0,
"module" : "Zef::Repository::Ecosystems",
"options" : {
"name" : "unstable",
"mirrors" : [ "/path/or/url/to/package/list.json" ]
}
}
]
这使得:
zef install Foo::Bar --unstable
2)给出资源的链接而不发布它
zef install https://github.com/ugexe/Perl6-Text--Table--Simple.git@v0.0.4
zef install https://github.com/ugexe/Perl6-Text--Table--Simple/archive/v0.0.3.zip