问题文件树
地址:os-checker.github.io/file-tree 或者 https://os-checker.github.io/{user}/{repo}
按编号顺序介绍
- 筛选条件:筛选项前面的数字表示该维度的诊断数量
- User
- Repo
- Target:编译目标;默认为 All-Targets
- Pkg:默认为空,表示该仓库内的全部 packages
- Features:默认无(默认启用的 features)
- Checker:检查工具名称;Cargo 为特殊的虚拟工具,表示其他检查工具出现编译错误
- Kind:检查类别,比如 Clippy 可以细分成 error 和 warn
- 收起文件树:对应于快捷键
←
- 打开文件树需使用快捷键
→
- 收起/打开文件树:
<space>
(空格键)
- 打开文件树需使用快捷键
- 收起筛选区域:对应于快捷键
↑
- 打开筛选区域需使用快捷键
↓
- 收起/打开筛选区域:
<esc>
(退出键)
- 打开筛选区域需使用快捷键
- 锁图标:
- 处于锁住状态:地址栏将显示基于该页面查询条件的链接,可分享给其他人看到当前页面相同的内容
- 处于解锁状态:地址栏只有默认链接,不携带查询条件相关的参数
- 总诊断数量:所有适用于筛选条件的全部诊断数量
- 文件树:文件树按照诊断数量降序排列;文件树的根是 pkg,而不是具体的某个目录;前面的数字表示诊断数量
- 文件节点:数字表示诊断数量;文件树的节点在大多数情况下是该 pkg Cargo.toml 所在目录的相对路径,但也有一些特殊情况,比如
- 一个本机的绝对路径:有时诊断发生在该 pkg 之外;
(virtual) CheckerName
只适用于 Cargo 的诊断:它表示某个具体的检查工具具有 error 输出;导致 error 输出的原因是复杂的,因为它可能来自检查工具,也可能来自 Cargo 本身(编译问题、网络问题等等);[semver checks]
package 维度的诊断,不对应到任何具体的文件,因此这也是虚拟的文件名Not supported to display yet.
:有些检查工具没有良好的解析格式,因此无法结构化呈现在哪个文件上有诊断;比如 lockbud 直接打印 debug 诊断信息进行报告,那么 os-checker 只能统计它报告了一个数量(即使你看到明细中它有自己的统计数字),而且不知道发生在哪个文件上。
- 明细栏:按照(我认为的)检查工具的重要程度从左到右排列;右上角标识的数字标识该项的诊断计数;该数字具有颜色标识,红、橙、蓝为(我认为的)从高到低的诊断严重程度;每个明细都有文件位置,因此单击文件树依次处理。一般流程为
- 首先查看 Cargo 栏发生 error 一行的位置,它表示错误报告;
- 然后查看其他那些红色和橙色的检查结果,优先处理那些诊断报告;
- 最后查看蓝色低优先级的检查结果;格式化是最基本的规范,在你的项目中运行
cargo fmt
就可以清除该诊断;如果有些诊断结果无法处理也没有关系...
- 诊断明细:只显示当前选择的检查类别的明细