【发布时间】:2019-02-24 01:03:03
【问题描述】:
SemVer specs 状态应该增加
- 当您进行不兼容的 API 更改时的主要版本,
- 以向后兼容的方式添加功能时的次要版本,并且
- 当您进行向后兼容的错误修复时的 PATCH 版本。
在命令行界面的情况下,什么是向后兼容的?
一个简化的例子:
有一个命令行工具可以分析文本文件中的数字。它将返回最小值和最大值。
1.0.0 版的工作方式如下:
$ analyzertool numbers.txt
min: 12
max: 20
现在我添加一个有用的功能。该工具现在还将输出平均值:
$ analyzertool numbers.txt
min: 12
max: 20
avg: 17
这是主要还是次要变化?输出明显改变了,但min 和max 的行仍然存在,所以有人在做
$ analyzertool numbers.txt | grep min
min: 12
仍会看到相同的输出。
我正在寻找现有的约定或相关示例。
【问题讨论】:
-
我可能回答得太快了。您的文档是否说明最终可能会将其他统计信息附加到输出中?
-
1.0.0 文档没有宣布任何可能即将添加的内容。
标签: command-line-interface versioning semantic-versioning