This run took 39 seconds.
From dad7a42f396eabf90d107716d6137dbc024b348c Mon Sep 17 00:00:00 2001 From: libraryupgrader <tools.libraryupgrader@tools.wmflabs.org> Date: Sun, 10 Nov 2024 03:59:33 +0000 Subject: [PATCH] build: Updating mediawiki/mediawiki-codesniffer to 45.0.0 The following sniffs are failing and were disabled: * MediaWiki.Usage.NullableType.ExplicitNullableTypes Change-Id: Iad9e1104f8564a1998cfa6c4807b50e318f3bbe6 --- .phpcs.xml | 1 + composer.json | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.phpcs.xml b/.phpcs.xml index 53fb7b9..43207b9 100644 --- a/.phpcs.xml +++ b/.phpcs.xml @@ -6,6 +6,7 @@ <exclude name="MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected" /> <exclude name="MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic" /> <exclude name="MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName" /> + <exclude name="MediaWiki.Usage.NullableType.ExplicitNullableTypes" /> <exclude name="MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment" /> <exclude name="PSR12.Properties.ConstantVisibility.NotFound" /> <exclude name="Squiz.Classes.ValidClassName.NotCamelCaps" /> diff --git a/composer.json b/composer.json index 44781c9..48dc45d 100644 --- a/composer.json +++ b/composer.json @@ -35,7 +35,7 @@ "whichbrowser/parser": "^2.1" }, "require-dev": { - "mediawiki/mediawiki-codesniffer": "44.0.0", + "mediawiki/mediawiki-codesniffer": "45.0.0", "mediawiki/mediawiki-phan-config": "0.14.0", "mediawiki/minus-x": "1.1.3", "php-parallel-lint/php-console-highlighter": "1.0.0", -- 2.39.2
$ date --- stdout --- Sun Nov 10 03:59:02 UTC 2024 --- end --- $ git clone file:///srv/git/mediawiki-extensions-DonationInterface.git repo --depth=1 -b REL1_43 --- stderr --- Cloning into 'repo'... --- stdout --- --- end --- $ git config user.name libraryupgrader --- stdout --- --- end --- $ git config user.email tools.libraryupgrader@tools.wmflabs.org --- stdout --- --- end --- $ git submodule update --init --- stdout --- --- end --- $ grr init --- stdout --- Installed commit-msg hook. --- end --- $ git show-ref refs/heads/REL1_43 --- stdout --- 37e22c7a0ccf73dcffb4c87f080c2f7df4c5c988 refs/heads/REL1_43 --- end --- $ /usr/bin/npm audit --json --- stdout --- { "auditReportVersion": 2, "vulnerabilities": {}, "metadata": { "vulnerabilities": { "info": 0, "low": 0, "moderate": 0, "high": 0, "critical": 0, "total": 0 }, "dependencies": { "prod": 1, "dev": 459, "optional": 0, "peer": 1, "peerOptional": 0, "total": 459 } } } --- end --- $ /usr/bin/composer install --- stderr --- No composer.lock file present. Updating dependencies to latest instead of installing from lock file. See https://getcomposer.org/install for more information. Loading composer repositories with package information Updating dependencies Lock file operations: 75 installs, 0 updates, 0 removals - Locking addshore/psr-6-mediawiki-bagostuff-adapter (0.1) - Locking amzn/login-and-pay-with-amazon-sdk-php (2.5.0) - Locking clio/clio (0.1.8) - Locking coderkungfu/php-queue (1.0.1) - Locking composer/ca-bundle (1.5.3) - Locking composer/pcre (3.3.1) - Locking composer/semver (3.4.2) - Locking composer/spdx-licenses (1.5.8) - Locking composer/xdebug-handler (3.0.5) - Locking corneltek/getoptionkit (2.7.2) - Locking dealerdirect/phpcodesniffer-composer-installer (v1.0.0) - Locking doctrine/deprecations (1.1.3) - Locking felixfbecker/advanced-json-rpc (v3.2.1) - Locking geoip2/geoip2 (v2.13.0) - Locking gr4vy/gr4vy-php (v0.21.4) - Locking guzzlehttp/guzzle (7.9.2) - Locking guzzlehttp/promises (2.0.4) - Locking guzzlehttp/psr7 (2.7.0) - Locking lcobucci/clock (2.0.0) - Locking lcobucci/jwt (4.3.0) - Locking maxmind-db/reader (v1.11.1) - Locking maxmind/minfraud (v1.23.0) - Locking maxmind/web-service-common (v0.9.0) - Locking mediawiki/mediawiki-codesniffer (v44.0.0) - Locking mediawiki/mediawiki-phan-config (0.14.0) - Locking mediawiki/minus-x (1.1.3) - Locking mediawiki/phan-taint-check-plugin (6.0.0) - Locking microsoft/tolerant-php-parser (v0.1.2) - Locking monolog/monolog (2.9.3) - Locking neitanod/forceutf8 (v2.0.4) - Locking netresearch/jsonmapper (v4.5.0) - Locking phan/phan (5.4.3) - Locking php-parallel-lint/php-console-color (v1.0.1) - Locking php-parallel-lint/php-console-highlighter (v1.0.0) - Locking php-parallel-lint/php-parallel-lint (v1.4.0) - Locking phpcsstandards/phpcsextra (1.2.1) - Locking phpcsstandards/phpcsutils (1.0.11) - Locking phpdocumentor/reflection-common (2.2.0) - Locking phpdocumentor/reflection-docblock (5.5.1) - Locking phpdocumentor/type-resolver (1.10.0) - Locking phpmailer/phpmailer (v6.9.2) - Locking phpstan/phpdoc-parser (1.33.0) - Locking predis/predis (v1.1.10) - Locking psr/cache (1.0.1) - Locking psr/container (1.1.2) - Locking psr/http-client (1.0.3) - Locking psr/http-factory (1.1.0) - Locking psr/http-message (2.0) - Locking psr/log (1.1.4) - Locking ralouphie/getallheaders (3.0.3) - Locking respect/stringifier (0.2.0) - Locking respect/validation (2.2.4) - Locking sabre/event (5.1.7) - Locking squizlabs/php_codesniffer (3.9.0) - Locking symfony/console (v5.4.46) - Locking symfony/deprecation-contracts (v2.5.3) - Locking symfony/http-foundation (v2.8.52) - Locking symfony/polyfill-ctype (v1.31.0) - Locking symfony/polyfill-intl-grapheme (v1.31.0) - Locking symfony/polyfill-intl-normalizer (v1.31.0) - Locking symfony/polyfill-mbstring (v1.31.0) - Locking symfony/polyfill-php54 (v1.20.0) - Locking symfony/polyfill-php55 (v1.20.0) - Locking symfony/polyfill-php73 (v1.31.0) - Locking symfony/polyfill-php80 (v1.31.0) - Locking symfony/service-contracts (v2.5.3) - Locking symfony/string (v5.4.45) - Locking symfony/yaml (v5.4.45) - Locking tysonandre/var_representation_polyfill (0.1.3) - Locking webmozart/assert (1.11.0) - Locking whichbrowser/parser (v2.1.8) - Locking wikimedia/remex-html (4.1.1) - Locking wikimedia/smash-pig (v0.8.15) - Locking wikimedia/testing-access-wrapper (1.0.0) - Locking wikimedia/utfnormal (3.0.2) Writing lock file Installing dependencies from lock file (including require-dev) Package operations: 75 installs, 0 updates, 0 removals - Syncing amzn/login-and-pay-with-amazon-sdk-php (2.5.0) into cache - Downloading wikimedia/smash-pig (v0.8.15) 0/1 [>---------------------------] 0% 1/1 [============================] 100% - Installing squizlabs/php_codesniffer (3.9.0): Extracting archive - Installing dealerdirect/phpcodesniffer-composer-installer (v1.0.0): Extracting archive - Installing psr/cache (1.0.1): Extracting archive - Installing addshore/psr-6-mediawiki-bagostuff-adapter (0.1): Extracting archive - Installing clio/clio (0.1.8): Extracting archive - Installing composer/pcre (3.3.1): Extracting archive - Installing symfony/deprecation-contracts (v2.5.3): Extracting archive - Installing psr/http-message (2.0): Extracting archive - Installing psr/http-client (1.0.3): Extracting archive - Installing ralouphie/getallheaders (3.0.3): Extracting archive - Installing psr/http-factory (1.1.0): Extracting archive - Installing guzzlehttp/psr7 (2.7.0): Extracting archive - Installing guzzlehttp/promises (2.0.4): Extracting archive - Installing guzzlehttp/guzzle (7.9.2): Extracting archive - Installing lcobucci/clock (2.0.0): Extracting archive - Installing symfony/polyfill-mbstring (v1.31.0): Extracting archive - Installing lcobucci/jwt (4.3.0): Extracting archive - Installing maxmind-db/reader (v1.11.1): Extracting archive - Installing respect/stringifier (0.2.0): Extracting archive - Installing respect/validation (2.2.4): Extracting archive - Installing composer/ca-bundle (1.5.3): Extracting archive - Installing maxmind/web-service-common (v0.9.0): Extracting archive - Installing geoip2/geoip2 (v2.13.0): Extracting archive - Installing maxmind/minfraud (v1.23.0): Extracting archive - Installing symfony/polyfill-php80 (v1.31.0): Extracting archive - Installing phpcsstandards/phpcsutils (1.0.11): Extracting archive - Installing phpcsstandards/phpcsextra (1.2.1): Extracting archive - Installing composer/spdx-licenses (1.5.8): Extracting archive - Installing composer/semver (3.4.2): Extracting archive - Installing mediawiki/mediawiki-codesniffer (v44.0.0): Extracting archive - Installing tysonandre/var_representation_polyfill (0.1.3): Extracting archive - Installing symfony/polyfill-intl-normalizer (v1.31.0): Extracting archive - Installing symfony/polyfill-intl-grapheme (v1.31.0): Extracting archive - Installing symfony/polyfill-ctype (v1.31.0): Extracting archive - Installing symfony/string (v5.4.45): Extracting archive - Installing psr/container (1.1.2): Extracting archive - Installing symfony/service-contracts (v2.5.3): Extracting archive - Installing symfony/polyfill-php73 (v1.31.0): Extracting archive - Installing symfony/console (v5.4.46): Extracting archive - Installing sabre/event (5.1.7): Extracting archive - Installing netresearch/jsonmapper (v4.5.0): Extracting archive - Installing microsoft/tolerant-php-parser (v0.1.2): Extracting archive - Installing webmozart/assert (1.11.0): Extracting archive - Installing phpstan/phpdoc-parser (1.33.0): Extracting archive - Installing phpdocumentor/reflection-common (2.2.0): Extracting archive - Installing doctrine/deprecations (1.1.3): Extracting archive - Installing phpdocumentor/type-resolver (1.10.0): Extracting archive - Installing phpdocumentor/reflection-docblock (5.5.1): Extracting archive - Installing felixfbecker/advanced-json-rpc (v3.2.1): Extracting archive - Installing psr/log (1.1.4): Extracting archive - Installing composer/xdebug-handler (3.0.5): Extracting archive - Installing phan/phan (5.4.3): Extracting archive - Installing mediawiki/phan-taint-check-plugin (6.0.0): Extracting archive - Installing mediawiki/mediawiki-phan-config (0.14.0): Extracting archive - Installing mediawiki/minus-x (1.1.3): Extracting archive - Installing monolog/monolog (2.9.3): Extracting archive - Installing neitanod/forceutf8 (v2.0.4): Extracting archive - Installing php-parallel-lint/php-console-color (v1.0.1): Extracting archive - Installing php-parallel-lint/php-console-highlighter (v1.0.0): Extracting archive - Installing php-parallel-lint/php-parallel-lint (v1.4.0): Extracting archive - Installing symfony/polyfill-php54 (v1.20.0) - Installing symfony/polyfill-php55 (v1.20.0) - Installing whichbrowser/parser (v2.1.8): Extracting archive - Installing wikimedia/utfnormal (3.0.2): Extracting archive - Installing wikimedia/remex-html (4.1.1): Extracting archive - Installing symfony/yaml (v5.4.45): Extracting archive - Installing symfony/http-foundation (v2.8.52): Extracting archive - Installing predis/predis (v1.1.10): Extracting archive - Installing phpmailer/phpmailer (v6.9.2): Extracting archive - Installing gr4vy/gr4vy-php (v0.21.4): Extracting archive - Installing corneltek/getoptionkit (2.7.2): Extracting archive - Installing coderkungfu/php-queue (1.0.1): Extracting archive - Installing amzn/login-and-pay-with-amazon-sdk-php (2.5.0): Cloning 0c923fe992 from cache - Installing wikimedia/smash-pig (v0.8.15): Extracting archive - Installing wikimedia/testing-access-wrapper (1.0.0): Extracting archive 0/70 [>---------------------------] 0% 18/70 [=======>--------------------] 25% 29/70 [===========>----------------] 41% 39/70 [===============>------------] 55% 49/70 [===================>--------] 70% 57/70 [======================>-----] 81% 67/70 [==========================>-] 95% 70/70 [============================] 100% 34 package suggestions were added by new dependencies, use `composer suggest` to see details. Generating optimized autoload files Class SmashPig\PaymentProviders\Fundraiseup\Tests\AuditTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Fundraiseup/Tests/phpunit/AuditTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Ingenico\Tests\Manual\TestCreatePayment located in ./vendor/wikimedia/smash-pig/PaymentProviders/Ingenico/Tests/manual/TestCreatePayment.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Ingenico\Tests\IdealStatusProviderTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Ingenico/Tests/phpunit/IdealStatusProviderTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Ingenico\Tests\HostedCheckoutProviderTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Ingenico/Tests/phpunit/HostedCheckoutProviderTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Ingenico\Tests\ApiTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Ingenico/Tests/phpunit/ApiTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Ingenico\Tests\AuditTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Ingenico/Tests/phpunit/AuditTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Ingenico\Tests\AuthenticatorTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Ingenico/Tests/phpunit/AuthenticatorTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Ingenico\Tests\BankPaymentProviderTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Ingenico/Tests/phpunit/BankPaymentProviderTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Ingenico\Tests\PaymentProviderTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Ingenico/Tests/phpunit/PaymentProviderTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Ingenico\Tests\TokenizeRecurringJobTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Ingenico/Tests/phpunit/TokenizeRecurringJobTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Amazon\Tests\RecordPaymentsJobTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Amazon/Tests/phpunit/RecordPaymentsJobTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Amazon\Tests\NormalizeTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Amazon/Tests/phpunit/NormalizeTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Amazon\Tests\ActionsTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Amazon/Tests/phpunit/ActionsTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Amazon\Tests\ApiTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Amazon/Tests/phpunit/ApiTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Amazon\Tests\AuditTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Amazon/Tests/phpunit/AuditTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Test\CaptureJobTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/CaptureJobTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Test\RestResponseValidatorTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/RestResponseValidatorTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Test\CancelRecurringActionTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/CancelRecurringActionTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Test\RequeueMessageTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/RequeueMessageTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Tests\PaymentCaptureActionTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/PaymentCaptureActionTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Test\RecurringContractActionTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/RecurringContractActionTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Tests\RefundInitiatedActionTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/RefundInitiatedActionTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Test\RecurringContractJobTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/RecurringContractJobTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Test\RecurringPaymentTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/RecurringPaymentTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Tests\ReferenceDataTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/ReferenceDataTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Test\ApiTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/ApiTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Test\AutoRescueActionTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/AutoRescueActionTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Tests\ChargebackInitiatedActionTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/ChargebackInitiatedActionTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Tests\ReportAvailableTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/ReportAvailableTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Test\AuditTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/AuditTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Test\RecordCaptureJobTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/RecordCaptureJobTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Tests\TokenizeRecurringJobTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/TokenizeRecurringJobTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Tests\CaptureResponseActionTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/CaptureResponseActionTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\dlocal\Tests\PaidMessageJobTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/dlocal/Tests/phpunit/PaidMessageJobTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\dlocal\Tests\RestResponseValidatorTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/dlocal/Tests/phpunit/RestResponseValidatorTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\dlocal\Tests\RejectedMessageJobTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/dlocal/Tests/phpunit/RejectedMessageJobTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\dlocal\Tests\SignatureCalculatorTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/dlocal/Tests/phpunit/SignatureCalculatorTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\dlocal\Tests\ApiTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/dlocal/Tests/phpunit/ApiTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\dlocal\Test\AuditTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/dlocal/Tests/phpunit/AuditTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\dlocal\Tests\CardPaymentProviderTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/dlocal/Tests/phpunit/CardPaymentProviderTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\PayPal\Tests\CaptureIncomingMessageTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/PayPal/Tests/phpunit/CaptureIncomingMessageTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\PayPal\Tests\PaymentProviderTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/PayPal/Tests/phpunit/PaymentProviderTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Braintree\Tests\SignatureValidatorTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Braintree/Tests/phpunit/SignatureValidatorTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Braintree\Tests\PayPalPaymentProviderTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Braintree/Tests/phpunit/PayPalPaymentProviderTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Braintree\Tests\VenmoPaymentProviderTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Braintree/Tests/phpunit/VenmoPaymentProviderTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Braintree\Tests\ApiTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Braintree/Tests/phpunit/ApiTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Braintree\Test\AuditTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Braintree/Tests/phpunit/AuditTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Braintree\Tests\PaymentProviderTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Braintree/Tests/phpunit/PaymentProviderTest.php does not comply with psr-4 autoloading standard. Skipping. 29 packages you are using are looking for funding. Use the `composer fund` command to find out more! --- stdout --- PHP CodeSniffer Config installed_paths set to ../../mediawiki/mediawiki-codesniffer,../../phpcsstandards/phpcsextra,../../phpcsstandards/phpcsutils --- end --- Upgrading c:mediawiki/mediawiki-codesniffer from 44.0.0 -> 45.0.0 $ /usr/bin/composer update --- stderr --- Loading composer repositories with package information Updating dependencies Lock file operations: 0 installs, 4 updates, 0 removals - Upgrading composer/semver (3.4.2 => 3.4.3) - Upgrading mediawiki/mediawiki-codesniffer (v44.0.0 => v45.0.0) - Upgrading phpcsstandards/phpcsutils (1.0.11 => 1.0.12) - Upgrading squizlabs/php_codesniffer (3.9.0 => 3.10.3) Writing lock file Installing dependencies from lock file (including require-dev) Package operations: 0 installs, 4 updates, 0 removals 0 [>---------------------------] 0 [->--------------------------] - Upgrading squizlabs/php_codesniffer (3.9.0 => 3.10.3): Extracting archive - Upgrading phpcsstandards/phpcsutils (1.0.11 => 1.0.12): Extracting archive - Upgrading composer/semver (3.4.2 => 3.4.3): Extracting archive - Upgrading mediawiki/mediawiki-codesniffer (v44.0.0 => v45.0.0): Extracting archive 0/4 [>---------------------------] 0% 3/4 [=====================>------] 75% 4/4 [============================] 100% Generating optimized autoload files Class SmashPig\PaymentProviders\Fundraiseup\Tests\AuditTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Fundraiseup/Tests/phpunit/AuditTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Ingenico\Tests\Manual\TestCreatePayment located in ./vendor/wikimedia/smash-pig/PaymentProviders/Ingenico/Tests/manual/TestCreatePayment.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Ingenico\Tests\IdealStatusProviderTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Ingenico/Tests/phpunit/IdealStatusProviderTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Ingenico\Tests\HostedCheckoutProviderTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Ingenico/Tests/phpunit/HostedCheckoutProviderTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Ingenico\Tests\ApiTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Ingenico/Tests/phpunit/ApiTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Ingenico\Tests\AuditTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Ingenico/Tests/phpunit/AuditTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Ingenico\Tests\AuthenticatorTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Ingenico/Tests/phpunit/AuthenticatorTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Ingenico\Tests\BankPaymentProviderTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Ingenico/Tests/phpunit/BankPaymentProviderTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Ingenico\Tests\PaymentProviderTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Ingenico/Tests/phpunit/PaymentProviderTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Ingenico\Tests\TokenizeRecurringJobTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Ingenico/Tests/phpunit/TokenizeRecurringJobTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Amazon\Tests\RecordPaymentsJobTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Amazon/Tests/phpunit/RecordPaymentsJobTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Amazon\Tests\NormalizeTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Amazon/Tests/phpunit/NormalizeTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Amazon\Tests\ActionsTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Amazon/Tests/phpunit/ActionsTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Amazon\Tests\ApiTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Amazon/Tests/phpunit/ApiTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Amazon\Tests\AuditTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Amazon/Tests/phpunit/AuditTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Test\CaptureJobTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/CaptureJobTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Test\RestResponseValidatorTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/RestResponseValidatorTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Test\CancelRecurringActionTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/CancelRecurringActionTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Test\RequeueMessageTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/RequeueMessageTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Tests\PaymentCaptureActionTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/PaymentCaptureActionTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Test\RecurringContractActionTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/RecurringContractActionTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Tests\RefundInitiatedActionTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/RefundInitiatedActionTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Test\RecurringContractJobTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/RecurringContractJobTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Test\RecurringPaymentTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/RecurringPaymentTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Tests\ReferenceDataTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/ReferenceDataTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Test\ApiTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/ApiTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Test\AutoRescueActionTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/AutoRescueActionTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Tests\ChargebackInitiatedActionTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/ChargebackInitiatedActionTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Tests\ReportAvailableTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/ReportAvailableTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Test\AuditTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/AuditTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Test\RecordCaptureJobTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/RecordCaptureJobTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Tests\TokenizeRecurringJobTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/TokenizeRecurringJobTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Tests\CaptureResponseActionTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/CaptureResponseActionTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\dlocal\Tests\PaidMessageJobTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/dlocal/Tests/phpunit/PaidMessageJobTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\dlocal\Tests\RestResponseValidatorTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/dlocal/Tests/phpunit/RestResponseValidatorTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\dlocal\Tests\RejectedMessageJobTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/dlocal/Tests/phpunit/RejectedMessageJobTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\dlocal\Tests\SignatureCalculatorTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/dlocal/Tests/phpunit/SignatureCalculatorTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\dlocal\Tests\ApiTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/dlocal/Tests/phpunit/ApiTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\dlocal\Test\AuditTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/dlocal/Tests/phpunit/AuditTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\dlocal\Tests\CardPaymentProviderTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/dlocal/Tests/phpunit/CardPaymentProviderTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\PayPal\Tests\CaptureIncomingMessageTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/PayPal/Tests/phpunit/CaptureIncomingMessageTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\PayPal\Tests\PaymentProviderTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/PayPal/Tests/phpunit/PaymentProviderTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Braintree\Tests\SignatureValidatorTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Braintree/Tests/phpunit/SignatureValidatorTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Braintree\Tests\PayPalPaymentProviderTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Braintree/Tests/phpunit/PayPalPaymentProviderTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Braintree\Tests\VenmoPaymentProviderTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Braintree/Tests/phpunit/VenmoPaymentProviderTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Braintree\Tests\ApiTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Braintree/Tests/phpunit/ApiTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Braintree\Test\AuditTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Braintree/Tests/phpunit/AuditTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Braintree\Tests\PaymentProviderTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Braintree/Tests/phpunit/PaymentProviderTest.php does not comply with psr-4 autoloading standard. Skipping. 29 packages you are using are looking for funding. Use the `composer fund` command to find out more! Found 1 security vulnerability advisory affecting 1 package. Run composer audit for a full list of advisories. --- stdout --- PHP CodeSniffer Config installed_paths set to ../../mediawiki/mediawiki-codesniffer,../../phpcsstandards/phpcsextra,../../phpcsstandards/phpcsutils --- end --- Previously failing phpcs rules: {'MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment', 'MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName', 'MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic', 'PSR12.Properties.ConstantVisibility.NotFound', 'MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected', 'MediaWiki.Files.ClassMatchesFilename.NotMatch', 'MediaWiki.Commenting.MissingCovers.MissingCovers', 'Squiz.Classes.ValidClassName.NotCamelCaps'} $ vendor/bin/phpcs --report=json --- stdout --- {"totals":{"errors":364,"warnings":395,"fixable":4},"files":{"\/src\/repo\/paypal_ec_gateway\/paypal_express_resultswitcher.body.php":{"errors":1,"warnings":0,"messages":[{"message":"Class name 'PaypalExpressGatewayResult' does not match filename 'paypal_express_resultswitcher.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":3,"column":1}]},"\/src\/repo\/dlocal_gateway\/dlocal_resultswitcher.body.php":{"errors":1,"warnings":0,"messages":[{"message":"Class name 'DlocalGatewayResult' does not match filename 'dlocal_resultswitcher.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":6,"column":1}]},"\/src\/repo\/paypal_ec_gateway\/PaypalExpressReturnUrl.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":4,"column":12}]},"\/src\/repo\/dlocal_gateway\/dlocal_gateway.alias.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/dlocal_gateway\/dlocal.api.php":{"errors":2,"warnings":0,"messages":[{"message":"Class name 'DlocalDonationApi' does not match filename 'dlocal.api.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":2,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":3,"column":12}]},"\/src\/repo\/gateway_common\/FallbackLogPrefixer.php":{"errors":2,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":12,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":16,"column":12}]},"\/src\/repo\/paypal_ec_gateway\/paypal_express_gateway.body.php":{"errors":1,"warnings":0,"messages":[{"message":"Class name 'PaypalExpressGateway' does not match filename 'paypal_express_gateway.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":3,"column":1}]},"\/src\/repo\/paypal_ec_gateway\/paypal_gateway.alias.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/DonorEmail.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":4,"column":12}]},"\/src\/repo\/modules\/CurrencyRatesModule.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/ResponseProcessingException.php":{"errors":2,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":29,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":33,"column":12}]},"\/src\/repo\/DonationInterface.alias.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/Simple3DSecure.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/EmployerFieldValidation.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":34,"column":12}]},"\/src\/repo\/gateway_common\/ContributionTrackingPlusUnique.php":{"errors":2,"warnings":1,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":8,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":16,"column":70},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":22,"column":12}]},"\/src\/repo\/braintree_gateway\/braintree_gateway.body.php":{"errors":2,"warnings":0,"messages":[{"message":"Class name 'BraintreeGateway' does not match filename 'braintree_gateway.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":9,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":31,"column":12}]},"\/src\/repo\/braintree_gateway\/braintree_resultswitcher.body.php":{"errors":1,"warnings":0,"messages":[{"message":"Class name 'BraintreeGatewayResult' does not match filename 'braintree_resultswitcher.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":6,"column":1}]},"\/src\/repo\/gateway_common\/ReturnUrl.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":5,"column":12}]},"\/src\/repo\/braintree_gateway\/braintree_gateway.alias.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/AmountInCents.php":{"errors":2,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":13,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":29,"column":12}]},"\/src\/repo\/gateway_common\/StagingHelper.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/UnstagingHelper.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":8,"column":12}]},"\/src\/repo\/gateway_common\/CurrencyCountryRule.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/DonorLanguage.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":4,"column":12}]},"\/src\/repo\/gateway_common\/MessageUtils.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/LogPrefixProvider.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":4,"column":12}]},"\/src\/repo\/gateway_common\/StreetNumberValidation.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/PayPalAmount.php":{"errors":3,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":5,"column":12},{"message":"Method name \"is_fractional_currency\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":9,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":9,"column":19}]},"\/src\/repo\/gateway_common\/RecurringConversion.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/ArrayHelper.php":{"errors":2,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":23,"column":22},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":54,"column":22}]},"\/src\/repo\/gateway_common\/Abstract3DSecure.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/ErrorState.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":43,"column":12}]},"\/src\/repo\/gateway_common\/DonationLogProcessor.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/EndowmentHooks.php":{"errors":3,"warnings":1,"messages":[{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":7,"column":5},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":9,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":17,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":49,"column":22}]},"\/src\/repo\/gateway_common\/DonorLocale.php":{"errors":2,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":11,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":32,"column":12}]},"\/src\/repo\/email_forms\/EmailForm.php":{"errors":6,"warnings":1,"messages":[{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":12,"column":5},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":19,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":66,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":74,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":79,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":87,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":149,"column":15}]},"\/src\/repo\/amazon_gateway\/amazon_gateway.alias.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/ingenico_gateway\/IngenicoReturnUrlHelper.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":4,"column":12}]},"\/src\/repo\/ingenico_gateway\/ingenico_resultswitcher.body.php":{"errors":2,"warnings":0,"messages":[{"message":"Class name 'IngenicoGatewayResult' does not match filename 'ingenico_resultswitcher.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":3,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":8,"column":15}]},"\/src\/repo\/ingenico_gateway\/ingenico_gateway.alias.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/PaymentTransactionResponse.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/dlocal_gateway\/dlocal_gateway.body.php":{"errors":2,"warnings":0,"messages":[{"message":"Class name 'DlocalGateway' does not match filename 'dlocal_gateway.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":12,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":51,"column":12}]},"\/src\/repo\/gateway_common\/RecurringConversion.api.php":{"errors":2,"warnings":0,"messages":[{"message":"Class name 'RecurringConversionApi' does not match filename 'RecurringConversion.api.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":5,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":54,"column":12}]},"\/src\/repo\/ingenico_gateway\/Ingenico3DSecure.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/StreetAddress.php":{"errors":4,"warnings":2,"messages":[{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":6,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":7,"column":5},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":9,"column":12},{"message":"Method name \"stage_street\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":25,"column":15},{"message":"Method name \"stage_postal_code\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":47,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":78,"column":12}]},"\/src\/repo\/gateway_common\/GatewayType.php":{"errors":3,"warnings":0,"messages":[{"message":"Method name \"getData_Unstaged_Escaped\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":92,"column":12},{"message":"Method name \"session_ensure\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":198,"column":12},{"message":"Method name \"token_getSaltedSessionToken\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":240,"column":12}]},"\/src\/repo\/gravy_gateway\/gravy.api.php":{"errors":1,"warnings":0,"messages":[{"message":"Class name 'GravyDonationApi' does not match filename 'gravy.api.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":2,"column":1}]},"\/src\/repo\/gravy_gateway\/gravy_gateway.alias.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/ResultPages.php":{"errors":0,"warnings":1,"messages":[{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":82,"column":18}]},"\/src\/repo\/dlocal_gateway\/PlaceholderFiscalNumber.php":{"errors":1,"warnings":2,"messages":[{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":13,"column":31},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":14,"column":31},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":17,"column":12}]},"\/src\/repo\/special\/SystemStatus.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":14,"column":12}]},"\/src\/repo\/gateway_common\/LocalClusterPsr6Cache.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/donation.api.php":{"errors":3,"warnings":0,"messages":[{"message":"Class name 'DonationApi' does not match filename 'donation.api.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":10,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":50,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":94,"column":15}]},"\/src\/repo\/includes\/Api\/ApiDonationClientError.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/includes\/Api\/ApiRecurUpgradeClientError.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/RecurringConversionTrait.php":{"errors":7,"warnings":0,"messages":[{"message":"Method name \"session_getData\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":12,"column":21},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":12,"column":21},{"message":"Method name \"session_resetForNewAttempt\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":16,"column":21},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":16,"column":21},{"message":"Method name \"session_setDonorBackupData\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":18,"column":21},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":18,"column":21},{"message":"Method name \"session_MoveDonorDataToBackupForRecurringConversion\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":104,"column":12}]},"\/src\/repo\/gateway_common\/DonorFullName.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/Amount.php":{"errors":3,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":8,"column":12},{"message":"Method name \"is_fractional_currency\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":155,"column":19},{"message":"Method name \"is_exponent3_currency\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":173,"column":19}]},"\/src\/repo\/gateway_common\/FiscalNumber.php":{"errors":2,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":121,"column":22},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":128,"column":12}]},"\/src\/repo\/amazon_gateway\/amazon.api.php":{"errors":2,"warnings":0,"messages":[{"message":"Class name 'AmazonBillingApi' does not match filename 'amazon.api.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":3,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":86,"column":12}]},"\/src\/repo\/DonationInterface.class.php":{"errors":3,"warnings":0,"messages":[{"message":"Class name 'DonationInterface' does not match filename 'DonationInterface.class.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":7,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":43,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":73,"column":19}]},"\/src\/repo\/gateway_common\/PaymentResult.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/employerSearch.api.php":{"errors":2,"warnings":3,"messages":[{"message":"Class name 'EmployerSearchAPI' does not match filename 'employerSearch.api.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":16,"column":1},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":31,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":36,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":41,"column":5},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":178,"column":12}]},"\/src\/repo\/gateway_common\/ResultSwitcher.php":{"errors":2,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":114,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":148,"column":12}]},"\/src\/repo\/gateway_common\/DonationProfiler.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/PaymentMethod.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/maintenance\/TestCrash.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/extras\/civiproxy\/CiviproxyConnect.php":{"errors":2,"warnings":2,"messages":[{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":8,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":9,"column":5},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":11,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":61,"column":19}]},"\/src\/repo\/tests\/phpunit\/DonationInterfaceApiTestCase.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/StreetAddressValidation.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/includes\/test_request\/test.request.php":{"errors":2,"warnings":0,"messages":[{"message":"Class name 'TestingRequest' does not match filename 'test.request.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":25,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":27,"column":12}]},"\/src\/repo\/tests\/phpunit\/BaseDlocalTestCase.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/PostalCodeValidation.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/includes\/test_gateway\/TestingDlocalAdapter.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/amazon_gateway\/amazon_gateway.body.php":{"errors":1,"warnings":0,"messages":[{"message":"Class name 'AmazonGateway' does not match filename 'amazon_gateway.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":19,"column":1}]},"\/src\/repo\/tests\/phpunit\/BaseAdyenCheckoutTestCase.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/includes\/TestingDonationLogger.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":14,"column":12}]},"\/src\/repo\/gateway_common\/WmfFramework.php":{"errors":18,"warnings":1,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":8,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":13,"column":19},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":20,"column":30},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":25,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":29,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":33,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":37,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":42,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":46,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":50,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":54,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":58,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":62,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":66,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":70,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":89,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":93,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":98,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":102,"column":19}]},"\/src\/repo\/gravy_gateway\/gravy_gateway.body.php":{"errors":2,"warnings":0,"messages":[{"message":"Class name 'GravyGateway' does not match filename 'gravy_gateway.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":8,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":40,"column":12}]},"\/src\/repo\/gateway_common\/DonationApiBase.php":{"errors":2,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":24,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":96,"column":12}]},"\/src\/repo\/gateway_common\/ValidationHelper.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_forms\/MustacheHelper.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/paypal_ec_gateway\/paypal_express.adapter.php":{"errors":4,"warnings":3,"messages":[{"message":"Class name 'PaypalExpressAdapter' does not match filename 'paypal_express.adapter.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":24,"column":1},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":25,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":26,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":27,"column":5},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":43,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":154,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":158,"column":12}]},"\/src\/repo\/braintree_gateway\/braintree.adapter.php":{"errors":2,"warnings":6,"messages":[{"message":"Class name 'BraintreeAdapter' does not match filename 'braintree.adapter.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":14,"column":1},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":17,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":18,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":19,"column":5},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":52,"column":78},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":57,"column":55},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":58,"column":74},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":244,"column":12}]},"\/src\/repo\/extras\/session_velocity\/session_velocity.body.php":{"errors":2,"warnings":5,"messages":[{"message":"Class name 'Gateway_Extras_SessionVelocityFilter' does not match filename 'session_velocity.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":19,"column":1},{"message":"Class name \"Gateway_Extras_SessionVelocityFilter\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":19,"column":1},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":34,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":35,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":36,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":37,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":38,"column":5}]},"\/src\/repo\/gateway_forms\/includes\/Subdivisions.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":5,"column":19}]},"\/src\/repo\/tests\/phpunit\/includes\/test_gateway\/TestingGenericAdapter.php":{"errors":4,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":31,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":35,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":71,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":74,"column":12}]},"\/src\/repo\/tests\/phpunit\/IngenicoLocaleTest.php":{"errors":0,"warnings":2,"messages":[{"message":"The testStageSimple test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":69,"column":12},{"message":"The testStageYue test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":74,"column":12}]},"\/src\/repo\/tests\/phpunit\/LintYaml.php":{"errors":2,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":7,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":35,"column":1}]},"\/src\/repo\/gateway_common\/DonationLoggerFactory.php":{"errors":2,"warnings":0,"messages":[{"message":"Use PHP 8.4 compatible syntax for explicit nullable types (\"?LogPrefixProvider $prefixer = null\")","source":"MediaWiki.Usage.NullableType.ExplicitNullableTypes","severity":5,"fixable":true,"type":"ERROR","line":25,"column":75},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":59,"column":19}]},"\/src\/repo\/gateway_common\/ConfigurationReader.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":115,"column":15}]},"\/src\/repo\/braintree_gateway\/braintree.api.php":{"errors":2,"warnings":0,"messages":[{"message":"Class name 'BraintreeDonationApi' does not match filename 'braintree.api.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":2,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":3,"column":12}]},"\/src\/repo\/tests\/phpunit\/includes\/TestingGatewayPage.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":13,"column":12}]},"\/src\/repo\/tests\/phpunit\/Adapter\/Ingenico\/RealTimeBankTransferIdealTest.php":{"errors":2,"warnings":1,"messages":[{"message":"Class name 'DonationInterface_Adapter_Ingenico_RealTimeBankTransferIdealTest' does not match filename 'RealTimeBankTransferIdealTest.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":31,"column":1},{"message":"Class name \"DonationInterface_Adapter_Ingenico_RealTimeBankTransferIdealTest\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":31,"column":1},{"message":"The testIngenicoFormLoad_rtbt_Ideal test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":64,"column":12}]},"\/src\/repo\/paypal_ec_gateway\/PayPalCountry.php":{"errors":1,"warnings":2,"messages":[{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":7,"column":23},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":8,"column":23},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":11,"column":12}]},"\/src\/repo\/tests\/phpunit\/IntegrationTest.php":{"errors":2,"warnings":1,"messages":[{"message":"Class name 'DonationInterface_IntegrationTest' does not match filename 'IntegrationTest.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":29,"column":1},{"message":"Class name \"DonationInterface_IntegrationTest\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":29,"column":1},{"message":"The testBackClickPayPalToDlocal test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":55,"column":12}]},"\/src\/repo\/extras\/conversion_log\/conversion_log.body.php":{"errors":5,"warnings":0,"messages":[{"message":"Class name 'Gateway_Extras_ConversionLog' does not match filename 'conversion_log.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":5,"column":1},{"message":"Class name \"Gateway_Extras_ConversionLog\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":5,"column":1},{"message":"Method name \"post_process\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":14,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":47,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":55,"column":22}]},"\/src\/repo\/adyen_gateway\/adyen_checkout_resultswitcher.body.php":{"errors":1,"warnings":0,"messages":[{"message":"Class name 'AdyenCheckoutGatewayResult' does not match filename 'adyen_checkout_resultswitcher.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":6,"column":1}]},"\/src\/repo\/tests\/phpunit\/DonationMessageTest.php":{"errors":0,"warnings":1,"messages":[{"message":"The testGetCountrySpecificMessage test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":9,"column":12}]},"\/src\/repo\/tests\/phpunit\/GatewayPageTest.php":{"errors":0,"warnings":6,"messages":[{"message":"The testCurrencyFallbackWithNotification test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":67,"column":12},{"message":"The testCurrencyFallbackIntermediateConversion test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":80,"column":12},{"message":"The testCurrencyFallbackWithoutNotification test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":94,"column":12},{"message":"The testCurrencyFallbackAlwaysNotifiesIfOtherErrors test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":106,"column":12},{"message":"The testNoFallbackForSupportedCurrency test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":124,"column":12},{"message":"The testCurrencyFallbackByCountry test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":134,"column":12}]},"\/src\/repo\/ingenico_gateway\/IngenicoLocale.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/extras\/custom_filters\/custom_filters.body.php":{"errors":6,"warnings":3,"messages":[{"message":"Class name 'Gateway_Extras_CustomFilters' does not match filename 'custom_filters.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":5,"column":1},{"message":"Class name \"Gateway_Extras_CustomFilters\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":5,"column":1},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":8,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":11,"column":5},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":40,"column":50},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":166,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":174,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":182,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":206,"column":15}]},"\/src\/repo\/adyen_gateway\/EncryptedCardParameters.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":22,"column":12}]},"\/src\/repo\/includes\/RecurUpgrade\/Validator.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":50,"column":15}]},"\/src\/repo\/gateway_forms\/MustacheErrorForm.php":{"errors":3,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":34,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":46,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":66,"column":15}]},"\/src\/repo\/extras\/FraudFilter.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/adyen_gateway\/adyen.api.php":{"errors":2,"warnings":0,"messages":[{"message":"Class name 'AdyenDonationApi' does not match filename 'adyen.api.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":2,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":3,"column":12}]},"\/src\/repo\/ingenico_gateway\/ingenico_gateway.body.php":{"errors":2,"warnings":0,"messages":[{"message":"Class name 'IngenicoGateway' does not match filename 'ingenico_gateway.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":22,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":27,"column":12}]},"\/src\/repo\/extras\/custom_filters\/filters\/source\/source.body.php":{"errors":4,"warnings":0,"messages":[{"message":"Class name 'Gateway_Extras_CustomFilters_Source' does not match filename 'source.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":3,"column":1},{"message":"Class name \"Gateway_Extras_CustomFilters_Source\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":3,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":52,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":64,"column":22}]},"\/src\/repo\/tests\/phpunit\/EmployerSearchApiTest.php":{"errors":0,"warnings":12,"messages":[{"message":"The testSingleResultFromExactSearchLookup test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":27,"column":12},{"message":"The testSingleResultFromPartialSearchLookup test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":52,"column":12},{"message":"The testMultipleResultsFromPartialSearchLookup test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":77,"column":12},{"message":"The testSubsidiaryAndParentCompanyCombinedResultSearch test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":103,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":112,"column":49},{"message":"The testEmptyResultsSearch test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":127,"column":12},{"message":"The testAPIInvalidData test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":148,"column":12},{"message":"The testGetEmployersListRetValInvalidData test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":162,"column":12},{"message":"The testAPIInvalidDataLocation test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":172,"column":12},{"message":"The testGetEmployersListInvalidDataLocation test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":189,"column":12},{"message":"The testAPIWrongNumberOfColumns test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":202,"column":12},{"message":"The testGetEmployersListWrongNumberOfColumns test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":218,"column":12}]},"\/src\/repo\/ingenico_gateway\/IngenicoFormVariant.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/dlocal_gateway\/dlocal.adapter.php":{"errors":3,"warnings":3,"messages":[{"message":"Class name 'DlocalAdapter' does not match filename 'dlocal.adapter.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":17,"column":1},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":23,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":28,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":33,"column":5},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":131,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":415,"column":12}]},"\/src\/repo\/tests\/phpunit\/Adapter\/Ingenico\/RecurringTest.php":{"errors":2,"warnings":2,"messages":[{"message":"Class name 'DonationInterface_Adapter_Ingenico_RecurringTest' does not match filename 'RecurringTest.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":28,"column":1},{"message":"Class name \"DonationInterface_Adapter_Ingenico_RecurringTest\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":28,"column":1},{"message":"The testSetupTokenizedCheckout test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":34,"column":12},{"message":"The testProcessTokenizedPayment test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":74,"column":12}]},"\/src\/repo\/adyen_gateway\/BlankAddressFields.php":{"errors":2,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":19,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":34,"column":12}]},"\/src\/repo\/tests\/phpunit\/unit\/RecurUpgrade\/ValidatorTest.php":{"errors":0,"warnings":12,"messages":[{"message":"The testValidParamsNotPosted test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":60,"column":12},{"message":"The testSketchyCharactersInParamsNotPosted test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":70,"column":12},{"message":"The testValidParamsWithCancelNotPosted test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":85,"column":12},{"message":"The testValidParamsWithCancelPosted test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":97,"column":12},{"message":"The testPostedWithNoAmount test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":112,"column":12},{"message":"The testPostedWithGoodAmount test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":122,"column":12},{"message":"The testPostedWithNegativeAmount test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":134,"column":12},{"message":"The testPostedWithOtherAmount test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":146,"column":12},{"message":"The testPostedWithNegativeOtherAmount test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":159,"column":12},{"message":"The testPostedMissingOtherAmount test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":172,"column":12},{"message":"The testPostedWithHugeAmount test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":184,"column":12},{"message":"The testPostedWithHugeOtherAmount test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":196,"column":12}]},"\/src\/repo\/tests\/phpunit\/DataValidatorTest.php":{"errors":0,"warnings":10,"messages":[{"message":"The testLuhnCheck test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":33,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":114,"column":34},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":115,"column":33},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":116,"column":39},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":118,"column":47},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":119,"column":51},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":130,"column":46},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":136,"column":33},{"message":"The testValidateFiscalNumber test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":144,"column":12},{"message":"The testValidateEmployerField test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":172,"column":12}]},"\/src\/repo\/tests\/phpunit\/includes\/test_gateway\/TestingPaypalExpressAdapter.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/BaseIngenicoTestCase.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/adyen_gateway\/adyen_checkout_gateway.body.php":{"errors":3,"warnings":0,"messages":[{"message":"Class name 'AdyenCheckoutGateway' does not match filename 'adyen_checkout_gateway.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":11,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":22,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":56,"column":12}]},"\/src\/repo\/gateway_common\/CountryValidation.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/IPVelocityTest.php":{"errors":0,"warnings":2,"messages":[{"message":"The testInitialFilter test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":63,"column":12},{"message":"The testIPDenyListRejection test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":75,"column":12}]},"\/src\/repo\/tests\/phpunit\/includes\/test_gateway\/test.adapter.php":{"errors":3,"warnings":0,"messages":[{"message":"Class name 'TTestingAdapter' does not match filename 'test.adapter.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":19,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":27,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":34,"column":19}]},"\/src\/repo\/tests\/phpunit\/DonorLocaleTest.php":{"errors":0,"warnings":4,"messages":[{"message":"The testStageSimple test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":69,"column":12},{"message":"The testNoCountrySet test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":77,"column":12},{"message":"The testStageVariant test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":85,"column":12},{"message":"The testUnstage test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":91,"column":12}]},"\/src\/repo\/includes\/Api\/ApiClientErrorBase.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":42,"column":12}]},"\/src\/repo\/tests\/phpunit\/Adapter\/Gravy\/SecureFieldsCardTest.php":{"errors":0,"warnings":1,"messages":[{"message":"The testDoPaymentCard test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":47,"column":12}]},"\/src\/repo\/tests\/phpunit\/TestConfiguration.php":{"errors":0,"warnings":2,"messages":[{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":160,"column":34},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":161,"column":57}]},"\/src\/repo\/tests\/phpunit\/Adapter\/Amazon\/AmazonApiTest.php":{"errors":0,"warnings":2,"messages":[{"message":"The testDoPaymentSuccess test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":22,"column":12},{"message":"The testDoPaymentErrors test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":60,"column":12}]},"\/src\/repo\/adyen_gateway\/adyen_apple.api.php":{"errors":2,"warnings":0,"messages":[{"message":"Class name 'AdyenAppleApi' does not match filename 'adyen_apple.api.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":7,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":8,"column":12}]},"\/src\/repo\/tests\/phpunit\/LoggingTest.php":{"errors":2,"warnings":2,"messages":[{"message":"Class name 'DonationInterface_LoggingTest' does not match filename 'LoggingTest.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":26,"column":1},{"message":"Class name \"DonationInterface_LoggingTest\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":26,"column":1},{"message":"The testLogCompleted test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":49,"column":12},{"message":"The testBadUnicode test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":97,"column":12}]},"\/src\/repo\/special\/RecurUpgrade.php":{"errors":8,"warnings":5,"messages":[{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":9,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":10,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":11,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":13,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":16,"column":5},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":25,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":60,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":75,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":125,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":203,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":217,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":221,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":230,"column":15}]},"\/src\/repo\/tests\/phpunit\/ArrayHelperTest.php":{"errors":0,"warnings":2,"messages":[{"message":"The testBuildRequestArray test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":28,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":103,"column":36}]},"\/src\/repo\/amazon_gateway\/amazon.adapter.php":{"errors":4,"warnings":8,"messages":[{"message":"Class name 'AmazonAdapter' does not match filename 'amazon.adapter.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":34,"column":1},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":36,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":37,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":38,"column":5},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":73,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":196,"column":15},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":227,"column":73},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":312,"column":36},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":314,"column":41},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":343,"column":15},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":366,"column":36},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":370,"column":41}]},"\/src\/repo\/extras\/custom_filters\/filters\/minfraud\/minfraud.body.php":{"errors":6,"warnings":3,"messages":[{"message":"Class name 'Gateway_Extras_CustomFilters_MinFraud' does not match filename 'minfraud.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":43,"column":1},{"message":"Class name \"Gateway_Extras_CustomFilters_MinFraud\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":43,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":188,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":210,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":226,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":232,"column":15},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":265,"column":47},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":273,"column":16},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":281,"column":50}]},"\/src\/repo\/tests\/phpunit\/Adapter\/Adyen\/AdyenFormLoadTest.php":{"errors":0,"warnings":5,"messages":[{"message":"The testAdyenFormLoad test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":47,"column":12},{"message":"The testAdyenFormLoad_FR test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":72,"column":12},{"message":"The testAdyenFormLoad_IT test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":101,"column":12},{"message":"The testAdyenFormLoad_BE test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":137,"column":12},{"message":"The testAdyenFormLoad_CA test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":174,"column":12}]},"\/src\/repo\/special\/FundraiserMaintenance.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":30,"column":12}]},"\/src\/repo\/ingenico_gateway\/ingenico.adapter.php":{"errors":4,"warnings":3,"messages":[{"message":"Class name 'IngenicoAdapter' does not match filename 'ingenico.adapter.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":14,"column":1},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":17,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":18,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":19,"column":5},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":149,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":154,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":305,"column":12}]},"\/src\/repo\/tests\/phpunit\/AmountTest.php":{"errors":0,"warnings":17,"messages":[{"message":"The testValidUsd test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":81,"column":12},{"message":"The testZeroAmount test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":90,"column":12},{"message":"The testWhitespaceAmount test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":105,"column":12},{"message":"The testNonNumericAmount test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":120,"column":12},{"message":"The testNegativeAmount test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":139,"column":12},{"message":"The testTooMuchUsd test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":158,"column":12},{"message":"The testTooLittleUsd test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":182,"column":12},{"message":"The testTooMuchBbd test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":208,"column":12},{"message":"The testTooLittleBbd test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":234,"column":12},{"message":"The testRoundNoDigit test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":256,"column":12},{"message":"The testRoundTwoDigit test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":261,"column":12},{"message":"The testRoundThreeDigit test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":266,"column":12},{"message":"The testFormat test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":271,"column":12},{"message":"The testTooLittleUSDConfiguredInBbd test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":292,"column":12},{"message":"The testTooMuchUsdConfiguredInBbd test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":319,"column":12},{"message":"The testTooMuchBbdConfiguredInBbd test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":348,"column":12},{"message":"The testTooLittleBbdConfiguredInBbd test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":379,"column":12}]},"\/src\/repo\/tests\/phpunit\/Adapter\/PayPal\/PayPalApiTest.php":{"errors":0,"warnings":3,"messages":[{"message":"The testGoodSubmit test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":40,"column":12},{"message":"The testTooSmallDonation test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":128,"column":12},{"message":"The testGoodRecurringSubmit test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":154,"column":12}]},"\/src\/repo\/extras\/extras.body.php":{"errors":4,"warnings":0,"messages":[{"message":"Class name 'Gateway_Extras' does not match filename 'extras.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":7,"column":10},{"message":"Class name \"Gateway_Extras\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":7,"column":10},{"message":"Method name \"generate_hash\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":59,"column":15},{"message":"Method name \"compare_hash\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":70,"column":15}]},"\/src\/repo\/extras\/custom_filters\/filters\/functions\/functions.body.php":{"errors":5,"warnings":1,"messages":[{"message":"Class name 'Gateway_Extras_CustomFilters_Functions' does not match filename 'functions.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":3,"column":1},{"message":"Class name \"Gateway_Extras_CustomFilters_Functions\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":3,"column":1},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":53,"column":29},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":70,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":80,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":90,"column":22}]},"\/src\/repo\/tests\/phpunit\/GatewayValidationTest.php":{"errors":0,"warnings":8,"messages":[{"message":"The testPassesValidation test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":82,"column":12},{"message":"The testLowAmountError test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":93,"column":12},{"message":"The testHighAmountError test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":106,"column":12},{"message":"The testCurrencyCodeError test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":119,"column":12},{"message":"The testCountryError test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":131,"column":12},{"message":"The testEmailError test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":149,"column":12},{"message":"The testSpuriousCcError test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":161,"column":12},{"message":"The testMissingFieldError test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":172,"column":12}]},"\/src\/repo\/special\/GatewayChooser.php":{"errors":1,"warnings":1,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":30,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":146,"column":41}]},"\/src\/repo\/tests\/phpunit\/MustacheFormTest.php":{"errors":0,"warnings":6,"messages":[{"message":"The testRendering test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":73,"column":12},{"message":"The testNoTemplateFile test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":85,"column":12},{"message":"The testAppealRendering test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":102,"column":12},{"message":"The testOverrideAppeal test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":125,"column":12},{"message":"The testSanitizeOverrideAppeal test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":147,"column":12},{"message":"The testL10nParams test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":171,"column":12}]},"\/src\/repo\/special\/EmailPreferences.php":{"errors":15,"warnings":5,"messages":[{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":9,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":10,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":11,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":14,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":16,"column":5},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":22,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":82,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":164,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":218,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":229,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":248,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":266,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":271,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":276,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":281,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":300,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":314,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":329,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":348,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":352,"column":15}]},"\/src\/repo\/extras\/custom_filters\/filters\/ip_velocity\/ip_velocity.body.php":{"errors":7,"warnings":1,"messages":[{"message":"Class name 'Gateway_Extras_CustomFilters_IP_Velocity' does not match filename 'ip_velocity.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":3,"column":1},{"message":"Class name \"Gateway_Extras_CustomFilters_IP_Velocity\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":3,"column":1},{"message":"Use PHP 8.4 compatible syntax for explicit nullable types (\"?Gateway_Extras_CustomFilters $custom_filter_object = null\")","source":"MediaWiki.Usage.NullableType.ExplicitNullableTypes","severity":5,"fixable":true,"type":"ERROR","line":35,"column":9},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":92,"column":66},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":105,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":139,"column":22},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":223,"column":22},{"message":"Use PHP 8.4 compatible syntax for explicit nullable types (\"?Gateway_Extras_CustomFilters $custom_filter_object = null\")","source":"MediaWiki.Usage.NullableType.ExplicitNullableTypes","severity":5,"fixable":true,"type":"ERROR","line":225,"column":9}]},"\/src\/repo\/extras\/custom_filters\/filters\/referrer\/referrer.body.php":{"errors":4,"warnings":0,"messages":[{"message":"Class name 'Gateway_Extras_CustomFilters_Referrer' does not match filename 'referrer.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":3,"column":1},{"message":"Class name \"Gateway_Extras_CustomFilters_Referrer\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":3,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":53,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":65,"column":22}]},"\/src\/repo\/adyen_gateway\/adyen_get_payment_methods.api.php":{"errors":2,"warnings":0,"messages":[{"message":"Class name 'AdyenGetPaymentMethodsApi' does not match filename 'adyen_get_payment_methods.api.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":7,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":31,"column":12}]},"\/src\/repo\/gravy_gateway\/gravy.adapter.php":{"errors":2,"warnings":0,"messages":[{"message":"Class name 'GravyAdapter' does not match filename 'gravy.adapter.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":16,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":82,"column":12}]},"\/src\/repo\/tests\/phpunit\/FraudFiltersTest.php":{"errors":2,"warnings":4,"messages":[{"message":"Class name 'DonationInterface_FraudFiltersTest' does not match filename 'FraudFiltersTest.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":32,"column":1},{"message":"Class name \"DonationInterface_FraudFiltersTest\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":32,"column":1},{"message":"The testMinFraudErrorScore test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":93,"column":12},{"message":"The testMinFraudRealScore test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":142,"column":12},{"message":"The testMinFraudExtras test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":226,"column":12},{"message":"The testMinFraudExtrasNoAddress test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":327,"column":12}]},"\/src\/repo\/gateway_common\/DataValidator.php":{"errors":18,"warnings":6,"messages":[{"message":"Method name \"validate_email\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":275,"column":22},{"message":"Method name \"validate_currency_code\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":281,"column":22},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":281,"column":22},{"message":"Method name \"validate_credit_card\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":295,"column":22},{"message":"Method name \"validate_boolean\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":309,"column":22},{"message":"Method name \"validate_numeric\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":329,"column":22},{"message":"Method name \"validate_gateway\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":344,"column":22},{"message":"Method name \"validate_not_empty\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":358,"column":22},{"message":"Method name \"validate_alphanumeric\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":371,"column":22},{"message":"Method name \"validate_not_just_punctuation\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":383,"column":19},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":384,"column":48},{"message":"Method name \"validate_name\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":399,"column":19},{"message":"Method name \"validate_address\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":409,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":414,"column":19},{"message":"Method name \"special_characters_in_wrong_locations\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":427,"column":19},{"message":"Method name \"cc_number_exists_in_str\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":450,"column":19},{"message":"Method name \"luhn_check\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":513,"column":19},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":541,"column":64},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":543,"column":71},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":545,"column":78},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":547,"column":83},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":549,"column":18},{"message":"Method name \"ip_is_listed\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":606,"column":19},{"message":"Method name \"value_appears_in\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":628,"column":19}]},"\/src\/repo\/special\/PaymentSettings.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":8,"column":12}]},"\/src\/repo\/gateway_common\/ClientSideValidationHelper.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/GatewayPage.php":{"errors":3,"warnings":1,"messages":[{"message":"Use PHP 8.4 compatible syntax for explicit nullable types (\"?PaymentTransactionResponse $results = null\")","source":"MediaWiki.Usage.NullableType.ExplicitNullableTypes","severity":5,"fixable":true,"type":"ERROR","line":288,"column":48},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":377,"column":18},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":525,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":594,"column":15}]},"\/src\/repo\/gravy_gateway\/gravy_resultswitcher.body.php":{"errors":1,"warnings":0,"messages":[{"message":"Class name 'GravyGatewayResult' does not match filename 'gravy_resultswitcher.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":6,"column":1}]},"\/src\/repo\/gateway_common\/messages\/MessagesEs_419.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/EmailPreferencesTest.php":{"errors":0,"warnings":1,"messages":[{"message":"The testEmailPrefCenterQueue test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":38,"column":12}]},"\/src\/repo\/tests\/phpunit\/Adapter\/Amazon\/AmazonTest.php":{"errors":2,"warnings":13,"messages":[{"message":"Class name 'DonationInterface_Adapter_Amazon_Test' does not match filename 'AmazonTest.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":31,"column":1},{"message":"Class name \"DonationInterface_Adapter_Amazon_Test\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":31,"column":1},{"message":"The testCanadianDollarConversion test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":74,"column":12},{"message":"The testShowFormOnError test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":112,"column":12},{"message":"The testDoPaymentSuccess test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":130,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":133,"column":63},{"message":"The testDoPaymentDeclined test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":160,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":163,"column":63},{"message":"The testFailOnAmazonRejected test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":187,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":190,"column":63},{"message":"The testTransactionTimedOut test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":212,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":215,"column":63},{"message":"The testClientException test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":241,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":244,"column":63},{"message":"The testDoRecurringPaymentSuccess test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":268,"column":12}]},"\/src\/repo\/tests\/phpunit\/Adapter\/Gravy\/RedirectFormTest.php":{"errors":0,"warnings":2,"messages":[{"message":"The testDoPaymentVenmo test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":40,"column":12},{"message":"The testProcessDonorReturnVenmo test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":121,"column":12}]},"\/src\/repo\/adyen_gateway\/adyen_submit_payment.api.php":{"errors":4,"warnings":0,"messages":[{"message":"Class name 'AdyenSubmitPaymentApi' does not match filename 'adyen_submit_payment.api.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":9,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":164,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":318,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":339,"column":15}]},"\/src\/repo\/adyen_gateway\/adyen_gateway.alias.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/adyen_gateway\/Adyen3DSecure.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_forms\/Mustache.php":{"errors":17,"warnings":1,"messages":[{"message":"Class name 'Gateway_Form_Mustache' does not match filename 'Mustache.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":12,"column":1},{"message":"Class name \"Gateway_Form_Mustache\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":12,"column":1},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":14,"column":5},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":101,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":147,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":185,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":250,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":262,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":334,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":350,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":379,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":446,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":515,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":538,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":545,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":554,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":558,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":562,"column":15}]},"\/src\/repo\/tests\/phpunit\/Adapter\/Dlocal\/CardPaymentTest.php":{"errors":0,"warnings":9,"messages":[{"message":"The testDoCardPayment test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":32,"column":12},{"message":"The testDoCardPaymentWithRecurring test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":69,"column":12},{"message":"The testDoCardPaymentCreatePaymentFail test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":117,"column":12},{"message":"The testDoCardPaymentValidationError test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":149,"column":12},{"message":"The testDoPaymentsInitQueueCountSuccessfulPayment test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":173,"column":12},{"message":"The testDoPaymentsInitQueueCountFailedPayment test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":211,"column":12},{"message":"The testDoPaymentsAntiFraudQueueCountSuccessfulPayment test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":244,"column":12},{"message":"The testDoPaymentsAntiFraudQueueCountFailedPayment test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":297,"column":12},{"message":"The testMismatchOrderIdIsReset test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":356,"column":12}]},"\/src\/repo\/gateway_forms\/Form.php":{"errors":3,"warnings":0,"messages":[{"message":"Class name 'Gateway_Form' does not match filename 'Form.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":3,"column":10},{"message":"Class name \"Gateway_Form\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":3,"column":10},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":92,"column":12}]},"\/src\/repo\/adyen_gateway\/adyen_checkout.adapter.php":{"errors":6,"warnings":3,"messages":[{"message":"Class name 'AdyenCheckoutAdapter' does not match filename 'adyen_checkout.adapter.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":13,"column":1},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":16,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":17,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":18,"column":5},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":280,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":293,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":306,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":340,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":396,"column":12}]},"\/src\/repo\/.phan\/config.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Adapter\/Braintree\/PaypalPaymentTest.php":{"errors":0,"warnings":5,"messages":[{"message":"The testPaypalRoundCertainCurrencyPayment test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":42,"column":12},{"message":"The testPaypalDoPayment test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":80,"column":12},{"message":"The testDoPaymentMultipleAttempt test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":171,"column":12},{"message":"The testDoPaymentAttemptBlockedDueToIPInDenyList test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":256,"column":12},{"message":"The testPaypalDoPaymentInvalidPaymentToken test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":327,"column":12}]},"\/src\/repo\/gateway_common\/DonationData.php":{"errors":3,"warnings":18,"messages":[{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":54,"column":24},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":69,"column":25},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":72,"column":26},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":73,"column":25},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":76,"column":29},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":137,"column":24},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":138,"column":22},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":139,"column":24},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":140,"column":31},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":143,"column":30},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":144,"column":26},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":203,"column":19},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":361,"column":41},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":389,"column":72},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":394,"column":50},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":400,"column":34},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":401,"column":39},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":518,"column":45},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":584,"column":28},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":943,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":951,"column":12}]},"\/src\/repo\/tests\/phpunit\/Adapter\/Dlocal\/CashPaymentTest.php":{"errors":0,"warnings":4,"messages":[{"message":"The testCashPaymentDonorReturnPaid test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":67,"column":12},{"message":"The testCashPaymentDonorReturnRejected test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":105,"column":12},{"message":"The testCashPaymentDonorReturnCancelled test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":141,"column":12},{"message":"The testCashPaymentDonorReturnPending test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":177,"column":12}]},"\/src\/repo\/gateway_common\/MediaWikiLogHandler.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Adapter\/Adyen\/CheckoutIdealTest.php":{"errors":0,"warnings":5,"messages":[{"message":"The testDoPaymentIdeal test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":33,"column":12},{"message":"The testDoPaymentIdealMultipleAttempt test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":112,"column":12},{"message":"The testDoPaymentIdealAttemptBlockedDueToIPInDenyList test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":226,"column":12},{"message":"The testDonorReturnIdealSuccess test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":309,"column":12},{"message":"The testDonorReturnIdealFailure test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":395,"column":12}]},"\/src\/repo\/tests\/phpunit\/BaseBraintreeTestCase.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Adapter\/Gravy\/GravyFormLoadTest.php":{"errors":0,"warnings":1,"messages":[{"message":"The testGravyFormLoad test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":47,"column":12}]},"\/src\/repo\/tests\/phpunit\/DonationDataTest.php":{"errors":2,"warnings":31,"messages":[{"message":"Class name 'DonationInterface_DonationDataTest' does not match filename 'DonationDataTest.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":29,"column":1},{"message":"Class name \"DonationInterface_DonationDataTest\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":29,"column":1},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":82,"column":91},{"message":"The testConstructWithExternalData test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":108,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":142,"column":59},{"message":"The testConstructWithFauxRequest test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":156,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":190,"column":91},{"message":"The testDebugLog test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":205,"column":12},{"message":"The testRepopulate test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":227,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":240,"column":102},{"message":"The testIsSomething test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":259,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":263,"column":98},{"message":"The testSetNormalizedAmount_amtGiven test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":271,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":275,"column":98},{"message":"The testSetNormalizedAmount_amount test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":284,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":288,"column":98},{"message":"The testSetNormalizedAmount_negativeAmount test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":297,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":301,"column":98},{"message":"The testSetNormalizedAmount_noGoodAmount test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":310,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":315,"column":98},{"message":"The testSetNormalizedCurrencyCode_BadData test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":326,"column":12},{"message":"The testSetNormalizedLanguage_uselang test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":339,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":346,"column":98},{"message":"The testSetNormalizedLanguage_language test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":355,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":362,"column":98},{"message":"The testSetUtmSource test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":371,"column":12},{"message":"The testSetUtmSourceFromApp test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":382,"column":12},{"message":"The testSetUtmValuesFromWmfValues test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":398,"column":12},{"message":"The testSetUtmSourceFromAppWithBanner test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":417,"column":12},{"message":"The testSetUtmSourceFromAppWithNoBanner test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":434,"column":12},{"message":"The testSendToContributionTrackingQueue test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":450,"column":12},{"message":"The testSendRecurringToContributionTrackingQueue test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":496,"column":12},{"message":"The testGetSessionFields test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":544,"column":12}]},"\/src\/repo\/tests\/phpunit\/Adapter\/Braintree\/VenmoPaymentTest.php":{"errors":0,"warnings":1,"messages":[{"message":"The testVenmoDoPayment test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":43,"column":12}]},"\/src\/repo\/tests\/phpunit\/BaseGravyTestCase.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Adapter\/Ingenico\/IngenicoTest.php":{"errors":2,"warnings":19,"messages":[{"message":"Class name 'DonationInterface_Adapter_Ingenico_IngenicoTest' does not match filename 'IngenicoTest.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":35,"column":1},{"message":"Class name \"DonationInterface_Adapter_Ingenico_IngenicoTest\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":35,"column":1},{"message":"The testGatewaySessionRetrieval test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":67,"column":12},{"message":"The testSendCustomerIP test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":89,"column":12},{"message":"The testDonorReturnLoadsFraudScore test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":115,"column":12},{"message":"The testDonorReturnPending test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":144,"column":12},{"message":"The testProcessDonorReturnStatusCancelledByConsumer test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":176,"column":12},{"message":"The testGetLatestPaymentStatusPostProcessFraud test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":212,"column":12},{"message":"The testLanguageStaging test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":296,"column":12},{"message":"The testAddResponseData_underzealous test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":311,"column":12},{"message":"The testNoDupeOrderId test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":341,"column":12},{"message":"The testOrderIdsWith4Or7Ok test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":399,"column":12},{"message":"The testDonorReturnSuccess test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":423,"column":12},{"message":"The testDonorReturnFailure test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":448,"column":12},{"message":"The testDonorReturnFailureOptIn test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":472,"column":12},{"message":"The testDonorReturnPaymentSubmethod test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":505,"column":12},{"message":"The testClearDataWhenDone test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":527,"column":12},{"message":"The testDoPayment test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":557,"column":12},{"message":"The testDoMultiplePayment test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":572,"column":12},{"message":"The testDoPaymentAttemptBlockedDueToIPInDenyList test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":622,"column":12},{"message":"The testDoPaymentFailInitialFilters test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":660,"column":12}]},"\/src\/repo\/tests\/phpunit\/Adapter\/GatewayAdapterTest.php":{"errors":3,"warnings":25,"messages":[{"message":"Class name 'DonationInterface_Adapter_GatewayAdapterTest' does not match filename 'GatewayAdapterTest.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":41,"column":1},{"message":"Class name \"DonationInterface_Adapter_GatewayAdapterTest\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":41,"column":1},{"message":"The testRequiredFields test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":67,"column":12},{"message":"The testSubmethodVadliationPass test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":92,"column":12},{"message":"The testOptionalFieldsConfig test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":119,"column":12},{"message":"The testVariantConfig test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":152,"column":12},{"message":"The testIllegalVariantConfig test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":176,"column":12},{"message":"The testLanguageChange test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":217,"column":12},{"message":"The testResetOnGatewaySwitch test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":239,"column":12},{"message":"The testResetOnOneTimeToRecurringSwitch test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":265,"column":12},{"message":"The testResetOnRecurringToOneTimeSwitch test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":299,"column":12},{"message":"The testResetSubmethodOnMethodSwitch test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":332,"column":12},{"message":"The testStreetStaging test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":361,"column":12},{"message":"The testPostalCodeStaging test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":379,"column":12},{"message":"The testStreetUnStaging test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":397,"column":12},{"message":"The testPostalCodeUnStaging test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":422,"column":12},{"message":"The testCancelPage test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":447,"column":12},{"message":"The testCannotOverrideIp test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":457,"column":12},{"message":"The testGetScoreName test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":466,"column":12},{"message":"The testGetScoreNameMinimumLength test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":484,"column":12},{"message":"Method name \"TestSetValidationAction\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":502,"column":12},{"message":"The testGetDonationQueueMessage test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":513,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":530,"column":39},{"message":"The testGetDonationQueueMessageContactId test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":543,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":546,"column":65},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":564,"column":39},{"message":"The testGetDonationQueueMessageContactIdNoHash test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":577,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":595,"column":39}]},"\/src\/repo\/tests\/phpunit\/Adapter\/PayPal\/PayPalExpressTest.php":{"errors":2,"warnings":17,"messages":[{"message":"Class name 'DonationInterface_Adapter_PayPal_Express_Test' does not match filename 'PayPalExpressTest.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":39,"column":1},{"message":"Class name \"DonationInterface_Adapter_PayPal_Express_Test\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":39,"column":1},{"message":"The testPaymentSetup test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":68,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":117,"column":33},{"message":"The testPaymentSetupRecurring test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":156,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":207,"column":33},{"message":"The testProcessDonorReturn test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":306,"column":12},{"message":"The testProcessDonorReturnRecurring test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":375,"column":12},{"message":"The testProcessDonorReturnPaymentRetry test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":452,"column":12},{"message":"The testProcessDonorReturnWarning test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":499,"column":12},{"message":"The testProcessDonorReturnRecurringRetry test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":600,"column":12},{"message":"The testProcessDonorReturnPaymentActionCompleted test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":694,"column":12},{"message":"The testProcessDonorReturnTokenTimeout test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":749,"column":12},{"message":"The testResultSwitcher test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":806,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":816,"column":45},{"message":"The testResultSwitcherRepeat test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":859,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":874,"column":45},{"message":"The testUnstageCountry test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":900,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":910,"column":45}]},"\/src\/repo\/tests\/phpunit\/DonationInterfaceTestCase.php":{"errors":0,"warnings":2,"messages":[{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":171,"column":23},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":684,"column":51}]},"\/src\/repo\/tests\/phpunit\/Adapter\/Ingenico\/IngenicoApiTest.php":{"errors":0,"warnings":9,"messages":[{"message":"The testGoodSubmit test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":70,"column":12},{"message":"The testStageLocale test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":168,"column":12},{"message":"The testNoMangleDataOnTruncate test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":209,"column":12},{"message":"The testUpsellVariant test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":260,"column":12},{"message":"The testSubmitFailInitialFilters test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":292,"column":12},{"message":"The testOptionalFieldBehaviour test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":322,"column":12},{"message":"The testSubmitEmployerField test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":365,"column":12},{"message":"The testRecurringConversionApiSuccess test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":396,"column":12},{"message":"The testRecurringConversionApiError test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":440,"column":12}]},"\/src\/repo\/tests\/phpunit\/DonationQueueTest.php":{"errors":0,"warnings":2,"messages":[{"message":"The testPushMessage test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":101,"column":12},{"message":"The testIsFifoQueue test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":113,"column":12}]},"\/src\/repo\/tests\/phpunit\/Adapter\/Ingenico\/ResultSwitcherTest.php":{"errors":2,"warnings":2,"messages":[{"message":"Class name 'DonationInterface_Adapter_Ingenico_ResultSwitcherTest' does not match filename 'ResultSwitcherTest.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":13,"column":1},{"message":"Class name \"DonationInterface_Adapter_Ingenico_ResultSwitcherTest\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":13,"column":1},{"message":"The testResultSwitcherLiberatedSuccess test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":18,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":57,"column":33}]},"\/src\/repo\/tests\/phpunit\/GatewayChooserTest.php":{"errors":2,"warnings":16,"messages":[{"message":"Class name 'DonationInterface_GatewayChooserTest' does not match filename 'GatewayChooserTest.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":27,"column":1},{"message":"Class name \"DonationInterface_GatewayChooserTest\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":27,"column":1},{"message":"The testMaintenanceMode_Redirect test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":75,"column":12},{"message":"The testNoNeedParamGateWayChooser test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":99,"column":12},{"message":"The testAssertExpectedGateway test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":129,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":223,"column":131},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":224,"column":131},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":225,"column":135},{"message":"The testConfirmCountriesInCountryFieldsGatewayConfig test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":385,"column":12},{"message":"The testConfirmCountriesInPaymentSubmethodsGatewayConfig test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":404,"column":12},{"message":"The testChooseGatewayByPrioritySingleRuleMatch test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":428,"column":12},{"message":"The testChooseGatewayByPriorityMultiRuleMatch test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":459,"column":12},{"message":"The testChooseGatewayByPriorityConditionValueArrayRuleMatch test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":491,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":495,"column":76},{"message":"The testChooseGatewayByPriorityStopsAtFirstRuleMatch test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":520,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":528,"column":67},{"message":"The testAdditionalParamatersPassThrough test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":556,"column":12},{"message":"The testPassRecurringFalse test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":593,"column":12}]},"\/src\/repo\/tests\/phpunit\/Adapter\/Adyen\/CheckoutCardTest.php":{"errors":0,"warnings":10,"messages":[{"message":"The testDoPaymentCard test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":49,"column":12},{"message":"The testDoPaymentCardNoPaymentSubmethod test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":202,"column":12},{"message":"The testDoPaymentMultipleAttempt test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":356,"column":12},{"message":"The testDoPaymentAttemptBlockedDueToIPInDenyList test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":481,"column":12},{"message":"The testDoPaymentCardMonthlyConvert test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":529,"column":12},{"message":"The testDoPaymentCardMonthlyConvertMinimumAmount test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":617,"column":12},{"message":"The testDoPaymentCardAuthorizationDeclined test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":700,"column":12},{"message":"The testDonorReturn3DSecureSuccess test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":806,"column":12},{"message":"The testDonorReturn3DSecureFailure test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":925,"column":12},{"message":"The testDoPaymentFailInitialFilters test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":1001,"column":12}]},"\/src\/repo\/tests\/phpunit\/Adapter\/Adyen\/AdyenRecurringTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/gateway.adapter.php":{"errors":48,"warnings":24,"messages":[{"message":"Class name 'GatewayAdapter' does not match filename 'gateway.adapter.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":37,"column":10},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":41,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":42,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":181,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":182,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":183,"column":5},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":183,"column":48},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":184,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":185,"column":5},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":223,"column":41},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":311,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":318,"column":12},{"message":"Method name \"getData_Staged\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":484,"column":15},{"message":"Method name \"getData_Unstaged_Escaped\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":576,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":576,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":588,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":592,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":782,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":818,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":861,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":865,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":919,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":1004,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":1009,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":1014,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":1019,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":1081,"column":15},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":1105,"column":25},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":1189,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":1280,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":1460,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":1480,"column":61},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":1501,"column":59},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":1511,"column":12},{"message":"Method name \"transaction_option\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":1588,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":1624,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":1628,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":1650,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":2129,"column":12},{"message":"Method name \"session_ensure\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":2133,"column":12},{"message":"Method name \"session_getData\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":2144,"column":12},{"message":"Method name \"session_hasDonorData\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":2165,"column":12},{"message":"Method name \"session_setDonorBackupData\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":2174,"column":12},{"message":"Method name \"session_unsetDonorData\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":2183,"column":12},{"message":"Method name \"session_addDonorData\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":2193,"column":12},{"message":"Method name \"session_killAllEverything\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":2211,"column":12},{"message":"Method name \"session_unsetAllData\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":2223,"column":12},{"message":"Method name \"session_resetForNewAttempt\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":2239,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":2256,"column":33},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":2260,"column":28},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":2268,"column":40},{"message":"Method name \"session_resetOnSwitch\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":2303,"column":15},{"message":"Method name \"token_applyMD5AndSalt\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":2371,"column":22},{"message":"Method name \"token_generateToken\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":2389,"column":19},{"message":"Method name \"token_getSaltedSessionToken\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":2394,"column":12},{"message":"Method name \"token_refreshAllTokenEverything\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":2416,"column":15},{"message":"Method name \"token_matchEditToken\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":2436,"column":15},{"message":"Method name \"token_checkTokens\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":2461,"column":15},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":2462,"column":31},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":2501,"column":64},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":2571,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":2598,"column":106},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":2656,"column":39},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":2670,"column":59},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":2723,"column":45},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":2724,"column":39},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":2758,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":2785,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":2807,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":2859,"column":27},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":2872,"column":27},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":2879,"column":15}]},"\/src\/repo\/gateway_common\/IsoDate.php":{"errors":2,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":4,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":11,"column":12}]}}} --- end --- PHPCS run failed $ vendor/bin/phpcs --report=json --- stdout --- {"totals":{"errors":364,"warnings":395,"fixable":4},"files":{"\/src\/repo\/paypal_ec_gateway\/paypal_gateway.alias.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/dlocal_gateway\/dlocal_resultswitcher.body.php":{"errors":1,"warnings":0,"messages":[{"message":"Class name 'DlocalGatewayResult' does not match filename 'dlocal_resultswitcher.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":6,"column":1}]},"\/src\/repo\/dlocal_gateway\/dlocal_gateway.alias.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/paypal_ec_gateway\/paypal_express_resultswitcher.body.php":{"errors":1,"warnings":0,"messages":[{"message":"Class name 'PaypalExpressGatewayResult' does not match filename 'paypal_express_resultswitcher.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":3,"column":1}]},"\/src\/repo\/dlocal_gateway\/dlocal.api.php":{"errors":2,"warnings":0,"messages":[{"message":"Class name 'DlocalDonationApi' does not match filename 'dlocal.api.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":2,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":3,"column":12}]},"\/src\/repo\/paypal_ec_gateway\/PaypalExpressReturnUrl.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":4,"column":12}]},"\/src\/repo\/gateway_common\/FallbackLogPrefixer.php":{"errors":2,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":12,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":16,"column":12}]},"\/src\/repo\/braintree_gateway\/braintree_gateway.body.php":{"errors":2,"warnings":0,"messages":[{"message":"Class name 'BraintreeGateway' does not match filename 'braintree_gateway.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":9,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":31,"column":12}]},"\/src\/repo\/braintree_gateway\/braintree_resultswitcher.body.php":{"errors":1,"warnings":0,"messages":[{"message":"Class name 'BraintreeGatewayResult' does not match filename 'braintree_resultswitcher.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":6,"column":1}]},"\/src\/repo\/braintree_gateway\/braintree_gateway.alias.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/modules\/CurrencyRatesModule.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/Simple3DSecure.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/paypal_ec_gateway\/paypal_express_gateway.body.php":{"errors":1,"warnings":0,"messages":[{"message":"Class name 'PaypalExpressGateway' does not match filename 'paypal_express_gateway.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":3,"column":1}]},"\/src\/repo\/DonationInterface.alias.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/EmployerFieldValidation.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":34,"column":12}]},"\/src\/repo\/gateway_common\/DonorEmail.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":4,"column":12}]},"\/src\/repo\/gateway_common\/CurrencyCountryRule.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/MessageUtils.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/AmountInCents.php":{"errors":2,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":13,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":29,"column":12}]},"\/src\/repo\/gateway_common\/LogPrefixProvider.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":4,"column":12}]},"\/src\/repo\/gateway_common\/ReturnUrl.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":5,"column":12}]},"\/src\/repo\/gateway_common\/ContributionTrackingPlusUnique.php":{"errors":2,"warnings":1,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":8,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":16,"column":70},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":22,"column":12}]},"\/src\/repo\/gateway_common\/EndowmentHooks.php":{"errors":3,"warnings":1,"messages":[{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":7,"column":5},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":9,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":17,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":49,"column":22}]},"\/src\/repo\/gateway_common\/ResponseProcessingException.php":{"errors":2,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":29,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":33,"column":12}]},"\/src\/repo\/gateway_common\/DonorLocale.php":{"errors":2,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":11,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":32,"column":12}]},"\/src\/repo\/gateway_common\/StagingHelper.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/dlocal_gateway\/dlocal_gateway.body.php":{"errors":2,"warnings":0,"messages":[{"message":"Class name 'DlocalGateway' does not match filename 'dlocal_gateway.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":12,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":51,"column":12}]},"\/src\/repo\/gateway_common\/DonorLanguage.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":4,"column":12}]},"\/src\/repo\/gateway_common\/StreetNumberValidation.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/UnstagingHelper.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":8,"column":12}]},"\/src\/repo\/email_forms\/EmailForm.php":{"errors":6,"warnings":1,"messages":[{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":12,"column":5},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":19,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":66,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":74,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":79,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":87,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":149,"column":15}]},"\/src\/repo\/gateway_common\/ArrayHelper.php":{"errors":2,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":23,"column":22},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":54,"column":22}]},"\/src\/repo\/gateway_common\/PayPalAmount.php":{"errors":3,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":5,"column":12},{"message":"Method name \"is_fractional_currency\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":9,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":9,"column":19}]},"\/src\/repo\/gateway_common\/RecurringConversion.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/Abstract3DSecure.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/amazon_gateway\/amazon_gateway.alias.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/dlocal_gateway\/PlaceholderFiscalNumber.php":{"errors":1,"warnings":2,"messages":[{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":13,"column":31},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":14,"column":31},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":17,"column":12}]},"\/src\/repo\/ingenico_gateway\/Ingenico3DSecure.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/GatewayType.php":{"errors":3,"warnings":0,"messages":[{"message":"Method name \"getData_Unstaged_Escaped\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":92,"column":12},{"message":"Method name \"session_ensure\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":198,"column":12},{"message":"Method name \"token_getSaltedSessionToken\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":240,"column":12}]},"\/src\/repo\/gateway_common\/ErrorState.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":43,"column":12}]},"\/src\/repo\/gateway_common\/DonationLogProcessor.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/ingenico_gateway\/IngenicoReturnUrlHelper.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":4,"column":12}]},"\/src\/repo\/ingenico_gateway\/ingenico_resultswitcher.body.php":{"errors":2,"warnings":0,"messages":[{"message":"Class name 'IngenicoGatewayResult' does not match filename 'ingenico_resultswitcher.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":3,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":8,"column":15}]},"\/src\/repo\/ingenico_gateway\/ingenico_gateway.alias.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/DonationInterface.class.php":{"errors":3,"warnings":0,"messages":[{"message":"Class name 'DonationInterface' does not match filename 'DonationInterface.class.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":7,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":43,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":73,"column":19}]},"\/src\/repo\/gateway_common\/donation.api.php":{"errors":3,"warnings":0,"messages":[{"message":"Class name 'DonationApi' does not match filename 'donation.api.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":10,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":50,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":94,"column":15}]},"\/src\/repo\/gateway_common\/DonorFullName.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/includes\/Api\/ApiDonationClientError.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/includes\/Api\/ApiRecurUpgradeClientError.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/ResultSwitcher.php":{"errors":2,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":114,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":148,"column":12}]},"\/src\/repo\/gravy_gateway\/gravy.api.php":{"errors":1,"warnings":0,"messages":[{"message":"Class name 'GravyDonationApi' does not match filename 'gravy.api.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":2,"column":1}]},"\/src\/repo\/gravy_gateway\/gravy_gateway.alias.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/special\/SystemStatus.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":14,"column":12}]},"\/src\/repo\/amazon_gateway\/amazon.api.php":{"errors":2,"warnings":0,"messages":[{"message":"Class name 'AmazonBillingApi' does not match filename 'amazon.api.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":3,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":86,"column":12}]},"\/src\/repo\/gateway_common\/DonationProfiler.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/StreetAddress.php":{"errors":4,"warnings":2,"messages":[{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":6,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":7,"column":5},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":9,"column":12},{"message":"Method name \"stage_street\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":25,"column":15},{"message":"Method name \"stage_postal_code\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":47,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":78,"column":12}]},"\/src\/repo\/gateway_common\/PaymentTransactionResponse.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/RecurringConversion.api.php":{"errors":2,"warnings":0,"messages":[{"message":"Class name 'RecurringConversionApi' does not match filename 'RecurringConversion.api.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":5,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":54,"column":12}]},"\/src\/repo\/maintenance\/TestCrash.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/ResultPages.php":{"errors":0,"warnings":1,"messages":[{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":82,"column":18}]},"\/src\/repo\/amazon_gateway\/amazon_gateway.body.php":{"errors":1,"warnings":0,"messages":[{"message":"Class name 'AmazonGateway' does not match filename 'amazon_gateway.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":19,"column":1}]},"\/src\/repo\/gateway_common\/LocalClusterPsr6Cache.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/PaymentResult.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/paypal_ec_gateway\/paypal_express.adapter.php":{"errors":4,"warnings":3,"messages":[{"message":"Class name 'PaypalExpressAdapter' does not match filename 'paypal_express.adapter.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":24,"column":1},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":25,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":26,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":27,"column":5},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":43,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":154,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":158,"column":12}]},"\/src\/repo\/tests\/phpunit\/DonationInterfaceApiTestCase.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/BaseDlocalTestCase.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gravy_gateway\/gravy_gateway.body.php":{"errors":2,"warnings":0,"messages":[{"message":"Class name 'GravyGateway' does not match filename 'gravy_gateway.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":8,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":40,"column":12}]},"\/src\/repo\/paypal_ec_gateway\/PayPalCountry.php":{"errors":1,"warnings":2,"messages":[{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":7,"column":23},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":8,"column":23},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":11,"column":12}]},"\/src\/repo\/gateway_common\/DonationLoggerFactory.php":{"errors":2,"warnings":0,"messages":[{"message":"Use PHP 8.4 compatible syntax for explicit nullable types (\"?LogPrefixProvider $prefixer = null\")","source":"MediaWiki.Usage.NullableType.ExplicitNullableTypes","severity":5,"fixable":true,"type":"ERROR","line":25,"column":75},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":59,"column":19}]},"\/src\/repo\/gateway_common\/ConfigurationReader.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":115,"column":15}]},"\/src\/repo\/tests\/phpunit\/includes\/test_gateway\/TestingDlocalAdapter.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_forms\/includes\/Subdivisions.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":5,"column":19}]},"\/src\/repo\/gateway_common\/PostalCodeValidation.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/FiscalNumber.php":{"errors":2,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":121,"column":22},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":128,"column":12}]},"\/src\/repo\/tests\/phpunit\/BaseAdyenCheckoutTestCase.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_forms\/MustacheHelper.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/RecurringConversionTrait.php":{"errors":7,"warnings":0,"messages":[{"message":"Method name \"session_getData\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":12,"column":21},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":12,"column":21},{"message":"Method name \"session_resetForNewAttempt\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":16,"column":21},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":16,"column":21},{"message":"Method name \"session_setDonorBackupData\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":18,"column":21},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":18,"column":21},{"message":"Method name \"session_MoveDonorDataToBackupForRecurringConversion\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":104,"column":12}]},"\/src\/repo\/tests\/phpunit\/IngenicoLocaleTest.php":{"errors":0,"warnings":2,"messages":[{"message":"The testStageSimple test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":69,"column":12},{"message":"The testStageYue test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":74,"column":12}]},"\/src\/repo\/extras\/custom_filters\/custom_filters.body.php":{"errors":6,"warnings":3,"messages":[{"message":"Class name 'Gateway_Extras_CustomFilters' does not match filename 'custom_filters.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":5,"column":1},{"message":"Class name \"Gateway_Extras_CustomFilters\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":5,"column":1},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":8,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":11,"column":5},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":40,"column":50},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":166,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":174,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":182,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":206,"column":15}]},"\/src\/repo\/tests\/phpunit\/includes\/test_request\/test.request.php":{"errors":2,"warnings":0,"messages":[{"message":"Class name 'TestingRequest' does not match filename 'test.request.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":25,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":27,"column":12}]},"\/src\/repo\/ingenico_gateway\/IngenicoLocale.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/includes\/test_gateway\/TestingGenericAdapter.php":{"errors":4,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":31,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":35,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":71,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":74,"column":12}]},"\/src\/repo\/tests\/phpunit\/includes\/TestingDonationLogger.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":14,"column":12}]},"\/src\/repo\/extras\/civiproxy\/CiviproxyConnect.php":{"errors":2,"warnings":2,"messages":[{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":8,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":9,"column":5},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":11,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":61,"column":19}]},"\/src\/repo\/gateway_common\/Amount.php":{"errors":3,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":8,"column":12},{"message":"Method name \"is_fractional_currency\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":155,"column":19},{"message":"Method name \"is_exponent3_currency\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":173,"column":19}]},"\/src\/repo\/ingenico_gateway\/ingenico_gateway.body.php":{"errors":2,"warnings":0,"messages":[{"message":"Class name 'IngenicoGateway' does not match filename 'ingenico_gateway.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":22,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":27,"column":12}]},"\/src\/repo\/tests\/phpunit\/GatewayPageTest.php":{"errors":0,"warnings":6,"messages":[{"message":"The testCurrencyFallbackWithNotification test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":67,"column":12},{"message":"The testCurrencyFallbackIntermediateConversion test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":80,"column":12},{"message":"The testCurrencyFallbackWithoutNotification test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":94,"column":12},{"message":"The testCurrencyFallbackAlwaysNotifiesIfOtherErrors test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":106,"column":12},{"message":"The testNoFallbackForSupportedCurrency test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":124,"column":12},{"message":"The testCurrencyFallbackByCountry test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":134,"column":12}]},"\/src\/repo\/gateway_common\/employerSearch.api.php":{"errors":2,"warnings":3,"messages":[{"message":"Class name 'EmployerSearchAPI' does not match filename 'employerSearch.api.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":16,"column":1},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":31,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":36,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":41,"column":5},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":178,"column":12}]},"\/src\/repo\/tests\/phpunit\/includes\/TestingGatewayPage.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":13,"column":12}]},"\/src\/repo\/extras\/session_velocity\/session_velocity.body.php":{"errors":2,"warnings":5,"messages":[{"message":"Class name 'Gateway_Extras_SessionVelocityFilter' does not match filename 'session_velocity.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":19,"column":1},{"message":"Class name \"Gateway_Extras_SessionVelocityFilter\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":19,"column":1},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":34,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":35,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":36,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":37,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":38,"column":5}]},"\/src\/repo\/gateway_common\/PaymentMethod.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/extras\/custom_filters\/filters\/source\/source.body.php":{"errors":4,"warnings":0,"messages":[{"message":"Class name 'Gateway_Extras_CustomFilters_Source' does not match filename 'source.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":3,"column":1},{"message":"Class name \"Gateway_Extras_CustomFilters_Source\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":3,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":52,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":64,"column":22}]},"\/src\/repo\/ingenico_gateway\/IngenicoFormVariant.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_forms\/MustacheErrorForm.php":{"errors":3,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":34,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":46,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":66,"column":15}]},"\/src\/repo\/dlocal_gateway\/dlocal.adapter.php":{"errors":3,"warnings":3,"messages":[{"message":"Class name 'DlocalAdapter' does not match filename 'dlocal.adapter.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":17,"column":1},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":23,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":28,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":33,"column":5},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":131,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":415,"column":12}]},"\/src\/repo\/gateway_common\/StreetAddressValidation.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/adyen_gateway\/adyen_checkout_resultswitcher.body.php":{"errors":1,"warnings":0,"messages":[{"message":"Class name 'AdyenCheckoutGatewayResult' does not match filename 'adyen_checkout_resultswitcher.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":6,"column":1}]},"\/src\/repo\/gateway_common\/DonationApiBase.php":{"errors":2,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":24,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":96,"column":12}]},"\/src\/repo\/gateway_common\/ValidationHelper.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/WmfFramework.php":{"errors":18,"warnings":1,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":8,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":13,"column":19},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":20,"column":30},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":25,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":29,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":33,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":37,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":42,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":46,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":50,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":54,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":58,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":62,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":66,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":70,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":89,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":93,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":98,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":102,"column":19}]},"\/src\/repo\/braintree_gateway\/braintree.adapter.php":{"errors":2,"warnings":6,"messages":[{"message":"Class name 'BraintreeAdapter' does not match filename 'braintree.adapter.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":14,"column":1},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":17,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":18,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":19,"column":5},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":52,"column":78},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":57,"column":55},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":58,"column":74},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":244,"column":12}]},"\/src\/repo\/tests\/phpunit\/EmployerSearchApiTest.php":{"errors":0,"warnings":12,"messages":[{"message":"The testSingleResultFromExactSearchLookup test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":27,"column":12},{"message":"The testSingleResultFromPartialSearchLookup test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":52,"column":12},{"message":"The testMultipleResultsFromPartialSearchLookup test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":77,"column":12},{"message":"The testSubsidiaryAndParentCompanyCombinedResultSearch test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":103,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":112,"column":49},{"message":"The testEmptyResultsSearch test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":127,"column":12},{"message":"The testAPIInvalidData test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":148,"column":12},{"message":"The testGetEmployersListRetValInvalidData test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":162,"column":12},{"message":"The testAPIInvalidDataLocation test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":172,"column":12},{"message":"The testGetEmployersListInvalidDataLocation test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":189,"column":12},{"message":"The testAPIWrongNumberOfColumns test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":202,"column":12},{"message":"The testGetEmployersListWrongNumberOfColumns test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":218,"column":12}]},"\/src\/repo\/tests\/phpunit\/LintYaml.php":{"errors":2,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":7,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":35,"column":1}]},"\/src\/repo\/extras\/conversion_log\/conversion_log.body.php":{"errors":5,"warnings":0,"messages":[{"message":"Class name 'Gateway_Extras_ConversionLog' does not match filename 'conversion_log.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":5,"column":1},{"message":"Class name \"Gateway_Extras_ConversionLog\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":5,"column":1},{"message":"Method name \"post_process\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":14,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":47,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":55,"column":22}]},"\/src\/repo\/tests\/phpunit\/IntegrationTest.php":{"errors":2,"warnings":1,"messages":[{"message":"Class name 'DonationInterface_IntegrationTest' does not match filename 'IntegrationTest.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":29,"column":1},{"message":"Class name \"DonationInterface_IntegrationTest\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":29,"column":1},{"message":"The testBackClickPayPalToDlocal test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":55,"column":12}]},"\/src\/repo\/tests\/phpunit\/Adapter\/Ingenico\/RealTimeBankTransferIdealTest.php":{"errors":2,"warnings":1,"messages":[{"message":"Class name 'DonationInterface_Adapter_Ingenico_RealTimeBankTransferIdealTest' does not match filename 'RealTimeBankTransferIdealTest.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":31,"column":1},{"message":"Class name \"DonationInterface_Adapter_Ingenico_RealTimeBankTransferIdealTest\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":31,"column":1},{"message":"The testIngenicoFormLoad_rtbt_Ideal test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":64,"column":12}]},"\/src\/repo\/braintree_gateway\/braintree.api.php":{"errors":2,"warnings":0,"messages":[{"message":"Class name 'BraintreeDonationApi' does not match filename 'braintree.api.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":2,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":3,"column":12}]},"\/src\/repo\/tests\/phpunit\/DonationMessageTest.php":{"errors":0,"warnings":1,"messages":[{"message":"The testGetCountrySpecificMessage test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":9,"column":12}]},"\/src\/repo\/extras\/FraudFilter.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/includes\/RecurUpgrade\/Validator.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":50,"column":15}]},"\/src\/repo\/adyen_gateway\/EncryptedCardParameters.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":22,"column":12}]},"\/src\/repo\/adyen_gateway\/adyen_checkout_gateway.body.php":{"errors":3,"warnings":0,"messages":[{"message":"Class name 'AdyenCheckoutGateway' does not match filename 'adyen_checkout_gateway.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":11,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":22,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":56,"column":12}]},"\/src\/repo\/adyen_gateway\/adyen.api.php":{"errors":2,"warnings":0,"messages":[{"message":"Class name 'AdyenDonationApi' does not match filename 'adyen.api.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":2,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":3,"column":12}]},"\/src\/repo\/tests\/phpunit\/DonorLocaleTest.php":{"errors":0,"warnings":4,"messages":[{"message":"The testStageSimple test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":69,"column":12},{"message":"The testNoCountrySet test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":77,"column":12},{"message":"The testStageVariant test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":85,"column":12},{"message":"The testUnstage test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":91,"column":12}]},"\/src\/repo\/tests\/phpunit\/unit\/RecurUpgrade\/ValidatorTest.php":{"errors":0,"warnings":12,"messages":[{"message":"The testValidParamsNotPosted test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":60,"column":12},{"message":"The testSketchyCharactersInParamsNotPosted test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":70,"column":12},{"message":"The testValidParamsWithCancelNotPosted test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":85,"column":12},{"message":"The testValidParamsWithCancelPosted test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":97,"column":12},{"message":"The testPostedWithNoAmount test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":112,"column":12},{"message":"The testPostedWithGoodAmount test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":122,"column":12},{"message":"The testPostedWithNegativeAmount test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":134,"column":12},{"message":"The testPostedWithOtherAmount test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":146,"column":12},{"message":"The testPostedWithNegativeOtherAmount test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":159,"column":12},{"message":"The testPostedMissingOtherAmount test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":172,"column":12},{"message":"The testPostedWithHugeAmount test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":184,"column":12},{"message":"The testPostedWithHugeOtherAmount test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":196,"column":12}]},"\/src\/repo\/adyen_gateway\/BlankAddressFields.php":{"errors":2,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":19,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":34,"column":12}]},"\/src\/repo\/amazon_gateway\/amazon.adapter.php":{"errors":4,"warnings":8,"messages":[{"message":"Class name 'AmazonAdapter' does not match filename 'amazon.adapter.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":34,"column":1},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":36,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":37,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":38,"column":5},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":73,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":196,"column":15},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":227,"column":73},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":312,"column":36},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":314,"column":41},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":343,"column":15},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":366,"column":36},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":370,"column":41}]},"\/src\/repo\/tests\/phpunit\/LoggingTest.php":{"errors":2,"warnings":2,"messages":[{"message":"Class name 'DonationInterface_LoggingTest' does not match filename 'LoggingTest.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":26,"column":1},{"message":"Class name \"DonationInterface_LoggingTest\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":26,"column":1},{"message":"The testLogCompleted test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":49,"column":12},{"message":"The testBadUnicode test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":97,"column":12}]},"\/src\/repo\/tests\/phpunit\/DataValidatorTest.php":{"errors":0,"warnings":10,"messages":[{"message":"The testLuhnCheck test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":33,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":114,"column":34},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":115,"column":33},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":116,"column":39},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":118,"column":47},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":119,"column":51},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":130,"column":46},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":136,"column":33},{"message":"The testValidateFiscalNumber test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":144,"column":12},{"message":"The testValidateEmployerField test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":172,"column":12}]},"\/src\/repo\/tests\/phpunit\/includes\/test_gateway\/TestingPaypalExpressAdapter.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/adyen_gateway\/adyen_apple.api.php":{"errors":2,"warnings":0,"messages":[{"message":"Class name 'AdyenAppleApi' does not match filename 'adyen_apple.api.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":7,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":8,"column":12}]},"\/src\/repo\/tests\/phpunit\/BaseIngenicoTestCase.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Adapter\/Ingenico\/RecurringTest.php":{"errors":2,"warnings":2,"messages":[{"message":"Class name 'DonationInterface_Adapter_Ingenico_RecurringTest' does not match filename 'RecurringTest.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":28,"column":1},{"message":"Class name \"DonationInterface_Adapter_Ingenico_RecurringTest\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":28,"column":1},{"message":"The testSetupTokenizedCheckout test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":34,"column":12},{"message":"The testProcessTokenizedPayment test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":74,"column":12}]},"\/src\/repo\/includes\/Api\/ApiClientErrorBase.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":42,"column":12}]},"\/src\/repo\/tests\/phpunit\/Adapter\/Gravy\/SecureFieldsCardTest.php":{"errors":0,"warnings":1,"messages":[{"message":"The testDoPaymentCard test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":47,"column":12}]},"\/src\/repo\/gateway_common\/CountryValidation.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/TestConfiguration.php":{"errors":0,"warnings":2,"messages":[{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":160,"column":34},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":161,"column":57}]},"\/src\/repo\/tests\/phpunit\/includes\/test_gateway\/test.adapter.php":{"errors":3,"warnings":0,"messages":[{"message":"Class name 'TTestingAdapter' does not match filename 'test.adapter.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":19,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":27,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":34,"column":19}]},"\/src\/repo\/tests\/phpunit\/Adapter\/Adyen\/AdyenFormLoadTest.php":{"errors":0,"warnings":5,"messages":[{"message":"The testAdyenFormLoad test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":47,"column":12},{"message":"The testAdyenFormLoad_FR test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":72,"column":12},{"message":"The testAdyenFormLoad_IT test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":101,"column":12},{"message":"The testAdyenFormLoad_BE test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":137,"column":12},{"message":"The testAdyenFormLoad_CA test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":174,"column":12}]},"\/src\/repo\/tests\/phpunit\/IPVelocityTest.php":{"errors":0,"warnings":2,"messages":[{"message":"The testInitialFilter test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":63,"column":12},{"message":"The testIPDenyListRejection test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":75,"column":12}]},"\/src\/repo\/special\/RecurUpgrade.php":{"errors":8,"warnings":5,"messages":[{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":9,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":10,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":11,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":13,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":16,"column":5},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":25,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":60,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":75,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":125,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":203,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":217,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":221,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":230,"column":15}]},"\/src\/repo\/extras\/custom_filters\/filters\/minfraud\/minfraud.body.php":{"errors":6,"warnings":3,"messages":[{"message":"Class name 'Gateway_Extras_CustomFilters_MinFraud' does not match filename 'minfraud.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":43,"column":1},{"message":"Class name \"Gateway_Extras_CustomFilters_MinFraud\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":43,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":188,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":210,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":226,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":232,"column":15},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":265,"column":47},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":273,"column":16},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":281,"column":50}]},"\/src\/repo\/tests\/phpunit\/ArrayHelperTest.php":{"errors":0,"warnings":2,"messages":[{"message":"The testBuildRequestArray test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":28,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":103,"column":36}]},"\/src\/repo\/extras\/extras.body.php":{"errors":4,"warnings":0,"messages":[{"message":"Class name 'Gateway_Extras' does not match filename 'extras.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":7,"column":10},{"message":"Class name \"Gateway_Extras\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":7,"column":10},{"message":"Method name \"generate_hash\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":59,"column":15},{"message":"Method name \"compare_hash\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":70,"column":15}]},"\/src\/repo\/special\/GatewayChooser.php":{"errors":1,"warnings":1,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":30,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":146,"column":41}]},"\/src\/repo\/special\/FundraiserMaintenance.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":30,"column":12}]},"\/src\/repo\/tests\/phpunit\/Adapter\/Amazon\/AmazonApiTest.php":{"errors":0,"warnings":2,"messages":[{"message":"The testDoPaymentSuccess test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":22,"column":12},{"message":"The testDoPaymentErrors test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":60,"column":12}]},"\/src\/repo\/tests\/phpunit\/MustacheFormTest.php":{"errors":0,"warnings":6,"messages":[{"message":"The testRendering test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":73,"column":12},{"message":"The testNoTemplateFile test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":85,"column":12},{"message":"The testAppealRendering test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":102,"column":12},{"message":"The testOverrideAppeal test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":125,"column":12},{"message":"The testSanitizeOverrideAppeal test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":147,"column":12},{"message":"The testL10nParams test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":171,"column":12}]},"\/src\/repo\/special\/EmailPreferences.php":{"errors":15,"warnings":5,"messages":[{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":9,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":10,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":11,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":14,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":16,"column":5},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":22,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":82,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":164,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":218,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":229,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":248,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":266,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":271,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":276,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":281,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":300,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":314,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":329,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":348,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":352,"column":15}]},"\/src\/repo\/gravy_gateway\/gravy.adapter.php":{"errors":2,"warnings":0,"messages":[{"message":"Class name 'GravyAdapter' does not match filename 'gravy.adapter.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":16,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":82,"column":12}]},"\/src\/repo\/ingenico_gateway\/ingenico.adapter.php":{"errors":4,"warnings":3,"messages":[{"message":"Class name 'IngenicoAdapter' does not match filename 'ingenico.adapter.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":14,"column":1},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":17,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":18,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":19,"column":5},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":149,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":154,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":305,"column":12}]},"\/src\/repo\/tests\/phpunit\/Adapter\/PayPal\/PayPalApiTest.php":{"errors":0,"warnings":3,"messages":[{"message":"The testGoodSubmit test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":40,"column":12},{"message":"The testTooSmallDonation test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":128,"column":12},{"message":"The testGoodRecurringSubmit test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":154,"column":12}]},"\/src\/repo\/extras\/custom_filters\/filters\/ip_velocity\/ip_velocity.body.php":{"errors":7,"warnings":1,"messages":[{"message":"Class name 'Gateway_Extras_CustomFilters_IP_Velocity' does not match filename 'ip_velocity.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":3,"column":1},{"message":"Class name \"Gateway_Extras_CustomFilters_IP_Velocity\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":3,"column":1},{"message":"Use PHP 8.4 compatible syntax for explicit nullable types (\"?Gateway_Extras_CustomFilters $custom_filter_object = null\")","source":"MediaWiki.Usage.NullableType.ExplicitNullableTypes","severity":5,"fixable":true,"type":"ERROR","line":35,"column":9},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":92,"column":66},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":105,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":139,"column":22},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":223,"column":22},{"message":"Use PHP 8.4 compatible syntax for explicit nullable types (\"?Gateway_Extras_CustomFilters $custom_filter_object = null\")","source":"MediaWiki.Usage.NullableType.ExplicitNullableTypes","severity":5,"fixable":true,"type":"ERROR","line":225,"column":9}]},"\/src\/repo\/extras\/custom_filters\/filters\/functions\/functions.body.php":{"errors":5,"warnings":1,"messages":[{"message":"Class name 'Gateway_Extras_CustomFilters_Functions' does not match filename 'functions.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":3,"column":1},{"message":"Class name \"Gateway_Extras_CustomFilters_Functions\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":3,"column":1},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":53,"column":29},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":70,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":80,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":90,"column":22}]},"\/src\/repo\/special\/PaymentSettings.php":{"errors":1,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":8,"column":12}]},"\/src\/repo\/tests\/phpunit\/AmountTest.php":{"errors":0,"warnings":17,"messages":[{"message":"The testValidUsd test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":81,"column":12},{"message":"The testZeroAmount test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":90,"column":12},{"message":"The testWhitespaceAmount test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":105,"column":12},{"message":"The testNonNumericAmount test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":120,"column":12},{"message":"The testNegativeAmount test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":139,"column":12},{"message":"The testTooMuchUsd test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":158,"column":12},{"message":"The testTooLittleUsd test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":182,"column":12},{"message":"The testTooMuchBbd test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":208,"column":12},{"message":"The testTooLittleBbd test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":234,"column":12},{"message":"The testRoundNoDigit test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":256,"column":12},{"message":"The testRoundTwoDigit test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":261,"column":12},{"message":"The testRoundThreeDigit test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":266,"column":12},{"message":"The testFormat test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":271,"column":12},{"message":"The testTooLittleUSDConfiguredInBbd test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":292,"column":12},{"message":"The testTooMuchUsdConfiguredInBbd test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":319,"column":12},{"message":"The testTooMuchBbdConfiguredInBbd test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":348,"column":12},{"message":"The testTooLittleBbdConfiguredInBbd test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":379,"column":12}]},"\/src\/repo\/gravy_gateway\/gravy_resultswitcher.body.php":{"errors":1,"warnings":0,"messages":[{"message":"Class name 'GravyGatewayResult' does not match filename 'gravy_resultswitcher.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":6,"column":1}]},"\/src\/repo\/tests\/phpunit\/EmailPreferencesTest.php":{"errors":0,"warnings":1,"messages":[{"message":"The testEmailPrefCenterQueue test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":38,"column":12}]},"\/src\/repo\/extras\/custom_filters\/filters\/referrer\/referrer.body.php":{"errors":4,"warnings":0,"messages":[{"message":"Class name 'Gateway_Extras_CustomFilters_Referrer' does not match filename 'referrer.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":3,"column":1},{"message":"Class name \"Gateway_Extras_CustomFilters_Referrer\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":3,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":53,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":65,"column":22}]},"\/src\/repo\/tests\/phpunit\/GatewayValidationTest.php":{"errors":0,"warnings":8,"messages":[{"message":"The testPassesValidation test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":82,"column":12},{"message":"The testLowAmountError test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":93,"column":12},{"message":"The testHighAmountError test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":106,"column":12},{"message":"The testCurrencyCodeError test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":119,"column":12},{"message":"The testCountryError test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":131,"column":12},{"message":"The testEmailError test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":149,"column":12},{"message":"The testSpuriousCcError test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":161,"column":12},{"message":"The testMissingFieldError test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":172,"column":12}]},"\/src\/repo\/gateway_common\/GatewayPage.php":{"errors":3,"warnings":1,"messages":[{"message":"Use PHP 8.4 compatible syntax for explicit nullable types (\"?PaymentTransactionResponse $results = null\")","source":"MediaWiki.Usage.NullableType.ExplicitNullableTypes","severity":5,"fixable":true,"type":"ERROR","line":288,"column":48},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":377,"column":18},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":525,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":594,"column":15}]},"\/src\/repo\/tests\/phpunit\/Adapter\/Amazon\/AmazonTest.php":{"errors":2,"warnings":13,"messages":[{"message":"Class name 'DonationInterface_Adapter_Amazon_Test' does not match filename 'AmazonTest.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":31,"column":1},{"message":"Class name \"DonationInterface_Adapter_Amazon_Test\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":31,"column":1},{"message":"The testCanadianDollarConversion test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":74,"column":12},{"message":"The testShowFormOnError test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":112,"column":12},{"message":"The testDoPaymentSuccess test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":130,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":133,"column":63},{"message":"The testDoPaymentDeclined test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":160,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":163,"column":63},{"message":"The testFailOnAmazonRejected test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":187,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":190,"column":63},{"message":"The testTransactionTimedOut test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":212,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":215,"column":63},{"message":"The testClientException test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":241,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":244,"column":63},{"message":"The testDoRecurringPaymentSuccess test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":268,"column":12}]},"\/src\/repo\/gateway_common\/messages\/MessagesEs_419.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/DataValidator.php":{"errors":18,"warnings":6,"messages":[{"message":"Method name \"validate_email\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":275,"column":22},{"message":"Method name \"validate_currency_code\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":281,"column":22},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":281,"column":22},{"message":"Method name \"validate_credit_card\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":295,"column":22},{"message":"Method name \"validate_boolean\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":309,"column":22},{"message":"Method name \"validate_numeric\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":329,"column":22},{"message":"Method name \"validate_gateway\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":344,"column":22},{"message":"Method name \"validate_not_empty\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":358,"column":22},{"message":"Method name \"validate_alphanumeric\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":371,"column":22},{"message":"Method name \"validate_not_just_punctuation\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":383,"column":19},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":384,"column":48},{"message":"Method name \"validate_name\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":399,"column":19},{"message":"Method name \"validate_address\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":409,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":414,"column":19},{"message":"Method name \"special_characters_in_wrong_locations\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":427,"column":19},{"message":"Method name \"cc_number_exists_in_str\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":450,"column":19},{"message":"Method name \"luhn_check\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":513,"column":19},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":541,"column":64},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":543,"column":71},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":545,"column":78},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":547,"column":83},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":549,"column":18},{"message":"Method name \"ip_is_listed\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":606,"column":19},{"message":"Method name \"value_appears_in\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":628,"column":19}]},"\/src\/repo\/gateway_common\/ClientSideValidationHelper.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/FraudFiltersTest.php":{"errors":2,"warnings":4,"messages":[{"message":"Class name 'DonationInterface_FraudFiltersTest' does not match filename 'FraudFiltersTest.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":32,"column":1},{"message":"Class name \"DonationInterface_FraudFiltersTest\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":32,"column":1},{"message":"The testMinFraudErrorScore test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":93,"column":12},{"message":"The testMinFraudRealScore test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":142,"column":12},{"message":"The testMinFraudExtras test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":226,"column":12},{"message":"The testMinFraudExtrasNoAddress test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":327,"column":12}]},"\/src\/repo\/adyen_gateway\/adyen_get_payment_methods.api.php":{"errors":2,"warnings":0,"messages":[{"message":"Class name 'AdyenGetPaymentMethodsApi' does not match filename 'adyen_get_payment_methods.api.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":7,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":31,"column":12}]},"\/src\/repo\/tests\/phpunit\/Adapter\/Gravy\/RedirectFormTest.php":{"errors":0,"warnings":2,"messages":[{"message":"The testDoPaymentVenmo test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":40,"column":12},{"message":"The testProcessDonorReturnVenmo test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":121,"column":12}]},"\/src\/repo\/adyen_gateway\/adyen_submit_payment.api.php":{"errors":4,"warnings":0,"messages":[{"message":"Class name 'AdyenSubmitPaymentApi' does not match filename 'adyen_submit_payment.api.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":9,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":164,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":318,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":339,"column":15}]},"\/src\/repo\/adyen_gateway\/adyen_gateway.alias.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/adyen_gateway\/Adyen3DSecure.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_forms\/Mustache.php":{"errors":17,"warnings":1,"messages":[{"message":"Class name 'Gateway_Form_Mustache' does not match filename 'Mustache.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":12,"column":1},{"message":"Class name \"Gateway_Form_Mustache\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":12,"column":1},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":14,"column":5},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":101,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":147,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":185,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":250,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":262,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":334,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":350,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":379,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":446,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":515,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":538,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":545,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":554,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":558,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":562,"column":15}]},"\/src\/repo\/adyen_gateway\/adyen_checkout.adapter.php":{"errors":6,"warnings":3,"messages":[{"message":"Class name 'AdyenCheckoutAdapter' does not match filename 'adyen_checkout.adapter.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":13,"column":1},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":16,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":17,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":18,"column":5},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":280,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":293,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":306,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":340,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":396,"column":12}]},"\/src\/repo\/.phan\/config.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Adapter\/Dlocal\/CardPaymentTest.php":{"errors":0,"warnings":9,"messages":[{"message":"The testDoCardPayment test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":32,"column":12},{"message":"The testDoCardPaymentWithRecurring test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":69,"column":12},{"message":"The testDoCardPaymentCreatePaymentFail test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":117,"column":12},{"message":"The testDoCardPaymentValidationError test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":149,"column":12},{"message":"The testDoPaymentsInitQueueCountSuccessfulPayment test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":173,"column":12},{"message":"The testDoPaymentsInitQueueCountFailedPayment test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":211,"column":12},{"message":"The testDoPaymentsAntiFraudQueueCountSuccessfulPayment test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":244,"column":12},{"message":"The testDoPaymentsAntiFraudQueueCountFailedPayment test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":297,"column":12},{"message":"The testMismatchOrderIdIsReset test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":356,"column":12}]},"\/src\/repo\/gateway_forms\/Form.php":{"errors":3,"warnings":0,"messages":[{"message":"Class name 'Gateway_Form' does not match filename 'Form.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":3,"column":10},{"message":"Class name \"Gateway_Form\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":3,"column":10},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":92,"column":12}]},"\/src\/repo\/tests\/phpunit\/Adapter\/Adyen\/CheckoutIdealTest.php":{"errors":0,"warnings":5,"messages":[{"message":"The testDoPaymentIdeal test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":33,"column":12},{"message":"The testDoPaymentIdealMultipleAttempt test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":112,"column":12},{"message":"The testDoPaymentIdealAttemptBlockedDueToIPInDenyList test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":226,"column":12},{"message":"The testDonorReturnIdealSuccess test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":309,"column":12},{"message":"The testDonorReturnIdealFailure test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":395,"column":12}]},"\/src\/repo\/gateway_common\/DonationData.php":{"errors":3,"warnings":18,"messages":[{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":54,"column":24},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":69,"column":25},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":72,"column":26},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":73,"column":25},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":76,"column":29},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":137,"column":24},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":138,"column":22},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":139,"column":24},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":140,"column":31},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":143,"column":30},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":144,"column":26},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":203,"column":19},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":361,"column":41},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":389,"column":72},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":394,"column":50},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":400,"column":34},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":401,"column":39},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":518,"column":45},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":584,"column":28},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":943,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":951,"column":12}]},"\/src\/repo\/tests\/phpunit\/Adapter\/Braintree\/PaypalPaymentTest.php":{"errors":0,"warnings":5,"messages":[{"message":"The testPaypalRoundCertainCurrencyPayment test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":42,"column":12},{"message":"The testPaypalDoPayment test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":80,"column":12},{"message":"The testDoPaymentMultipleAttempt test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":171,"column":12},{"message":"The testDoPaymentAttemptBlockedDueToIPInDenyList test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":256,"column":12},{"message":"The testPaypalDoPaymentInvalidPaymentToken test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":327,"column":12}]},"\/src\/repo\/tests\/phpunit\/Adapter\/Gravy\/GravyFormLoadTest.php":{"errors":0,"warnings":1,"messages":[{"message":"The testGravyFormLoad test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":47,"column":12}]},"\/src\/repo\/gateway_common\/MediaWikiLogHandler.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Adapter\/Dlocal\/CashPaymentTest.php":{"errors":0,"warnings":4,"messages":[{"message":"The testCashPaymentDonorReturnPaid test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":67,"column":12},{"message":"The testCashPaymentDonorReturnRejected test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":105,"column":12},{"message":"The testCashPaymentDonorReturnCancelled test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":141,"column":12},{"message":"The testCashPaymentDonorReturnPending test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":177,"column":12}]},"\/src\/repo\/tests\/phpunit\/DonationDataTest.php":{"errors":2,"warnings":31,"messages":[{"message":"Class name 'DonationInterface_DonationDataTest' does not match filename 'DonationDataTest.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":29,"column":1},{"message":"Class name \"DonationInterface_DonationDataTest\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":29,"column":1},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":82,"column":91},{"message":"The testConstructWithExternalData test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":108,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":142,"column":59},{"message":"The testConstructWithFauxRequest test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":156,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":190,"column":91},{"message":"The testDebugLog test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":205,"column":12},{"message":"The testRepopulate test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":227,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":240,"column":102},{"message":"The testIsSomething test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":259,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":263,"column":98},{"message":"The testSetNormalizedAmount_amtGiven test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":271,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":275,"column":98},{"message":"The testSetNormalizedAmount_amount test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":284,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":288,"column":98},{"message":"The testSetNormalizedAmount_negativeAmount test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":297,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":301,"column":98},{"message":"The testSetNormalizedAmount_noGoodAmount test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":310,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":315,"column":98},{"message":"The testSetNormalizedCurrencyCode_BadData test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":326,"column":12},{"message":"The testSetNormalizedLanguage_uselang test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":339,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":346,"column":98},{"message":"The testSetNormalizedLanguage_language test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":355,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":362,"column":98},{"message":"The testSetUtmSource test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":371,"column":12},{"message":"The testSetUtmSourceFromApp test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":382,"column":12},{"message":"The testSetUtmValuesFromWmfValues test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":398,"column":12},{"message":"The testSetUtmSourceFromAppWithBanner test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":417,"column":12},{"message":"The testSetUtmSourceFromAppWithNoBanner test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":434,"column":12},{"message":"The testSendToContributionTrackingQueue test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":450,"column":12},{"message":"The testSendRecurringToContributionTrackingQueue test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":496,"column":12},{"message":"The testGetSessionFields test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":544,"column":12}]},"\/src\/repo\/tests\/phpunit\/Adapter\/Braintree\/VenmoPaymentTest.php":{"errors":0,"warnings":1,"messages":[{"message":"The testVenmoDoPayment test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":43,"column":12}]},"\/src\/repo\/tests\/phpunit\/BaseBraintreeTestCase.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/BaseGravyTestCase.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Adapter\/GatewayAdapterTest.php":{"errors":3,"warnings":25,"messages":[{"message":"Class name 'DonationInterface_Adapter_GatewayAdapterTest' does not match filename 'GatewayAdapterTest.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":41,"column":1},{"message":"Class name \"DonationInterface_Adapter_GatewayAdapterTest\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":41,"column":1},{"message":"The testRequiredFields test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":67,"column":12},{"message":"The testSubmethodVadliationPass test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":92,"column":12},{"message":"The testOptionalFieldsConfig test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":119,"column":12},{"message":"The testVariantConfig test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":152,"column":12},{"message":"The testIllegalVariantConfig test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":176,"column":12},{"message":"The testLanguageChange test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":217,"column":12},{"message":"The testResetOnGatewaySwitch test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":239,"column":12},{"message":"The testResetOnOneTimeToRecurringSwitch test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":265,"column":12},{"message":"The testResetOnRecurringToOneTimeSwitch test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":299,"column":12},{"message":"The testResetSubmethodOnMethodSwitch test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":332,"column":12},{"message":"The testStreetStaging test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":361,"column":12},{"message":"The testPostalCodeStaging test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":379,"column":12},{"message":"The testStreetUnStaging test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":397,"column":12},{"message":"The testPostalCodeUnStaging test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":422,"column":12},{"message":"The testCancelPage test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":447,"column":12},{"message":"The testCannotOverrideIp test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":457,"column":12},{"message":"The testGetScoreName test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":466,"column":12},{"message":"The testGetScoreNameMinimumLength test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":484,"column":12},{"message":"Method name \"TestSetValidationAction\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":502,"column":12},{"message":"The testGetDonationQueueMessage test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":513,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":530,"column":39},{"message":"The testGetDonationQueueMessageContactId test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":543,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":546,"column":65},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":564,"column":39},{"message":"The testGetDonationQueueMessageContactIdNoHash test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":577,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":595,"column":39}]},"\/src\/repo\/tests\/phpunit\/Adapter\/Ingenico\/IngenicoTest.php":{"errors":2,"warnings":19,"messages":[{"message":"Class name 'DonationInterface_Adapter_Ingenico_IngenicoTest' does not match filename 'IngenicoTest.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":35,"column":1},{"message":"Class name \"DonationInterface_Adapter_Ingenico_IngenicoTest\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":35,"column":1},{"message":"The testGatewaySessionRetrieval test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":67,"column":12},{"message":"The testSendCustomerIP test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":89,"column":12},{"message":"The testDonorReturnLoadsFraudScore test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":115,"column":12},{"message":"The testDonorReturnPending test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":144,"column":12},{"message":"The testProcessDonorReturnStatusCancelledByConsumer test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":176,"column":12},{"message":"The testGetLatestPaymentStatusPostProcessFraud test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":212,"column":12},{"message":"The testLanguageStaging test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":296,"column":12},{"message":"The testAddResponseData_underzealous test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":311,"column":12},{"message":"The testNoDupeOrderId test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":341,"column":12},{"message":"The testOrderIdsWith4Or7Ok test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":399,"column":12},{"message":"The testDonorReturnSuccess test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":423,"column":12},{"message":"The testDonorReturnFailure test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":448,"column":12},{"message":"The testDonorReturnFailureOptIn test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":472,"column":12},{"message":"The testDonorReturnPaymentSubmethod test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":505,"column":12},{"message":"The testClearDataWhenDone test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":527,"column":12},{"message":"The testDoPayment test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":557,"column":12},{"message":"The testDoMultiplePayment test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":572,"column":12},{"message":"The testDoPaymentAttemptBlockedDueToIPInDenyList test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":622,"column":12},{"message":"The testDoPaymentFailInitialFilters test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":660,"column":12}]},"\/src\/repo\/tests\/phpunit\/DonationInterfaceTestCase.php":{"errors":0,"warnings":2,"messages":[{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":171,"column":23},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":684,"column":51}]},"\/src\/repo\/tests\/phpunit\/DonationQueueTest.php":{"errors":0,"warnings":2,"messages":[{"message":"The testPushMessage test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":101,"column":12},{"message":"The testIsFifoQueue test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":113,"column":12}]},"\/src\/repo\/tests\/phpunit\/GatewayChooserTest.php":{"errors":2,"warnings":16,"messages":[{"message":"Class name 'DonationInterface_GatewayChooserTest' does not match filename 'GatewayChooserTest.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":27,"column":1},{"message":"Class name \"DonationInterface_GatewayChooserTest\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":27,"column":1},{"message":"The testMaintenanceMode_Redirect test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":75,"column":12},{"message":"The testNoNeedParamGateWayChooser test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":99,"column":12},{"message":"The testAssertExpectedGateway test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":129,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":223,"column":131},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":224,"column":131},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":225,"column":135},{"message":"The testConfirmCountriesInCountryFieldsGatewayConfig test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":385,"column":12},{"message":"The testConfirmCountriesInPaymentSubmethodsGatewayConfig test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":404,"column":12},{"message":"The testChooseGatewayByPrioritySingleRuleMatch test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":428,"column":12},{"message":"The testChooseGatewayByPriorityMultiRuleMatch test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":459,"column":12},{"message":"The testChooseGatewayByPriorityConditionValueArrayRuleMatch test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":491,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":495,"column":76},{"message":"The testChooseGatewayByPriorityStopsAtFirstRuleMatch test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":520,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":528,"column":67},{"message":"The testAdditionalParamatersPassThrough test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":556,"column":12},{"message":"The testPassRecurringFalse test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":593,"column":12}]},"\/src\/repo\/tests\/phpunit\/Adapter\/Ingenico\/IngenicoApiTest.php":{"errors":0,"warnings":9,"messages":[{"message":"The testGoodSubmit test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":70,"column":12},{"message":"The testStageLocale test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":168,"column":12},{"message":"The testNoMangleDataOnTruncate test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":209,"column":12},{"message":"The testUpsellVariant test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":260,"column":12},{"message":"The testSubmitFailInitialFilters test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":292,"column":12},{"message":"The testOptionalFieldBehaviour test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":322,"column":12},{"message":"The testSubmitEmployerField test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":365,"column":12},{"message":"The testRecurringConversionApiSuccess test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":396,"column":12},{"message":"The testRecurringConversionApiError test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":440,"column":12}]},"\/src\/repo\/tests\/phpunit\/Adapter\/PayPal\/PayPalExpressTest.php":{"errors":2,"warnings":17,"messages":[{"message":"Class name 'DonationInterface_Adapter_PayPal_Express_Test' does not match filename 'PayPalExpressTest.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":39,"column":1},{"message":"Class name \"DonationInterface_Adapter_PayPal_Express_Test\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":39,"column":1},{"message":"The testPaymentSetup test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":68,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":117,"column":33},{"message":"The testPaymentSetupRecurring test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":156,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":207,"column":33},{"message":"The testProcessDonorReturn test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":306,"column":12},{"message":"The testProcessDonorReturnRecurring test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":375,"column":12},{"message":"The testProcessDonorReturnPaymentRetry test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":452,"column":12},{"message":"The testProcessDonorReturnWarning test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":499,"column":12},{"message":"The testProcessDonorReturnRecurringRetry test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":600,"column":12},{"message":"The testProcessDonorReturnPaymentActionCompleted test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":694,"column":12},{"message":"The testProcessDonorReturnTokenTimeout test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":749,"column":12},{"message":"The testResultSwitcher test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":806,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":816,"column":45},{"message":"The testResultSwitcherRepeat test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":859,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":874,"column":45},{"message":"The testUnstageCountry test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":900,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":910,"column":45}]},"\/src\/repo\/tests\/phpunit\/Adapter\/Adyen\/CheckoutCardTest.php":{"errors":0,"warnings":10,"messages":[{"message":"The testDoPaymentCard test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":49,"column":12},{"message":"The testDoPaymentCardNoPaymentSubmethod test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":202,"column":12},{"message":"The testDoPaymentMultipleAttempt test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":356,"column":12},{"message":"The testDoPaymentAttemptBlockedDueToIPInDenyList test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":481,"column":12},{"message":"The testDoPaymentCardMonthlyConvert test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":529,"column":12},{"message":"The testDoPaymentCardMonthlyConvertMinimumAmount test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":617,"column":12},{"message":"The testDoPaymentCardAuthorizationDeclined test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":700,"column":12},{"message":"The testDonorReturn3DSecureSuccess test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":806,"column":12},{"message":"The testDonorReturn3DSecureFailure test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":925,"column":12},{"message":"The testDoPaymentFailInitialFilters test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":1001,"column":12}]},"\/src\/repo\/tests\/phpunit\/Adapter\/Ingenico\/ResultSwitcherTest.php":{"errors":2,"warnings":2,"messages":[{"message":"Class name 'DonationInterface_Adapter_Ingenico_ResultSwitcherTest' does not match filename 'ResultSwitcherTest.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":13,"column":1},{"message":"Class name \"DonationInterface_Adapter_Ingenico_ResultSwitcherTest\" is not in PascalCase format","source":"Squiz.Classes.ValidClassName.NotCamelCaps","severity":5,"fixable":false,"type":"ERROR","line":13,"column":1},{"message":"The testResultSwitcherLiberatedSuccess test method has no @covers tags","source":"MediaWiki.Commenting.MissingCovers.MissingCovers","severity":5,"fixable":false,"type":"WARNING","line":18,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":57,"column":33}]},"\/src\/repo\/tests\/phpunit\/Adapter\/Adyen\/AdyenRecurringTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/gateway_common\/gateway.adapter.php":{"errors":48,"warnings":24,"messages":[{"message":"Class name 'GatewayAdapter' does not match filename 'gateway.adapter.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":37,"column":10},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":41,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":42,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":181,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":182,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":183,"column":5},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":183,"column":48},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":184,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":185,"column":5},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":223,"column":41},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":311,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":318,"column":12},{"message":"Method name \"getData_Staged\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":484,"column":15},{"message":"Method name \"getData_Unstaged_Escaped\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":576,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":576,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":588,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":592,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":782,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":818,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":861,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":865,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":919,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":1004,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":1009,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":1014,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":1019,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":1081,"column":15},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":1105,"column":25},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":1189,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":1280,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":1460,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":1480,"column":61},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":1501,"column":59},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":1511,"column":12},{"message":"Method name \"transaction_option\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":1588,"column":15},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":1624,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":1628,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":1650,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":2129,"column":12},{"message":"Method name \"session_ensure\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":2133,"column":12},{"message":"Method name \"session_getData\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":2144,"column":12},{"message":"Method name \"session_hasDonorData\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":2165,"column":12},{"message":"Method name \"session_setDonorBackupData\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":2174,"column":12},{"message":"Method name \"session_unsetDonorData\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":2183,"column":12},{"message":"Method name \"session_addDonorData\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":2193,"column":12},{"message":"Method name \"session_killAllEverything\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":2211,"column":12},{"message":"Method name \"session_unsetAllData\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":2223,"column":12},{"message":"Method name \"session_resetForNewAttempt\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":2239,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":2256,"column":33},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":2260,"column":28},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":2268,"column":40},{"message":"Method name \"session_resetOnSwitch\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":2303,"column":15},{"message":"Method name \"token_applyMD5AndSalt\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":2371,"column":22},{"message":"Method name \"token_generateToken\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":2389,"column":19},{"message":"Method name \"token_getSaltedSessionToken\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":2394,"column":12},{"message":"Method name \"token_refreshAllTokenEverything\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":2416,"column":15},{"message":"Method name \"token_matchEditToken\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":2436,"column":15},{"message":"Method name \"token_checkTokens\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":2461,"column":15},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":2462,"column":31},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":2501,"column":64},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":2571,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":2598,"column":106},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":2656,"column":39},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":2670,"column":59},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":2723,"column":45},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":2724,"column":39},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":2758,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":2785,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":2807,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":2859,"column":27},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":2872,"column":27},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":2879,"column":15}]},"\/src\/repo\/gateway_common\/IsoDate.php":{"errors":2,"warnings":0,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":4,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":11,"column":12}]}}} --- end --- * sniff MediaWiki.Usage.NullableType.ExplicitNullableTypes is now failing $ git checkout .phpcs.xml --- stderr --- Updated 1 path from the index --- stdout --- --- end --- $ /usr/bin/composer install --- stderr --- Installing dependencies from lock file (including require-dev) Verifying lock file contents can be installed on current platform. Nothing to install, update or remove Generating optimized autoload files Class SmashPig\PaymentProviders\Fundraiseup\Tests\AuditTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Fundraiseup/Tests/phpunit/AuditTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Ingenico\Tests\Manual\TestCreatePayment located in ./vendor/wikimedia/smash-pig/PaymentProviders/Ingenico/Tests/manual/TestCreatePayment.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Ingenico\Tests\IdealStatusProviderTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Ingenico/Tests/phpunit/IdealStatusProviderTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Ingenico\Tests\HostedCheckoutProviderTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Ingenico/Tests/phpunit/HostedCheckoutProviderTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Ingenico\Tests\ApiTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Ingenico/Tests/phpunit/ApiTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Ingenico\Tests\AuditTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Ingenico/Tests/phpunit/AuditTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Ingenico\Tests\AuthenticatorTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Ingenico/Tests/phpunit/AuthenticatorTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Ingenico\Tests\BankPaymentProviderTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Ingenico/Tests/phpunit/BankPaymentProviderTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Ingenico\Tests\PaymentProviderTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Ingenico/Tests/phpunit/PaymentProviderTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Ingenico\Tests\TokenizeRecurringJobTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Ingenico/Tests/phpunit/TokenizeRecurringJobTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Amazon\Tests\RecordPaymentsJobTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Amazon/Tests/phpunit/RecordPaymentsJobTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Amazon\Tests\NormalizeTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Amazon/Tests/phpunit/NormalizeTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Amazon\Tests\ActionsTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Amazon/Tests/phpunit/ActionsTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Amazon\Tests\ApiTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Amazon/Tests/phpunit/ApiTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Amazon\Tests\AuditTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Amazon/Tests/phpunit/AuditTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Test\CaptureJobTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/CaptureJobTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Test\RestResponseValidatorTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/RestResponseValidatorTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Test\CancelRecurringActionTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/CancelRecurringActionTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Test\RequeueMessageTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/RequeueMessageTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Tests\PaymentCaptureActionTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/PaymentCaptureActionTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Test\RecurringContractActionTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/RecurringContractActionTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Tests\RefundInitiatedActionTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/RefundInitiatedActionTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Test\RecurringContractJobTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/RecurringContractJobTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Test\RecurringPaymentTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/RecurringPaymentTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Tests\ReferenceDataTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/ReferenceDataTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Test\ApiTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/ApiTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Test\AutoRescueActionTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/AutoRescueActionTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Tests\ChargebackInitiatedActionTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/ChargebackInitiatedActionTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Tests\ReportAvailableTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/ReportAvailableTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Test\AuditTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/AuditTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Test\RecordCaptureJobTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/RecordCaptureJobTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Tests\TokenizeRecurringJobTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/TokenizeRecurringJobTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Adyen\Tests\CaptureResponseActionTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Adyen/Tests/phpunit/CaptureResponseActionTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\dlocal\Tests\PaidMessageJobTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/dlocal/Tests/phpunit/PaidMessageJobTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\dlocal\Tests\RestResponseValidatorTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/dlocal/Tests/phpunit/RestResponseValidatorTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\dlocal\Tests\RejectedMessageJobTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/dlocal/Tests/phpunit/RejectedMessageJobTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\dlocal\Tests\SignatureCalculatorTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/dlocal/Tests/phpunit/SignatureCalculatorTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\dlocal\Tests\ApiTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/dlocal/Tests/phpunit/ApiTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\dlocal\Test\AuditTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/dlocal/Tests/phpunit/AuditTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\dlocal\Tests\CardPaymentProviderTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/dlocal/Tests/phpunit/CardPaymentProviderTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\PayPal\Tests\CaptureIncomingMessageTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/PayPal/Tests/phpunit/CaptureIncomingMessageTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\PayPal\Tests\PaymentProviderTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/PayPal/Tests/phpunit/PaymentProviderTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Braintree\Tests\SignatureValidatorTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Braintree/Tests/phpunit/SignatureValidatorTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Braintree\Tests\PayPalPaymentProviderTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Braintree/Tests/phpunit/PayPalPaymentProviderTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Braintree\Tests\VenmoPaymentProviderTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Braintree/Tests/phpunit/VenmoPaymentProviderTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Braintree\Tests\ApiTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Braintree/Tests/phpunit/ApiTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Braintree\Test\AuditTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Braintree/Tests/phpunit/AuditTest.php does not comply with psr-4 autoloading standard. Skipping. Class SmashPig\PaymentProviders\Braintree\Tests\PaymentProviderTest located in ./vendor/wikimedia/smash-pig/PaymentProviders/Braintree/Tests/phpunit/PaymentProviderTest.php does not comply with psr-4 autoloading standard. Skipping. 29 packages you are using are looking for funding. Use the `composer fund` command to find out more! --- stdout --- --- end --- $ /usr/bin/composer test --- stderr --- > parallel-lint . --exclude vendor --exclude node_modules > phpcs -p -s --cache > php tests/phpunit/LintYaml.php > minus-x check . --- stdout --- PHP 8.2.20 | 10 parallel jobs ............................................................ 60/188 ( 31%) ............................................................ 120/188 ( 63%) ............................................................ 180/188 ( 95%) ........ 188/188 (100%) Checked 188 files in 0.8 seconds No syntax error found ............................................................ 60 / 63 (95%) ... 63 / 63 (100%) Time: 474ms; Memory: 18MB MinusX ====== Processing /src/repo... ............................................................. ............................................................. ............................................................. ............................................................. ............................................................. ............................................................. ............................................................. ............................................................. ............................................................. ............................................................. ............................................................. ............................................................. ............................................................. ............................................................. ............................................................. ............................................................. ............................................................. ............................................................. ............................................................. .......................................... All good! --- end --- $ /usr/bin/npm audit --json --- stdout --- { "auditReportVersion": 2, "vulnerabilities": {}, "metadata": { "vulnerabilities": { "info": 0, "low": 0, "moderate": 0, "high": 0, "critical": 0, "total": 0 }, "dependencies": { "prod": 1, "dev": 459, "optional": 0, "peer": 1, "peerOptional": 0, "total": 459 } } } --- end --- $ package-lock-lint package-lock.json --- stdout --- Checking package-lock.json --- end --- build: Updating mediawiki/mediawiki-codesniffer to 45.0.0 The following sniffs are failing and were disabled: * MediaWiki.Usage.NullableType.ExplicitNullableTypes $ git add . --- stdout --- --- end --- $ git commit -F /tmp/tmp2zprjbnh --- stdout --- [REL1_43 dad7a42] build: Updating mediawiki/mediawiki-codesniffer to 45.0.0 2 files changed, 2 insertions(+), 1 deletion(-) --- end --- $ git format-patch HEAD~1 --stdout --- stdout --- From dad7a42f396eabf90d107716d6137dbc024b348c Mon Sep 17 00:00:00 2001 From: libraryupgrader <tools.libraryupgrader@tools.wmflabs.org> Date: Sun, 10 Nov 2024 03:59:33 +0000 Subject: [PATCH] build: Updating mediawiki/mediawiki-codesniffer to 45.0.0 The following sniffs are failing and were disabled: * MediaWiki.Usage.NullableType.ExplicitNullableTypes Change-Id: Iad9e1104f8564a1998cfa6c4807b50e318f3bbe6 --- .phpcs.xml | 1 + composer.json | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.phpcs.xml b/.phpcs.xml index 53fb7b9..43207b9 100644 --- a/.phpcs.xml +++ b/.phpcs.xml @@ -6,6 +6,7 @@ <exclude name="MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected" /> <exclude name="MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic" /> <exclude name="MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName" /> + <exclude name="MediaWiki.Usage.NullableType.ExplicitNullableTypes" /> <exclude name="MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment" /> <exclude name="PSR12.Properties.ConstantVisibility.NotFound" /> <exclude name="Squiz.Classes.ValidClassName.NotCamelCaps" /> diff --git a/composer.json b/composer.json index 44781c9..48dc45d 100644 --- a/composer.json +++ b/composer.json @@ -35,7 +35,7 @@ "whichbrowser/parser": "^2.1" }, "require-dev": { - "mediawiki/mediawiki-codesniffer": "44.0.0", + "mediawiki/mediawiki-codesniffer": "45.0.0", "mediawiki/mediawiki-phan-config": "0.14.0", "mediawiki/minus-x": "1.1.3", "php-parallel-lint/php-console-highlighter": "1.0.0", -- 2.39.2 --- end ---