SonarQube的C#插件5.0是否忽略了csharpsquid:S3217规则?

时间:2016-04-01 17:58:32

标签: c# sonarqube sonarqube5.2

我从版本4.5更新了C#插件到5.为了验证插件升级,我之前和之后进行了分析。 "经过分析"在分析之前显示出低于"的6个问题"。请注意,之前和之前的代码没有变化。经过分析(唯一的区别是之前用C#插件4.5扫描,之后用5.0扫描)。两种分析均以预览模式运行。

当我对生成的报告进行差异化时,我注意到有6个实例""明确"转换" foreach"不应该使用循环(csharpsquid:S3217)"分析后遗漏了这些内容。

为什么5.0插件不再将此视为问题?还有其他人看到这个吗?

PS:我们在SonarQube 5.2上。

1 个答案:

答案 0 :(得分:1)

最近对规则S3217进行了一些微调,以减少规则产生的噪音。具体来说,在遗留代码上,规则报告了很多问题,因此我们将其修改为https://jira.sonarsource.com/browse/SLVS-769的一部分

请注意,规则说明也已更改。请参阅rule documentation site的例外部分,其中包含

  

该规则忽略对象集合的迭代。这包括   使用ArrayList的遗留代码。此外,该规则不报告   在调用用户定义的转换的情况下。