This run took 39 seconds.
From 4417bb09e5842c6ad254d8a35186c58bed31d8a1 Mon Sep 17 00:00:00 2001 From: libraryupgrader <tools.libraryupgrader@tools.wmflabs.org> Date: Mon, 10 Feb 2025 02:30:46 +0000 Subject: [PATCH] build: Updating dependencies MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit composer: * mediawiki/mediawiki-codesniffer: 45.0.0 → 46.0.0 * mediawiki/mediawiki-phan-config: 0.14.0 → 0.15.1 npm: * cross-spawn: 7.0.3 → 7.0.6 * https://github.com/advisories/GHSA-3xgq-45jj-v275 Change-Id: Ibd82386be0e6a6a93f81aedadbb9dbbaef112dce --- composer.json | 4 ++-- package-lock.json | 12 ++++++------ 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/composer.json b/composer.json index ddff40f..2522af3 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 3363d00..23117be 100644 --- a/package-lock.json +++ b/package-lock.json @@ -823,9 +823,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", @@ -4249,9 +4249,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 --- Mon Feb 10 02:30:17 UTC 2025 --- end --- $ git clone file:///srv/git/mediawiki-extensions-PollNY.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 --- cd64bd97f7fc3665ff9803c0b3e31116bacdd5af 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": 311, "optional": 0, "peer": 1, "peerOptional": 0, "total": 311 } } } --- 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.0.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.0.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% 35/36 [===========================>] 97% 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-codesniffer from 45.0.0 -> 46.0.0 Upgrading c:mediawiki/mediawiki-phan-config from 0.14.0 -> 0.15.1 $ /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: {'MediaWiki.Commenting.PropertyDocumentation.MissingDocumentationProtected', 'MediaWiki.Files.ClassMatchesFilename.NotMatch', 'Generic.Files.LineLength.TooLong', 'MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment', 'MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic', 'Squiz.Scope.MethodScope.Missing'} $ vendor/bin/phpcs --report=json --- stdout --- {"totals":{"errors":39,"warnings":68,"fixable":0},"files":{"\/src\/repo\/includes\/PollNY.namespaces.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/maintenance\/migrateOldPollNYUserColumnsToActor.php":{"errors":0,"warnings":3,"messages":[{"message":"Line exceeds 120 characters; contains 155 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":20,"column":155},{"message":"Line exceeds 120 characters; contains 185 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":49,"column":185},{"message":"Line exceeds 120 characters; contains 180 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":53,"column":180}]},"\/src\/repo\/includes\/specials\/SpecialRandomPoll.php":{"errors":1,"warnings":0,"messages":[{"message":"Class name 'RandomPoll' does not match filename 'SpecialRandomPoll.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":8,"column":1}]},"\/src\/repo\/includes\/templates\/CreatePoll.template.php":{"errors":2,"warnings":17,"messages":[{"message":"Class name 'CreatePollTemplate' does not match filename 'CreatePoll.template.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":12,"column":1},{"message":"Visibility must be declared on method \"execute\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":14,"column":5},{"message":"Line exceeds 120 characters; contains 128 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":24,"column":121},{"message":"Line exceeds 120 characters; contains 165 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":27,"column":107},{"message":"Line exceeds 120 characters; contains 148 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":29,"column":145},{"message":"Line exceeds 120 characters; contains 225 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":34,"column":222},{"message":"Line exceeds 120 characters; contains 173 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":39,"column":1},{"message":"Line exceeds 120 characters; contains 173 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":40,"column":1},{"message":"Line exceeds 120 characters; contains 190 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":41,"column":1},{"message":"Line exceeds 120 characters; contains 190 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":42,"column":1},{"message":"Line exceeds 120 characters; contains 190 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":43,"column":1},{"message":"Line exceeds 120 characters; contains 190 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":44,"column":1},{"message":"Line exceeds 120 characters; contains 190 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":45,"column":1},{"message":"Line exceeds 120 characters; contains 190 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":46,"column":1},{"message":"Line exceeds 120 characters; contains 190 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":47,"column":1},{"message":"Line exceeds 120 characters; contains 194 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":48,"column":1},{"message":"Line exceeds 120 characters; contains 164 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":57,"column":154},{"message":"Line exceeds 120 characters; contains 160 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":62,"column":147},{"message":"Line exceeds 120 characters; contains 161 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":63,"column":123}]},"\/src\/repo\/.phan\/config.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/includes\/upload\/PollUpload.class.php":{"errors":4,"warnings":0,"messages":[{"message":"Class name 'PollUpload' does not match filename 'PollUpload.class.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":6,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":19,"column":5},{"message":"Visibility must be declared on method \"initializeFromRequest\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":19,"column":5},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":31,"column":12}]},"\/src\/repo\/includes\/PollNY.alias.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/includes\/specials\/SpecialViewPoll.php":{"errors":1,"warnings":0,"messages":[{"message":"Class name 'ViewPoll' does not match filename 'SpecialViewPoll.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":11,"column":1}]},"\/src\/repo\/includes\/api\/ApiPollNY.php":{"errors":8,"warnings":2,"messages":[{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":63,"column":18},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":103,"column":5},{"message":"Visibility must be declared on method \"delete\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":103,"column":5},{"message":"Visibility must be declared on method \"getPollResults\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":118,"column":5},{"message":"Line exceeds 120 characters; contains 185 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":130,"column":185},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":155,"column":5},{"message":"Visibility must be declared on method \"updateStatus\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":155,"column":5},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":169,"column":5},{"message":"Visibility must be declared on method \"vote\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":169,"column":5},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":193,"column":12}]},"\/src\/repo\/includes\/specials\/SpecialPollAjaxUpload.php":{"errors":1,"warnings":4,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":27,"column":12},{"message":"Line exceeds 120 characters; contains 129 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":59,"column":38},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":59,"column":38},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":64,"column":69},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":66,"column":73}]},"\/src\/repo\/includes\/specials\/SpecialCreatePoll.php":{"errors":1,"warnings":1,"messages":[{"message":"Class name 'CreatePoll' does not match filename 'SpecialCreatePoll.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":10,"column":1},{"message":"Line exceeds 120 characters; contains 143 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":129,"column":143}]},"\/src\/repo\/includes\/specials\/SpecialUpdatePoll.php":{"errors":2,"warnings":3,"messages":[{"message":"Class name 'UpdatePoll' does not match filename 'SpecialUpdatePoll.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":5,"column":1},{"message":"Visibility must be declared on method \"displayForm\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":123,"column":5},{"message":"Line exceeds 120 characters; contains 123 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":213,"column":121},{"message":"Line exceeds 120 characters; contains 174 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":222,"column":121},{"message":"Line exceeds 120 characters; contains 208 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":223,"column":202}]},"\/src\/repo\/includes\/upload\/PollAjaxUploadForm.class.php":{"errors":12,"warnings":5,"messages":[{"message":"Class name 'PollAjaxUploadForm' does not match filename 'PollAjaxUploadForm.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":49,"column":5},{"message":"Visibility must be declared on method \"displayForm\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":49,"column":5},{"message":"Visibility must be declared on method \"wrapForm\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":72,"column":5},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":87,"column":43},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":88,"column":31},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":89,"column":32},{"message":"Line exceeds 120 characters; contains 124 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":176,"column":36},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":176,"column":36},{"message":"Visibility must be declared on method \"trySubmit\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":239,"column":5}]},"\/src\/repo\/includes\/Poll.class.php":{"errors":2,"warnings":1,"messages":[{"message":"Class name 'Poll' does not match filename 'Poll.class.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":8,"column":1},{"message":"Line exceeds 120 characters; contains 122 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":21,"column":13},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":406,"column":19}]},"\/src\/repo\/includes\/PollPage.class.php":{"errors":1,"warnings":14,"messages":[{"message":"Class name 'PollPage' does not match filename 'PollPage.class.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":5,"column":1},{"message":"Line exceeds 120 characters; contains 141 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":142,"column":138},{"message":"Line exceeds 120 characters; contains 136 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":191,"column":136},{"message":"Line exceeds 120 characters; contains 148 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":192,"column":148},{"message":"Line exceeds 120 characters; contains 158 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":195,"column":158},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":200,"column":44},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":202,"column":37},{"message":"Line exceeds 120 characters; contains 121 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":232,"column":121},{"message":"Line exceeds 120 characters; contains 121 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":242,"column":121},{"message":"Line exceeds 120 characters; contains 131 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":294,"column":131},{"message":"Line exceeds 120 characters; contains 149 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":339,"column":149},{"message":"Line exceeds 120 characters; contains 122 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":359,"column":122},{"message":"Line exceeds 120 characters; contains 127 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":360,"column":127},{"message":"Line exceeds 120 characters; contains 275 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":388,"column":1},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":394,"column":37}]},"\/src\/repo\/includes\/PollNY.hooks.php":{"errors":3,"warnings":16,"messages":[{"message":"Class name 'PollNYHooks' does not match filename 'PollNY.hooks.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":127,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":194,"column":19},{"message":"Line exceeds 120 characters; contains 126 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":225,"column":126},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":252,"column":59},{"message":"Line exceeds 120 characters; contains 160 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":282,"column":160},{"message":"Line exceeds 120 characters; contains 157 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":289,"column":157},{"message":"Line exceeds 120 characters; contains 188 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":296,"column":188},{"message":"Line exceeds 120 characters; contains 129 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":302,"column":129},{"message":"Line exceeds 120 characters; contains 148 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":402,"column":148},{"message":"Line exceeds 120 characters; contains 148 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":404,"column":148},{"message":"Line exceeds 120 characters; contains 146 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":409,"column":146},{"message":"Line exceeds 120 characters; contains 146 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":411,"column":146},{"message":"Line exceeds 120 characters; contains 160 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":430,"column":160},{"message":"Line exceeds 120 characters; contains 156 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":431,"column":156},{"message":"Line exceeds 120 characters; contains 156 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":432,"column":156},{"message":"Line exceeds 120 characters; contains 158 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":434,"column":158},{"message":"Line exceeds 120 characters; contains 154 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":435,"column":154},{"message":"Line exceeds 120 characters; contains 154 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":436,"column":154}]},"\/src\/repo\/includes\/specials\/SpecialAdminPoll.php":{"errors":1,"warnings":2,"messages":[{"message":"Class name 'AdminPoll' does not match filename 'SpecialAdminPoll.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":12,"column":1},{"message":"Line exceeds 120 characters; contains 125 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":150,"column":125},{"message":"Line exceeds 120 characters; contains 131 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":522,"column":131}]}}} --- end --- PHPCS run failed $ vendor/bin/phpcs --report=json --- stdout --- {"totals":{"errors":39,"warnings":68,"fixable":0},"files":{"\/src\/repo\/maintenance\/migrateOldPollNYUserColumnsToActor.php":{"errors":0,"warnings":3,"messages":[{"message":"Line exceeds 120 characters; contains 155 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":20,"column":155},{"message":"Line exceeds 120 characters; contains 185 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":49,"column":185},{"message":"Line exceeds 120 characters; contains 180 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":53,"column":180}]},"\/src\/repo\/includes\/PollNY.namespaces.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/includes\/upload\/PollUpload.class.php":{"errors":4,"warnings":0,"messages":[{"message":"Class name 'PollUpload' does not match filename 'PollUpload.class.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":6,"column":1},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":19,"column":5},{"message":"Visibility must be declared on method \"initializeFromRequest\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":19,"column":5},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":31,"column":12}]},"\/src\/repo\/includes\/templates\/CreatePoll.template.php":{"errors":2,"warnings":17,"messages":[{"message":"Class name 'CreatePollTemplate' does not match filename 'CreatePoll.template.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":12,"column":1},{"message":"Visibility must be declared on method \"execute\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":14,"column":5},{"message":"Line exceeds 120 characters; contains 128 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":24,"column":121},{"message":"Line exceeds 120 characters; contains 165 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":27,"column":107},{"message":"Line exceeds 120 characters; contains 148 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":29,"column":145},{"message":"Line exceeds 120 characters; contains 225 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":34,"column":222},{"message":"Line exceeds 120 characters; contains 173 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":39,"column":1},{"message":"Line exceeds 120 characters; contains 173 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":40,"column":1},{"message":"Line exceeds 120 characters; contains 190 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":41,"column":1},{"message":"Line exceeds 120 characters; contains 190 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":42,"column":1},{"message":"Line exceeds 120 characters; contains 190 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":43,"column":1},{"message":"Line exceeds 120 characters; contains 190 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":44,"column":1},{"message":"Line exceeds 120 characters; contains 190 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":45,"column":1},{"message":"Line exceeds 120 characters; contains 190 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":46,"column":1},{"message":"Line exceeds 120 characters; contains 190 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":47,"column":1},{"message":"Line exceeds 120 characters; contains 194 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":48,"column":1},{"message":"Line exceeds 120 characters; contains 164 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":57,"column":154},{"message":"Line exceeds 120 characters; contains 160 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":62,"column":147},{"message":"Line exceeds 120 characters; contains 161 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":63,"column":123}]},"\/src\/repo\/.phan\/config.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/includes\/specials\/SpecialRandomPoll.php":{"errors":1,"warnings":0,"messages":[{"message":"Class name 'RandomPoll' does not match filename 'SpecialRandomPoll.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":8,"column":1}]},"\/src\/repo\/includes\/PollNY.alias.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/includes\/upload\/PollAjaxUploadForm.class.php":{"errors":12,"warnings":5,"messages":[{"message":"Class name 'PollAjaxUploadForm' does not match filename 'PollAjaxUploadForm.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":49,"column":5},{"message":"Visibility must be declared on method \"displayForm\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":49,"column":5},{"message":"Visibility must be declared on method \"wrapForm\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":72,"column":5},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":87,"column":43},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":88,"column":31},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":89,"column":32},{"message":"Line exceeds 120 characters; contains 124 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":176,"column":36},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":176,"column":36},{"message":"Visibility must be declared on method \"trySubmit\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":239,"column":5}]},"\/src\/repo\/includes\/api\/ApiPollNY.php":{"errors":8,"warnings":2,"messages":[{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":63,"column":18},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":103,"column":5},{"message":"Visibility must be declared on method \"delete\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":103,"column":5},{"message":"Visibility must be declared on method \"getPollResults\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":118,"column":5},{"message":"Line exceeds 120 characters; contains 185 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":130,"column":185},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":155,"column":5},{"message":"Visibility must be declared on method \"updateStatus\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":155,"column":5},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":169,"column":5},{"message":"Visibility must be declared on method \"vote\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":169,"column":5},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":193,"column":12}]},"\/src\/repo\/includes\/specials\/SpecialCreatePoll.php":{"errors":1,"warnings":1,"messages":[{"message":"Class name 'CreatePoll' does not match filename 'SpecialCreatePoll.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":10,"column":1},{"message":"Line exceeds 120 characters; contains 143 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":129,"column":143}]},"\/src\/repo\/includes\/specials\/SpecialPollAjaxUpload.php":{"errors":1,"warnings":4,"messages":[{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":27,"column":12},{"message":"Line exceeds 120 characters; contains 129 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":59,"column":38},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":59,"column":38},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":64,"column":69},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":66,"column":73}]},"\/src\/repo\/includes\/specials\/SpecialUpdatePoll.php":{"errors":2,"warnings":3,"messages":[{"message":"Class name 'UpdatePoll' does not match filename 'SpecialUpdatePoll.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":5,"column":1},{"message":"Visibility must be declared on method \"displayForm\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":123,"column":5},{"message":"Line exceeds 120 characters; contains 123 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":213,"column":121},{"message":"Line exceeds 120 characters; contains 174 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":222,"column":121},{"message":"Line exceeds 120 characters; contains 208 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":223,"column":202}]},"\/src\/repo\/includes\/specials\/SpecialViewPoll.php":{"errors":1,"warnings":0,"messages":[{"message":"Class name 'ViewPoll' does not match filename 'SpecialViewPoll.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":11,"column":1}]},"\/src\/repo\/includes\/PollPage.class.php":{"errors":1,"warnings":14,"messages":[{"message":"Class name 'PollPage' does not match filename 'PollPage.class.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":5,"column":1},{"message":"Line exceeds 120 characters; contains 141 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":142,"column":138},{"message":"Line exceeds 120 characters; contains 136 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":191,"column":136},{"message":"Line exceeds 120 characters; contains 148 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":192,"column":148},{"message":"Line exceeds 120 characters; contains 158 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":195,"column":158},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":200,"column":44},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":202,"column":37},{"message":"Line exceeds 120 characters; contains 121 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":232,"column":121},{"message":"Line exceeds 120 characters; contains 121 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":242,"column":121},{"message":"Line exceeds 120 characters; contains 131 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":294,"column":131},{"message":"Line exceeds 120 characters; contains 149 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":339,"column":149},{"message":"Line exceeds 120 characters; contains 122 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":359,"column":122},{"message":"Line exceeds 120 characters; contains 127 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":360,"column":127},{"message":"Line exceeds 120 characters; contains 275 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":388,"column":1},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":394,"column":37}]},"\/src\/repo\/includes\/Poll.class.php":{"errors":2,"warnings":1,"messages":[{"message":"Class name 'Poll' does not match filename 'Poll.class.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":8,"column":1},{"message":"Line exceeds 120 characters; contains 122 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":21,"column":13},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":406,"column":19}]},"\/src\/repo\/includes\/specials\/SpecialAdminPoll.php":{"errors":1,"warnings":2,"messages":[{"message":"Class name 'AdminPoll' does not match filename 'SpecialAdminPoll.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":12,"column":1},{"message":"Line exceeds 120 characters; contains 125 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":150,"column":125},{"message":"Line exceeds 120 characters; contains 131 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":522,"column":131}]},"\/src\/repo\/includes\/PollNY.hooks.php":{"errors":3,"warnings":16,"messages":[{"message":"Class name 'PollNYHooks' does not match filename 'PollNY.hooks.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":127,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":194,"column":19},{"message":"Line exceeds 120 characters; contains 126 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":225,"column":126},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":252,"column":59},{"message":"Line exceeds 120 characters; contains 160 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":282,"column":160},{"message":"Line exceeds 120 characters; contains 157 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":289,"column":157},{"message":"Line exceeds 120 characters; contains 188 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":296,"column":188},{"message":"Line exceeds 120 characters; contains 129 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":302,"column":129},{"message":"Line exceeds 120 characters; contains 148 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":402,"column":148},{"message":"Line exceeds 120 characters; contains 148 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":404,"column":148},{"message":"Line exceeds 120 characters; contains 146 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":409,"column":146},{"message":"Line exceeds 120 characters; contains 146 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":411,"column":146},{"message":"Line exceeds 120 characters; contains 160 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":430,"column":160},{"message":"Line exceeds 120 characters; contains 156 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":431,"column":156},{"message":"Line exceeds 120 characters; contains 156 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":432,"column":156},{"message":"Line exceeds 120 characters; contains 158 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":434,"column":158},{"message":"Line exceeds 120 characters; contains 154 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":435,"column":154},{"message":"Line exceeds 120 characters; contains 154 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":436,"column":154}]}}} --- 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 ................. 17/17 (100%) Checked 17 files in 0.1 seconds No syntax error found MinusX ====== Processing /src/repo... ............................................................. ............................................................. ............................. All good! ................. 17 / 17 (100%) Time: 160ms; 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": 311, "optional": 0, "peer": 1, "peerOptional": 0, "total": 311 } } } --- 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": 311, "removed": 0, "changed": 0, "audited": 312, "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": 311, "optional": 0, "peer": 1, "peerOptional": 0, "total": 311 } } } } --- end --- {"added": 311, "removed": 0, "changed": 0, "audited": 312, "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": 311, "optional": 0, "peer": 1, "peerOptional": 0, "total": 311}}}} $ /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 311 packages, and audited 312 packages in 4s 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 311 packages, and audited 312 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/Poll.js 7:1 warning Invalid JSDoc tag name "ingroup" jsdoc/check-tag-names 10:5 warning Unexpected 'var' declaration in the global scope, wrap in an IIFE for a local variable, assign as global property for a global variable no-implicit-globals 14:1 warning Missing JSDoc @return type jsdoc/require-returns-type 18:35 warning Expected '!==' and instead saw '!=' eqeqeq 18:75 warning Expected '!==' and instead saw '!=' eqeqeq 80:2 warning Missing JSDoc @return declaration jsdoc/require-returns 84:21 warning Expected '===' and instead saw '==' eqeqeq 91:7 warning Identifier 'choice_id' is not in camel case camelcase 94:5 warning Identifier 'choice_id' is not in camel case camelcase 98:8 warning Identifier 'choice_id' is not in camel case camelcase 105:15 warning Identifier 'choice_id' is not in camel case camelcase 136:52 warning Expected '===' and instead saw '==' eqeqeq 144:76 warning Unexpected string concatenation of literals no-useless-concat 156:1 warning Missing JSDoc @param "status" type jsdoc/require-param-type 202:1 warning Missing JSDoc @param "id" type jsdoc/require-param-type 203:1 warning Missing JSDoc @param "pageId" type jsdoc/require-param-type 206:7 warning Identifier 'choice_id' is not in camel case camelcase 207:4 warning Identifier 'poll_form' is not in camel case camelcase 207:16 warning eval with argument of type BinaryExpression security/detect-eval-with-expression 207:16 warning eval can be harmful no-eval 209:24 warning Identifier 'poll_form' is not in camel case camelcase 210:9 warning Identifier 'poll_form' is not in camel case camelcase 211:5 warning Identifier 'choice_id' is not in camel case camelcase 211:17 warning Identifier 'poll_form' is not in camel case camelcase 215:8 warning Identifier 'choice_id' is not in camel case camelcase 222:15 warning Identifier 'choice_id' is not in camel case camelcase 232:1 warning Missing JSDoc @param "id" type jsdoc/require-param-type 233:1 warning Missing JSDoc @param "pageId" type jsdoc/require-param-type 252:1 warning Missing JSDoc @param "id" type jsdoc/require-param-type 253:1 warning Missing JSDoc @param "status" type jsdoc/require-param-type 260:2 warning Identifier 'poll_admin_status' is not in camel case camelcase 292:1 warning Missing JSDoc @param "id" type jsdoc/require-param-type 294:2 warning Identifier 'poll_delete' is not in camel case camelcase 325:92 warning Unexpected string concatenation of literals no-useless-concat 351:1 warning Missing JSDoc @param "img_tag" type jsdoc/require-param-type 352:1 warning Missing JSDoc @param "img_name" type jsdoc/require-param-type 354:29 warning Identifier 'img_tag' is not in camel case camelcase 354:38 warning Identifier 'img_name' is not in camel case camelcase 355:3 warning Avoid queries which search the entire DOM. Keep DOM nodes in memory where possible no-jquery/no-global-selector 356:3 warning Avoid queries which search the entire DOM. Keep DOM nodes in memory where possible no-jquery/no-global-selector 364:1 warning This line has a length of 229. Maximum allowed is 100 max-len 369:42 warning Identifier 'img_name' is not in camel case camelcase 374:2 warning Missing JSDoc @return declaration jsdoc/require-returns 431:7 warning Avoid queries which search the entire DOM. Keep DOM nodes in memory where possible no-jquery/no-global-selector 431:7 warning Where possible, maintain application state in JS to avoid slower DOM queries no-jquery/no-class-state 434:4 warning 'LightBox' is not defined no-undef 438:3 warning Avoid queries which search the entire DOM. Keep DOM nodes in memory where possible no-jquery/no-global-selector 443:3 warning Avoid queries which search the entire DOM. Keep DOM nodes in memory where possible no-jquery/no-global-selector 447:3 warning Avoid queries which search the entire DOM. Keep DOM nodes in memory where possible no-jquery/no-global-selector 451:3 warning Avoid queries which search the entire DOM. Keep DOM nodes in memory where possible no-jquery/no-global-selector 459:7 warning Avoid queries which search the entire DOM. Keep DOM nodes in memory where possible no-jquery/no-global-selector 461:12 warning Avoid queries which search the entire DOM. Keep DOM nodes in memory where possible no-jquery/no-global-selector 466:3 warning Avoid queries which search the entire DOM. Keep DOM nodes in memory where possible no-jquery/no-global-selector 475:2 warning Avoid queries which search the entire DOM. Keep DOM nodes in memory where possible no-jquery/no-global-selector 480:2 warning Avoid queries which search the entire DOM. Keep DOM nodes in memory where possible no-jquery/no-global-selector 485:2 warning Avoid queries which search the entire DOM. Keep DOM nodes in memory where possible no-jquery/no-global-selector 491:53 warning Expected '===' and instead saw '==' eqeqeq 492:3 warning Avoid queries which search the entire DOM. Keep DOM nodes in memory where possible no-jquery/no-global-selector 511:3 warning Avoid queries which search the entire DOM. Keep DOM nodes in memory where possible no-jquery/no-global-selector /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 111:7 warning Avoid queries which search the entire DOM. Keep DOM nodes in memory where possible no-jquery/no-global-selector 112:1 warning This line has a length of 105. Maximum allowed is 100 max-len 113:1 warning This line has a length of 106. Maximum allowed is 100 max-len 114:1 warning This line has a length of 110. Maximum allowed is 100 max-len 121:7 warning Avoid queries which search the entire DOM. Keep DOM nodes in memory where possible no-jquery/no-global-selector 131:2 warning Missing JSDoc @return declaration jsdoc/require-returns 145:3 warning Avoid queries which search the entire DOM. Keep DOM nodes in memory where possible no-jquery/no-global-selector 180:3 warning Avoid queries which search the entire DOM. Keep DOM nodes in memory where possible no-jquery/no-global-selector 185:14 warning 'mediaWiki' is not defined no-undef ✖ 72 problems (0 errors, 72 warnings) Running "banana:PollNY" (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-codesniffer: 45.0.0 → 46.0.0 * mediawiki/mediawiki-phan-config: 0.14.0 → 0.15.1 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/tmpb62ewxvy --- stdout --- [master 4417bb0] build: Updating dependencies 2 files changed, 8 insertions(+), 8 deletions(-) --- end --- $ git format-patch HEAD~1 --stdout --- stdout --- From 4417bb09e5842c6ad254d8a35186c58bed31d8a1 Mon Sep 17 00:00:00 2001 From: libraryupgrader <tools.libraryupgrader@tools.wmflabs.org> Date: Mon, 10 Feb 2025 02:30:46 +0000 Subject: [PATCH] build: Updating dependencies MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit composer: * mediawiki/mediawiki-codesniffer: 45.0.0 → 46.0.0 * mediawiki/mediawiki-phan-config: 0.14.0 → 0.15.1 npm: * cross-spawn: 7.0.3 → 7.0.6 * https://github.com/advisories/GHSA-3xgq-45jj-v275 Change-Id: Ibd82386be0e6a6a93f81aedadbb9dbbaef112dce --- composer.json | 4 ++-- package-lock.json | 12 ++++++------ 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/composer.json b/composer.json index ddff40f..2522af3 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 3363d00..23117be 100644 --- a/package-lock.json +++ b/package-lock.json @@ -823,9 +823,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", @@ -4249,9 +4249,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 ---