11 个不稳定版本
0.6.2 | 2024年3月24日 |
---|---|
0.6.0 | 2023年10月10日 |
0.5.0 | 2022年11月15日 |
0.3.1 | 2022年6月12日 |
0.1.0 | 2021年11月13日 |
#19 in Cargo 插件
41,142 每月下载量
40KB
841 行
感谢 Diego F. Goberna 设计了可爱的标志 🥰
简介
cargo-machete
是一个 Cargo 工具,可以快速(但不够精确)地检测 Rust 项目的未使用依赖。
有关详细信息,请参阅 博客文章。
安装
使用 cargo 安装 cargo-machete
cargoinstall cargo-machete
用法
在包含一个或多个 Rust 项目的目录中运行 cargo-machete(使用 Cargo 进行依赖管理)
cd my-directory && cargo machete
# alternatively
cargo machete /absolute/path/to/my/directory
返回码 表示是否找到了未使用的依赖项
- 0 表示 machete 没有找到未使用的依赖项,
- 1 表示它找到了至少一个未使用的依赖项,
- 2 表示处理过程中出现错误(在这种情况下,无法确定是否找到了未使用的依赖项)。
这可以用于 CI 环境中。
误报
要在包中忽略一组特定的依赖项,请将 package.metadata.cargo-machete
添加到 Cargo.toml
(或 workspace.metadata.cargo-machete
添加到工作区的 Cargo.toml
),并指定一个 ignored
数组
例如
[dependencies]
prost = "0.10" # Used in code generated by build.rs output, which cargo-machete cannot check
# in an individual package Cargo.toml
[package.metadata.cargo-machete]
ignored = ["prost"]
# in a workspace Cargo.toml
[workspace.metadata.cargo-machete]
ignored = ["prost"]
如果误报太多,请考虑使用 --with-metadata
CLI 标志,该标志将调用 cargo metadata --all-features
以查找最终依赖项名称、更精确的依赖项按构建类型等。 ⚠ 这可能会修改项目中 Cargo.lock
文件。
Cargo Machete Action
为 cargo machete 提供的 GitHub 动作。
示例用法
以下步骤可以添加到任何工作流中
- uses: bnjbvr/cargo-machete@main
可以添加到任何工作流中。
以下是一个示例工作流
name: Cargo Machete
on:
pull_request: { branches: "*" }
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Machete
uses: bnjbvr/cargo-machete@main
贡献
我们欢迎社区为此项目做出贡献。
许可证
依赖
~11-21MB
~348K SLoC