我想使用 sqlx 中使用的 uuid 依赖项。
//! ./Cargo.toml
sqlx = { version = "0.6", default-features = false, features = [
"chrono",
"macros",
"migrate",
"postgres",
"runtime-tokio-rustls",
"uuid",
] }
uuid = { features = ["v4", "fast-rng"] }
我假设,下面的这个版本将为我的项目下载单独版本的 uuid。
uuid = { features = ["v4", "fast-rng"], version = "1.4.1" }
我需要用它来获取sqlx的依赖吗?
uuid = { features = ["v4", "fast-rng"], version = "*" }
假设
[email protected]
所依赖的版本是[email protected]
第一个版本
uuid = { features = ["v4", "fast-rng"], version = "1.4.1" }
即从
Cargo.toml
的 sqlx
复制版本字符串是指定相同版本的正确方法,如果所有依赖项都解析为同一版本,则 cargo
只会下载包的单个实例。
uuid = { features = ["v4", "fast-rng"], version = "*" }
不指定使用其他要求指定的任何内容,它使用可用的最新版本(任何版本,它相当于
">=0.0.0"
)。
没有办法依赖依赖项依赖版本。
板条箱所做的是重新导出它们使用的板条箱,这与
sqlx
sqlx::types::uuid
没有什么不同,是 uuid
的 重新导出(嗯,这是 sqlx_core::types::core
的重新导出,但那是 uuid
重新导出)
因此,如果您想使用相同的类型,您可以将
use sqlx::types::uuid;
添加到源中,而不是将 uuid
添加到 `Cargo.toml。