问题标签 [scrutinizer]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - 当代码完全不同时,为什么 Scrutinizer 会说“重复代码”?
当这两种方法完全不同时,为什么 Scrutinizer 会说“重复代码”?这是误报还是 Scrutinizer 确实希望以更抽象的方式看到这一点?
github - 审查员找不到 .jshintrc
我正在尝试开源项目的工具,比如 travis 和 scrutinizer。在我的 github 项目的根文件夹中,我同时拥有 .jshintrc 和 .scrutinizer.yml。但是,当我在审查器配置文件中启用 jshint 工具时,它报告说
我的存储库:https ://github.com/Misiur/Jawan
之前有人遇到过这个错误吗?
unit-testing - Scrutinizer 说 Travis 通知它“测试失败”,但测试确实通过了
我在 GitHub 上有这个项目。在我的.travis.yml文件中,我使用与每个项目相同的配置,将代码覆盖率数据上传到 Scrutinizer:
这是 Travis 的最新成功构建:
https://travis-ci.org/mindplay-dk/boxy/builds/61963347
这是对 Scrutinizer 的最新失败检查:
https://scrutinizer-ci.com/g/mindplay-dk/boxy/inspections/ac33c2fb-6083-4984-bf41-983e4d0f54e2
Travis 上传代码覆盖率数据后,错误消息“Scrutinizer 被通知测试失败”似乎立即出现。
php - 如何强制 Scrutinizer 扫描 .inc 文件
Scrutinizer 似乎没有发现或检测 .inc 文件为 PHP,尽管它们是 PHP 文件但需要此扩展名。
YAML 文件是否有一些设置可以将 .inc 文件视为 PHP 文件并实际检测它们,我可以在不更改存储库中的文件的情况下将 *.inc 重命名为 Scrutinizer 的 *.php 吗?
似乎这是硬编码为 *.php
php - CI 访问接口上的属性
我正在使用审查器来分析我的代码。几乎所有事情都已修复,但我似乎无法解决此问题。
我看到了这个问题,因为它是一个不存在属性的接口,但我的代码工作得很好。那么当我分析我的代码时,我怎样才能让这段代码通过呢?
谢谢
编辑
在这些行上出现错误(和其他一些文件几乎相同)
该类的构造函数
我的基本控制器的构造函数:
使用的合约https://github.com/illuminate/contracts/blob/master/Auth/Guard.php
php - 审查员分数优化
我开始开发一个图像处理库,并决定在一个很酷的包中使用 Scrutinizer 进行测试和检查,但我不确定如何优化我的代码以限制一些降低整体分数的统计数据。
我在下面向您展示的代码具有“条件:6”,将其推至“B”等级。代码没有什么特别之处,它检查潜在的丢失权限或无效目录并相应地抛出异常,因此在不使代码反应完全不同的情况下降低分数是相当困难的:
我不明白为什么我有 6 个条件,而那里只有 3 个条件。我不明白我怎么能降低这个!
php - 您如何使用 Scrutinizer 的 dependency_paths 配置设置来隐藏某些文件夹中的问题?
我正在使用 Scrutinizer-CI 的静态分析函数来提供有关我的 PHP 代码的反馈。根据他们的文档,我在项目的根目录中有一个.scrutinizer.yml
文件,似乎成功地按照我希望的方式配置了 Scrutinizer 的选项。几乎。
其中一个选项是dependency_paths
,它允许我指定包含依赖项的路径。据我在 Scrutinizer 交流过的人说...
“依赖项中列出的路径与完全排除的路径不同,因为我们会查看它们以查找它们定义的类或函数,以使您对其他文件的分析更加准确。但是,我们不会在这些文件中查找任何问题。”
不幸的是,这似乎对我不起作用。我使用 SAML 进行身份验证,因此simplesamlphp
我的源代码中有一个文件夹。(您不能只通过 composer 之类的东西包含 simplesamlphp,因为您必须根据您的使用方式编辑一些配置文件等)。
我的文件的相关部分.scrutinizer.yml
如下所示:
(该application
文件夹是我的源代码中的根级文件夹)。
这似乎确实可以防止simplesamlphp
文件夹中发现的任何问题影响我的代码在 Scrutinizer 中的分数。但是,Scrutinizer 仍然报告该simplesamlphp
文件夹中的代码存在数千个问题,因此很难找到实际上与我编写的代码有关的问题。
我使用dependency_paths
设置错误吗?看起来它确实不像我被告知的那样工作……让我很困惑。
编辑:为了提供更多信息,我可以simplesamlephp
使用该excluded_paths
选项完全排除该文件夹。挑战在于让 Scrutinizer 查看我的依赖项中的类等(以便更好地理解我的代码),但不报告在依赖项中发现的任何问题。
编辑2:嗯,这很有趣。我尝试了我的文件的几个版本(相关部分).scrutinizer.yml
,并看到了以下结果。
首先,我只是告诉 Scrutinizer 完全排除该simplesamlphp
文件夹:
这使我能够看到我自己的代码的问题并修复它们。此时,我的项目在 Scrutinizer 上的得分是 9.54。然后我停止排除simplesamlphp
:
此更改在 Scrutinizer 的分析中引入了 7756 个问题,但我的项目得分为 9.54(这意味着simplesamlphp
正在报告中的问题,但不计入我的利益)。然后我尝试从路径中删除尾部斜杠和星号:
此更改引入了 2002 个问题并修复了 3198 个问题,所有这些问题(已引入和已修复)都在simplesamlphp
文件夹中。我完全没想到会有这样的效果。这也将我的项目在 Scrutinizer 上的得分降低到了 7.47,这意味着simplesamlphp
文件夹中的问题现在正被计入我的利益。然后我尝试更改为单行数组语法dependency_paths
:
这没有效果。为了彻底起见,我/*
在这个数组语法中添加了尾随:
这些结果也让我感到惊讶。此更改修复了 2002 年的问题,并使我的分数恢复到 9.54。已修复的问题和剩余的 4519 个问题都在simplesamlphp
文件夹中。虽然这似乎让我更接近目标,但它仍然在我的依赖路径中的代码中留下了数千个问题。我不确定此时还可以尝试什么,所以我可能会回到简单地完全排除该simplesamlphp
文件夹。
continuous-integration - 在云 CI 服务上使用 Vagrant
是否有任何云 CI 服务允许 Vagrant VM 使用 VirtualBox 作为提供程序运行?
早期的调查表明,这似乎无法通过 Travis CI 或 Circle CI 实现,尽管 vagrant-aws 插件允许将 AWS 服务器用作 Vagrant 提供程序。这个对吗?
php - Scrutinizer + PHP + MongoDB:连接被拒绝
在 Scrutinizer 上运行测试时,我无法连接到 MongoDB。我的测试套件出错了
它需要任何凭据吗?我需要以某种方式启用 MongoDB 吗?我需要告诉 PHP 我想使用它吗?
(显然,我没有在 SO、网络或 Scrutinizer 文档中找到任何内容。)
laravel - Scrutinizer Laravel 5.2 无法分析
由于我将 Laravel 升级到 5.2,Scrutinizer 抛出一个错误,说它无法被分析:
我composer.json
的是:
我已经尝试排除供应商文件夹,但这没有帮助:
为什么会发生这种情况,我怎样才能告诉 Scrutinizer 忽略这个包?