[dependencies]
考虑文件部分中的Cargo.toml
以下条目:
[dependencies]
thingy = "=1.2"
因此,这是一个比较要求,并且就 SemVer 而言,它是一个“相等”的要求,但在某种程度上它是“未充分指定的”,因为它缺少补丁版本,所以它并没有明确指定任何内容,尽管它看起来像是指定了。
到目前为止,根据我在文档中读到的内容,还没有明确的解释。假设,我可以看到它等同于以下任何一种:
thingy = "1.2.*"
或者
thingy = "~1.2"
或者甚至
thingy = "=1.2.0"
实际上,它看起来就像那样工作thingy = "~1.2"
,因为在我所看到的代码库中,Cargo.lock
文件显示该项目正在使用1.2.1
。
未明确说明的相等性比较要求是否Cargo.toml
具有明确定义的语义?如果是,它们是什么?在哪里记录?
我希望这里的意图是写一个波浪号要求,并且我计划用波浪号要求替换这个不清楚的条目,除非我忽略了一些细微的(未记录的?)差异,从而赋予这种语法真正的含义。