rust - 在 Cargo 中指定依赖版本的语法是什么?

标签 rust rust-cargo

到目前为止我已经看到了三个...

[dependencies]
crate = "1.0.0"  # I think this is an exact version match
crate = "^1.0.0" # I think this means "use that latest 1.x.x"
crate = "*"      # I think this means "use the latest"

我很想知道如何使用依赖列表。最好有一个权威来源来记录依赖项的不同语法。

最佳答案

参见 crates.io documentation page on "Specifying Dependencies" .总结:

  • 无或插入符号 ( ^) 表示“至少是这个版本,直到下一个不兼容的版本”。

  • 波浪号 ( ~) 表示“至少是这个版本,直到(但不包括)下一个次要/主要版本”。即 ~1.2.3将接受 1.2.<em>X</em>其中 X 至少为 3,~1.2将接受 1.2.* , 和 ~1将接受 1.*.* .

  • 通配符 ( * ) 表示“任何看起来像这样的东西”。即 1.2.*将接受 1.2.<em>anything</em> ( 1.2.01.2.7-beta1.2.93-dev.foo 等,但不包括 1.3.0 )。

  • 不等式(>=><=)意味着显而易见:Cargo 使用的版本必须满足给定的不等式。

关于rust - 在 Cargo 中指定依赖版本的语法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30826513/

相关文章:

rust - 什么时候应该使用函数指针而不是闭包?

rust - 我想将HashSet [0]的元素移动到HashSet [1],错误[E0502] : cannot borrow `hsets` as mutable because it is also borrowed as immutable

将简单的 C#define 转换为 Rust 常量

rust - 使用沙沙本体时如何减少或加快重建速度?

rust - 如何在 Cargo.toml 中包含未发布的依赖项/库?

optimization - 如果我优化大小(z)而不是速度(3),我将更改什么速度增益?

rust - Const Generics - 如何确保 usize const > 0

rust - 如何使用 `std::io::Command`

Rust 匹配意外结果

static-libraries - 有没有办法用 Cargo 创建 C 库?