2 个版本
0.1.1 | 2022 年 9 月 23 日 |
---|---|
0.1.0 | 2022 年 9 月 20 日 |
#7 在 #inherit
15KB
176 行
Cargo 工作区依赖继承器
如果工作区中某个依赖项出现 n
次或更多,则从主工作区继承依赖项的实用工具。
工作区继承在版本 1.64 中稳定。有关更多信息,请参阅 [workspace.package]
、[workspace.dependencies]
和 从工作区继承依赖项。
如何使用
要继承工作区中出现五次或更多的依赖项,请使用以下命令
cargo install cargo-dependency-inheritor
cargo dependency-inheritor --workspace-path "path/to/workspace/Cargo.toml" -n 5
此命令将编辑您的 toml 文件,请确保有备份
过程
可以通过在工作区的 [workspace.dependencies]
表中指定依赖项来从工作区继承依赖项。之后,将其添加到具有 workspace = true 的 [dependencies]
表中。此软件包自动完成此过程。
- 读取工作区文件中
[workspace]
部分定义的软件包。 - 注意出现
n
次或更多的依赖项。 - 更新出现
n
次或更多的所有依赖项- 将
dependency = "0.1.3"
转换为内联表。 - 将
workspace = true
键值对添加到依赖项内联表中。 - 如果存在,从内联表中删除
version
(这将指定在工作区文件中)。
- 将
- 将包含所有出现
n
次的依赖及其版本的[workspace.dependencies]
表格添加到根工作空间文件中。
结果
# in a project
[dependencies]
tokio = { workspace = true }
# in the workspace
[workspace.dependencies]
tokio = "1.0"
依赖
~5MB
~96K SLoC