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

cargo-scout-lib

为 cargo-scout 提供动力的库,允许您运行/实现自己的代码检查器

1 个不稳定版本

0.6.0 2020 年 1 月 12 日

#2073开发工具

33 每月下载量
cargo-scout 中使用

MIT/Apache

52KB
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许可更为宽松。

依赖

约11MB
~276K SLoC