#git-diff #clippy #diff #lint #pedantic #cli

app cargo-scout

仅在您的差异上运行 clippy::pedantic

6 个版本 (破坏性更新)

0.6.0 2020年1月12日
0.4.0 2019年12月15日
0.3.0 2019年12月15日
0.2.0 2019年11月30日
0.0.1 2019年9月10日

#974 in 开发工具

每月33次下载

MIT/Apache

58KB
1.5K SLoC

cargo-scout

Contributor Covenant Travis Build Status MPL 2.0 License MIT License

让你的世界比找到它时更好

cargo 子命令,用于获取代码库中更改的 clippy::pedantic 代码检查或 rustfmt 代码检查。

命令及其 bash 伪代码可能如下所示

# run clippy pedantic on a diff
$ cargo-scout lint # git diff | cargo clippy -- -D clippy::pedantic

# run rustfmt on a diff
$ cargo-scout fmt # git diff | cargo fmt --check

还有更多(注释的代码不会工作),例如工作区管理和许多可能符合您用例的标志。您可以通过运行带有 -h 或 --help 的命令来查找它们。

如果 cargo-scout 缺少您需要的功能,请考虑提交问题!

$ cargo-scout -h
$ cargo-scout lint -h
$ cargo-scout fmt -h

当前状态

cargo-scout 目前处于实验阶段,处于非常粗略的草稿阶段。

当前支持的最低 Rust 版本是 1.37 稳定版。

先决条件

Git:为了计算一组更改,它需要一个运行 git 的项目。

代码检查器使用 clippy,格式化器使用 rustfmt。请访问相应的链接以了解如何安装它们。

Rust 夜间版:某些命令需要 Rust 夜间版,因为我们使用的功能在稳定版中尚未提供(rustfmt --emit json 和一些 工作区设置中的 cargo clippy 功能)。

我们试图密切关注相关跟踪问题,并希望我们很快就能将其切换到稳定版。如果问题有所演变而我们没有注意到,请提交问题并告诉我们!

如何安装

$ cargo install cargo-scout

如何运行它

打开一个 shell,转到您要运行命令的项目目录,然后运行 cargo-scout,可选的目标分支

$ cargo-scout lint # clippy::pedantic lints on a diff with HEAD
$ cargo-scout fmt # rustfmt lints on a diff with HEAD

每个命令和子命令都支持 -h 和 --help

将查询 git diff 并运行 clippy,以搜索可能适用于您的 diff 的代码检查。

如果某些代码检查适用,则命令执行将失败。这个设计决策是为了您可以在某个时候将其放入 CI 管道中(但请等待 1.0 版本 ^ ^')。

行为准则

我们制定了行为准则,旨在创造一个更加愉快的社区和工作环境。请参阅行为准则文件以获取更多详细信息。

许可证

许可协议为以下之一

任选其一。

双许可MIT/Apache2更为宽松。

依赖关系

~13MB
~309K SLoC