在RuboCop中,严重的“错误”和“致命的”有什么区别?
关于严重度的文档说
每个cop都有一个默认的严重性级别,基于它所属的部门。该级别是对Lint的警告,对于其他所有的级别都是约定。警察可以定制他们的严重程度。允许的参数有重构、约定、警告、错误和致命。 上面的一般规则有一个例外,那就是Lint/Syntax,一种特殊的cop,它在调用其他cops之前检查语法错误。它不能被禁用,其严重程度(致命)不能在配置中更改。
这表明致命比错误更严重,但我可以编写无效的ruby代码,它只会产生“错误”级别的攻击。
def foo
42
# No end
$ rubocop -D invalid.rb
Inspecting 1 file
E
Offenses:
invalid.rb:3:11: E: unexpected token $end
# No end
1 file inspected, 1 offense detected
发布于 2016-01-14 00:18:10
rubocop来源指出,编码问题是唯一可能导致致命后果的问题。如果你在rubocop github上搜索“致命”,你会发现很少有提到,如果你跟踪它的名字,基本上就是它。
https://stackoverflow.com/questions/34783916
复制