【问题标题】:Why does this `npm version` command break?为什么这个 `npm version` 命令会中断?
【发布时间】:2019-07-23 23:27:31
【问题描述】:

很简单,这个命令有效:

npm version 0.13.0-20190723T144221.855f01d

但是这个没有:

npm version 0.13.0-20190723T125957.0665893

为什么?它破坏了我们的构建过程,因此了解为什么会发生这种情况会很有用。

【问题讨论】:

  • “不起作用”以什么方式?错误信息?输出超出预期?格式化硬盘了吗?

标签: npm semantic-versioning


【解决方案1】:

连字符后面的任何部分都不能是具有前导 0 的数字(除非数字等于 0)。

这仅适用于数字,使.855f01d.0855f01d 都有效,但.0855 无效。

这可以在https://semver.org/spec/v2.0.0.html的规则9中找到:

预发布版本可以通过在补丁版本之后附加一个连字符和一系列点分隔标识符来表示。

标识符必须仅包含 ASCII 字母数字和连字符 [0-9A-Za-z-]。标识符不得为空。

数字标识符不得包含前导零。

出于测试目的,您可以在此页面上填写您建议或尝试的版本https://jubianchi.github.io/semver-check/#/

【讨论】:

    猜你喜欢
    • 2021-09-13
    • 2018-02-13
    • 2015-09-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-21
    相关资源
    最近更新 更多