10 个不稳定版本 (3 个重大更改)
0.4.3 | 2023年11月4日 |
---|---|
0.4.2 | 2023年4月19日 |
0.3.2 | 2023年4月11日 |
0.2.1 | 2023年2月2日 |
0.1.1 | 2022年8月18日 |
#207 在 Cargo 插件
每月25 次下载
61KB
1.5K SLoC
cargo-emanate
cargo 子命令,用于发布基于工作区的 crate 并检查依赖项版本。
考虑到简洁性和手动管理而创建。
功能
工作区
以下命令可用
version
:将指定版本应用于工作区和其成员 crate。publish
:按层次依赖关系顺序发布所有 crate。check
:扫描 crate 中的所有依赖项,并与 crates.io 的输出进行比较,将差异输出到控制台。您可以使用这些信息手动更新依赖项。
所需的项目结构
- 所有成员 crate 的版本必须使用
version.workspace = true
在Cargo.toml
中链接到工作区。 - 所有成员 crate 的版本将始终与工作区版本匹配
- 应忽略的 crate 应启用
[package] publish = false
属性
如果您需要在您的 workspace 中以特定版本发布一个 crate,您应该手动更改版本设置并发布它。该工具目前不跟踪 workspace crate 中的版本。
crate
以下命令可用
check
:扫描 crate 中的所有依赖项,并与 crates.io 的输出进行比较,将差异输出到控制台。您可以使用这些信息手动更新依赖项。
通用
注意:此工具仅支持工作区中固定版本的用法。即依赖版本如 "^2.0.0" 或 "1.0" 将被拒绝。版本必须始终符合确切的 x.y.z[-后缀]
方案。这是为了防止在次要和补丁依赖项发布期间潜在的代码注入。
依赖项
~23–39MB
~640K SLoC