8个版本 (4个稳定版)
1.0.3 | 2022年12月18日 |
---|---|
1.0.2 | 2022年7月22日 |
1.0.1 | 2022年5月26日 |
0.3.1 | 2020年12月28日 |
0.1.0 | 2020年12月22日 |
#100 在 配置 中排名
每月37次 下载
23KB
615 行
一个旨在辅助开发和CI工作流程的CLI。该项目可以被视为Rust编程语言相关工具的高级“协调器”或“包装器”。
配置
应用程序将主要与定义工具行为方式的配置(规则集)交互,有三个不同的来源
内置配置
此仓库中找到的预定义规则集。欢迎提交PR创建新的配置。
rust-tools --template you-rust SOME_COMMAND
YouRust(
Params {
clippy_flags: [
"-Dclippy::restriction",
"-Dwarnings",
"-Aclippy::implicit_return",
"-Aclippy::missing_docs_in_private_items",
],
rust_flags: [
"-Dbad_style",
"-Dfuture_incompatible",
"-Dmissing_debug_implementations",
"-Dmissing_docs",
"-Dnonstandard_style",
"-Drust_2018_compatibility",
"-Drust_2018_idioms",
"-Dtrivial_casts",
"-Dunused_lifetimes",
"-Dunused_qualifications",
"-Dwarnings",
],
rustfmt_flags: [
"edition=\"2018",
"tab_spaces=2",
"use_field_init_shorthand=true",
"use_small_heuristics=\"Max",
],
toolchain: "",
},
)
配置文件
可以使用内置配置作为模板以满足特定需求。允许添加或删除标志。
rust-tools --file SOME_CONFIGURATION_FILE.cfg SOME_COMMAND
add_clipy_flags -Aclippy::type_complexity
rm_clippy_flags -Aclippy::implicit_return,-Aclippy::missing_docs_in_private_items
template you-rust
toolchain nightly-2020-11-11
CLI参数
根据选定的目标,可以定义或扩展某些规则;
rust-tools rust-flags -Dbad_style,-Dunused_qualifications
最终配置将遵循以下顺序:内置
-> 文件
-> CLI
,即内置参数会被文件参数覆盖,文件参数会被CLI参数覆盖。
脚本示例
#!/usr/bin/env bash
set -euxo pipefail
cargo install rust-tools
export RUSTFLAGS="$(rust-tools rust-flags)"
rust-tools clippy
rust-tools check-generic SOME_CRATE
rust-tools test-with-features SOME_CRATE FIRST_FEATURE,SECOND_FEATURE
支持的目标
- clippy标志
- rust标志
- rust-toolchain文件
- rustfmt文件和标志