This run took 32 seconds.
From 67fb745901d83e6193981cd152cb02a2e9a03146 Mon Sep 17 00:00:00 2001 From: libraryupgrader <tools.libraryupgrader@tools.wmflabs.org> Date: Wed, 26 Mar 2025 02:47:13 +0000 Subject: [PATCH] build: Updating dependencies MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit composer: * mediawiki/mediawiki-phan-config: 0.14.0 → 0.15.1 * mediawiki/mediawiki-codesniffer: 45.0.0 → 46.0.0 npm: * cross-spawn: 7.0.3 → 7.0.6 * https://github.com/advisories/GHSA-3xgq-45jj-v275 Change-Id: Ibc18136d9e1bf0aa1266537de5ee9cb207f5a75e --- composer.json | 4 ++-- package-lock.json | 12 ++++++------ 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/composer.json b/composer.json index 80730d8..8e66e51 100644 --- a/composer.json +++ b/composer.json @@ -1,7 +1,7 @@ { "require-dev": { - "mediawiki/mediawiki-codesniffer": "45.0.0", - "mediawiki/mediawiki-phan-config": "0.14.0", + "mediawiki/mediawiki-codesniffer": "46.0.0", + "mediawiki/mediawiki-phan-config": "0.15.1", "mediawiki/minus-x": "1.1.3", "php-parallel-lint/php-console-highlighter": "1.0.0", "php-parallel-lint/php-parallel-lint": "1.4.0" diff --git a/package-lock.json b/package-lock.json index 98cfe1a..bb13059 100644 --- a/package-lock.json +++ b/package-lock.json @@ -801,9 +801,9 @@ } }, "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dev": true, "dependencies": { "path-key": "^3.1.0", @@ -4217,9 +4217,9 @@ } }, "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dev": true, "requires": { "path-key": "^3.1.0", -- 2.39.2
$ date --- stdout --- Wed Mar 26 02:46:45 UTC 2025 --- end --- $ git clone file:///srv/git/mediawiki-extensions-QuizGame.git repo --depth=1 -b master --- 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/master --- stdout --- 56e62bb34064fd5dbdfb80aae9f58b71b6452b59 refs/heads/master --- end --- $ /usr/bin/npm audit --json --- stdout --- { "auditReportVersion": 2, "vulnerabilities": { "cross-spawn": { "name": "cross-spawn", "severity": "high", "isDirect": false, "via": [ { "source": 1100563, "name": "cross-spawn", "dependency": "cross-spawn", "title": "Regular Expression Denial of Service (ReDoS) in cross-spawn", "url": "https://github.com/advisories/GHSA-3xgq-45jj-v275", "severity": "high", "cwe": [ "CWE-1333" ], "cvss": { "score": 7.5, "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H" }, "range": ">=7.0.0 <7.0.5" } ], "effects": [], "range": "7.0.0 - 7.0.4", "nodes": [ "node_modules/cross-spawn" ], "fixAvailable": true } }, "metadata": { "vulnerabilities": { "info": 0, "low": 0, "moderate": 0, "high": 1, "critical": 0, "total": 1 }, "dependencies": { "prod": 1, "dev": 309, "optional": 0, "peer": 1, "peerOptional": 0, "total": 309 } } } --- 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: 38 installs, 0 updates, 0 removals - Locking composer/pcre (3.3.2) - Locking composer/semver (3.4.3) - Locking composer/spdx-licenses (1.5.8) - Locking composer/xdebug-handler (3.0.5) - Locking dealerdirect/phpcodesniffer-composer-installer (v1.0.0) - Locking doctrine/deprecations (1.1.4) - Locking felixfbecker/advanced-json-rpc (v3.2.1) - Locking mediawiki/mediawiki-codesniffer (v45.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 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.12) - Locking phpdocumentor/reflection-common (2.2.0) - Locking phpdocumentor/reflection-docblock (5.6.1) - Locking phpdocumentor/type-resolver (1.10.0) - Locking phpstan/phpdoc-parser (2.1.0) - Locking psr/container (2.0.2) - Locking psr/log (3.0.2) - Locking sabre/event (5.1.7) - Locking squizlabs/php_codesniffer (3.10.3) - Locking symfony/console (v7.2.1) - Locking symfony/deprecation-contracts (v3.5.1) - 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-php80 (v1.31.0) - Locking symfony/service-contracts (v3.5.1) - Locking symfony/string (v7.2.0) - Locking tysonandre/var_representation_polyfill (0.1.3) - Locking webmozart/assert (1.11.0) Writing lock file Installing dependencies from lock file (including require-dev) Package operations: 38 installs, 0 updates, 0 removals 0 [>---------------------------] 0 [->--------------------------] - Installing squizlabs/php_codesniffer (3.10.3): Extracting archive - Installing dealerdirect/phpcodesniffer-composer-installer (v1.0.0): Extracting archive - Installing composer/pcre (3.3.2): Extracting archive - Installing symfony/polyfill-php80 (v1.31.0): Extracting archive - Installing phpcsstandards/phpcsutils (1.0.12): Extracting archive - Installing phpcsstandards/phpcsextra (1.2.1): Extracting archive - Installing symfony/polyfill-mbstring (v1.31.0): Extracting archive - Installing composer/spdx-licenses (1.5.8): Extracting archive - Installing composer/semver (3.4.3): Extracting archive - Installing mediawiki/mediawiki-codesniffer (v45.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 (v7.2.0): Extracting archive - Installing symfony/deprecation-contracts (v3.5.1): Extracting archive - Installing psr/container (2.0.2): Extracting archive - Installing symfony/service-contracts (v3.5.1): Extracting archive - Installing symfony/console (v7.2.1): 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 (2.1.0): Extracting archive - Installing phpdocumentor/reflection-common (2.2.0): Extracting archive - Installing doctrine/deprecations (1.1.4): Extracting archive - Installing phpdocumentor/type-resolver (1.10.0): Extracting archive - Installing phpdocumentor/reflection-docblock (5.6.1): Extracting archive - Installing felixfbecker/advanced-json-rpc (v3.2.1): Extracting archive - Installing psr/log (3.0.2): 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 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 0/36 [>---------------------------] 0% 20/36 [===============>------------] 55% 29/36 [======================>-----] 80% 36/36 [============================] 100% Generating autoload files 16 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-phan-config from 0.14.0 -> 0.15.1 Upgrading c:mediawiki/mediawiki-codesniffer from 45.0.0 -> 46.0.0 $ /usr/bin/composer update --- stderr --- Loading composer repositories with package information Updating dependencies Lock file operations: 0 installs, 5 updates, 0 removals - Upgrading mediawiki/mediawiki-codesniffer (v45.0.0 => v46.0.0) - Upgrading mediawiki/mediawiki-phan-config (0.14.0 => 0.15.1) - Upgrading mediawiki/phan-taint-check-plugin (6.0.0 => 6.1.0) - Upgrading phan/phan (5.4.3 => 5.4.5) - Upgrading squizlabs/php_codesniffer (3.10.3 => 3.11.3) Writing lock file Installing dependencies from lock file (including require-dev) Package operations: 0 installs, 5 updates, 0 removals 0 [>---------------------------] 0 [->--------------------------] - Upgrading squizlabs/php_codesniffer (3.10.3 => 3.11.3): Extracting archive - Upgrading mediawiki/mediawiki-codesniffer (v45.0.0 => v46.0.0): Extracting archive - Upgrading phan/phan (5.4.3 => 5.4.5): Extracting archive - Upgrading mediawiki/phan-taint-check-plugin (6.0.0 => 6.1.0): Extracting archive - Upgrading mediawiki/mediawiki-phan-config (0.14.0 => 0.15.1): Extracting archive 0/5 [>---------------------------] 0% 3/5 [================>-----------] 60% 4/5 [======================>-----] 80% 5/5 [============================] 100% Generating autoload files 16 packages you are using are looking for funding. Use the `composer fund` command to find out more! No security vulnerability advisories found --- stdout --- PHP CodeSniffer Config installed_paths set to ../../mediawiki/mediawiki-codesniffer,../../phpcsstandards/phpcsextra,../../phpcsstandards/phpcsutils --- end --- Previously failing phpcs rules: {'Generic.Files.LineLength.TooLong', 'MediaWiki.Files.ClassMatchesFilename.NotMatch', 'MediaWiki.Commenting.FunctionComment.MissingDocumentationPrivate', 'MediaWiki.Commenting.FunctionComment.WrongStyle', 'MediaWiki.Commenting.PropertyDocumentation.MissingDocumentationProtected', 'MediaWiki.Usage.DbrQueryUsage.DbrQueryFound', 'MediaWiki.Usage.ExtendClassUsage.FunctionConfigUsage', 'MediaWiki.Commenting.FunctionComment.MissingReturn', 'MediaWiki.Commenting.PropertyDocumentation.MissingDocumentationPublic', 'MediaWiki.Commenting.PropertyDocumentation.WrongStyle', 'MediaWiki.Commenting.FunctionComment.MissingParamTag', 'MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment', 'MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic'} $ vendor/bin/phpcs --report=json --- stdout --- {"totals":{"errors":49,"warnings":104,"fixable":0},"files":{"\/src\/repo\/maintenance\/migrateOldQuizGameUserViewUserColumnsToActor.php":{"errors":0,"warnings":1,"messages":[{"message":"Line exceeds 120 characters; contains 135 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":56,"column":135}]},"\/src\/repo\/includes\/QuizGame.alias.php":{"errors":0,"warnings":2,"messages":[{"message":"Line exceeds 120 characters; contains 133 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":23,"column":55},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":23,"column":55}]},"\/src\/repo\/includes\/upload\/QuizFileUpload.class.php":{"errors":6,"warnings":0,"messages":[{"message":"Class name 'QuizFileUpload' does not match filename 'QuizFileUpload.class.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":7,"column":1},{"message":"Doc comment for parameter \"$request\" missing","source":"MediaWiki.Commenting.FunctionComment.MissingParamTag","severity":5,"fixable":false,"type":"ERROR","line":8,"column":5},{"message":"Doc comment for parameter \"$type\" missing","source":"MediaWiki.Commenting.FunctionComment.MissingParamTag","severity":5,"fixable":false,"type":"ERROR","line":8,"column":5},{"message":"Missing return type or @return tag in function comment","source":"MediaWiki.Commenting.FunctionComment.MissingReturn","severity":5,"fixable":false,"type":"ERROR","line":10,"column":6},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":17,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":29,"column":12}]},"\/src\/repo\/maintenance\/migrateOldQuizGameAnswersUserColumnsToActor.php":{"errors":0,"warnings":1,"messages":[{"message":"Line exceeds 120 characters; contains 132 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":56,"column":132}]},"\/src\/repo\/maintenance\/migrateOldQuizGameQuestionsUserColumnsToActor.php":{"errors":0,"warnings":1,"messages":[{"message":"Line exceeds 120 characters; contains 132 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":56,"column":132}]},"\/src\/repo\/.phan\/config.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":8,"column":14},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":17,"column":19}]},"\/src\/repo\/includes\/upload\/QuizFileUploadFromUrl.php":{"errors":5,"warnings":0,"messages":[{"message":"Doc comment for parameter \"$request\" missing","source":"MediaWiki.Commenting.FunctionComment.MissingParamTag","severity":5,"fixable":false,"type":"ERROR","line":6,"column":5},{"message":"Doc comment for parameter \"$type\" missing","source":"MediaWiki.Commenting.FunctionComment.MissingParamTag","severity":5,"fixable":false,"type":"ERROR","line":6,"column":5},{"message":"Missing return type or @return tag in function comment","source":"MediaWiki.Commenting.FunctionComment.MissingReturn","severity":5,"fixable":false,"type":"ERROR","line":8,"column":6},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":15,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":36,"column":12}]},"\/src\/repo\/includes\/api\/ApiQuizGameVote.php":{"errors":6,"warnings":3,"messages":[{"message":"Doc comment for parameter \"$query\" missing","source":"MediaWiki.Commenting.FunctionComment.MissingParamTag","severity":5,"fixable":false,"type":"ERROR","line":13,"column":5},{"message":"Doc comment for parameter \"$moduleName\" missing","source":"MediaWiki.Commenting.FunctionComment.MissingParamTag","severity":5,"fixable":false,"type":"ERROR","line":13,"column":5},{"message":"Missing return type or @return tag in function comment","source":"MediaWiki.Commenting.FunctionComment.MissingReturn","severity":5,"fixable":false,"type":"ERROR","line":22,"column":6},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":27,"column":38},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":28,"column":30},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":118,"column":65},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":169,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":173,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":214,"column":12}]},"\/src\/repo\/includes\/specials\/SpecialQuizRecalcStats.php":{"errors":1,"warnings":0,"messages":[{"message":"Class name 'QuizRecalcStats' does not match filename 'SpecialQuizRecalcStats.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":5,"column":1}]},"\/src\/repo\/includes\/upload\/QuestionGameUploadForm.class.php":{"errors":10,"warnings":6,"messages":[{"message":"Class name 'QuestionGameUploadForm' does not match filename 'QuestionGameUploadForm.class.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":3,"column":1},{"message":"Missing class property doc comment","source":"MediaWiki.Commenting.PropertyDocumentation.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":4,"column":15},{"message":"Missing class property doc comment","source":"MediaWiki.Commenting.PropertyDocumentation.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":5,"column":15},{"message":"Missing class property doc comment","source":"MediaWiki.Commenting.PropertyDocumentation.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":6,"column":15},{"message":"Missing class property doc comment","source":"MediaWiki.Commenting.PropertyDocumentation.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":7,"column":15},{"message":"Missing class property doc comment","source":"MediaWiki.Commenting.PropertyDocumentation.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":8,"column":15},{"message":"Missing class property doc comment","source":"MediaWiki.Commenting.PropertyDocumentation.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":9,"column":15},{"message":"Missing class property doc comment","source":"MediaWiki.Commenting.PropertyDocumentation.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":11,"column":15},{"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":44,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":82,"column":43},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":83,"column":31},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":84,"column":32},{"message":"Line exceeds 120 characters; contains 126 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":102,"column":1},{"message":"Line exceeds 120 characters; contains 124 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":188,"column":36},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":188,"column":36}]},"\/src\/repo\/includes\/QuizGameHooks.php":{"errors":0,"warnings":15,"messages":[{"message":"Line exceeds 120 characters; contains 122 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":106,"column":122},{"message":"Line exceeds 120 characters; contains 128 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":109,"column":128},{"message":"Line exceeds 120 characters; contains 132 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":123,"column":132},{"message":"Line exceeds 120 characters; contains 128 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":124,"column":128},{"message":"Line exceeds 120 characters; contains 134 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":125,"column":134},{"message":"Line exceeds 120 characters; contains 124 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":130,"column":124},{"message":"Line exceeds 120 characters; contains 130 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":133,"column":130},{"message":"Line exceeds 120 characters; contains 134 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":147,"column":134},{"message":"Line exceeds 120 characters; contains 130 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":148,"column":130},{"message":"Line exceeds 120 characters; contains 136 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":149,"column":136},{"message":"Line exceeds 120 characters; contains 126 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":154,"column":126},{"message":"Line exceeds 120 characters; contains 132 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":157,"column":132},{"message":"Line exceeds 120 characters; contains 136 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":171,"column":136},{"message":"Line exceeds 120 characters; contains 132 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":172,"column":132},{"message":"Line exceeds 120 characters; contains 138 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":173,"column":138}]},"\/src\/repo\/includes\/api\/ApiQuizGame.php":{"errors":5,"warnings":12,"messages":[{"message":"Doc comment for parameter \"$query\" missing","source":"MediaWiki.Commenting.FunctionComment.MissingParamTag","severity":5,"fixable":false,"type":"ERROR","line":14,"column":5},{"message":"Doc comment for parameter \"$moduleName\" missing","source":"MediaWiki.Commenting.FunctionComment.MissingParamTag","severity":5,"fixable":false,"type":"ERROR","line":14,"column":5},{"message":"Should use function $this->getConfig()->get() rather than global $wgQuizLogs","source":"MediaWiki.Usage.ExtendClassUsage.FunctionConfigUsage","severity":5,"fixable":false,"type":"WARNING","line":25,"column":16},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":30,"column":42},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":31,"column":50},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":32,"column":30},{"message":"Line exceeds 120 characters; contains 175 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":92,"column":1},{"message":"Line exceeds 120 characters; contains 142 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":96,"column":1},{"message":"Line exceeds 120 characters; contains 175 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":125,"column":1},{"message":"Line exceeds 120 characters; contains 142 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":129,"column":1},{"message":"Line exceeds 120 characters; contains 150 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":169,"column":150},{"message":"Line exceeds 120 characters; contains 146 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":171,"column":146},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":235,"column":11},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":278,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":282,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":323,"column":12},{"message":"Line exceeds 120 characters; contains 121 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":325,"column":121}]},"\/src\/repo\/includes\/specials\/SpecialQuizLeaderboard.php":{"errors":1,"warnings":3,"messages":[{"message":"Class name 'QuizLeaderboard' does not match filename 'SpecialQuizLeaderboard.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":5,"column":1},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":55,"column":52},{"message":"Line exceeds 120 characters; contains 121 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":170,"column":121},{"message":"Line exceeds 120 characters; contains 123 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":173,"column":123}]},"\/src\/repo\/includes\/specials\/SpecialQuestionGameUpload.php":{"errors":2,"warnings":7,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":26,"column":12},{"message":"Line exceeds 120 characters; contains 133 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":63,"column":42},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":63,"column":42},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":68,"column":75},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":70,"column":64},{"message":"Doc comment for parameter \"$par\" missing","source":"MediaWiki.Commenting.FunctionComment.MissingParamTag","severity":5,"fixable":false,"type":"ERROR","line":84,"column":5},{"message":"Line exceeds 120 characters; contains 131 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":268,"column":131},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":284,"column":30},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":285,"column":24}]},"\/src\/repo\/includes\/specials\/SpecialViewQuizzes.php":{"errors":6,"warnings":3,"messages":[{"message":"Class name 'ViewQuizzes' does not match filename 'SpecialViewQuizzes.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":5,"column":1},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":44,"column":26},{"message":"Line exceeds 120 characters; contains 122 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":159,"column":122},{"message":"Line exceeds 120 characters; contains 129 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":161,"column":129},{"message":"Doc comment for parameter \"$date1\" missing","source":"MediaWiki.Commenting.FunctionComment.MissingParamTag","severity":5,"fixable":false,"type":"ERROR","line":241,"column":5},{"message":"Doc comment for parameter \"$date2\" missing","source":"MediaWiki.Commenting.FunctionComment.MissingParamTag","severity":5,"fixable":false,"type":"ERROR","line":241,"column":5},{"message":"Missing return type or @return tag in function comment","source":"MediaWiki.Commenting.FunctionComment.MissingReturn","severity":5,"fixable":false,"type":"ERROR","line":244,"column":6},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPrivate","severity":5,"fixable":false,"type":"ERROR","line":260,"column":20},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPrivate","severity":5,"fixable":false,"type":"ERROR","line":271,"column":20}]},"\/src\/repo\/includes\/specials\/SpecialQuizGameHome.php":{"errors":7,"warnings":48,"messages":[{"message":"Class name 'QuizGameHome' does not match filename 'SpecialQuizGameHome.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":17,"column":1},{"message":"You must use \"\/**\" style comments for a class property comment","source":"MediaWiki.Commenting.PropertyDocumentation.WrongStyle","severity":5,"fixable":false,"type":"ERROR","line":20,"column":19},{"message":"Missing class property doc comment","source":"MediaWiki.Commenting.PropertyDocumentation.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":21,"column":19},{"message":"Missing class property doc comment","source":"MediaWiki.Commenting.PropertyDocumentation.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":22,"column":19},{"message":"Line exceeds 120 characters; contains 135 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":198,"column":135},{"message":"Call $dbr->select() wrapper instead of $dbr->query()","source":"MediaWiki.Usage.DbrQueryUsage.DbrQueryFound","severity":5,"fixable":false,"type":"WARNING","line":199,"column":20},{"message":"Line exceeds 120 characters; contains 139 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":209,"column":139},{"message":"Call $dbr->select() wrapper instead of $dbr->query()","source":"MediaWiki.Usage.DbrQueryUsage.DbrQueryFound","severity":5,"fixable":false,"type":"WARNING","line":210,"column":24},{"message":"Line exceeds 120 characters; contains 138 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":258,"column":138},{"message":"Line exceeds 120 characters; contains 129 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":307,"column":129},{"message":"Line exceeds 120 characters; contains 122 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":351,"column":122},{"message":"Line exceeds 120 characters; contains 134 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":394,"column":134},{"message":"Line exceeds 120 characters; contains 130 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":443,"column":130},{"message":"Should use function $this->getConfig()->get() rather than global $wgExtensionAssetsPath","source":"MediaWiki.Usage.ExtendClassUsage.FunctionConfigUsage","severity":5,"fixable":false,"type":"WARNING","line":598,"column":16},{"message":"Should use function $this->getConfig()->get() rather than global $wgQuizID","source":"MediaWiki.Usage.ExtendClassUsage.FunctionConfigUsage","severity":5,"fixable":false,"type":"WARNING","line":598,"column":40},{"message":"Line exceeds 120 characters; contains 132 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":635,"column":132},{"message":"Line exceeds 120 characters; contains 132 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":649,"column":132},{"message":"Should use function $this->getConfig()->get() rather than global $wgRightsText","source":"MediaWiki.Usage.ExtendClassUsage.FunctionConfigUsage","severity":5,"fixable":false,"type":"WARNING","line":686,"column":16},{"message":"Line exceeds 120 characters; contains 148 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":711,"column":148},{"message":"Line exceeds 120 characters; contains 123 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":736,"column":1},{"message":"Line exceeds 120 characters; contains 123 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":740,"column":1},{"message":"Line exceeds 120 characters; contains 127 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":744,"column":1},{"message":"Line exceeds 120 characters; contains 128 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":758,"column":122},{"message":"Line exceeds 120 characters; contains 141 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":762,"column":136},{"message":"Line exceeds 120 characters; contains 140 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":764,"column":135},{"message":"Line exceeds 120 characters; contains 195 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":773,"column":133},{"message":"Line exceeds 120 characters; contains 176 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":774,"column":176},{"message":"Line exceeds 120 characters; contains 122 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":775,"column":116},{"message":"Missing return type or @return tag in function comment","source":"MediaWiki.Commenting.FunctionComment.MissingReturn","severity":5,"fixable":false,"type":"ERROR","line":802,"column":6},{"message":"Missing return type or @return tag in function comment","source":"MediaWiki.Commenting.FunctionComment.MissingReturn","severity":5,"fixable":false,"type":"ERROR","line":837,"column":6},{"message":"Should use function $this->getConfig()->get() rather than global $wgExtensionAssetsPath","source":"MediaWiki.Usage.ExtendClassUsage.FunctionConfigUsage","severity":5,"fixable":false,"type":"WARNING","line":839,"column":16},{"message":"Should use function $this->getConfig()->get() rather than global $wgQuizID","source":"MediaWiki.Usage.ExtendClassUsage.FunctionConfigUsage","severity":5,"fixable":false,"type":"WARNING","line":891,"column":16},{"message":"Should use function $this->getConfig()->get() rather than global $wgUseEditButtonFloat","source":"MediaWiki.Usage.ExtendClassUsage.FunctionConfigUsage","severity":5,"fixable":false,"type":"WARNING","line":948,"column":16},{"message":"Line exceeds 120 characters; contains 137 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":1000,"column":132},{"message":"Line exceeds 120 characters; contains 199 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":1037,"column":199},{"message":"Line exceeds 120 characters; contains 193 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":1067,"column":185},{"message":"Should use function $this->getConfig()->get() rather than global $wgUserStatsPointValues","source":"MediaWiki.Usage.ExtendClassUsage.FunctionConfigUsage","severity":5,"fixable":false,"type":"WARNING","line":1081,"column":20},{"message":"Line exceeds 120 characters; contains 133 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":1107,"column":128},{"message":"Line exceeds 120 characters; contains 134 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":1117,"column":134},{"message":"Line exceeds 120 characters; contains 162 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":1129,"column":162},{"message":"Line exceeds 120 characters; contains 133 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":1171,"column":127},{"message":"Line exceeds 120 characters; contains 214 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":1173,"column":206},{"message":"Line exceeds 120 characters; contains 132 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":1174,"column":124},{"message":"Line exceeds 120 characters; contains 133 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":1194,"column":130},{"message":"Line exceeds 120 characters; contains 123 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":1221,"column":1},{"message":"Line exceeds 120 characters; contains 132 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":1235,"column":129},{"message":"You must use \"\/**\" style comments for a function comment","source":"MediaWiki.Commenting.FunctionComment.WrongStyle","severity":5,"fixable":false,"type":"ERROR","line":1260,"column":13},{"message":"Should use function $this->getConfig()->get() rather than global $wgQuizLogs","source":"MediaWiki.Usage.ExtendClassUsage.FunctionConfigUsage","severity":5,"fixable":false,"type":"WARNING","line":1261,"column":16},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":1282,"column":54},{"message":"Line exceeds 120 characters; contains 141 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":1303,"column":100},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":1303,"column":100},{"message":"Line exceeds 120 characters; contains 133 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":1335,"column":133},{"message":"Should use function $this->getConfig()->get() rather than global $wgCreateQuizThresholds","source":"MediaWiki.Usage.ExtendClassUsage.FunctionConfigUsage","severity":5,"fixable":false,"type":"WARNING","line":1339,"column":16},{"message":"Line exceeds 120 characters; contains 131 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":1427,"column":129},{"message":"Line exceeds 120 characters; contains 123 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":1439,"column":119}]}}} --- end --- PHPCS run failed $ vendor/bin/phpcs --report=json --- stdout --- {"totals":{"errors":49,"warnings":104,"fixable":0},"files":{"\/src\/repo\/.phan\/config.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":8,"column":14},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":17,"column":19}]},"\/src\/repo\/maintenance\/migrateOldQuizGameQuestionsUserColumnsToActor.php":{"errors":0,"warnings":1,"messages":[{"message":"Line exceeds 120 characters; contains 132 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":56,"column":132}]},"\/src\/repo\/maintenance\/migrateOldQuizGameAnswersUserColumnsToActor.php":{"errors":0,"warnings":1,"messages":[{"message":"Line exceeds 120 characters; contains 132 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":56,"column":132}]},"\/src\/repo\/includes\/QuizGame.alias.php":{"errors":0,"warnings":2,"messages":[{"message":"Line exceeds 120 characters; contains 133 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":23,"column":55},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":23,"column":55}]},"\/src\/repo\/maintenance\/migrateOldQuizGameUserViewUserColumnsToActor.php":{"errors":0,"warnings":1,"messages":[{"message":"Line exceeds 120 characters; contains 135 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":56,"column":135}]},"\/src\/repo\/includes\/upload\/QuizFileUpload.class.php":{"errors":6,"warnings":0,"messages":[{"message":"Class name 'QuizFileUpload' does not match filename 'QuizFileUpload.class.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":7,"column":1},{"message":"Doc comment for parameter \"$request\" missing","source":"MediaWiki.Commenting.FunctionComment.MissingParamTag","severity":5,"fixable":false,"type":"ERROR","line":8,"column":5},{"message":"Doc comment for parameter \"$type\" missing","source":"MediaWiki.Commenting.FunctionComment.MissingParamTag","severity":5,"fixable":false,"type":"ERROR","line":8,"column":5},{"message":"Missing return type or @return tag in function comment","source":"MediaWiki.Commenting.FunctionComment.MissingReturn","severity":5,"fixable":false,"type":"ERROR","line":10,"column":6},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":17,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":29,"column":12}]},"\/src\/repo\/includes\/upload\/QuizFileUploadFromUrl.php":{"errors":5,"warnings":0,"messages":[{"message":"Doc comment for parameter \"$request\" missing","source":"MediaWiki.Commenting.FunctionComment.MissingParamTag","severity":5,"fixable":false,"type":"ERROR","line":6,"column":5},{"message":"Doc comment for parameter \"$type\" missing","source":"MediaWiki.Commenting.FunctionComment.MissingParamTag","severity":5,"fixable":false,"type":"ERROR","line":6,"column":5},{"message":"Missing return type or @return tag in function comment","source":"MediaWiki.Commenting.FunctionComment.MissingReturn","severity":5,"fixable":false,"type":"ERROR","line":8,"column":6},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":15,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":36,"column":12}]},"\/src\/repo\/includes\/specials\/SpecialQuizRecalcStats.php":{"errors":1,"warnings":0,"messages":[{"message":"Class name 'QuizRecalcStats' does not match filename 'SpecialQuizRecalcStats.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":5,"column":1}]},"\/src\/repo\/includes\/specials\/SpecialQuizLeaderboard.php":{"errors":1,"warnings":3,"messages":[{"message":"Class name 'QuizLeaderboard' does not match filename 'SpecialQuizLeaderboard.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":5,"column":1},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":55,"column":52},{"message":"Line exceeds 120 characters; contains 121 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":170,"column":121},{"message":"Line exceeds 120 characters; contains 123 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":173,"column":123}]},"\/src\/repo\/includes\/QuizGameHooks.php":{"errors":0,"warnings":15,"messages":[{"message":"Line exceeds 120 characters; contains 122 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":106,"column":122},{"message":"Line exceeds 120 characters; contains 128 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":109,"column":128},{"message":"Line exceeds 120 characters; contains 132 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":123,"column":132},{"message":"Line exceeds 120 characters; contains 128 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":124,"column":128},{"message":"Line exceeds 120 characters; contains 134 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":125,"column":134},{"message":"Line exceeds 120 characters; contains 124 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":130,"column":124},{"message":"Line exceeds 120 characters; contains 130 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":133,"column":130},{"message":"Line exceeds 120 characters; contains 134 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":147,"column":134},{"message":"Line exceeds 120 characters; contains 130 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":148,"column":130},{"message":"Line exceeds 120 characters; contains 136 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":149,"column":136},{"message":"Line exceeds 120 characters; contains 126 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":154,"column":126},{"message":"Line exceeds 120 characters; contains 132 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":157,"column":132},{"message":"Line exceeds 120 characters; contains 136 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":171,"column":136},{"message":"Line exceeds 120 characters; contains 132 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":172,"column":132},{"message":"Line exceeds 120 characters; contains 138 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":173,"column":138}]},"\/src\/repo\/includes\/api\/ApiQuizGameVote.php":{"errors":6,"warnings":3,"messages":[{"message":"Doc comment for parameter \"$query\" missing","source":"MediaWiki.Commenting.FunctionComment.MissingParamTag","severity":5,"fixable":false,"type":"ERROR","line":13,"column":5},{"message":"Doc comment for parameter \"$moduleName\" missing","source":"MediaWiki.Commenting.FunctionComment.MissingParamTag","severity":5,"fixable":false,"type":"ERROR","line":13,"column":5},{"message":"Missing return type or @return tag in function comment","source":"MediaWiki.Commenting.FunctionComment.MissingReturn","severity":5,"fixable":false,"type":"ERROR","line":22,"column":6},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":27,"column":38},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":28,"column":30},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":118,"column":65},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":169,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":173,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":214,"column":12}]},"\/src\/repo\/includes\/upload\/QuestionGameUploadForm.class.php":{"errors":10,"warnings":6,"messages":[{"message":"Class name 'QuestionGameUploadForm' does not match filename 'QuestionGameUploadForm.class.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":3,"column":1},{"message":"Missing class property doc comment","source":"MediaWiki.Commenting.PropertyDocumentation.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":4,"column":15},{"message":"Missing class property doc comment","source":"MediaWiki.Commenting.PropertyDocumentation.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":5,"column":15},{"message":"Missing class property doc comment","source":"MediaWiki.Commenting.PropertyDocumentation.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":6,"column":15},{"message":"Missing class property doc comment","source":"MediaWiki.Commenting.PropertyDocumentation.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":7,"column":15},{"message":"Missing class property doc comment","source":"MediaWiki.Commenting.PropertyDocumentation.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":8,"column":15},{"message":"Missing class property doc comment","source":"MediaWiki.Commenting.PropertyDocumentation.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":9,"column":15},{"message":"Missing class property doc comment","source":"MediaWiki.Commenting.PropertyDocumentation.MissingDocumentationProtected","severity":5,"fixable":false,"type":"ERROR","line":11,"column":15},{"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":44,"column":12},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":82,"column":43},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":83,"column":31},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":84,"column":32},{"message":"Line exceeds 120 characters; contains 126 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":102,"column":1},{"message":"Line exceeds 120 characters; contains 124 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":188,"column":36},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":188,"column":36}]},"\/src\/repo\/includes\/api\/ApiQuizGame.php":{"errors":5,"warnings":12,"messages":[{"message":"Doc comment for parameter \"$query\" missing","source":"MediaWiki.Commenting.FunctionComment.MissingParamTag","severity":5,"fixable":false,"type":"ERROR","line":14,"column":5},{"message":"Doc comment for parameter \"$moduleName\" missing","source":"MediaWiki.Commenting.FunctionComment.MissingParamTag","severity":5,"fixable":false,"type":"ERROR","line":14,"column":5},{"message":"Should use function $this->getConfig()->get() rather than global $wgQuizLogs","source":"MediaWiki.Usage.ExtendClassUsage.FunctionConfigUsage","severity":5,"fixable":false,"type":"WARNING","line":25,"column":16},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":30,"column":42},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":31,"column":50},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":32,"column":30},{"message":"Line exceeds 120 characters; contains 175 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":92,"column":1},{"message":"Line exceeds 120 characters; contains 142 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":96,"column":1},{"message":"Line exceeds 120 characters; contains 175 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":125,"column":1},{"message":"Line exceeds 120 characters; contains 142 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":129,"column":1},{"message":"Line exceeds 120 characters; contains 150 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":169,"column":150},{"message":"Line exceeds 120 characters; contains 146 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":171,"column":146},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":235,"column":11},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":278,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":282,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":323,"column":12},{"message":"Line exceeds 120 characters; contains 121 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":325,"column":121}]},"\/src\/repo\/includes\/specials\/SpecialQuestionGameUpload.php":{"errors":2,"warnings":7,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":26,"column":12},{"message":"Line exceeds 120 characters; contains 133 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":63,"column":42},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":63,"column":42},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":68,"column":75},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":70,"column":64},{"message":"Doc comment for parameter \"$par\" missing","source":"MediaWiki.Commenting.FunctionComment.MissingParamTag","severity":5,"fixable":false,"type":"ERROR","line":84,"column":5},{"message":"Line exceeds 120 characters; contains 131 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":268,"column":131},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":284,"column":30},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":285,"column":24}]},"\/src\/repo\/includes\/specials\/SpecialViewQuizzes.php":{"errors":6,"warnings":3,"messages":[{"message":"Class name 'ViewQuizzes' does not match filename 'SpecialViewQuizzes.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":5,"column":1},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":44,"column":26},{"message":"Line exceeds 120 characters; contains 122 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":159,"column":122},{"message":"Line exceeds 120 characters; contains 129 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":161,"column":129},{"message":"Doc comment for parameter \"$date1\" missing","source":"MediaWiki.Commenting.FunctionComment.MissingParamTag","severity":5,"fixable":false,"type":"ERROR","line":241,"column":5},{"message":"Doc comment for parameter \"$date2\" missing","source":"MediaWiki.Commenting.FunctionComment.MissingParamTag","severity":5,"fixable":false,"type":"ERROR","line":241,"column":5},{"message":"Missing return type or @return tag in function comment","source":"MediaWiki.Commenting.FunctionComment.MissingReturn","severity":5,"fixable":false,"type":"ERROR","line":244,"column":6},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPrivate","severity":5,"fixable":false,"type":"ERROR","line":260,"column":20},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPrivate","severity":5,"fixable":false,"type":"ERROR","line":271,"column":20}]},"\/src\/repo\/includes\/specials\/SpecialQuizGameHome.php":{"errors":7,"warnings":48,"messages":[{"message":"Class name 'QuizGameHome' does not match filename 'SpecialQuizGameHome.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":17,"column":1},{"message":"You must use \"\/**\" style comments for a class property comment","source":"MediaWiki.Commenting.PropertyDocumentation.WrongStyle","severity":5,"fixable":false,"type":"ERROR","line":20,"column":19},{"message":"Missing class property doc comment","source":"MediaWiki.Commenting.PropertyDocumentation.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":21,"column":19},{"message":"Missing class property doc comment","source":"MediaWiki.Commenting.PropertyDocumentation.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":22,"column":19},{"message":"Line exceeds 120 characters; contains 135 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":198,"column":135},{"message":"Call $dbr->select() wrapper instead of $dbr->query()","source":"MediaWiki.Usage.DbrQueryUsage.DbrQueryFound","severity":5,"fixable":false,"type":"WARNING","line":199,"column":20},{"message":"Line exceeds 120 characters; contains 139 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":209,"column":139},{"message":"Call $dbr->select() wrapper instead of $dbr->query()","source":"MediaWiki.Usage.DbrQueryUsage.DbrQueryFound","severity":5,"fixable":false,"type":"WARNING","line":210,"column":24},{"message":"Line exceeds 120 characters; contains 138 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":258,"column":138},{"message":"Line exceeds 120 characters; contains 129 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":307,"column":129},{"message":"Line exceeds 120 characters; contains 122 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":351,"column":122},{"message":"Line exceeds 120 characters; contains 134 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":394,"column":134},{"message":"Line exceeds 120 characters; contains 130 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":443,"column":130},{"message":"Should use function $this->getConfig()->get() rather than global $wgExtensionAssetsPath","source":"MediaWiki.Usage.ExtendClassUsage.FunctionConfigUsage","severity":5,"fixable":false,"type":"WARNING","line":598,"column":16},{"message":"Should use function $this->getConfig()->get() rather than global $wgQuizID","source":"MediaWiki.Usage.ExtendClassUsage.FunctionConfigUsage","severity":5,"fixable":false,"type":"WARNING","line":598,"column":40},{"message":"Line exceeds 120 characters; contains 132 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":635,"column":132},{"message":"Line exceeds 120 characters; contains 132 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":649,"column":132},{"message":"Should use function $this->getConfig()->get() rather than global $wgRightsText","source":"MediaWiki.Usage.ExtendClassUsage.FunctionConfigUsage","severity":5,"fixable":false,"type":"WARNING","line":686,"column":16},{"message":"Line exceeds 120 characters; contains 148 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":711,"column":148},{"message":"Line exceeds 120 characters; contains 123 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":736,"column":1},{"message":"Line exceeds 120 characters; contains 123 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":740,"column":1},{"message":"Line exceeds 120 characters; contains 127 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":744,"column":1},{"message":"Line exceeds 120 characters; contains 128 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":758,"column":122},{"message":"Line exceeds 120 characters; contains 141 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":762,"column":136},{"message":"Line exceeds 120 characters; contains 140 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":764,"column":135},{"message":"Line exceeds 120 characters; contains 195 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":773,"column":133},{"message":"Line exceeds 120 characters; contains 176 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":774,"column":176},{"message":"Line exceeds 120 characters; contains 122 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":775,"column":116},{"message":"Missing return type or @return tag in function comment","source":"MediaWiki.Commenting.FunctionComment.MissingReturn","severity":5,"fixable":false,"type":"ERROR","line":802,"column":6},{"message":"Missing return type or @return tag in function comment","source":"MediaWiki.Commenting.FunctionComment.MissingReturn","severity":5,"fixable":false,"type":"ERROR","line":837,"column":6},{"message":"Should use function $this->getConfig()->get() rather than global $wgExtensionAssetsPath","source":"MediaWiki.Usage.ExtendClassUsage.FunctionConfigUsage","severity":5,"fixable":false,"type":"WARNING","line":839,"column":16},{"message":"Should use function $this->getConfig()->get() rather than global $wgQuizID","source":"MediaWiki.Usage.ExtendClassUsage.FunctionConfigUsage","severity":5,"fixable":false,"type":"WARNING","line":891,"column":16},{"message":"Should use function $this->getConfig()->get() rather than global $wgUseEditButtonFloat","source":"MediaWiki.Usage.ExtendClassUsage.FunctionConfigUsage","severity":5,"fixable":false,"type":"WARNING","line":948,"column":16},{"message":"Line exceeds 120 characters; contains 137 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":1000,"column":132},{"message":"Line exceeds 120 characters; contains 199 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":1037,"column":199},{"message":"Line exceeds 120 characters; contains 193 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":1067,"column":185},{"message":"Should use function $this->getConfig()->get() rather than global $wgUserStatsPointValues","source":"MediaWiki.Usage.ExtendClassUsage.FunctionConfigUsage","severity":5,"fixable":false,"type":"WARNING","line":1081,"column":20},{"message":"Line exceeds 120 characters; contains 133 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":1107,"column":128},{"message":"Line exceeds 120 characters; contains 134 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":1117,"column":134},{"message":"Line exceeds 120 characters; contains 162 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":1129,"column":162},{"message":"Line exceeds 120 characters; contains 133 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":1171,"column":127},{"message":"Line exceeds 120 characters; contains 214 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":1173,"column":206},{"message":"Line exceeds 120 characters; contains 132 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":1174,"column":124},{"message":"Line exceeds 120 characters; contains 133 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":1194,"column":130},{"message":"Line exceeds 120 characters; contains 123 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":1221,"column":1},{"message":"Line exceeds 120 characters; contains 132 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":1235,"column":129},{"message":"You must use \"\/**\" style comments for a function comment","source":"MediaWiki.Commenting.FunctionComment.WrongStyle","severity":5,"fixable":false,"type":"ERROR","line":1260,"column":13},{"message":"Should use function $this->getConfig()->get() rather than global $wgQuizLogs","source":"MediaWiki.Usage.ExtendClassUsage.FunctionConfigUsage","severity":5,"fixable":false,"type":"WARNING","line":1261,"column":16},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":1282,"column":54},{"message":"Line exceeds 120 characters; contains 141 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":1303,"column":100},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":1303,"column":100},{"message":"Line exceeds 120 characters; contains 133 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":1335,"column":133},{"message":"Should use function $this->getConfig()->get() rather than global $wgCreateQuizThresholds","source":"MediaWiki.Usage.ExtendClassUsage.FunctionConfigUsage","severity":5,"fixable":false,"type":"WARNING","line":1339,"column":16},{"message":"Line exceeds 120 characters; contains 131 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":1427,"column":129},{"message":"Line exceeds 120 characters; contains 123 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":1439,"column":119}]}}} --- end --- $ 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 autoload files 16 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 > minus-x check . > phpcs -sp --cache --- stdout --- PHP 8.2.20 | 10 parallel jobs ................ 16/16 (100%) Checked 16 files in 0.1 seconds No syntax error found MinusX ====== Processing /src/repo... ............................................................. ............................................................. ....................................... All good! ................ 16 / 16 (100%) Time: 159ms; Memory: 8MB --- end --- $ /usr/bin/npm audit --json --- stdout --- { "auditReportVersion": 2, "vulnerabilities": { "cross-spawn": { "name": "cross-spawn", "severity": "high", "isDirect": false, "via": [ { "source": 1100563, "name": "cross-spawn", "dependency": "cross-spawn", "title": "Regular Expression Denial of Service (ReDoS) in cross-spawn", "url": "https://github.com/advisories/GHSA-3xgq-45jj-v275", "severity": "high", "cwe": [ "CWE-1333" ], "cvss": { "score": 7.5, "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H" }, "range": ">=7.0.0 <7.0.5" } ], "effects": [], "range": "7.0.0 - 7.0.4", "nodes": [ "node_modules/cross-spawn" ], "fixAvailable": true } }, "metadata": { "vulnerabilities": { "info": 0, "low": 0, "moderate": 0, "high": 1, "critical": 0, "total": 1 }, "dependencies": { "prod": 1, "dev": 309, "optional": 0, "peer": 1, "peerOptional": 0, "total": 309 } } } --- end --- Attempting to npm audit fix $ /usr/bin/npm audit fix --dry-run --only=dev --json --- stderr --- npm WARN invalid config only="dev" set in command line options npm WARN invalid config Must be one of: null, prod, production --- stdout --- { "added": 309, "removed": 0, "changed": 0, "audited": 310, "funding": 58, "audit": { "auditReportVersion": 2, "vulnerabilities": { "cross-spawn": { "name": "cross-spawn", "severity": "high", "isDirect": false, "via": [ { "source": 1100563, "name": "cross-spawn", "dependency": "cross-spawn", "title": "Regular Expression Denial of Service (ReDoS) in cross-spawn", "url": "https://github.com/advisories/GHSA-3xgq-45jj-v275", "severity": "high", "cwe": [ "CWE-1333" ], "cvss": { "score": 7.5, "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H" }, "range": ">=7.0.0 <7.0.5" } ], "effects": [], "range": "7.0.0 - 7.0.4", "nodes": [ "" ], "fixAvailable": true } }, "metadata": { "vulnerabilities": { "info": 0, "low": 0, "moderate": 0, "high": 1, "critical": 0, "total": 1 }, "dependencies": { "prod": 1, "dev": 309, "optional": 0, "peer": 1, "peerOptional": 0, "total": 309 } } } } --- end --- {"added": 309, "removed": 0, "changed": 0, "audited": 310, "funding": 58, "audit": {"auditReportVersion": 2, "vulnerabilities": {"cross-spawn": {"name": "cross-spawn", "severity": "high", "isDirect": false, "via": [{"source": 1100563, "name": "cross-spawn", "dependency": "cross-spawn", "title": "Regular Expression Denial of Service (ReDoS) in cross-spawn", "url": "https://github.com/advisories/GHSA-3xgq-45jj-v275", "severity": "high", "cwe": ["CWE-1333"], "cvss": {"score": 7.5, "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"}, "range": ">=7.0.0 <7.0.5"}], "effects": [], "range": "7.0.0 - 7.0.4", "nodes": [""], "fixAvailable": true}}, "metadata": {"vulnerabilities": {"info": 0, "low": 0, "moderate": 0, "high": 1, "critical": 0, "total": 1}, "dependencies": {"prod": 1, "dev": 309, "optional": 0, "peer": 1, "peerOptional": 0, "total": 309}}}} $ /usr/bin/npm audit fix --only=dev --- stderr --- npm WARN invalid config only="dev" set in command line options npm WARN invalid config Must be one of: null, prod, production --- stdout --- added 309 packages, and audited 310 packages in 3s 58 packages are looking for funding run `npm fund` for details found 0 vulnerabilities --- end --- Verifying that tests still pass $ /usr/bin/npm ci --- stdout --- added 309 packages, and audited 310 packages in 4s 58 packages are looking for funding run `npm fund` for details found 0 vulnerabilities --- end --- $ /usr/bin/npm test --- stdout --- > test > grunt test Running "eslint:all" (eslint) task /src/repo/resources/js/QuizGame.js 5:1 warning Invalid JSDoc tag name "ingroup" jsdoc/check-tag-names 116:1 warning Missing JSDoc @param "message" type jsdoc/require-param-type 173:2 warning JSDoc @return declaration present but return expression not available in function jsdoc/require-returns-check 327:1 warning This line has a length of 111. Maximum allowed is 100 max-len 333:1 warning This line has a length of 110. Maximum allowed is 100 max-len 448:2 warning Missing JSDoc @return declaration jsdoc/require-returns 610:9 warning 'x' declared on line 597 column 13 is used outside of binding context block-scoped-var 610:16 warning 'x' declared on line 597 column 13 is used outside of binding context block-scoped-var 610:24 warning 'x' declared on line 597 column 13 is used outside of binding context block-scoped-var 611:56 warning 'x' declared on line 597 column 13 is used outside of binding context block-scoped-var /src/repo/resources/js/file-selector.js 5:1 warning This line has a length of 108. Maximum allowed is 100 max-len 8:1 warning Invalid JSDoc tag name "date" jsdoc/check-tag-names 76:2 warning Missing JSDoc @return declaration jsdoc/require-returns 79:1 warning Missing JSDoc @param "action" type jsdoc/require-param-type 89:1 warning This line has a length of 102. Maximum allowed is 100 max-len 138:2 warning Missing JSDoc @return declaration jsdoc/require-returns ✖ 16 problems (0 errors, 16 warnings) Running "banana:all" (banana) task >> 1 message directory checked. Done. --- end --- {"1100563": {"source": 1100563, "name": "cross-spawn", "dependency": "cross-spawn", "title": "Regular Expression Denial of Service (ReDoS) in cross-spawn", "url": "https://github.com/advisories/GHSA-3xgq-45jj-v275", "severity": "high", "cwe": ["CWE-1333"], "cvss": {"score": 7.5, "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"}, "range": ">=7.0.0 <7.0.5"}} Upgrading n:cross-spawn from 7.0.3 -> 7.0.6 $ package-lock-lint package-lock.json --- stdout --- Checking package-lock.json --- end --- build: Updating dependencies composer: * mediawiki/mediawiki-phan-config: 0.14.0 → 0.15.1 * mediawiki/mediawiki-codesniffer: 45.0.0 → 46.0.0 npm: * cross-spawn: 7.0.3 → 7.0.6 * https://github.com/advisories/GHSA-3xgq-45jj-v275 $ git add . --- stdout --- --- end --- $ git commit -F /tmp/tmp8ieyv3uq --- stdout --- [master 67fb745] build: Updating dependencies 2 files changed, 8 insertions(+), 8 deletions(-) --- end --- $ git format-patch HEAD~1 --stdout --- stdout --- From 67fb745901d83e6193981cd152cb02a2e9a03146 Mon Sep 17 00:00:00 2001 From: libraryupgrader <tools.libraryupgrader@tools.wmflabs.org> Date: Wed, 26 Mar 2025 02:47:13 +0000 Subject: [PATCH] build: Updating dependencies MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit composer: * mediawiki/mediawiki-phan-config: 0.14.0 → 0.15.1 * mediawiki/mediawiki-codesniffer: 45.0.0 → 46.0.0 npm: * cross-spawn: 7.0.3 → 7.0.6 * https://github.com/advisories/GHSA-3xgq-45jj-v275 Change-Id: Ibc18136d9e1bf0aa1266537de5ee9cb207f5a75e --- composer.json | 4 ++-- package-lock.json | 12 ++++++------ 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/composer.json b/composer.json index 80730d8..8e66e51 100644 --- a/composer.json +++ b/composer.json @@ -1,7 +1,7 @@ { "require-dev": { - "mediawiki/mediawiki-codesniffer": "45.0.0", - "mediawiki/mediawiki-phan-config": "0.14.0", + "mediawiki/mediawiki-codesniffer": "46.0.0", + "mediawiki/mediawiki-phan-config": "0.15.1", "mediawiki/minus-x": "1.1.3", "php-parallel-lint/php-console-highlighter": "1.0.0", "php-parallel-lint/php-parallel-lint": "1.4.0" diff --git a/package-lock.json b/package-lock.json index 98cfe1a..bb13059 100644 --- a/package-lock.json +++ b/package-lock.json @@ -801,9 +801,9 @@ } }, "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dev": true, "dependencies": { "path-key": "^3.1.0", @@ -4217,9 +4217,9 @@ } }, "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dev": true, "requires": { "path-key": "^3.1.0", -- 2.39.2 --- end ---