This run took 50 seconds.
From 883179d728cac9e1b2a6de177c09557d33fd2ee7 Mon Sep 17 00:00:00 2001
From: libraryupgrader <tools.libraryupgrader@tools.wmflabs.org>
Date: Tue, 24 Feb 2026 21:08:27 +0000
Subject: [PATCH] build: Updating mediawiki/mediawiki-codesniffer to 50.0.0
Change-Id: I4c7bb4b40b9ecbccafdd5d569a731d703993d61b
---
composer.json | 2 +-
package-lock.json | 74 +++++++++++++++++++++++++++++------------------
2 files changed, 47 insertions(+), 29 deletions(-)
diff --git a/composer.json b/composer.json
index e0cd801..c454bc7 100644
--- a/composer.json
+++ b/composer.json
@@ -1,6 +1,6 @@
{
"require-dev": {
- "mediawiki/mediawiki-codesniffer": "49.0.0",
+ "mediawiki/mediawiki-codesniffer": "50.0.0",
"mediawiki/minus-x": "2.0.1",
"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 42ba286..1f99162 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -138,9 +138,9 @@
}
},
"node_modules/@eslint/eslintrc/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.3.tgz",
+ "integrity": "sha512-M2GCs7Vk83NxkUyQV1bkABc4yxgz9kILhHImZiBPAZ9ybuvCb0/H7lEl5XvIg3g+9d4eNotkZA5IWwYl0tibaA==",
"dev": true,
"dependencies": {
"brace-expansion": "^1.1.7"
@@ -505,22 +505,34 @@
"typescript": ">=4.8.4 <6.0.0"
}
},
+ "node_modules/@typescript-eslint/typescript-estree/node_modules/balanced-match": {
+ "version": "4.0.4",
+ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-4.0.4.tgz",
+ "integrity": "sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==",
+ "dev": true,
+ "engines": {
+ "node": "18 || 20 || >=22"
+ }
+ },
"node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz",
- "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==",
+ "version": "5.0.3",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.3.tgz",
+ "integrity": "sha512-fy6KJm2RawA5RcHkLa1z/ScpBeA762UF9KmZQxwIbDtRJrgLzM10depAiEQ+CXYcoiqW1/m96OAAoke2nE9EeA==",
"dev": true,
"dependencies": {
- "balanced-match": "^1.0.0"
+ "balanced-match": "^4.0.2"
+ },
+ "engines": {
+ "node": "18 || 20 || >=22"
}
},
"node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": {
- "version": "9.0.5",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
- "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
+ "version": "9.0.6",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.6.tgz",
+ "integrity": "sha512-kQAVowdR33euIqeA0+VZTDqU+qo1IeVY+hrKYtZMio3Pg0P0vuh/kwRylLUddJhB6pf3q/botcOvRtx4IN1wqQ==",
"dev": true,
"dependencies": {
- "brace-expansion": "^2.0.1"
+ "brace-expansion": "^5.0.2"
},
"engines": {
"node": ">=16 || 14 >=14.17"
@@ -1645,9 +1657,9 @@
}
},
"node_modules/eslint/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.3.tgz",
+ "integrity": "sha512-M2GCs7Vk83NxkUyQV1bkABc4yxgz9kILhHImZiBPAZ9ybuvCb0/H7lEl5XvIg3g+9d4eNotkZA5IWwYl0tibaA==",
"dev": true,
"dependencies": {
"brace-expansion": "^1.1.7"
@@ -4001,9 +4013,9 @@
}
},
"minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.3.tgz",
+ "integrity": "sha512-M2GCs7Vk83NxkUyQV1bkABc4yxgz9kILhHImZiBPAZ9ybuvCb0/H7lEl5XvIg3g+9d4eNotkZA5IWwYl0tibaA==",
"dev": true,
"requires": {
"brace-expansion": "^1.1.7"
@@ -4237,22 +4249,28 @@
"ts-api-utils": "^2.1.0"
},
"dependencies": {
+ "balanced-match": {
+ "version": "4.0.4",
+ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-4.0.4.tgz",
+ "integrity": "sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==",
+ "dev": true
+ },
"brace-expansion": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz",
- "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==",
+ "version": "5.0.3",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.3.tgz",
+ "integrity": "sha512-fy6KJm2RawA5RcHkLa1z/ScpBeA762UF9KmZQxwIbDtRJrgLzM10depAiEQ+CXYcoiqW1/m96OAAoke2nE9EeA==",
"dev": true,
"requires": {
- "balanced-match": "^1.0.0"
+ "balanced-match": "^4.0.2"
}
},
"minimatch": {
- "version": "9.0.5",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
- "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
+ "version": "9.0.6",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.6.tgz",
+ "integrity": "sha512-kQAVowdR33euIqeA0+VZTDqU+qo1IeVY+hrKYtZMio3Pg0P0vuh/kwRylLUddJhB6pf3q/botcOvRtx4IN1wqQ==",
"dev": true,
"requires": {
- "brace-expansion": "^2.0.1"
+ "brace-expansion": "^5.0.2"
}
}
}
@@ -4697,9 +4715,9 @@
}
},
"minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.3.tgz",
+ "integrity": "sha512-M2GCs7Vk83NxkUyQV1bkABc4yxgz9kILhHImZiBPAZ9ybuvCb0/H7lEl5XvIg3g+9d4eNotkZA5IWwYl0tibaA==",
"dev": true,
"requires": {
"brace-expansion": "^1.1.7"
--
2.47.3
$ date
--- stdout ---
Tue Feb 24 21:07:47 UTC 2026
--- end ---
$ git clone file:///srv/git/mediawiki-extensions-MultiMaps.git /src/repo --depth=1 -b master
--- stderr ---
Cloning into '/src/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 ---
179765f4a23d45a4d80a475b11533c71a6009a3e refs/heads/master
--- end ---
$ /usr/bin/npm audit --json
--- stdout ---
{
"auditReportVersion": 2,
"vulnerabilities": {
"@eslint/eslintrc": {
"name": "@eslint/eslintrc",
"severity": "high",
"isDirect": false,
"via": [
"minimatch"
],
"effects": [
"eslint"
],
"range": "0.0.1 || >=0.1.1",
"nodes": [
"node_modules/@eslint/eslintrc"
],
"fixAvailable": {
"name": "grunt-eslint",
"version": "20.2.0",
"isSemVerMajor": true
}
},
"@humanwhocodes/config-array": {
"name": "@humanwhocodes/config-array",
"severity": "high",
"isDirect": false,
"via": [
"minimatch"
],
"effects": [
"eslint"
],
"range": "*",
"nodes": [
"node_modules/@humanwhocodes/config-array"
],
"fixAvailable": {
"name": "grunt-eslint",
"version": "20.2.0",
"isSemVerMajor": true
}
},
"@typescript-eslint/eslint-plugin": {
"name": "@typescript-eslint/eslint-plugin",
"severity": "high",
"isDirect": false,
"via": [
"@typescript-eslint/type-utils",
"@typescript-eslint/utils",
"eslint"
],
"effects": [],
"range": "<=8.55.1-alpha.3",
"nodes": [
"node_modules/@typescript-eslint/eslint-plugin"
],
"fixAvailable": true
},
"@typescript-eslint/parser": {
"name": "@typescript-eslint/parser",
"severity": "high",
"isDirect": false,
"via": [
"@typescript-eslint/typescript-estree",
"eslint"
],
"effects": [
"eslint-config-wikimedia"
],
"range": "1.1.1-alpha.0 - 8.56.0",
"nodes": [
"node_modules/@typescript-eslint/parser"
],
"fixAvailable": {
"name": "eslint-config-wikimedia",
"version": "0.8.1",
"isSemVerMajor": true
}
},
"@typescript-eslint/type-utils": {
"name": "@typescript-eslint/type-utils",
"severity": "high",
"isDirect": false,
"via": [
"@typescript-eslint/typescript-estree",
"@typescript-eslint/utils",
"eslint"
],
"effects": [
"@typescript-eslint/eslint-plugin"
],
"range": "5.9.2-alpha.0 - 8.56.0 || >=8.56.2-alpha.0",
"nodes": [
"node_modules/@typescript-eslint/type-utils"
],
"fixAvailable": true
},
"@typescript-eslint/typescript-estree": {
"name": "@typescript-eslint/typescript-estree",
"severity": "high",
"isDirect": false,
"via": [
"minimatch"
],
"effects": [
"@typescript-eslint/parser",
"@typescript-eslint/type-utils",
"@typescript-eslint/utils"
],
"range": "6.16.0 - 8.56.1-alpha.2",
"nodes": [
"node_modules/@typescript-eslint/typescript-estree"
],
"fixAvailable": {
"name": "eslint-config-wikimedia",
"version": "0.8.1",
"isSemVerMajor": true
}
},
"@typescript-eslint/utils": {
"name": "@typescript-eslint/utils",
"severity": "high",
"isDirect": false,
"via": [
"@typescript-eslint/typescript-estree",
"eslint"
],
"effects": [
"@typescript-eslint/eslint-plugin",
"@typescript-eslint/type-utils"
],
"range": "<=8.56.1-alpha.2",
"nodes": [
"node_modules/@typescript-eslint/utils"
],
"fixAvailable": true
},
"eslint": {
"name": "eslint",
"severity": "high",
"isDirect": false,
"via": [
"@eslint/eslintrc",
"@humanwhocodes/config-array",
"file-entry-cache",
"minimatch"
],
"effects": [
"@typescript-eslint/eslint-plugin",
"@typescript-eslint/parser",
"@typescript-eslint/type-utils",
"@typescript-eslint/utils",
"eslint-config-wikimedia",
"eslint-plugin-jsdoc",
"eslint-plugin-vue",
"grunt-eslint"
],
"range": "0.7.1 - 2.0.0-rc.1 || 4.1.0 - 10.0.0-rc.2",
"nodes": [
"node_modules/eslint"
],
"fixAvailable": {
"name": "grunt-eslint",
"version": "20.2.0",
"isSemVerMajor": true
}
},
"eslint-config-wikimedia": {
"name": "eslint-config-wikimedia",
"severity": "high",
"isDirect": true,
"via": [
"@typescript-eslint/eslint-plugin",
"@typescript-eslint/parser",
"eslint",
"eslint-plugin-jsdoc",
"eslint-plugin-vue"
],
"effects": [],
"range": ">=0.9.0",
"nodes": [
"node_modules/eslint-config-wikimedia"
],
"fixAvailable": {
"name": "eslint-config-wikimedia",
"version": "0.8.1",
"isSemVerMajor": true
}
},
"eslint-plugin-jsdoc": {
"name": "eslint-plugin-jsdoc",
"severity": "high",
"isDirect": false,
"via": [
"eslint"
],
"effects": [
"eslint-config-wikimedia"
],
"range": "8.4.4 - 62.6.1",
"nodes": [
"node_modules/eslint-plugin-jsdoc"
],
"fixAvailable": {
"name": "eslint-config-wikimedia",
"version": "0.8.1",
"isSemVerMajor": true
}
},
"eslint-plugin-vue": {
"name": "eslint-plugin-vue",
"severity": "high",
"isDirect": false,
"via": [
"eslint"
],
"effects": [
"eslint-config-wikimedia"
],
"range": "5.0.0-beta.0 - 10.7.0",
"nodes": [
"node_modules/eslint-plugin-vue"
],
"fixAvailable": {
"name": "eslint-config-wikimedia",
"version": "0.8.1",
"isSemVerMajor": true
}
},
"file-entry-cache": {
"name": "file-entry-cache",
"severity": "high",
"isDirect": false,
"via": [
"flat-cache"
],
"effects": [
"eslint"
],
"range": "4.0.0 - 7.0.2",
"nodes": [
"node_modules/file-entry-cache"
],
"fixAvailable": {
"name": "grunt-eslint",
"version": "20.2.0",
"isSemVerMajor": true
}
},
"flat-cache": {
"name": "flat-cache",
"severity": "high",
"isDirect": false,
"via": [
"rimraf"
],
"effects": [
"file-entry-cache"
],
"range": "1.3.4 - 4.0.0",
"nodes": [
"node_modules/flat-cache"
],
"fixAvailable": {
"name": "grunt-eslint",
"version": "20.2.0",
"isSemVerMajor": true
}
},
"glob": {
"name": "glob",
"severity": "high",
"isDirect": false,
"via": [
"minimatch"
],
"effects": [
"rimraf"
],
"range": "3.0.0 - 10.5.0",
"nodes": [
"node_modules/glob"
],
"fixAvailable": {
"name": "grunt-eslint",
"version": "20.2.0",
"isSemVerMajor": true
}
},
"grunt": {
"name": "grunt",
"severity": "high",
"isDirect": true,
"via": [
"glob",
"minimatch"
],
"effects": [
"grunt-eslint"
],
"range": ">=0.4.0-a",
"nodes": [
"node_modules/grunt"
],
"fixAvailable": {
"name": "grunt",
"version": "0.3.17",
"isSemVerMajor": true
}
},
"grunt-eslint": {
"name": "grunt-eslint",
"severity": "high",
"isDirect": true,
"via": [
"eslint",
"grunt"
],
"effects": [],
"range": "<=17.3.2 || >=18.1.0",
"nodes": [
"node_modules/grunt-eslint"
],
"fixAvailable": {
"name": "grunt-eslint",
"version": "20.2.0",
"isSemVerMajor": true
}
},
"minimatch": {
"name": "minimatch",
"severity": "high",
"isDirect": false,
"via": [
{
"source": 1113371,
"name": "minimatch",
"dependency": "minimatch",
"title": "minimatch has a ReDoS via repeated wildcards with non-matching literal in pattern",
"url": "https://github.com/advisories/GHSA-3ppc-4f35-3m26",
"severity": "high",
"cwe": [
"CWE-1333"
],
"cvss": {
"score": 0,
"vectorString": null
},
"range": "<10.2.1"
}
],
"effects": [
"@eslint/eslintrc",
"@humanwhocodes/config-array",
"@typescript-eslint/typescript-estree",
"eslint",
"glob",
"grunt"
],
"range": "<10.2.1",
"nodes": [
"node_modules/@eslint/eslintrc/node_modules/minimatch",
"node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch",
"node_modules/eslint/node_modules/minimatch",
"node_modules/minimatch"
],
"fixAvailable": {
"name": "grunt",
"version": "0.3.17",
"isSemVerMajor": true
}
},
"rimraf": {
"name": "rimraf",
"severity": "high",
"isDirect": false,
"via": [
"glob"
],
"effects": [
"flat-cache"
],
"range": "2.3.0 - 3.0.2 || 4.2.0 - 5.0.10",
"nodes": [
"node_modules/rimraf"
],
"fixAvailable": {
"name": "grunt-eslint",
"version": "20.2.0",
"isSemVerMajor": true
}
}
},
"metadata": {
"vulnerabilities": {
"info": 0,
"low": 0,
"moderate": 0,
"high": 18,
"critical": 0,
"total": 18
},
"dependencies": {
"prod": 1,
"dev": 323,
"optional": 0,
"peer": 1,
"peerOptional": 0,
"total": 323
}
}
}
--- 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: 20 installs, 0 updates, 0 removals
- Locking composer/semver (3.4.4)
- Locking composer/spdx-licenses (1.5.9)
- Locking dealerdirect/phpcodesniffer-composer-installer (v1.2.0)
- Locking mediawiki/mediawiki-codesniffer (v49.0.0)
- Locking mediawiki/minus-x (2.0.1)
- 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.4.0)
- Locking phpcsstandards/phpcsutils (1.2.2)
- Locking psr/container (2.0.2)
- Locking squizlabs/php_codesniffer (3.13.5)
- Locking symfony/console (v8.0.4)
- Locking symfony/deprecation-contracts (v3.6.0)
- Locking symfony/polyfill-ctype (v1.33.0)
- Locking symfony/polyfill-intl-grapheme (v1.33.0)
- Locking symfony/polyfill-intl-normalizer (v1.33.0)
- Locking symfony/polyfill-mbstring (v1.33.0)
- Locking symfony/service-contracts (v3.6.1)
- Locking symfony/string (v8.0.4)
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 20 installs, 0 updates, 0 removals
0 [>---------------------------] 0 [->--------------------------]
- Installing squizlabs/php_codesniffer (3.13.5): Extracting archive
- Installing dealerdirect/phpcodesniffer-composer-installer (v1.2.0): Extracting archive
- Installing phpcsstandards/phpcsutils (1.2.2): Extracting archive
- Installing phpcsstandards/phpcsextra (1.4.0): Extracting archive
- Installing symfony/polyfill-mbstring (v1.33.0): Extracting archive
- Installing composer/spdx-licenses (1.5.9): Extracting archive
- Installing composer/semver (3.4.4): Extracting archive
- Installing mediawiki/mediawiki-codesniffer (v49.0.0): Extracting archive
- Installing symfony/polyfill-intl-normalizer (v1.33.0): Extracting archive
- Installing symfony/polyfill-intl-grapheme (v1.33.0): Extracting archive
- Installing symfony/polyfill-ctype (v1.33.0): Extracting archive
- Installing symfony/string (v8.0.4): Extracting archive
- Installing symfony/deprecation-contracts (v3.6.0): Extracting archive
- Installing psr/container (2.0.2): Extracting archive
- Installing symfony/service-contracts (v3.6.1): Extracting archive
- Installing symfony/console (v8.0.4): Extracting archive
- Installing mediawiki/minus-x (2.0.1): 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/18 [>---------------------------] 0%
18/18 [============================] 100%
Generating autoload files
14 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 49.0.0 -> 50.0.0
$ /usr/bin/composer update
--- stderr ---
Loading composer repositories with package information
Updating dependencies
Lock file operations: 0 installs, 1 update, 0 removals
- Upgrading mediawiki/mediawiki-codesniffer (v49.0.0 => v50.0.0)
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 0 installs, 1 update, 0 removals
- Upgrading mediawiki/mediawiki-codesniffer (v49.0.0 => v50.0.0): Extracting archive
Generating autoload files
14 packages you are using are looking for funding.
Use the `composer fund` command to find out more!
No security vulnerability advisories found.
--- stdout ---
--- end ---
Previously failing phpcs rules: {'MediaWiki.Commenting.ClassAnnotations.UnrecognizedAnnotation', 'MediaWiki.Commenting.FunctionComment.MissingDocumentationPrivate', 'MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic', 'MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment', 'MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation', 'Generic.NamingConventions.UpperCaseConstantName.ConstantNotUpperCase', 'MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName', 'MediaWiki.Commenting.CommentBeforeClass.FileSpacingAfter', 'MediaWiki.Commenting.FunctionComment.MissingReturn', 'MediaWiki.Files.ClassMatchesFilename.NotMatch', 'MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix', 'PSR12.Properties.ConstantVisibility.NotFound', 'MediaWiki.Commenting.PropertyDocumentation.MissingDocumentationPrivate', 'Squiz.Scope.MethodScope.Missing', 'Generic.Files.LineLength.TooLong', 'Generic.CodeAnalysis.AssignmentInCondition.FoundInWhileCondition'}
$ vendor/bin/phpcs --report=json
--- stdout ---
{"totals":{"errors":127,"warnings":96,"fixable":0},"files":{"\/src\/repo\/services\/Google\/Google.php":{"errors":4,"warnings":1,"messages":[{"message":"@file is not a valid class annotation","source":"MediaWiki.Commenting.ClassAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":14,"column":4},{"message":"There must be at least a blank line between a file-level comment and a class. Make sure you are not mixing file-level comments (like license headers) and class documentation","source":"MediaWiki.Commenting.CommentBeforeClass.FileSpacingAfter","severity":5,"fixable":false,"type":"ERROR","line":19,"column":2},{"message":"Visibility must be declared on method \"__construct\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":22,"column":5},{"message":"Global variable \"$egMultiMapsGoogleApiKey\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMapsGoogleApiKey\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":28,"column":9},{"message":"Line exceeds 120 characters; contains 128 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":32,"column":128}]},"\/src\/repo\/services\/Yandex\/Yandex.php":{"errors":3,"warnings":1,"messages":[{"message":"@file is not a valid class annotation","source":"MediaWiki.Commenting.ClassAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":14,"column":4},{"message":"There must be at least a blank line between a file-level comment and a class. Make sure you are not mixing file-level comments (like license headers) and class documentation","source":"MediaWiki.Commenting.CommentBeforeClass.FileSpacingAfter","severity":5,"fixable":false,"type":"ERROR","line":19,"column":2},{"message":"Visibility must be declared on method \"__construct\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":22,"column":5},{"message":"Line exceeds 120 characters; contains 127 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":30,"column":127}]},"\/src\/repo\/Settings.php":{"errors":0,"warnings":1,"messages":[{"message":"Line exceeds 120 characters; contains 206 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":32,"column":206}]},"\/src\/repo\/services\/Leaflet\/Leaflet.php":{"errors":5,"warnings":2,"messages":[{"message":"@file is not a valid class annotation","source":"MediaWiki.Commenting.ClassAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":14,"column":4},{"message":"There must be at least a blank line between a file-level comment and a class. Make sure you are not mixing file-level comments (like license headers) and class documentation","source":"MediaWiki.Commenting.CommentBeforeClass.FileSpacingAfter","severity":5,"fixable":false,"type":"ERROR","line":19,"column":2},{"message":"Visibility must be declared on method \"__construct\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":25,"column":5},{"message":"Global variable \"$egMultiMapsScriptPath\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMapsScriptPath\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":26,"column":9},{"message":"Global variable \"$egMultiMaps_MapServices\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_MapServices\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":45,"column":9},{"message":"Line exceeds 120 characters; contains 129 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":54,"column":129},{"message":"Line exceeds 120 characters; contains 128 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":60,"column":128}]},"\/src\/repo\/MultiMaps.body.php":{"errors":4,"warnings":0,"messages":[{"message":"@file is not a valid class annotation","source":"MediaWiki.Commenting.ClassAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":9,"column":4},{"message":"Class name 'MultiMaps' does not match filename 'MultiMaps.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":15,"column":1},{"message":"Method name \"renderParserFunction_showmap\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":23,"column":19},{"message":"Method name \"recursive_array_search\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":52,"column":19}]},"\/src\/repo\/tests\/phpunit\/services\/Yandex\/YandexTest.php":{"errors":1,"warnings":4,"messages":[{"message":"Global variable \"$egMultiMaps_AllowGeocoderTests\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_AllowGeocoderTests\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":20,"column":9},{"message":"Line exceeds 120 characters; contains 155 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":33,"column":155},{"message":"Line exceeds 120 characters; contains 194 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":43,"column":194},{"message":"Line exceeds 120 characters; contains 304 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":53,"column":304},{"message":"Line exceeds 120 characters; contains 181 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":63,"column":181}]},"\/src\/repo\/MultiMaps.php":{"errors":1,"warnings":1,"messages":[{"message":"Constants must be uppercase; expected 'MULTIMAPS_VERSION' but found 'MultiMaps_VERSION'","source":"Generic.NamingConventions.UpperCaseConstantName.ConstantNotUpperCase","severity":5,"fixable":false,"type":"ERROR","line":18,"column":9},{"message":"Line exceeds 120 characters; contains 134 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":33,"column":134}]},"\/src\/repo\/includes\/mapelements\/Rectangle.php":{"errors":12,"warnings":2,"messages":[{"message":"@file is not a valid class annotation","source":"MediaWiki.Commenting.ClassAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":7,"column":4},{"message":"There must be at least a blank line between a file-level comment and a class. Make sure you are not mixing file-level comments (like license headers) and class documentation","source":"MediaWiki.Commenting.CommentBeforeClass.FileSpacingAfter","severity":5,"fixable":false,"type":"ERROR","line":11,"column":2},{"message":"Missing return type or @return tag in function comment","source":"MediaWiki.Commenting.FunctionComment.MissingReturn","severity":5,"fixable":false,"type":"ERROR","line":17,"column":6},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":19,"column":29},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":25,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":26,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":27,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":28,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":29,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":30,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":31,"column":8},{"message":"@global is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":33,"column":8},{"message":"Global variable \"$egMultiMaps_CoordinatesSeparator\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_CoordinatesSeparator\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":39,"column":9},{"message":"Line exceeds 120 characters; contains 126 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":66,"column":126}]},"\/src\/repo\/includes\/mapelements\/Polygon.php":{"errors":4,"warnings":2,"messages":[{"message":"@file is not a valid class annotation","source":"MediaWiki.Commenting.ClassAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":7,"column":4},{"message":"There must be at least a blank line between a file-level comment and a class. Make sure you are not mixing file-level comments (like license headers) and class documentation","source":"MediaWiki.Commenting.CommentBeforeClass.FileSpacingAfter","severity":5,"fixable":false,"type":"ERROR","line":14,"column":2},{"message":"Visibility must be declared on method \"__construct\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":30,"column":5},{"message":"Missing return type or @return tag in function comment","source":"MediaWiki.Commenting.FunctionComment.MissingReturn","severity":5,"fixable":false,"type":"ERROR","line":42,"column":6},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":44,"column":27},{"message":"Line exceeds 120 characters; contains 189 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":68,"column":189}]},"\/src\/repo\/tests\/phpunit\/services\/Google\/GoogleTest.php":{"errors":1,"warnings":4,"messages":[{"message":"Global variable \"$egMultiMaps_AllowGeocoderTests\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_AllowGeocoderTests\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":20,"column":9},{"message":"Line exceeds 120 characters; contains 155 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":33,"column":155},{"message":"Line exceeds 120 characters; contains 194 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":43,"column":194},{"message":"Line exceeds 120 characters; contains 271 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":53,"column":271},{"message":"Line exceeds 120 characters; contains 181 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":63,"column":181}]},"\/src\/repo\/includes\/mapelements\/Circle.php":{"errors":6,"warnings":2,"messages":[{"message":"@file is not a valid class annotation","source":"MediaWiki.Commenting.ClassAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":7,"column":4},{"message":"There must be at least a blank line between a file-level comment and a class. Make sure you are not mixing file-level comments (like license headers) and class documentation","source":"MediaWiki.Commenting.CommentBeforeClass.FileSpacingAfter","severity":5,"fixable":false,"type":"ERROR","line":12,"column":2},{"message":"Missing return type or @return tag in function comment","source":"MediaWiki.Commenting.FunctionComment.MissingReturn","severity":5,"fixable":false,"type":"ERROR","line":24,"column":6},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":26,"column":26},{"message":"@global is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":31,"column":8},{"message":"Global variable \"$egMultiMaps_CoordinatesSeparator\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_CoordinatesSeparator\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":37,"column":9},{"message":"Line exceeds 120 characters; contains 122 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":71,"column":122},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":96,"column":12}]},"\/src\/repo\/tests\/phpunit\/includes\/MapServicesTest.php":{"errors":3,"warnings":0,"messages":[{"message":"Global variable \"$egMultiMaps_MapServices\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_MapServices\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":13,"column":9},{"message":"Global variable \"$egMultiMaps_MapServices\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_MapServices\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":31,"column":9},{"message":"Global variable \"$egMultiMaps_MapServices\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_MapServices\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":45,"column":9}]},"\/src\/repo\/includes\/mapelements\/Line.php":{"errors":6,"warnings":1,"messages":[{"message":"@file is not a valid class annotation","source":"MediaWiki.Commenting.ClassAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":7,"column":4},{"message":"There must be at least a blank line between a file-level comment and a class. Make sure you are not mixing file-level comments (like license headers) and class documentation","source":"MediaWiki.Commenting.CommentBeforeClass.FileSpacingAfter","severity":5,"fixable":false,"type":"ERROR","line":14,"column":2},{"message":"Visibility must be declared on method \"__construct\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":20,"column":5},{"message":"Missing return type or @return tag in function comment","source":"MediaWiki.Commenting.FunctionComment.MissingReturn","severity":5,"fixable":false,"type":"ERROR","line":32,"column":6},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":34,"column":24},{"message":"@global is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":39,"column":8},{"message":"Global variable \"$egMultiMaps_CoordinatesSeparator\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_CoordinatesSeparator\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":45,"column":9}]},"\/src\/repo\/includes\/Point.php":{"errors":2,"warnings":0,"messages":[{"message":"@file is not a valid class annotation","source":"MediaWiki.Commenting.ClassAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":7,"column":4},{"message":"There must be at least a blank line between a file-level comment and a class. Make sure you are not mixing file-level comments (like license headers) and class documentation","source":"MediaWiki.Commenting.CommentBeforeClass.FileSpacingAfter","severity":5,"fixable":false,"type":"ERROR","line":15,"column":2}]},"\/src\/repo\/tests\/phpunit\/includes\/mapelements\/RectangleTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/includes\/Bounds.php":{"errors":4,"warnings":1,"messages":[{"message":"@file is not a valid class annotation","source":"MediaWiki.Commenting.ClassAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":7,"column":4},{"message":"There must be at least a blank line between a file-level comment and a class. Make sure you are not mixing file-level comments (like license headers) and class documentation","source":"MediaWiki.Commenting.CommentBeforeClass.FileSpacingAfter","severity":5,"fixable":false,"type":"ERROR","line":15,"column":2},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":30,"column":5},{"message":"Visibility must be declared on method \"__construct\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":30,"column":5},{"message":"Line exceeds 120 characters; contains 152 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":130,"column":152}]},"\/src\/repo\/includes\/GeoCoordinate.php":{"errors":26,"warnings":4,"messages":[{"message":"@file is not a valid class annotation","source":"MediaWiki.Commenting.ClassAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":7,"column":4},{"message":"There must be at least a blank line between a file-level comment and a class. Make sure you are not mixing file-level comments (like license headers) and class documentation","source":"MediaWiki.Commenting.CommentBeforeClass.FileSpacingAfter","severity":5,"fixable":false,"type":"ERROR","line":11,"column":2},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":18,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":24,"column":5},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":29,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":30,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":31,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":32,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":33,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":34,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":35,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":36,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":37,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":38,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":39,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":40,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":41,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":42,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":43,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":44,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":45,"column":8},{"message":"@global is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":47,"column":8},{"message":"Global variable \"$egMultiMaps_OptionsSeparator\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_OptionsSeparator\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":52,"column":9},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":136,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":137,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":138,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":139,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":140,"column":8},{"message":"Line exceeds 120 characters; contains 141 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":152,"column":141},{"message":"Line exceeds 120 characters; contains 200 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":153,"column":200}]},"\/src\/repo\/tests\/phpunit\/includes\/PointTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/MultiMaps.i18n.magic.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/includes\/GeocodersTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/includes\/mapelements\/Marker.php":{"errors":9,"warnings":2,"messages":[{"message":"@file is not a valid class annotation","source":"MediaWiki.Commenting.ClassAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":9,"column":4},{"message":"There must be at least a blank line between a file-level comment and a class. Make sure you are not mixing file-level comments (like license headers) and class documentation","source":"MediaWiki.Commenting.CommentBeforeClass.FileSpacingAfter","severity":5,"fixable":false,"type":"ERROR","line":19,"column":2},{"message":"Visibility must be declared on method \"__construct\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":22,"column":5},{"message":"Missing return type or @return tag in function comment","source":"MediaWiki.Commenting.FunctionComment.MissingReturn","severity":5,"fixable":false,"type":"ERROR","line":34,"column":6},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":36,"column":26},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":39,"column":12},{"message":"Global variable \"$egMultiMaps_CoordinatesSeparator\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_CoordinatesSeparator\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":40,"column":9},{"message":"Global variable \"$egMultiMaps_OptionsSeparator\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_OptionsSeparator\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":40,"column":9},{"message":"Global variable \"$egMultiMaps_IconPath\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_IconPath\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":40,"column":9},{"message":"Global variable \"$egMultiMaps_IconAllowFromDirectory\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_IconAllowFromDirectory\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":40,"column":9},{"message":"Line exceeds 120 characters; contains 121 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":143,"column":121}]},"\/src\/repo\/tests\/phpunit\/includes\/mapelements\/PolygonTest.php":{"errors":0,"warnings":1,"messages":[{"message":"Line exceeds 120 characters; contains 182 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":55,"column":182}]},"\/src\/repo\/includes\/Geocoders.php":{"errors":6,"warnings":0,"messages":[{"message":"@file is not a valid class annotation","source":"MediaWiki.Commenting.ClassAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":7,"column":4},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":15,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPrivate","severity":5,"fixable":false,"type":"ERROR","line":27,"column":20},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPrivate","severity":5,"fixable":false,"type":"ERROR","line":31,"column":20},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPrivate","severity":5,"fixable":false,"type":"ERROR","line":66,"column":20},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":104,"column":19}]},"\/src\/repo\/includes\/mapelements\/BaseMapElement.php":{"errors":7,"warnings":6,"messages":[{"message":"@file is not a valid class annotation","source":"MediaWiki.Commenting.ClassAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":10,"column":4},{"message":"There must be at least a blank line between a file-level comment and a class. Make sure you are not mixing file-level comments (like license headers) and class documentation","source":"MediaWiki.Commenting.CommentBeforeClass.FileSpacingAfter","severity":5,"fixable":false,"type":"ERROR","line":17,"column":2},{"message":"Visibility must be declared on method \"__construct\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":56,"column":5},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":109,"column":58},{"message":"@global is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":137,"column":8},{"message":"Line exceeds 120 characters; contains 137 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":140,"column":16},{"message":"Global variable \"$egMultiMaps_DelimiterParam\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_DelimiterParam\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":143,"column":9},{"message":"Line exceeds 120 characters; contains 121 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":151,"column":121},{"message":"@global is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":162,"column":8},{"message":"Global variable \"$egMultiMaps_CoordinatesSeparator\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_CoordinatesSeparator\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":168,"column":9},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":209,"column":68},{"message":"Variable assignment found within a condition. Did you mean to do a comparison ?","source":"Generic.CodeAnalysis.AssignmentInCondition.FoundInWhileCondition","severity":5,"fixable":false,"type":"WARNING","line":223,"column":24},{"message":"Line exceeds 120 characters; contains 149 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":226,"column":149}]},"\/src\/repo\/includes\/MapServices.php":{"errors":6,"warnings":0,"messages":[{"message":"@file is not a valid class annotation","source":"MediaWiki.Commenting.ClassAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":9,"column":4},{"message":"Missing class property doc comment","source":"MediaWiki.Commenting.PropertyDocumentation.MissingDocumentationPrivate","severity":5,"fixable":false,"type":"ERROR","line":17,"column":20},{"message":"@global is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":23,"column":8},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPrivate","severity":5,"fixable":false,"type":"ERROR","line":106,"column":20},{"message":"Global variable \"$egMultiMaps_MapServices\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_MapServices\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":107,"column":9},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPrivate","severity":5,"fixable":false,"type":"ERROR","line":127,"column":20}]},"\/src\/repo\/tests\/phpunit\/includes\/GeoCoordinateTest.php":{"errors":0,"warnings":11,"messages":[{"message":"Line exceeds 120 characters; contains 128 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":22,"column":128},{"message":"Line exceeds 120 characters; contains 130 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":33,"column":130},{"message":"Line exceeds 120 characters; contains 136 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":44,"column":136},{"message":"Line exceeds 120 characters; contains 139 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":55,"column":139},{"message":"Line exceeds 120 characters; contains 140 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":66,"column":140},{"message":"Line exceeds 120 characters; contains 141 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":77,"column":141},{"message":"Line exceeds 120 characters; contains 138 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":88,"column":138},{"message":"Line exceeds 120 characters; contains 138 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":99,"column":138},{"message":"Line exceeds 120 characters; contains 128 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":132,"column":128},{"message":"Line exceeds 120 characters; contains 128 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":143,"column":128},{"message":"Line exceeds 120 characters; contains 121 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":154,"column":121}]},"\/src\/repo\/tests\/phpunit\/includes\/BoundsTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/includes\/BaseMapService.php":{"errors":12,"warnings":1,"messages":[{"message":"@file is not a valid class annotation","source":"MediaWiki.Commenting.ClassAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":11,"column":4},{"message":"There must be at least a blank line between a file-level comment and a class. Make sure you are not mixing file-level comments (like license headers) and class documentation","source":"MediaWiki.Commenting.CommentBeforeClass.FileSpacingAfter","severity":5,"fixable":false,"type":"ERROR","line":24,"column":2},{"message":"Line exceeds 120 characters; contains 172 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":171,"column":172},{"message":"Global variable \"$egMultiMaps_DefaultZoom\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_DefaultZoom\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":204,"column":9},{"message":"Global variable \"$egMultiMaps_SeparatorItems\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_SeparatorItems\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":327,"column":9},{"message":"Global variable \"$egMultiMaps_SeparatorItems\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_SeparatorItems\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":355,"column":9},{"message":"Global variable \"$egMultiMaps_SeparatorItems\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_SeparatorItems\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":383,"column":9},{"message":"Global variable \"$egMultiMaps_SeparatorItems\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_SeparatorItems\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":411,"column":9},{"message":"Global variable \"$egMultiMaps_SeparatorItems\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_SeparatorItems\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":439,"column":9},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":472,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":535,"column":12},{"message":"Global variable \"$egMultiMaps_Width\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_Width\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":565,"column":9},{"message":"Global variable \"$egMultiMaps_Height\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_Height\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":565,"column":9}]},"\/src\/repo\/tests\/phpunit\/services\/Leaflet\/LeafletTest.php":{"errors":5,"warnings":49,"messages":[{"message":"Line exceeds 120 characters; contains 125 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":57,"column":125},{"message":"Line exceeds 120 characters; contains 330 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":67,"column":330},{"message":"Line exceeds 120 characters; contains 186 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":68,"column":186},{"message":"Line exceeds 120 characters; contains 122 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":184,"column":122},{"message":"Line exceeds 120 characters; contains 193 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":193,"column":193},{"message":"Line exceeds 120 characters; contains 145 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":194,"column":145},{"message":"Line exceeds 120 characters; contains 463 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":203,"column":463},{"message":"Line exceeds 120 characters; contains 297 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":204,"column":297},{"message":"Line exceeds 120 characters; contains 226 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":213,"column":226},{"message":"Line exceeds 120 characters; contains 170 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":214,"column":170},{"message":"Line exceeds 120 characters; contains 969 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":223,"column":969},{"message":"Line exceeds 120 characters; contains 589 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":224,"column":589},{"message":"Line exceeds 120 characters; contains 196 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":233,"column":196},{"message":"Line exceeds 120 characters; contains 161 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":234,"column":161},{"message":"Line exceeds 120 characters; contains 196 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":244,"column":196},{"message":"Line exceeds 120 characters; contains 190 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":245,"column":190},{"message":"Line exceeds 120 characters; contains 196 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":256,"column":196},{"message":"Line exceeds 120 characters; contains 191 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":257,"column":191},{"message":"Line exceeds 120 characters; contains 196 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":270,"column":196},{"message":"Line exceeds 120 characters; contains 191 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":271,"column":191},{"message":"Line exceeds 120 characters; contains 196 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":282,"column":196},{"message":"Line exceeds 120 characters; contains 195 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":283,"column":195},{"message":"Line exceeds 120 characters; contains 209 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":299,"column":209},{"message":"Line exceeds 120 characters; contains 131 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":300,"column":131},{"message":"Line exceeds 120 characters; contains 254 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":309,"column":254},{"message":"Line exceeds 120 characters; contains 152 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":310,"column":152},{"message":"Line exceeds 120 characters; contains 206 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":323,"column":206},{"message":"Line exceeds 120 characters; contains 156 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":324,"column":156},{"message":"Line exceeds 120 characters; contains 206 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":337,"column":206},{"message":"Line exceeds 120 characters; contains 160 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":338,"column":160},{"message":"Line exceeds 120 characters; contains 206 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":349,"column":206},{"message":"Line exceeds 120 characters; contains 145 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":350,"column":145},{"message":"Line exceeds 120 characters; contains 206 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":361,"column":206},{"message":"Line exceeds 120 characters; contains 156 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":362,"column":156},{"message":"Line exceeds 120 characters; contains 1721 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":378,"column":1721},{"message":"Line exceeds 120 characters; contains 125 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":514,"column":125},{"message":"Line exceeds 120 characters; contains 132 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":515,"column":132},{"message":"Line exceeds 120 characters; contains 135 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":542,"column":135},{"message":"Line exceeds 120 characters; contains 136 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":548,"column":136},{"message":"Line exceeds 120 characters; contains 125 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":561,"column":125},{"message":"Line exceeds 120 characters; contains 123 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":562,"column":123},{"message":"Global variable \"$egMultiMaps_AllowGeocoderTests\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_AllowGeocoderTests\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":575,"column":9},{"message":"Line exceeds 120 characters; contains 158 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":581,"column":13},{"message":"Global variable \"$egMultiMaps_AllowGeocoderTests\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_AllowGeocoderTests\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":589,"column":9},{"message":"Line exceeds 120 characters; contains 194 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":594,"column":194},{"message":"Global variable \"$egMultiMaps_AllowGeocoderTests\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_AllowGeocoderTests\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":603,"column":9},{"message":"Line exceeds 120 characters; contains 271 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":608,"column":271},{"message":"Global variable \"$egMultiMaps_AllowGeocoderTests\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_AllowGeocoderTests\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":617,"column":9},{"message":"Line exceeds 120 characters; contains 181 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":622,"column":181},{"message":"Global variable \"$egMultiMaps_AllowGeocoderTests\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_AllowGeocoderTests\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":631,"column":9},{"message":"Line exceeds 120 characters; contains 169 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":636,"column":169},{"message":"Line exceeds 120 characters; contains 129 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":653,"column":129},{"message":"Line exceeds 120 characters; contains 136 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":654,"column":136},{"message":"Line exceeds 120 characters; contains 159 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":660,"column":159}]}}}
--- end ---
PHPCS run failed
$ vendor/bin/phpcs --report=json
--- stdout ---
{"totals":{"errors":127,"warnings":96,"fixable":0},"files":{"\/src\/repo\/services\/Yandex\/Yandex.php":{"errors":3,"warnings":1,"messages":[{"message":"@file is not a valid class annotation","source":"MediaWiki.Commenting.ClassAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":14,"column":4},{"message":"There must be at least a blank line between a file-level comment and a class. Make sure you are not mixing file-level comments (like license headers) and class documentation","source":"MediaWiki.Commenting.CommentBeforeClass.FileSpacingAfter","severity":5,"fixable":false,"type":"ERROR","line":19,"column":2},{"message":"Visibility must be declared on method \"__construct\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":22,"column":5},{"message":"Line exceeds 120 characters; contains 127 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":30,"column":127}]},"\/src\/repo\/Settings.php":{"errors":0,"warnings":1,"messages":[{"message":"Line exceeds 120 characters; contains 206 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":32,"column":206}]},"\/src\/repo\/services\/Google\/Google.php":{"errors":4,"warnings":1,"messages":[{"message":"@file is not a valid class annotation","source":"MediaWiki.Commenting.ClassAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":14,"column":4},{"message":"There must be at least a blank line between a file-level comment and a class. Make sure you are not mixing file-level comments (like license headers) and class documentation","source":"MediaWiki.Commenting.CommentBeforeClass.FileSpacingAfter","severity":5,"fixable":false,"type":"ERROR","line":19,"column":2},{"message":"Visibility must be declared on method \"__construct\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":22,"column":5},{"message":"Global variable \"$egMultiMapsGoogleApiKey\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMapsGoogleApiKey\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":28,"column":9},{"message":"Line exceeds 120 characters; contains 128 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":32,"column":128}]},"\/src\/repo\/services\/Leaflet\/Leaflet.php":{"errors":5,"warnings":2,"messages":[{"message":"@file is not a valid class annotation","source":"MediaWiki.Commenting.ClassAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":14,"column":4},{"message":"There must be at least a blank line between a file-level comment and a class. Make sure you are not mixing file-level comments (like license headers) and class documentation","source":"MediaWiki.Commenting.CommentBeforeClass.FileSpacingAfter","severity":5,"fixable":false,"type":"ERROR","line":19,"column":2},{"message":"Visibility must be declared on method \"__construct\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":25,"column":5},{"message":"Global variable \"$egMultiMapsScriptPath\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMapsScriptPath\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":26,"column":9},{"message":"Global variable \"$egMultiMaps_MapServices\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_MapServices\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":45,"column":9},{"message":"Line exceeds 120 characters; contains 129 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":54,"column":129},{"message":"Line exceeds 120 characters; contains 128 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":60,"column":128}]},"\/src\/repo\/MultiMaps.body.php":{"errors":4,"warnings":0,"messages":[{"message":"@file is not a valid class annotation","source":"MediaWiki.Commenting.ClassAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":9,"column":4},{"message":"Class name 'MultiMaps' does not match filename 'MultiMaps.body.php'","source":"MediaWiki.Files.ClassMatchesFilename.NotMatch","severity":5,"fixable":false,"type":"ERROR","line":15,"column":1},{"message":"Method name \"renderParserFunction_showmap\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":23,"column":19},{"message":"Method name \"recursive_array_search\" should use lower camel case.","source":"MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName","severity":5,"fixable":false,"type":"ERROR","line":52,"column":19}]},"\/src\/repo\/tests\/phpunit\/services\/Yandex\/YandexTest.php":{"errors":1,"warnings":4,"messages":[{"message":"Global variable \"$egMultiMaps_AllowGeocoderTests\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_AllowGeocoderTests\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":20,"column":9},{"message":"Line exceeds 120 characters; contains 155 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":33,"column":155},{"message":"Line exceeds 120 characters; contains 194 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":43,"column":194},{"message":"Line exceeds 120 characters; contains 304 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":53,"column":304},{"message":"Line exceeds 120 characters; contains 181 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":63,"column":181}]},"\/src\/repo\/includes\/mapelements\/Line.php":{"errors":6,"warnings":1,"messages":[{"message":"@file is not a valid class annotation","source":"MediaWiki.Commenting.ClassAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":7,"column":4},{"message":"There must be at least a blank line between a file-level comment and a class. Make sure you are not mixing file-level comments (like license headers) and class documentation","source":"MediaWiki.Commenting.CommentBeforeClass.FileSpacingAfter","severity":5,"fixable":false,"type":"ERROR","line":14,"column":2},{"message":"Visibility must be declared on method \"__construct\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":20,"column":5},{"message":"Missing return type or @return tag in function comment","source":"MediaWiki.Commenting.FunctionComment.MissingReturn","severity":5,"fixable":false,"type":"ERROR","line":32,"column":6},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":34,"column":24},{"message":"@global is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":39,"column":8},{"message":"Global variable \"$egMultiMaps_CoordinatesSeparator\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_CoordinatesSeparator\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":45,"column":9}]},"\/src\/repo\/MultiMaps.php":{"errors":1,"warnings":1,"messages":[{"message":"Constants must be uppercase; expected 'MULTIMAPS_VERSION' but found 'MultiMaps_VERSION'","source":"Generic.NamingConventions.UpperCaseConstantName.ConstantNotUpperCase","severity":5,"fixable":false,"type":"ERROR","line":18,"column":9},{"message":"Line exceeds 120 characters; contains 134 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":33,"column":134}]},"\/src\/repo\/includes\/mapelements\/Polygon.php":{"errors":4,"warnings":2,"messages":[{"message":"@file is not a valid class annotation","source":"MediaWiki.Commenting.ClassAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":7,"column":4},{"message":"There must be at least a blank line between a file-level comment and a class. Make sure you are not mixing file-level comments (like license headers) and class documentation","source":"MediaWiki.Commenting.CommentBeforeClass.FileSpacingAfter","severity":5,"fixable":false,"type":"ERROR","line":14,"column":2},{"message":"Visibility must be declared on method \"__construct\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":30,"column":5},{"message":"Missing return type or @return tag in function comment","source":"MediaWiki.Commenting.FunctionComment.MissingReturn","severity":5,"fixable":false,"type":"ERROR","line":42,"column":6},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":44,"column":27},{"message":"Line exceeds 120 characters; contains 189 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":68,"column":189}]},"\/src\/repo\/tests\/phpunit\/services\/Google\/GoogleTest.php":{"errors":1,"warnings":4,"messages":[{"message":"Global variable \"$egMultiMaps_AllowGeocoderTests\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_AllowGeocoderTests\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":20,"column":9},{"message":"Line exceeds 120 characters; contains 155 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":33,"column":155},{"message":"Line exceeds 120 characters; contains 194 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":43,"column":194},{"message":"Line exceeds 120 characters; contains 271 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":53,"column":271},{"message":"Line exceeds 120 characters; contains 181 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":63,"column":181}]},"\/src\/repo\/tests\/phpunit\/includes\/MapServicesTest.php":{"errors":3,"warnings":0,"messages":[{"message":"Global variable \"$egMultiMaps_MapServices\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_MapServices\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":13,"column":9},{"message":"Global variable \"$egMultiMaps_MapServices\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_MapServices\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":31,"column":9},{"message":"Global variable \"$egMultiMaps_MapServices\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_MapServices\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":45,"column":9}]},"\/src\/repo\/tests\/phpunit\/includes\/GeocodersTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/includes\/Point.php":{"errors":2,"warnings":0,"messages":[{"message":"@file is not a valid class annotation","source":"MediaWiki.Commenting.ClassAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":7,"column":4},{"message":"There must be at least a blank line between a file-level comment and a class. Make sure you are not mixing file-level comments (like license headers) and class documentation","source":"MediaWiki.Commenting.CommentBeforeClass.FileSpacingAfter","severity":5,"fixable":false,"type":"ERROR","line":15,"column":2}]},"\/src\/repo\/includes\/mapelements\/Rectangle.php":{"errors":12,"warnings":2,"messages":[{"message":"@file is not a valid class annotation","source":"MediaWiki.Commenting.ClassAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":7,"column":4},{"message":"There must be at least a blank line between a file-level comment and a class. Make sure you are not mixing file-level comments (like license headers) and class documentation","source":"MediaWiki.Commenting.CommentBeforeClass.FileSpacingAfter","severity":5,"fixable":false,"type":"ERROR","line":11,"column":2},{"message":"Missing return type or @return tag in function comment","source":"MediaWiki.Commenting.FunctionComment.MissingReturn","severity":5,"fixable":false,"type":"ERROR","line":17,"column":6},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":19,"column":29},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":25,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":26,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":27,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":28,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":29,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":30,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":31,"column":8},{"message":"@global is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":33,"column":8},{"message":"Global variable \"$egMultiMaps_CoordinatesSeparator\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_CoordinatesSeparator\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":39,"column":9},{"message":"Line exceeds 120 characters; contains 126 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":66,"column":126}]},"\/src\/repo\/includes\/mapelements\/Circle.php":{"errors":6,"warnings":2,"messages":[{"message":"@file is not a valid class annotation","source":"MediaWiki.Commenting.ClassAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":7,"column":4},{"message":"There must be at least a blank line between a file-level comment and a class. Make sure you are not mixing file-level comments (like license headers) and class documentation","source":"MediaWiki.Commenting.CommentBeforeClass.FileSpacingAfter","severity":5,"fixable":false,"type":"ERROR","line":12,"column":2},{"message":"Missing return type or @return tag in function comment","source":"MediaWiki.Commenting.FunctionComment.MissingReturn","severity":5,"fixable":false,"type":"ERROR","line":24,"column":6},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":26,"column":26},{"message":"@global is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":31,"column":8},{"message":"Global variable \"$egMultiMaps_CoordinatesSeparator\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_CoordinatesSeparator\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":37,"column":9},{"message":"Line exceeds 120 characters; contains 122 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":71,"column":122},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":96,"column":12}]},"\/src\/repo\/includes\/MapServices.php":{"errors":6,"warnings":0,"messages":[{"message":"@file is not a valid class annotation","source":"MediaWiki.Commenting.ClassAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":9,"column":4},{"message":"Missing class property doc comment","source":"MediaWiki.Commenting.PropertyDocumentation.MissingDocumentationPrivate","severity":5,"fixable":false,"type":"ERROR","line":17,"column":20},{"message":"@global is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":23,"column":8},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPrivate","severity":5,"fixable":false,"type":"ERROR","line":106,"column":20},{"message":"Global variable \"$egMultiMaps_MapServices\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_MapServices\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":107,"column":9},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPrivate","severity":5,"fixable":false,"type":"ERROR","line":127,"column":20}]},"\/src\/repo\/tests\/phpunit\/includes\/PointTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/MultiMaps.i18n.magic.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/includes\/mapelements\/RectangleTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/includes\/Bounds.php":{"errors":4,"warnings":1,"messages":[{"message":"@file is not a valid class annotation","source":"MediaWiki.Commenting.ClassAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":7,"column":4},{"message":"There must be at least a blank line between a file-level comment and a class. Make sure you are not mixing file-level comments (like license headers) and class documentation","source":"MediaWiki.Commenting.CommentBeforeClass.FileSpacingAfter","severity":5,"fixable":false,"type":"ERROR","line":15,"column":2},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":30,"column":5},{"message":"Visibility must be declared on method \"__construct\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":30,"column":5},{"message":"Line exceeds 120 characters; contains 152 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":130,"column":152}]},"\/src\/repo\/tests\/phpunit\/includes\/mapelements\/PolygonTest.php":{"errors":0,"warnings":1,"messages":[{"message":"Line exceeds 120 characters; contains 182 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":55,"column":182}]},"\/src\/repo\/includes\/mapelements\/Marker.php":{"errors":9,"warnings":2,"messages":[{"message":"@file is not a valid class annotation","source":"MediaWiki.Commenting.ClassAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":9,"column":4},{"message":"There must be at least a blank line between a file-level comment and a class. Make sure you are not mixing file-level comments (like license headers) and class documentation","source":"MediaWiki.Commenting.CommentBeforeClass.FileSpacingAfter","severity":5,"fixable":false,"type":"ERROR","line":19,"column":2},{"message":"Visibility must be declared on method \"__construct\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":22,"column":5},{"message":"Missing return type or @return tag in function comment","source":"MediaWiki.Commenting.FunctionComment.MissingReturn","severity":5,"fixable":false,"type":"ERROR","line":34,"column":6},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":36,"column":26},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":39,"column":12},{"message":"Global variable \"$egMultiMaps_CoordinatesSeparator\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_CoordinatesSeparator\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":40,"column":9},{"message":"Global variable \"$egMultiMaps_OptionsSeparator\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_OptionsSeparator\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":40,"column":9},{"message":"Global variable \"$egMultiMaps_IconPath\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_IconPath\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":40,"column":9},{"message":"Global variable \"$egMultiMaps_IconAllowFromDirectory\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_IconAllowFromDirectory\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":40,"column":9},{"message":"Line exceeds 120 characters; contains 121 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":143,"column":121}]},"\/src\/repo\/includes\/GeoCoordinate.php":{"errors":26,"warnings":4,"messages":[{"message":"@file is not a valid class annotation","source":"MediaWiki.Commenting.ClassAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":7,"column":4},{"message":"There must be at least a blank line between a file-level comment and a class. Make sure you are not mixing file-level comments (like license headers) and class documentation","source":"MediaWiki.Commenting.CommentBeforeClass.FileSpacingAfter","severity":5,"fixable":false,"type":"ERROR","line":11,"column":2},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":18,"column":5},{"message":"Visibility must be declared on all constants if your project supports PHP 7.1 or later","source":"PSR12.Properties.ConstantVisibility.NotFound","severity":5,"fixable":false,"type":"WARNING","line":24,"column":5},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":29,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":30,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":31,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":32,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":33,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":34,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":35,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":36,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":37,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":38,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":39,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":40,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":41,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":42,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":43,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":44,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":45,"column":8},{"message":"@global is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":47,"column":8},{"message":"Global variable \"$egMultiMaps_OptionsSeparator\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_OptionsSeparator\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":52,"column":9},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":136,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":137,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":138,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":139,"column":8},{"message":"@assert is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":140,"column":8},{"message":"Line exceeds 120 characters; contains 141 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":152,"column":141},{"message":"Line exceeds 120 characters; contains 200 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":153,"column":200}]},"\/src\/repo\/includes\/Geocoders.php":{"errors":6,"warnings":0,"messages":[{"message":"@file is not a valid class annotation","source":"MediaWiki.Commenting.ClassAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":7,"column":4},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":15,"column":19},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPrivate","severity":5,"fixable":false,"type":"ERROR","line":27,"column":20},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPrivate","severity":5,"fixable":false,"type":"ERROR","line":31,"column":20},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPrivate","severity":5,"fixable":false,"type":"ERROR","line":66,"column":20},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":104,"column":19}]},"\/src\/repo\/tests\/phpunit\/includes\/BoundsTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/includes\/GeoCoordinateTest.php":{"errors":0,"warnings":11,"messages":[{"message":"Line exceeds 120 characters; contains 128 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":22,"column":128},{"message":"Line exceeds 120 characters; contains 130 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":33,"column":130},{"message":"Line exceeds 120 characters; contains 136 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":44,"column":136},{"message":"Line exceeds 120 characters; contains 139 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":55,"column":139},{"message":"Line exceeds 120 characters; contains 140 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":66,"column":140},{"message":"Line exceeds 120 characters; contains 141 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":77,"column":141},{"message":"Line exceeds 120 characters; contains 138 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":88,"column":138},{"message":"Line exceeds 120 characters; contains 138 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":99,"column":138},{"message":"Line exceeds 120 characters; contains 128 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":132,"column":128},{"message":"Line exceeds 120 characters; contains 128 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":143,"column":128},{"message":"Line exceeds 120 characters; contains 121 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":154,"column":121}]},"\/src\/repo\/includes\/mapelements\/BaseMapElement.php":{"errors":7,"warnings":6,"messages":[{"message":"@file is not a valid class annotation","source":"MediaWiki.Commenting.ClassAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":10,"column":4},{"message":"There must be at least a blank line between a file-level comment and a class. Make sure you are not mixing file-level comments (like license headers) and class documentation","source":"MediaWiki.Commenting.CommentBeforeClass.FileSpacingAfter","severity":5,"fixable":false,"type":"ERROR","line":17,"column":2},{"message":"Visibility must be declared on method \"__construct\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":56,"column":5},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":109,"column":58},{"message":"@global is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":137,"column":8},{"message":"Line exceeds 120 characters; contains 137 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":140,"column":16},{"message":"Global variable \"$egMultiMaps_DelimiterParam\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_DelimiterParam\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":143,"column":9},{"message":"Line exceeds 120 characters; contains 121 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":151,"column":121},{"message":"@global is not a valid function annotation","source":"MediaWiki.Commenting.FunctionAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":162,"column":8},{"message":"Global variable \"$egMultiMaps_CoordinatesSeparator\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_CoordinatesSeparator\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":168,"column":9},{"message":"Comments should start on new line.","source":"MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment","severity":5,"fixable":false,"type":"WARNING","line":209,"column":68},{"message":"Variable assignment found within a condition. Did you mean to do a comparison ?","source":"Generic.CodeAnalysis.AssignmentInCondition.FoundInWhileCondition","severity":5,"fixable":false,"type":"WARNING","line":223,"column":24},{"message":"Line exceeds 120 characters; contains 149 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":226,"column":149}]},"\/src\/repo\/includes\/BaseMapService.php":{"errors":12,"warnings":1,"messages":[{"message":"@file is not a valid class annotation","source":"MediaWiki.Commenting.ClassAnnotations.UnrecognizedAnnotation","severity":5,"fixable":false,"type":"ERROR","line":11,"column":4},{"message":"There must be at least a blank line between a file-level comment and a class. Make sure you are not mixing file-level comments (like license headers) and class documentation","source":"MediaWiki.Commenting.CommentBeforeClass.FileSpacingAfter","severity":5,"fixable":false,"type":"ERROR","line":24,"column":2},{"message":"Line exceeds 120 characters; contains 172 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":171,"column":172},{"message":"Global variable \"$egMultiMaps_DefaultZoom\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_DefaultZoom\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":204,"column":9},{"message":"Global variable \"$egMultiMaps_SeparatorItems\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_SeparatorItems\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":327,"column":9},{"message":"Global variable \"$egMultiMaps_SeparatorItems\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_SeparatorItems\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":355,"column":9},{"message":"Global variable \"$egMultiMaps_SeparatorItems\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_SeparatorItems\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":383,"column":9},{"message":"Global variable \"$egMultiMaps_SeparatorItems\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_SeparatorItems\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":411,"column":9},{"message":"Global variable \"$egMultiMaps_SeparatorItems\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_SeparatorItems\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":439,"column":9},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":472,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":535,"column":12},{"message":"Global variable \"$egMultiMaps_Width\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_Width\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":565,"column":9},{"message":"Global variable \"$egMultiMaps_Height\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_Height\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":565,"column":9}]},"\/src\/repo\/tests\/phpunit\/services\/Leaflet\/LeafletTest.php":{"errors":5,"warnings":49,"messages":[{"message":"Line exceeds 120 characters; contains 125 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":57,"column":125},{"message":"Line exceeds 120 characters; contains 330 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":67,"column":330},{"message":"Line exceeds 120 characters; contains 186 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":68,"column":186},{"message":"Line exceeds 120 characters; contains 122 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":184,"column":122},{"message":"Line exceeds 120 characters; contains 193 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":193,"column":193},{"message":"Line exceeds 120 characters; contains 145 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":194,"column":145},{"message":"Line exceeds 120 characters; contains 463 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":203,"column":463},{"message":"Line exceeds 120 characters; contains 297 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":204,"column":297},{"message":"Line exceeds 120 characters; contains 226 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":213,"column":226},{"message":"Line exceeds 120 characters; contains 170 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":214,"column":170},{"message":"Line exceeds 120 characters; contains 969 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":223,"column":969},{"message":"Line exceeds 120 characters; contains 589 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":224,"column":589},{"message":"Line exceeds 120 characters; contains 196 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":233,"column":196},{"message":"Line exceeds 120 characters; contains 161 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":234,"column":161},{"message":"Line exceeds 120 characters; contains 196 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":244,"column":196},{"message":"Line exceeds 120 characters; contains 190 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":245,"column":190},{"message":"Line exceeds 120 characters; contains 196 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":256,"column":196},{"message":"Line exceeds 120 characters; contains 191 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":257,"column":191},{"message":"Line exceeds 120 characters; contains 196 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":270,"column":196},{"message":"Line exceeds 120 characters; contains 191 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":271,"column":191},{"message":"Line exceeds 120 characters; contains 196 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":282,"column":196},{"message":"Line exceeds 120 characters; contains 195 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":283,"column":195},{"message":"Line exceeds 120 characters; contains 209 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":299,"column":209},{"message":"Line exceeds 120 characters; contains 131 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":300,"column":131},{"message":"Line exceeds 120 characters; contains 254 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":309,"column":254},{"message":"Line exceeds 120 characters; contains 152 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":310,"column":152},{"message":"Line exceeds 120 characters; contains 206 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":323,"column":206},{"message":"Line exceeds 120 characters; contains 156 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":324,"column":156},{"message":"Line exceeds 120 characters; contains 206 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":337,"column":206},{"message":"Line exceeds 120 characters; contains 160 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":338,"column":160},{"message":"Line exceeds 120 characters; contains 206 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":349,"column":206},{"message":"Line exceeds 120 characters; contains 145 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":350,"column":145},{"message":"Line exceeds 120 characters; contains 206 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":361,"column":206},{"message":"Line exceeds 120 characters; contains 156 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":362,"column":156},{"message":"Line exceeds 120 characters; contains 1721 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":378,"column":1721},{"message":"Line exceeds 120 characters; contains 125 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":514,"column":125},{"message":"Line exceeds 120 characters; contains 132 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":515,"column":132},{"message":"Line exceeds 120 characters; contains 135 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":542,"column":135},{"message":"Line exceeds 120 characters; contains 136 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":548,"column":136},{"message":"Line exceeds 120 characters; contains 125 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":561,"column":125},{"message":"Line exceeds 120 characters; contains 123 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":562,"column":123},{"message":"Global variable \"$egMultiMaps_AllowGeocoderTests\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_AllowGeocoderTests\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":575,"column":9},{"message":"Line exceeds 120 characters; contains 158 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":581,"column":13},{"message":"Global variable \"$egMultiMaps_AllowGeocoderTests\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_AllowGeocoderTests\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":589,"column":9},{"message":"Line exceeds 120 characters; contains 194 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":594,"column":194},{"message":"Global variable \"$egMultiMaps_AllowGeocoderTests\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_AllowGeocoderTests\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":603,"column":9},{"message":"Line exceeds 120 characters; contains 271 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":608,"column":271},{"message":"Global variable \"$egMultiMaps_AllowGeocoderTests\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_AllowGeocoderTests\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":617,"column":9},{"message":"Line exceeds 120 characters; contains 181 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":622,"column":181},{"message":"Global variable \"$egMultiMaps_AllowGeocoderTests\" is lacking an allowed prefix ('wg'). Should be \"$wgEgMultiMaps_AllowGeocoderTests\".","source":"MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix","severity":5,"fixable":false,"type":"ERROR","line":631,"column":9},{"message":"Line exceeds 120 characters; contains 169 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":636,"column":169},{"message":"Line exceeds 120 characters; contains 129 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":653,"column":129},{"message":"Line exceeds 120 characters; contains 136 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":654,"column":136},{"message":"Line exceeds 120 characters; contains 159 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":660,"column":159}]}}}
--- end ---
$ git checkout /src/repo/.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
14 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
--- stdout ---
PHP 8.4.18 | 10 parallel jobs
............................. 29/29 (100%)
Checked 29 files in 0.1 seconds
No syntax error found
MinusX
======
Processing /src/repo...
.............................................................
..................................
All good!
............................. 29 / 29 (100%)
Time: 559ms; Memory: 8MB
--- end ---
$ /usr/bin/npm audit --json
--- stdout ---
{
"auditReportVersion": 2,
"vulnerabilities": {
"@eslint/eslintrc": {
"name": "@eslint/eslintrc",
"severity": "high",
"isDirect": false,
"via": [
"minimatch"
],
"effects": [
"eslint"
],
"range": "0.0.1 || >=0.1.1",
"nodes": [
"node_modules/@eslint/eslintrc"
],
"fixAvailable": {
"name": "eslint-config-wikimedia",
"version": "0.8.1",
"isSemVerMajor": true
}
},
"@humanwhocodes/config-array": {
"name": "@humanwhocodes/config-array",
"severity": "high",
"isDirect": false,
"via": [
"minimatch"
],
"effects": [
"eslint"
],
"range": "*",
"nodes": [
"node_modules/@humanwhocodes/config-array"
],
"fixAvailable": {
"name": "eslint-config-wikimedia",
"version": "0.8.1",
"isSemVerMajor": true
}
},
"@typescript-eslint/eslint-plugin": {
"name": "@typescript-eslint/eslint-plugin",
"severity": "high",
"isDirect": false,
"via": [
"@typescript-eslint/type-utils",
"@typescript-eslint/utils",
"eslint"
],
"effects": [],
"range": "<=8.55.1-alpha.3",
"nodes": [
"node_modules/@typescript-eslint/eslint-plugin"
],
"fixAvailable": true
},
"@typescript-eslint/parser": {
"name": "@typescript-eslint/parser",
"severity": "high",
"isDirect": false,
"via": [
"@typescript-eslint/typescript-estree",
"eslint"
],
"effects": [
"eslint-config-wikimedia"
],
"range": "1.1.1-alpha.0 - 8.56.0",
"nodes": [
"node_modules/@typescript-eslint/parser"
],
"fixAvailable": {
"name": "eslint-config-wikimedia",
"version": "0.8.1",
"isSemVerMajor": true
}
},
"@typescript-eslint/type-utils": {
"name": "@typescript-eslint/type-utils",
"severity": "high",
"isDirect": false,
"via": [
"@typescript-eslint/typescript-estree",
"@typescript-eslint/utils",
"eslint"
],
"effects": [
"@typescript-eslint/eslint-plugin"
],
"range": "5.9.2-alpha.0 - 8.56.0 || >=8.56.2-alpha.0",
"nodes": [
"node_modules/@typescript-eslint/type-utils"
],
"fixAvailable": true
},
"@typescript-eslint/typescript-estree": {
"name": "@typescript-eslint/typescript-estree",
"severity": "high",
"isDirect": false,
"via": [
"minimatch"
],
"effects": [
"@typescript-eslint/parser",
"@typescript-eslint/type-utils",
"@typescript-eslint/utils"
],
"range": "6.16.0 - 8.56.1-alpha.2",
"nodes": [
"node_modules/@typescript-eslint/typescript-estree"
],
"fixAvailable": {
"name": "eslint-config-wikimedia",
"version": "0.8.1",
"isSemVerMajor": true
}
},
"@typescript-eslint/utils": {
"name": "@typescript-eslint/utils",
"severity": "high",
"isDirect": false,
"via": [
"@typescript-eslint/typescript-estree",
"eslint"
],
"effects": [
"@typescript-eslint/eslint-plugin",
"@typescript-eslint/type-utils"
],
"range": "<=8.56.1-alpha.2",
"nodes": [
"node_modules/@typescript-eslint/utils"
],
"fixAvailable": true
},
"eslint": {
"name": "eslint",
"severity": "high",
"isDirect": false,
"via": [
"@eslint/eslintrc",
"@humanwhocodes/config-array",
"file-entry-cache",
"minimatch"
],
"effects": [
"@typescript-eslint/eslint-plugin",
"@typescript-eslint/parser",
"@typescript-eslint/type-utils",
"@typescript-eslint/utils",
"eslint-config-wikimedia",
"eslint-plugin-jsdoc",
"eslint-plugin-vue",
"grunt-eslint"
],
"range": "0.7.1 - 2.0.0-rc.1 || 4.1.0 - 10.0.0-rc.2",
"nodes": [
"node_modules/eslint"
],
"fixAvailable": {
"name": "eslint-config-wikimedia",
"version": "0.8.1",
"isSemVerMajor": true
}
},
"eslint-config-wikimedia": {
"name": "eslint-config-wikimedia",
"severity": "high",
"isDirect": true,
"via": [
"@typescript-eslint/eslint-plugin",
"@typescript-eslint/parser",
"eslint",
"eslint-plugin-jsdoc",
"eslint-plugin-vue"
],
"effects": [],
"range": ">=0.9.0",
"nodes": [
"node_modules/eslint-config-wikimedia"
],
"fixAvailable": {
"name": "eslint-config-wikimedia",
"version": "0.8.1",
"isSemVerMajor": true
}
},
"eslint-plugin-jsdoc": {
"name": "eslint-plugin-jsdoc",
"severity": "high",
"isDirect": false,
"via": [
"eslint"
],
"effects": [
"eslint-config-wikimedia"
],
"range": "8.4.4 - 62.6.1",
"nodes": [
"node_modules/eslint-plugin-jsdoc"
],
"fixAvailable": {
"name": "eslint-config-wikimedia",
"version": "0.8.1",
"isSemVerMajor": true
}
},
"eslint-plugin-vue": {
"name": "eslint-plugin-vue",
"severity": "high",
"isDirect": false,
"via": [
"eslint"
],
"effects": [
"eslint-config-wikimedia"
],
"range": "5.0.0-beta.0 - 10.7.0",
"nodes": [
"node_modules/eslint-plugin-vue"
],
"fixAvailable": {
"name": "eslint-config-wikimedia",
"version": "0.8.1",
"isSemVerMajor": true
}
},
"file-entry-cache": {
"name": "file-entry-cache",
"severity": "high",
"isDirect": false,
"via": [
"flat-cache"
],
"effects": [
"eslint"
],
"range": "4.0.0 - 7.0.2",
"nodes": [
"node_modules/file-entry-cache"
],
"fixAvailable": {
"name": "eslint-config-wikimedia",
"version": "0.8.1",
"isSemVerMajor": true
}
},
"flat-cache": {
"name": "flat-cache",
"severity": "high",
"isDirect": false,
"via": [
"rimraf"
],
"effects": [
"file-entry-cache"
],
"range": "1.3.4 - 4.0.0",
"nodes": [
"node_modules/flat-cache"
],
"fixAvailable": {
"name": "eslint-config-wikimedia",
"version": "0.8.1",
"isSemVerMajor": true
}
},
"glob": {
"name": "glob",
"severity": "high",
"isDirect": false,
"via": [
"minimatch"
],
"effects": [
"rimraf"
],
"range": "3.0.0 - 10.5.0",
"nodes": [
"node_modules/glob"
],
"fixAvailable": {
"name": "eslint-config-wikimedia",
"version": "0.8.1",
"isSemVerMajor": true
}
},
"grunt": {
"name": "grunt",
"severity": "high",
"isDirect": true,
"via": [
"glob",
"minimatch"
],
"effects": [
"grunt-eslint"
],
"range": ">=0.4.0-a",
"nodes": [
"node_modules/grunt"
],
"fixAvailable": {
"name": "grunt",
"version": "0.3.17",
"isSemVerMajor": true
}
},
"grunt-eslint": {
"name": "grunt-eslint",
"severity": "high",
"isDirect": true,
"via": [
"eslint",
"grunt"
],
"effects": [],
"range": "<=17.3.2 || >=18.1.0",
"nodes": [
"node_modules/grunt-eslint"
],
"fixAvailable": {
"name": "grunt-eslint",
"version": "20.2.0",
"isSemVerMajor": true
}
},
"minimatch": {
"name": "minimatch",
"severity": "high",
"isDirect": false,
"via": [
{
"source": 1113371,
"name": "minimatch",
"dependency": "minimatch",
"title": "minimatch has a ReDoS via repeated wildcards with non-matching literal in pattern",
"url": "https://github.com/advisories/GHSA-3ppc-4f35-3m26",
"severity": "high",
"cwe": [
"CWE-1333"
],
"cvss": {
"score": 0,
"vectorString": null
},
"range": "<10.2.1"
}
],
"effects": [
"@eslint/eslintrc",
"@humanwhocodes/config-array",
"@typescript-eslint/typescript-estree",
"eslint",
"glob",
"grunt"
],
"range": "<10.2.1",
"nodes": [
"node_modules/@eslint/eslintrc/node_modules/minimatch",
"node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch",
"node_modules/eslint/node_modules/minimatch",
"node_modules/minimatch"
],
"fixAvailable": {
"name": "grunt",
"version": "0.3.17",
"isSemVerMajor": true
}
},
"rimraf": {
"name": "rimraf",
"severity": "high",
"isDirect": false,
"via": [
"glob"
],
"effects": [
"flat-cache"
],
"range": "2.3.0 - 3.0.2 || 4.2.0 - 5.0.10",
"nodes": [
"node_modules/rimraf"
],
"fixAvailable": {
"name": "eslint-config-wikimedia",
"version": "0.8.1",
"isSemVerMajor": true
}
}
},
"metadata": {
"vulnerabilities": {
"info": 0,
"low": 0,
"moderate": 0,
"high": 18,
"critical": 0,
"total": 18
},
"dependencies": {
"prod": 1,
"dev": 323,
"optional": 0,
"peer": 1,
"peerOptional": 0,
"total": 323
}
}
}
--- 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": 324,
"removed": 0,
"changed": 0,
"audited": 325,
"funding": 71,
"audit": {
"auditReportVersion": 2,
"vulnerabilities": {
"@eslint/eslintrc": {
"name": "@eslint/eslintrc",
"severity": "high",
"isDirect": false,
"via": [
"minimatch"
],
"effects": [
"eslint"
],
"range": "0.0.1 || >=0.1.1",
"nodes": [
"node_modules/@eslint/eslintrc"
],
"fixAvailable": {
"name": "eslint-config-wikimedia",
"version": "0.8.1",
"isSemVerMajor": true
}
},
"@humanwhocodes/config-array": {
"name": "@humanwhocodes/config-array",
"severity": "high",
"isDirect": false,
"via": [
"minimatch"
],
"effects": [
"eslint"
],
"range": "*",
"nodes": [
"node_modules/@humanwhocodes/config-array"
],
"fixAvailable": {
"name": "eslint-config-wikimedia",
"version": "0.8.1",
"isSemVerMajor": true
}
},
"@typescript-eslint/eslint-plugin": {
"name": "@typescript-eslint/eslint-plugin",
"severity": "high",
"isDirect": false,
"via": [
"@typescript-eslint/type-utils",
"@typescript-eslint/utils",
"eslint"
],
"effects": [],
"range": "<=8.55.1-alpha.3",
"nodes": [
"node_modules/@typescript-eslint/eslint-plugin"
],
"fixAvailable": true
},
"@typescript-eslint/parser": {
"name": "@typescript-eslint/parser",
"severity": "high",
"isDirect": false,
"via": [
"@typescript-eslint/typescript-estree",
"eslint"
],
"effects": [
"eslint-config-wikimedia"
],
"range": "1.1.1-alpha.0 - 8.56.0",
"nodes": [
"node_modules/@typescript-eslint/parser"
],
"fixAvailable": {
"name": "eslint-config-wikimedia",
"version": "0.8.1",
"isSemVerMajor": true
}
},
"@typescript-eslint/type-utils": {
"name": "@typescript-eslint/type-utils",
"severity": "high",
"isDirect": false,
"via": [
"@typescript-eslint/typescript-estree",
"@typescript-eslint/utils",
"eslint"
],
"effects": [
"@typescript-eslint/eslint-plugin"
],
"range": "5.9.2-alpha.0 - 8.56.0 || >=8.56.2-alpha.0",
"nodes": [
"node_modules/@typescript-eslint/type-utils"
],
"fixAvailable": true
},
"@typescript-eslint/typescript-estree": {
"name": "@typescript-eslint/typescript-estree",
"severity": "high",
"isDirect": false,
"via": [
"minimatch"
],
"effects": [
"@typescript-eslint/parser",
"@typescript-eslint/type-utils",
"@typescript-eslint/utils"
],
"range": "6.16.0 - 8.56.1-alpha.2",
"nodes": [
"node_modules/@typescript-eslint/typescript-estree"
],
"fixAvailable": {
"name": "eslint-config-wikimedia",
"version": "0.8.1",
"isSemVerMajor": true
}
},
"@typescript-eslint/utils": {
"name": "@typescript-eslint/utils",
"severity": "high",
"isDirect": false,
"via": [
"@typescript-eslint/typescript-estree",
"eslint"
],
"effects": [
"@typescript-eslint/eslint-plugin",
"@typescript-eslint/type-utils"
],
"range": "<=8.56.1-alpha.2",
"nodes": [
"node_modules/@typescript-eslint/utils"
],
"fixAvailable": true
},
"eslint": {
"name": "eslint",
"severity": "high",
"isDirect": false,
"via": [
"@eslint/eslintrc",
"@humanwhocodes/config-array",
"file-entry-cache",
"minimatch"
],
"effects": [
"@typescript-eslint/eslint-plugin",
"@typescript-eslint/parser",
"@typescript-eslint/type-utils",
"@typescript-eslint/utils",
"eslint-config-wikimedia",
"eslint-plugin-jsdoc",
"eslint-plugin-vue",
"grunt-eslint"
],
"range": "0.7.1 - 2.0.0-rc.1 || 4.1.0 - 10.0.0-rc.2",
"nodes": [
"node_modules/eslint"
],
"fixAvailable": {
"name": "eslint-config-wikimedia",
"version": "0.8.1",
"isSemVerMajor": true
}
},
"eslint-config-wikimedia": {
"name": "eslint-config-wikimedia",
"severity": "high",
"isDirect": true,
"via": [
"@typescript-eslint/eslint-plugin",
"@typescript-eslint/parser",
"eslint",
"eslint-plugin-jsdoc",
"eslint-plugin-vue"
],
"effects": [],
"range": ">=0.9.0",
"nodes": [
"node_modules/eslint-config-wikimedia"
],
"fixAvailable": {
"name": "eslint-config-wikimedia",
"version": "0.8.1",
"isSemVerMajor": true
}
},
"eslint-plugin-jsdoc": {
"name": "eslint-plugin-jsdoc",
"severity": "high",
"isDirect": false,
"via": [
"eslint"
],
"effects": [
"eslint-config-wikimedia"
],
"range": "8.4.4 - 62.6.1",
"nodes": [
"node_modules/eslint-plugin-jsdoc"
],
"fixAvailable": {
"name": "eslint-config-wikimedia",
"version": "0.8.1",
"isSemVerMajor": true
}
},
"eslint-plugin-vue": {
"name": "eslint-plugin-vue",
"severity": "high",
"isDirect": false,
"via": [
"eslint"
],
"effects": [
"eslint-config-wikimedia"
],
"range": "5.0.0-beta.0 - 10.7.0",
"nodes": [
"node_modules/eslint-plugin-vue"
],
"fixAvailable": {
"name": "eslint-config-wikimedia",
"version": "0.8.1",
"isSemVerMajor": true
}
},
"file-entry-cache": {
"name": "file-entry-cache",
"severity": "high",
"isDirect": false,
"via": [
"flat-cache"
],
"effects": [
"eslint"
],
"range": "4.0.0 - 7.0.2",
"nodes": [
"node_modules/file-entry-cache"
],
"fixAvailable": {
"name": "eslint-config-wikimedia",
"version": "0.8.1",
"isSemVerMajor": true
}
},
"flat-cache": {
"name": "flat-cache",
"severity": "high",
"isDirect": false,
"via": [
"rimraf"
],
"effects": [
"file-entry-cache"
],
"range": "1.3.4 - 4.0.0",
"nodes": [
"node_modules/flat-cache"
],
"fixAvailable": {
"name": "eslint-config-wikimedia",
"version": "0.8.1",
"isSemVerMajor": true
}
},
"glob": {
"name": "glob",
"severity": "high",
"isDirect": false,
"via": [
"minimatch"
],
"effects": [
"rimraf"
],
"range": "3.0.0 - 10.5.0",
"nodes": [
"node_modules/glob"
],
"fixAvailable": {
"name": "eslint-config-wikimedia",
"version": "0.8.1",
"isSemVerMajor": true
}
},
"grunt": {
"name": "grunt",
"severity": "high",
"isDirect": true,
"via": [
"glob",
"minimatch"
],
"effects": [
"grunt-eslint"
],
"range": ">=0.4.0-a",
"nodes": [
"node_modules/grunt"
],
"fixAvailable": {
"name": "grunt",
"version": "0.3.17",
"isSemVerMajor": true
}
},
"grunt-eslint": {
"name": "grunt-eslint",
"severity": "high",
"isDirect": true,
"via": [
"eslint",
"grunt"
],
"effects": [],
"range": "<=17.3.2 || >=18.1.0",
"nodes": [
"node_modules/grunt-eslint"
],
"fixAvailable": {
"name": "grunt-eslint",
"version": "20.2.0",
"isSemVerMajor": true
}
},
"minimatch": {
"name": "minimatch",
"severity": "high",
"isDirect": false,
"via": [
{
"source": 1113371,
"name": "minimatch",
"dependency": "minimatch",
"title": "minimatch has a ReDoS via repeated wildcards with non-matching literal in pattern",
"url": "https://github.com/advisories/GHSA-3ppc-4f35-3m26",
"severity": "high",
"cwe": [
"CWE-1333"
],
"cvss": {
"score": 0,
"vectorString": null
},
"range": "<10.2.1"
}
],
"effects": [
"@eslint/eslintrc",
"@humanwhocodes/config-array",
"@typescript-eslint/typescript-estree",
"eslint",
"glob",
"grunt"
],
"range": "<10.2.1",
"nodes": [
"",
"",
"",
"node_modules/minimatch"
],
"fixAvailable": {
"name": "grunt",
"version": "0.3.17",
"isSemVerMajor": true
}
},
"rimraf": {
"name": "rimraf",
"severity": "high",
"isDirect": false,
"via": [
"glob"
],
"effects": [
"flat-cache"
],
"range": "2.3.0 - 3.0.2 || 4.2.0 - 5.0.10",
"nodes": [
"node_modules/rimraf"
],
"fixAvailable": {
"name": "eslint-config-wikimedia",
"version": "0.8.1",
"isSemVerMajor": true
}
}
},
"metadata": {
"vulnerabilities": {
"info": 0,
"low": 0,
"moderate": 0,
"high": 18,
"critical": 0,
"total": 18
},
"dependencies": {
"prod": 1,
"dev": 324,
"optional": 0,
"peer": 1,
"peerOptional": 0,
"total": 324
}
}
}
}
--- end ---
{"added": 324, "removed": 0, "changed": 0, "audited": 325, "funding": 71, "audit": {"auditReportVersion": 2, "vulnerabilities": {"@eslint/eslintrc": {"name": "@eslint/eslintrc", "severity": "high", "isDirect": false, "via": ["minimatch"], "effects": ["eslint"], "range": "0.0.1 || >=0.1.1", "nodes": ["node_modules/@eslint/eslintrc"], "fixAvailable": {"name": "eslint-config-wikimedia", "version": "0.8.1", "isSemVerMajor": true}}, "@humanwhocodes/config-array": {"name": "@humanwhocodes/config-array", "severity": "high", "isDirect": false, "via": ["minimatch"], "effects": ["eslint"], "range": "*", "nodes": ["node_modules/@humanwhocodes/config-array"], "fixAvailable": {"name": "eslint-config-wikimedia", "version": "0.8.1", "isSemVerMajor": true}}, "@typescript-eslint/eslint-plugin": {"name": "@typescript-eslint/eslint-plugin", "severity": "high", "isDirect": false, "via": ["@typescript-eslint/type-utils", "@typescript-eslint/utils", "eslint"], "effects": [], "range": "<=8.55.1-alpha.3", "nodes": ["node_modules/@typescript-eslint/eslint-plugin"], "fixAvailable": true}, "@typescript-eslint/parser": {"name": "@typescript-eslint/parser", "severity": "high", "isDirect": false, "via": ["@typescript-eslint/typescript-estree", "eslint"], "effects": ["eslint-config-wikimedia"], "range": "1.1.1-alpha.0 - 8.56.0", "nodes": ["node_modules/@typescript-eslint/parser"], "fixAvailable": {"name": "eslint-config-wikimedia", "version": "0.8.1", "isSemVerMajor": true}}, "@typescript-eslint/type-utils": {"name": "@typescript-eslint/type-utils", "severity": "high", "isDirect": false, "via": ["@typescript-eslint/typescript-estree", "@typescript-eslint/utils", "eslint"], "effects": ["@typescript-eslint/eslint-plugin"], "range": "5.9.2-alpha.0 - 8.56.0 || >=8.56.2-alpha.0", "nodes": ["node_modules/@typescript-eslint/type-utils"], "fixAvailable": true}, "@typescript-eslint/typescript-estree": {"name": "@typescript-eslint/typescript-estree", "severity": "high", "isDirect": false, "via": ["minimatch"], "effects": ["@typescript-eslint/parser", "@typescript-eslint/type-utils", "@typescript-eslint/utils"], "range": "6.16.0 - 8.56.1-alpha.2", "nodes": ["node_modules/@typescript-eslint/typescript-estree"], "fixAvailable": {"name": "eslint-config-wikimedia", "version": "0.8.1", "isSemVerMajor": true}}, "@typescript-eslint/utils": {"name": "@typescript-eslint/utils", "severity": "high", "isDirect": false, "via": ["@typescript-eslint/typescript-estree", "eslint"], "effects": ["@typescript-eslint/eslint-plugin", "@typescript-eslint/type-utils"], "range": "<=8.56.1-alpha.2", "nodes": ["node_modules/@typescript-eslint/utils"], "fixAvailable": true}, "eslint": {"name": "eslint", "severity": "high", "isDirect": false, "via": ["@eslint/eslintrc", "@humanwhocodes/config-array", "file-entry-cache", "minimatch"], "effects": ["@typescript-eslint/eslint-plugin", "@typescript-eslint/parser", "@typescript-eslint/type-utils", "@typescript-eslint/utils", "eslint-config-wikimedia", "eslint-plugin-jsdoc", "eslint-plugin-vue", "grunt-eslint"], "range": "0.7.1 - 2.0.0-rc.1 || 4.1.0 - 10.0.0-rc.2", "nodes": ["node_modules/eslint"], "fixAvailable": {"name": "eslint-config-wikimedia", "version": "0.8.1", "isSemVerMajor": true}}, "eslint-config-wikimedia": {"name": "eslint-config-wikimedia", "severity": "high", "isDirect": true, "via": ["@typescript-eslint/eslint-plugin", "@typescript-eslint/parser", "eslint", "eslint-plugin-jsdoc", "eslint-plugin-vue"], "effects": [], "range": ">=0.9.0", "nodes": ["node_modules/eslint-config-wikimedia"], "fixAvailable": {"name": "eslint-config-wikimedia", "version": "0.8.1", "isSemVerMajor": true}}, "eslint-plugin-jsdoc": {"name": "eslint-plugin-jsdoc", "severity": "high", "isDirect": false, "via": ["eslint"], "effects": ["eslint-config-wikimedia"], "range": "8.4.4 - 62.6.1", "nodes": ["node_modules/eslint-plugin-jsdoc"], "fixAvailable": {"name": "eslint-config-wikimedia", "version": "0.8.1", "isSemVerMajor": true}}, "eslint-plugin-vue": {"name": "eslint-plugin-vue", "severity": "high", "isDirect": false, "via": ["eslint"], "effects": ["eslint-config-wikimedia"], "range": "5.0.0-beta.0 - 10.7.0", "nodes": ["node_modules/eslint-plugin-vue"], "fixAvailable": {"name": "eslint-config-wikimedia", "version": "0.8.1", "isSemVerMajor": true}}, "file-entry-cache": {"name": "file-entry-cache", "severity": "high", "isDirect": false, "via": ["flat-cache"], "effects": ["eslint"], "range": "4.0.0 - 7.0.2", "nodes": ["node_modules/file-entry-cache"], "fixAvailable": {"name": "eslint-config-wikimedia", "version": "0.8.1", "isSemVerMajor": true}}, "flat-cache": {"name": "flat-cache", "severity": "high", "isDirect": false, "via": ["rimraf"], "effects": ["file-entry-cache"], "range": "1.3.4 - 4.0.0", "nodes": ["node_modules/flat-cache"], "fixAvailable": {"name": "eslint-config-wikimedia", "version": "0.8.1", "isSemVerMajor": true}}, "glob": {"name": "glob", "severity": "high", "isDirect": false, "via": ["minimatch"], "effects": ["rimraf"], "range": "3.0.0 - 10.5.0", "nodes": ["node_modules/glob"], "fixAvailable": {"name": "eslint-config-wikimedia", "version": "0.8.1", "isSemVerMajor": true}}, "grunt": {"name": "grunt", "severity": "high", "isDirect": true, "via": ["glob", "minimatch"], "effects": ["grunt-eslint"], "range": ">=0.4.0-a", "nodes": ["node_modules/grunt"], "fixAvailable": {"name": "grunt", "version": "0.3.17", "isSemVerMajor": true}}, "grunt-eslint": {"name": "grunt-eslint", "severity": "high", "isDirect": true, "via": ["eslint", "grunt"], "effects": [], "range": "<=17.3.2 || >=18.1.0", "nodes": ["node_modules/grunt-eslint"], "fixAvailable": {"name": "grunt-eslint", "version": "20.2.0", "isSemVerMajor": true}}, "minimatch": {"name": "minimatch", "severity": "high", "isDirect": false, "via": [{"source": 1113371, "name": "minimatch", "dependency": "minimatch", "title": "minimatch has a ReDoS via repeated wildcards with non-matching literal in pattern", "url": "https://github.com/advisories/GHSA-3ppc-4f35-3m26", "severity": "high", "cwe": ["CWE-1333"], "cvss": {"score": 0, "vectorString": null}, "range": "<10.2.1"}], "effects": ["@eslint/eslintrc", "@humanwhocodes/config-array", "@typescript-eslint/typescript-estree", "eslint", "glob", "grunt"], "range": "<10.2.1", "nodes": ["", "", "", "node_modules/minimatch"], "fixAvailable": {"name": "grunt", "version": "0.3.17", "isSemVerMajor": true}}, "rimraf": {"name": "rimraf", "severity": "high", "isDirect": false, "via": ["glob"], "effects": ["flat-cache"], "range": "2.3.0 - 3.0.2 || 4.2.0 - 5.0.10", "nodes": ["node_modules/rimraf"], "fixAvailable": {"name": "eslint-config-wikimedia", "version": "0.8.1", "isSemVerMajor": true}}}, "metadata": {"vulnerabilities": {"info": 0, "low": 0, "moderate": 0, "high": 18, "critical": 0, "total": 18}, "dependencies": {"prod": 1, "dev": 324, "optional": 0, "peer": 1, "peerOptional": 0, "total": 324}}}}
$ /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
npm WARN deprecated @humanwhocodes/config-array@0.13.0: Use @eslint/config-array instead
npm WARN deprecated @humanwhocodes/object-schema@2.0.3: Use @eslint/object-schema instead
npm WARN deprecated glob@7.1.7: Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me
npm WARN deprecated eslint@8.57.1: This version is no longer supported. Please see https://eslint.org/version-support for other options.
--- stdout ---
added 324 packages, and audited 325 packages in 8s
71 packages are looking for funding
run `npm fund` for details
# npm audit report
minimatch <10.2.1
Severity: high
minimatch has a ReDoS via repeated wildcards with non-matching literal in pattern - https://github.com/advisories/GHSA-3ppc-4f35-3m26
fix available via `npm audit fix --force`
Will install grunt@0.3.17, which is a breaking change
node_modules/@eslint/eslintrc/node_modules/minimatch
node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch
node_modules/eslint/node_modules/minimatch
node_modules/minimatch
@eslint/eslintrc 0.0.1 || >=0.1.1
Depends on vulnerable versions of minimatch
node_modules/@eslint/eslintrc
eslint 0.7.1 - 2.0.0-rc.1 || 4.1.0 - 10.0.0-rc.2
Depends on vulnerable versions of @eslint/eslintrc
Depends on vulnerable versions of @humanwhocodes/config-array
Depends on vulnerable versions of file-entry-cache
Depends on vulnerable versions of minimatch
node_modules/eslint
@typescript-eslint/eslint-plugin <=8.56.1
Depends on vulnerable versions of @typescript-eslint/parser
Depends on vulnerable versions of @typescript-eslint/type-utils
Depends on vulnerable versions of @typescript-eslint/utils
Depends on vulnerable versions of eslint
node_modules/@typescript-eslint/eslint-plugin
@typescript-eslint/parser 1.1.1-alpha.0 - 8.56.0
Depends on vulnerable versions of @typescript-eslint/typescript-estree
Depends on vulnerable versions of eslint
node_modules/@typescript-eslint/parser
eslint-config-wikimedia >=0.9.0
Depends on vulnerable versions of @typescript-eslint/eslint-plugin
Depends on vulnerable versions of @typescript-eslint/parser
Depends on vulnerable versions of eslint
Depends on vulnerable versions of eslint-plugin-jsdoc
Depends on vulnerable versions of eslint-plugin-vue
node_modules/eslint-config-wikimedia
@typescript-eslint/type-utils 5.62.1-alpha.0 - 8.56.0
Depends on vulnerable versions of @typescript-eslint/typescript-estree
Depends on vulnerable versions of @typescript-eslint/utils
Depends on vulnerable versions of eslint
node_modules/@typescript-eslint/type-utils
@typescript-eslint/utils <=8.56.1-alpha.2
Depends on vulnerable versions of @typescript-eslint/typescript-estree
Depends on vulnerable versions of eslint
node_modules/@typescript-eslint/utils
eslint-plugin-jsdoc 8.4.4 - 62.6.1
Depends on vulnerable versions of eslint
node_modules/eslint-plugin-jsdoc
eslint-plugin-vue 5.0.0-beta.0 - 10.7.0
Depends on vulnerable versions of eslint
node_modules/eslint-plugin-vue
grunt-eslint <=17.3.2 || >=18.1.0
Depends on vulnerable versions of eslint
Depends on vulnerable versions of grunt
node_modules/grunt-eslint
@humanwhocodes/config-array *
Depends on vulnerable versions of minimatch
node_modules/@humanwhocodes/config-array
@typescript-eslint/typescript-estree 6.16.0 - 8.56.1-alpha.2
Depends on vulnerable versions of minimatch
node_modules/@typescript-eslint/typescript-estree
glob 3.0.0 - 10.5.0
Depends on vulnerable versions of minimatch
node_modules/glob
rimraf 2.3.0 - 3.0.2 || 4.2.0 - 5.0.10
Depends on vulnerable versions of glob
node_modules/rimraf
flat-cache 1.3.4 - 4.0.0
Depends on vulnerable versions of rimraf
node_modules/flat-cache
file-entry-cache 4.0.0 - 7.0.2
Depends on vulnerable versions of flat-cache
node_modules/file-entry-cache
grunt >=0.4.0-a
Depends on vulnerable versions of glob
Depends on vulnerable versions of minimatch
node_modules/grunt
18 high severity vulnerabilities
To address issues that do not require attention, run:
npm audit fix
To address all issues (including breaking changes), run:
npm audit fix --force
--- end ---
Verifying that tests still pass
$ /usr/bin/npm ci
--- stderr ---
npm WARN deprecated @humanwhocodes/config-array@0.13.0: Use @eslint/config-array instead
npm WARN deprecated @humanwhocodes/object-schema@2.0.3: Use @eslint/object-schema instead
npm WARN deprecated glob@7.1.7: Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me
npm WARN deprecated eslint@8.57.1: This version is no longer supported. Please see https://eslint.org/version-support for other options.
--- stdout ---
added 324 packages, and audited 325 packages in 6s
71 packages are looking for funding
run `npm fund` for details
18 high severity vulnerabilities
To address issues that do not require attention, run:
npm audit fix
To address all issues (including breaking changes), run:
npm audit fix --force
Run `npm audit` for details.
--- end ---
$ /usr/bin/npm test
--- stderr ---
[baseline-browser-mapping] The data in this module is over two months old. To ensure accurate Baseline data, please update: `npm i baseline-browser-mapping@latest -D`
--- stdout ---
> test
> grunt test
Running "eslint:all" (eslint) task
/src/repo/resources/multimaps.js
48:10 warning ES2015 'Array.prototype.fill' method is forbidden es-x/no-array-prototype-fill
48:33 warning ES2015 'Array.prototype.fill' method is forbidden es-x/no-array-prototype-fill
49:6 warning ES2015 'Array.prototype.fill' method is forbidden es-x/no-array-prototype-fill
49:28 warning ES2015 'Array.prototype.fill' method is forbidden es-x/no-array-prototype-fill
/src/repo/services/Google/ext.google.js
18:7 warning 'options' is never reassigned. Use 'const' instead prefer-const
23:1 warning This line has a length of 108. Maximum allowed is 100 max-len
26:1 warning This line has a length of 109. Maximum allowed is 100 max-len
32:1 warning This line has a length of 118. Maximum allowed is 100 max-len
35:1 warning This line has a length of 119. Maximum allowed is 100 max-len
49:8 warning ES2015 'Array.prototype.fill' method is forbidden es-x/no-array-prototype-fill
50:19 warning ES2015 'Array.prototype.fill' method is forbidden es-x/no-array-prototype-fill
80:27 warning 'value' is never reassigned. Use 'const' instead prefer-const
82:1 warning This line has a length of 108. Maximum allowed is 100 max-len
85:3 warning 'marker' is never reassigned. Use 'const' instead prefer-const
96:1 warning This line has a length of 105. Maximum allowed is 100 max-len
96:32 warning 'latlngs' is never reassigned. Use 'const' instead prefer-const
96:46 warning 'value' is never reassigned. Use 'const' instead prefer-const
99:1 warning This line has a length of 103. Maximum allowed is 100 max-len
104:3 warning 'polyline' is never reassigned. Use 'const' instead prefer-const
114:40 warning 'value' is never reassigned. Use 'const' instead prefer-const
116:3 warning 'latlngs' is never reassigned. Use 'const' instead prefer-const
118:1 warning This line has a length of 103. Maximum allowed is 100 max-len
123:3 warning 'polygon' is never reassigned. Use 'const' instead prefer-const
133:27 warning 'value' is never reassigned. Use 'const' instead prefer-const
135:1 warning This line has a length of 106. Maximum allowed is 100 max-len
138:3 warning 'circle' is never reassigned. Use 'const' instead prefer-const
148:38 warning 'value' is never reassigned. Use 'const' instead prefer-const
150:3 warning 'bounds' is never reassigned. Use 'const' instead prefer-const
156:3 warning 'rectangle' is never reassigned. Use 'const' instead prefer-const
166:15 warning 'mapOptions' is never reassigned. Use 'const' instead prefer-const
178:3 warning 'map' is never reassigned. Use 'const' instead prefer-const
236:4 warning Avoid queries which search the entire DOM. Keep DOM nodes in memory where possible no-jquery/no-global-selector
/src/repo/services/Leaflet/ext.leaflet.js
14:1 warning This line has a length of 108. Maximum allowed is 100 max-len
18:7 warning 'options' is never reassigned. Use 'const' instead prefer-const
50:8 warning ES2015 'Array.prototype.fill' method is forbidden es-x/no-array-prototype-fill
51:19 warning ES2015 'Array.prototype.fill' method is forbidden es-x/no-array-prototype-fill
81:1 warning This line has a length of 108. Maximum allowed is 100 max-len
84:15 warning 'value' is never reassigned. Use 'const' instead prefer-const
86:3 warning 'marker' is never reassigned. Use 'const' instead prefer-const
94:20 warning 'latlngs' is never reassigned. Use 'const' instead prefer-const
95:4 warning 'value' is never reassigned. Use 'const' instead prefer-const
101:3 warning 'polyline' is never reassigned. Use 'const' instead prefer-const
109:19 warning 'latlngs' is never reassigned. Use 'const' instead prefer-const
110:4 warning 'value' is never reassigned. Use 'const' instead prefer-const
116:3 warning 'polygon' is never reassigned. Use 'const' instead prefer-const
124:15 warning 'value' is never reassigned. Use 'const' instead prefer-const
126:1 warning This line has a length of 120. Maximum allowed is 100 max-len
126:3 warning 'circle' is never reassigned. Use 'const' instead prefer-const
134:26 warning 'value' is never reassigned. Use 'const' instead prefer-const
136:3 warning 'bounds' is never reassigned. Use 'const' instead prefer-const
141:3 warning 'rectangle' is never reassigned. Use 'const' instead prefer-const
149:15 warning 'mapOptions' is never reassigned. Use 'const' instead prefer-const
158:3 warning 'map' is never reassigned. Use 'const' instead prefer-const
222:4 warning Avoid queries which search the entire DOM. Keep DOM nodes in memory where possible no-jquery/no-global-selector
/src/repo/services/Yandex/ext.yandex.js
36:1 warning This line has a length of 105. Maximum allowed is 100 max-len
48:8 warning ES2015 'Array.prototype.fill' method is forbidden es-x/no-array-prototype-fill
49:19 warning ES2015 'Array.prototype.fill' method is forbidden es-x/no-array-prototype-fill
79:15 warning 'value' is never reassigned. Use 'const' instead prefer-const
81:1 warning This line has a length of 126. Maximum allowed is 100 max-len
81:3 warning 'marker' is never reassigned. Use 'const' instead prefer-const
86:20 warning 'latlngs' is never reassigned. Use 'const' instead prefer-const
86:34 warning 'value' is never reassigned. Use 'const' instead prefer-const
92:3 warning 'polyline' is never reassigned. Use 'const' instead prefer-const
97:19 warning 'latlngs' is never reassigned. Use 'const' instead prefer-const
97:33 warning 'value' is never reassigned. Use 'const' instead prefer-const
104:3 warning 'polygon' is never reassigned. Use 'const' instead prefer-const
109:15 warning 'value' is never reassigned. Use 'const' instead prefer-const
111:1 warning This line has a length of 151. Maximum allowed is 100 max-len
111:3 warning 'circle' is never reassigned. Use 'const' instead prefer-const
116:26 warning 'value' is never reassigned. Use 'const' instead prefer-const
118:1 warning This line has a length of 128. Maximum allowed is 100 max-len
118:3 warning 'bounds' is never reassigned. Use 'const' instead prefer-const
120:3 warning 'rectangle' is never reassigned. Use 'const' instead prefer-const
125:25 warning 'mapOptions' is never reassigned. Use 'const' instead prefer-const
132:3 warning 'mapState' is never reassigned. Use 'const' instead prefer-const
137:3 warning 'map' is never reassigned. Use 'const' instead prefer-const
197:4 warning Avoid queries which search the entire DOM. Keep DOM nodes in memory where possible no-jquery/no-global-selector
✖ 77 problems (0 errors, 77 warnings)
Running "banana:all" (banana) task
>> 1 message directory checked.
Done.
--- end ---
{}
{}
{}
$ package-lock-lint /src/repo/package-lock.json
--- stdout ---
Checking /src/repo/package-lock.json
--- end ---
build: Updating mediawiki/mediawiki-codesniffer to 50.0.0
$ git add .
--- stdout ---
--- end ---
$ git commit -F /tmp/tmpkawtkul9
--- stdout ---
[master 883179d] build: Updating mediawiki/mediawiki-codesniffer to 50.0.0
2 files changed, 47 insertions(+), 29 deletions(-)
--- end ---
$ git format-patch HEAD~1 --stdout
--- stdout ---
From 883179d728cac9e1b2a6de177c09557d33fd2ee7 Mon Sep 17 00:00:00 2001
From: libraryupgrader <tools.libraryupgrader@tools.wmflabs.org>
Date: Tue, 24 Feb 2026 21:08:27 +0000
Subject: [PATCH] build: Updating mediawiki/mediawiki-codesniffer to 50.0.0
Change-Id: I4c7bb4b40b9ecbccafdd5d569a731d703993d61b
---
composer.json | 2 +-
package-lock.json | 74 +++++++++++++++++++++++++++++------------------
2 files changed, 47 insertions(+), 29 deletions(-)
diff --git a/composer.json b/composer.json
index e0cd801..c454bc7 100644
--- a/composer.json
+++ b/composer.json
@@ -1,6 +1,6 @@
{
"require-dev": {
- "mediawiki/mediawiki-codesniffer": "49.0.0",
+ "mediawiki/mediawiki-codesniffer": "50.0.0",
"mediawiki/minus-x": "2.0.1",
"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 42ba286..1f99162 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -138,9 +138,9 @@
}
},
"node_modules/@eslint/eslintrc/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.3.tgz",
+ "integrity": "sha512-M2GCs7Vk83NxkUyQV1bkABc4yxgz9kILhHImZiBPAZ9ybuvCb0/H7lEl5XvIg3g+9d4eNotkZA5IWwYl0tibaA==",
"dev": true,
"dependencies": {
"brace-expansion": "^1.1.7"
@@ -505,22 +505,34 @@
"typescript": ">=4.8.4 <6.0.0"
}
},
+ "node_modules/@typescript-eslint/typescript-estree/node_modules/balanced-match": {
+ "version": "4.0.4",
+ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-4.0.4.tgz",
+ "integrity": "sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==",
+ "dev": true,
+ "engines": {
+ "node": "18 || 20 || >=22"
+ }
+ },
"node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz",
- "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==",
+ "version": "5.0.3",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.3.tgz",
+ "integrity": "sha512-fy6KJm2RawA5RcHkLa1z/ScpBeA762UF9KmZQxwIbDtRJrgLzM10depAiEQ+CXYcoiqW1/m96OAAoke2nE9EeA==",
"dev": true,
"dependencies": {
- "balanced-match": "^1.0.0"
+ "balanced-match": "^4.0.2"
+ },
+ "engines": {
+ "node": "18 || 20 || >=22"
}
},
"node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": {
- "version": "9.0.5",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
- "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
+ "version": "9.0.6",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.6.tgz",
+ "integrity": "sha512-kQAVowdR33euIqeA0+VZTDqU+qo1IeVY+hrKYtZMio3Pg0P0vuh/kwRylLUddJhB6pf3q/botcOvRtx4IN1wqQ==",
"dev": true,
"dependencies": {
- "brace-expansion": "^2.0.1"
+ "brace-expansion": "^5.0.2"
},
"engines": {
"node": ">=16 || 14 >=14.17"
@@ -1645,9 +1657,9 @@
}
},
"node_modules/eslint/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.3.tgz",
+ "integrity": "sha512-M2GCs7Vk83NxkUyQV1bkABc4yxgz9kILhHImZiBPAZ9ybuvCb0/H7lEl5XvIg3g+9d4eNotkZA5IWwYl0tibaA==",
"dev": true,
"dependencies": {
"brace-expansion": "^1.1.7"
@@ -4001,9 +4013,9 @@
}
},
"minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.3.tgz",
+ "integrity": "sha512-M2GCs7Vk83NxkUyQV1bkABc4yxgz9kILhHImZiBPAZ9ybuvCb0/H7lEl5XvIg3g+9d4eNotkZA5IWwYl0tibaA==",
"dev": true,
"requires": {
"brace-expansion": "^1.1.7"
@@ -4237,22 +4249,28 @@
"ts-api-utils": "^2.1.0"
},
"dependencies": {
+ "balanced-match": {
+ "version": "4.0.4",
+ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-4.0.4.tgz",
+ "integrity": "sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==",
+ "dev": true
+ },
"brace-expansion": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz",
- "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==",
+ "version": "5.0.3",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.3.tgz",
+ "integrity": "sha512-fy6KJm2RawA5RcHkLa1z/ScpBeA762UF9KmZQxwIbDtRJrgLzM10depAiEQ+CXYcoiqW1/m96OAAoke2nE9EeA==",
"dev": true,
"requires": {
- "balanced-match": "^1.0.0"
+ "balanced-match": "^4.0.2"
}
},
"minimatch": {
- "version": "9.0.5",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
- "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
+ "version": "9.0.6",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.6.tgz",
+ "integrity": "sha512-kQAVowdR33euIqeA0+VZTDqU+qo1IeVY+hrKYtZMio3Pg0P0vuh/kwRylLUddJhB6pf3q/botcOvRtx4IN1wqQ==",
"dev": true,
"requires": {
- "brace-expansion": "^2.0.1"
+ "brace-expansion": "^5.0.2"
}
}
}
@@ -4697,9 +4715,9 @@
}
},
"minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.3.tgz",
+ "integrity": "sha512-M2GCs7Vk83NxkUyQV1bkABc4yxgz9kILhHImZiBPAZ9ybuvCb0/H7lEl5XvIg3g+9d4eNotkZA5IWwYl0tibaA==",
"dev": true,
"requires": {
"brace-expansion": "^1.1.7"
--
2.47.3
--- end ---