Nuget Semver - 允许的预发行字符是什么?

时间:2018-03-05 04:50:24

标签: .net-core nuget

我正在尝试为我的.Nuget软件包(.Net Core 2)使用semantiv版本控制 版本看起来像1.0.0-my_fancy_branch.123。

您可以猜测,我尝试将分支名称和当前的BuildId设置为预发布标记。

不幸的是,dotnet build会出现这个错误: ... is not a valid version string.

但为什么呢? dotnet push / nuget的绝对精彩的文档没有列出任何禁用的字符。

我认为PIP是迟钝的......

1 个答案:

答案 0 :(得分:2)

根据NuGet package versions的参考资料,NuGet从NuGet 4.3.0开始使用Semantic Versioning 2.0.0。在早期版本中,只支持SemVer 2.0.0的一个子集,但这仍然可以提示指定版本的问题所在。

Section 9(关于预发布版本)中,指定"标识符必须仅包含ASCII字母数字和连字符[0-9A-Za-z - ]。"。因此,我猜你的案例中的问题是预发布版本中的下划线。

相关问题