This run took 79 seconds.
From 1558b0e4f0e02b60c6e0fe13a8f90a2fd788d4fb Mon Sep 17 00:00:00 2001
From: libraryupgrader <tools.libraryupgrader@tools.wmflabs.org>
Date: Wed, 4 Mar 2026 03:02:08 +0000
Subject: [PATCH] build: Updating composer dependencies
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
* mediawiki/mediawiki-codesniffer: 49.0.0 → 50.0.0
* mediawiki/mediawiki-phan-config: 0.18.0 → 0.19.0
Change-Id: I4b96835126fefa3d380ad862687d87a429822b7d
---
composer.json | 4 ++--
package-lock.json | 46 +++++++++++++++++++++++-----------------------
2 files changed, 25 insertions(+), 25 deletions(-)
diff --git a/composer.json b/composer.json
index ae1f4f1..10e4755 100644
--- a/composer.json
+++ b/composer.json
@@ -1,7 +1,7 @@
{
"require-dev": {
- "mediawiki/mediawiki-codesniffer": "49.0.0",
- "mediawiki/mediawiki-phan-config": "0.18.0",
+ "mediawiki/mediawiki-codesniffer": "50.0.0",
+ "mediawiki/mediawiki-phan-config": "0.19.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 cda1c0a..ce8ceaf 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -3036,12 +3036,12 @@
}
},
"node_modules/@stylistic/eslint-plugin/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.9",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.9.tgz",
+ "integrity": "sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg==",
"dev": true,
"dependencies": {
- "brace-expansion": "^2.0.1"
+ "brace-expansion": "^2.0.2"
},
"engines": {
"node": ">=16 || 14 >=14.17"
@@ -5703,14 +5703,14 @@
"dev": true
},
"node_modules/editorconfig": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/editorconfig/-/editorconfig-1.0.4.tgz",
- "integrity": "sha512-L9Qe08KWTlqYMVvMcTIvMAdl1cDUubzRNYL+WfA4bLDMHe4nemKkpmYzkznE1FwLKu0EEmy6obgQKzMJrg4x9Q==",
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/editorconfig/-/editorconfig-1.0.7.tgz",
+ "integrity": "sha512-e0GOtq/aTQhVdNyDU9e02+wz9oDDM+SIOQxWME2QRjzRX5yyLAuHDE+0aE8vHb9XRC8XD37eO2u57+F09JqFhw==",
"dev": true,
"dependencies": {
"@one-ini/wasm": "0.1.1",
"commander": "^10.0.0",
- "minimatch": "9.0.1",
+ "minimatch": "^9.0.1",
"semver": "^7.5.3"
},
"bin": {
@@ -5730,12 +5730,12 @@
}
},
"node_modules/editorconfig/node_modules/minimatch": {
- "version": "9.0.1",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.1.tgz",
- "integrity": "sha512-0jWhJpD/MdhPXwPuiRkCbfYfSKp2qnn2eOc279qI7f+osl/l+prKSrvhg157zSYvx/1nmgn2NqdT6k2Z7zSH9w==",
+ "version": "9.0.9",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.9.tgz",
+ "integrity": "sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg==",
"dev": true,
"dependencies": {
- "brace-expansion": "^2.0.1"
+ "brace-expansion": "^2.0.2"
},
"engines": {
"node": ">=16 || 14 >=14.17"
@@ -6447,12 +6447,12 @@
}
},
"node_modules/eslint-config-wikimedia/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.9",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.9.tgz",
+ "integrity": "sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg==",
"dev": true,
"dependencies": {
- "brace-expansion": "^2.0.1"
+ "brace-expansion": "^2.0.2"
},
"engines": {
"node": ">=16 || 14 >=14.17"
@@ -7844,12 +7844,12 @@
}
},
"node_modules/glob/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.9",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.9.tgz",
+ "integrity": "sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg==",
"dev": true,
"dependencies": {
- "brace-expansion": "^2.0.1"
+ "brace-expansion": "^2.0.2"
},
"engines": {
"node": ">=16 || 14 >=14.17"
@@ -11003,9 +11003,9 @@
}
},
"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.5",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz",
+ "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==",
"dev": true,
"dependencies": {
"brace-expansion": "^1.1.7"
--
2.47.3
$ date
--- stdout ---
Wed Mar 4 03:00:53 UTC 2026
--- end ---
$ git clone file:///srv/git/mediawiki-extensions-FileImporter.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 ---
bc10630c13ccd7cb1b7d11a6809022b1d8708632 refs/heads/master
--- end ---
$ /usr/bin/npm audit --json
--- stdout ---
{
"auditReportVersion": 2,
"vulnerabilities": {
"@typescript-eslint/eslint-plugin": {
"name": "@typescript-eslint/eslint-plugin",
"severity": "high",
"isDirect": false,
"via": [
"@typescript-eslint/type-utils",
"@typescript-eslint/utils"
],
"effects": [],
"range": "6.16.0 - 7.5.0",
"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"
],
"effects": [],
"range": "6.16.0 - 7.5.0",
"nodes": [
"node_modules/@typescript-eslint/parser"
],
"fixAvailable": true
},
"@typescript-eslint/type-utils": {
"name": "@typescript-eslint/type-utils",
"severity": "high",
"isDirect": false,
"via": [
"@typescript-eslint/typescript-estree",
"@typescript-eslint/utils"
],
"effects": [],
"range": "6.16.0 - 7.5.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 - 7.5.0",
"nodes": [
"node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree",
"node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree",
"node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/typescript-estree"
],
"fixAvailable": true
},
"@typescript-eslint/utils": {
"name": "@typescript-eslint/utils",
"severity": "high",
"isDirect": false,
"via": [
"@typescript-eslint/typescript-estree"
],
"effects": [
"@typescript-eslint/eslint-plugin"
],
"range": "6.16.0 - 7.5.0",
"nodes": [
"node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/utils",
"node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/utils"
],
"fixAvailable": true
},
"editorconfig": {
"name": "editorconfig",
"severity": "high",
"isDirect": false,
"via": [
"minimatch"
],
"effects": [],
"range": "1.0.3 - 1.0.4 || 2.0.0",
"nodes": [
"node_modules/editorconfig"
],
"fixAvailable": true
},
"grunt": {
"name": "grunt",
"severity": "high",
"isDirect": true,
"via": [
"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": [
"grunt"
],
"effects": [],
"range": "<=1.0.0 || >=18.1.0",
"nodes": [
"node_modules/grunt-eslint"
],
"fixAvailable": {
"name": "grunt-eslint",
"version": "18.0.0",
"isSemVerMajor": true
}
},
"minimatch": {
"name": "minimatch",
"severity": "high",
"isDirect": false,
"via": [
{
"source": 1113459,
"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": "<3.1.3"
},
{
"source": 1113465,
"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": ">=9.0.0 <9.0.6"
},
{
"source": 1113538,
"name": "minimatch",
"dependency": "minimatch",
"title": "minimatch has ReDoS: matchOne() combinatorial backtracking via multiple non-adjacent GLOBSTAR segments",
"url": "https://github.com/advisories/GHSA-7r86-cg39-jmmj",
"severity": "high",
"cwe": [
"CWE-407"
],
"cvss": {
"score": 7.5,
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
},
"range": "<3.1.3"
},
{
"source": 1113544,
"name": "minimatch",
"dependency": "minimatch",
"title": "minimatch has ReDoS: matchOne() combinatorial backtracking via multiple non-adjacent GLOBSTAR segments",
"url": "https://github.com/advisories/GHSA-7r86-cg39-jmmj",
"severity": "high",
"cwe": [
"CWE-407"
],
"cvss": {
"score": 7.5,
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
},
"range": ">=9.0.0 <9.0.7"
},
{
"source": 1113546,
"name": "minimatch",
"dependency": "minimatch",
"title": "minimatch ReDoS: nested *() extglobs generate catastrophically backtracking regular expressions",
"url": "https://github.com/advisories/GHSA-23c5-xmqv-rm74",
"severity": "high",
"cwe": [
"CWE-1333"
],
"cvss": {
"score": 7.5,
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
},
"range": "<3.1.4"
},
{
"source": 1113552,
"name": "minimatch",
"dependency": "minimatch",
"title": "minimatch ReDoS: nested *() extglobs generate catastrophically backtracking regular expressions",
"url": "https://github.com/advisories/GHSA-23c5-xmqv-rm74",
"severity": "high",
"cwe": [
"CWE-1333"
],
"cvss": {
"score": 7.5,
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
},
"range": ">=9.0.0 <9.0.7"
}
],
"effects": [
"@typescript-eslint/typescript-estree",
"editorconfig",
"grunt"
],
"range": "<=3.1.3 || 9.0.0 - 9.0.6",
"nodes": [
"node_modules/@stylistic/eslint-plugin/node_modules/minimatch",
"node_modules/@typescript-eslint/eslint-plugin/node_modules/minimatch",
"node_modules/@typescript-eslint/parser/node_modules/minimatch",
"node_modules/@typescript-eslint/type-utils/node_modules/minimatch",
"node_modules/editorconfig/node_modules/minimatch",
"node_modules/eslint-config-wikimedia/node_modules/minimatch",
"node_modules/glob/node_modules/minimatch",
"node_modules/grunt/node_modules/minimatch",
"node_modules/minimatch"
],
"fixAvailable": {
"name": "grunt",
"version": "0.3.17",
"isSemVerMajor": true
}
}
},
"metadata": {
"vulnerabilities": {
"info": 0,
"low": 0,
"moderate": 0,
"high": 9,
"critical": 0,
"total": 9
},
"dependencies": {
"prod": 1,
"dev": 1075,
"optional": 32,
"peer": 43,
"peerOptional": 0,
"total": 1075
}
}
}
--- end ---
$ /usr/bin/composer install
--- stderr ---
No composer.lock file present. Updating dependencies to latest instead of installing from lock file. See https://getcomposer.org/install for more information.
Loading composer repositories with package information
Updating dependencies
Lock file operations: 38 installs, 0 updates, 0 removals
- Locking composer/pcre (3.3.2)
- Locking composer/semver (3.4.4)
- Locking composer/spdx-licenses (1.5.9)
- Locking composer/xdebug-handler (3.0.5)
- Locking dealerdirect/phpcodesniffer-composer-installer (v1.2.0)
- Locking doctrine/deprecations (1.1.6)
- Locking felixfbecker/advanced-json-rpc (v3.2.1)
- Locking mediawiki/mediawiki-codesniffer (v49.0.0)
- Locking mediawiki/mediawiki-phan-config (0.18.0)
- Locking mediawiki/minus-x (2.0.1)
- Locking mediawiki/phan-taint-check-plugin (8.0.0)
- Locking microsoft/tolerant-php-parser (v0.1.2)
- Locking netresearch/jsonmapper (v4.5.0)
- Locking phan/phan (5.5.2)
- 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 phpdocumentor/reflection-common (2.2.0)
- Locking phpdocumentor/reflection-docblock (5.6.6)
- Locking phpdocumentor/type-resolver (1.12.0)
- Locking phpstan/phpdoc-parser (2.3.2)
- Locking psr/container (2.0.2)
- Locking psr/log (3.0.2)
- Locking sabre/event (5.1.7)
- Locking squizlabs/php_codesniffer (3.13.5)
- Locking symfony/console (v7.4.6)
- 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/polyfill-php80 (v1.33.0)
- Locking symfony/service-contracts (v3.6.1)
- Locking symfony/string (v8.0.6)
- Locking tysonandre/var_representation_polyfill (0.1.3)
- Locking webmozart/assert (2.1.6)
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 38 installs, 0 updates, 0 removals
0 [>---------------------------] 0 [->--------------------------]
- Installing squizlabs/php_codesniffer (3.13.5): Extracting archive
- Installing dealerdirect/phpcodesniffer-composer-installer (v1.2.0): Extracting archive
- Installing composer/pcre (3.3.2): 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 tysonandre/var_representation_polyfill (0.1.3): Extracting archive
- Installing symfony/polyfill-php80 (v1.33.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.6): 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 (v7.4.6): Extracting archive
- Installing sabre/event (5.1.7): Extracting archive
- Installing netresearch/jsonmapper (v4.5.0): Extracting archive
- Installing microsoft/tolerant-php-parser (v0.1.2): Extracting archive
- Installing webmozart/assert (2.1.6): Extracting archive
- Installing phpstan/phpdoc-parser (2.3.2): Extracting archive
- Installing phpdocumentor/reflection-common (2.2.0): Extracting archive
- Installing doctrine/deprecations (1.1.6): Extracting archive
- Installing phpdocumentor/type-resolver (1.12.0): Extracting archive
- Installing phpdocumentor/reflection-docblock (5.6.6): Extracting archive
- Installing felixfbecker/advanced-json-rpc (v3.2.1): Extracting archive
- Installing psr/log (3.0.2): Extracting archive
- Installing composer/xdebug-handler (3.0.5): Extracting archive
- Installing phan/phan (5.5.2): Extracting archive
- Installing mediawiki/phan-taint-check-plugin (8.0.0): Extracting archive
- Installing mediawiki/mediawiki-phan-config (0.18.0): 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/36 [>---------------------------] 0%
28/36 [=====================>------] 77%
36/36 [============================] 100%
1 package suggestions were added by new dependencies, use `composer suggest` to see details.
Generating autoload files
17 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
Upgrading c:mediawiki/mediawiki-phan-config from 0.18.0 -> 0.19.0
$ /usr/bin/composer update
--- stderr ---
Loading composer repositories with package information
Updating dependencies
Lock file operations: 2 installs, 5 updates, 3 removals
- Removing microsoft/tolerant-php-parser (v0.1.2)
- Removing symfony/polyfill-php80 (v1.33.0)
- Removing tysonandre/var_representation_polyfill (0.1.3)
- Upgrading mediawiki/mediawiki-codesniffer (v49.0.0 => v50.0.0)
- Upgrading mediawiki/mediawiki-phan-config (0.18.0 => 0.19.0)
- Upgrading mediawiki/phan-taint-check-plugin (8.0.0 => 9.0.0)
- Upgrading phan/phan (5.5.2 => 6.0.1)
- Locking phan/tolerant-php-parser (v0.2.0)
- Locking phan/var_representation_polyfill (0.1.4)
- Upgrading symfony/console (v7.4.6 => v8.0.6)
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 2 installs, 5 updates, 3 removals
0 [>---------------------------] 0 [->--------------------------]
- Removing tysonandre/var_representation_polyfill (0.1.3)
- Removing symfony/polyfill-php80 (v1.33.0)
- Removing microsoft/tolerant-php-parser (v0.1.2)
- Upgrading mediawiki/mediawiki-codesniffer (v49.0.0 => v50.0.0): Extracting archive
- Upgrading symfony/console (v7.4.6 => v8.0.6): Extracting archive
- Installing phan/var_representation_polyfill (0.1.4): Extracting archive
- Installing phan/tolerant-php-parser (v0.2.0): Extracting archive
- Upgrading phan/phan (5.5.2 => 6.0.1): Extracting archive
- Upgrading mediawiki/phan-taint-check-plugin (8.0.0 => 9.0.0): Extracting archive
- Upgrading mediawiki/mediawiki-phan-config (0.18.0 => 0.19.0): Extracting archive
0/7 [>---------------------------] 0%
6/7 [========================>---] 85%
7/7 [============================] 100%
Generating autoload files
16 packages you are using are looking for funding.
Use the `composer fund` command to find out more!
No security vulnerability advisories found.
--- stdout ---
--- end ---
$ vendor/bin/phpcs --report=json
--- stdout ---
{"totals":{"errors":0,"warnings":0,"fixable":0},"files":{"\/src\/repo\/src\/Interfaces\/DetailRetriever.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Interfaces\/LinkPrefixLookup.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Exceptions\/AbuseFilterWarningsException.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Exceptions\/TitleException.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Exceptions\/InvalidArgumentException.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Exceptions\/CommunityPolicyException.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Interfaces\/ImportOperation.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Exceptions\/SourceUrlException.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/VisualEditorHooks.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Html\/InfoPage.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Interfaces\/ImportTitleChecker.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Exceptions\/RecoverableTitleException.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Exceptions\/HttpRequestException.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Exceptions\/ImportException.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Html\/ChangeFileInfoForm.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Html\/RecoverableTitleExceptionPage.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Exceptions\/DuplicateFilesException.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Html\/TextRevisionSnippet.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/FileImporterHooks.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Services\/Wikitext\/LocalizedMediaWikiNamespaceLookup.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Interfaces\/SourceUrlChecker.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Html\/ChangeFileNameForm.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Services\/SourceSiteLocator.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Remote\/MediaWiki\/SiteWiring.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Remote\/MediaWiki\/SiteTableSiteLookup.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Remote\/MediaWiki\/SiteTableSourceUrlChecker.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/HookRunner.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Html\/HelpBanner.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Services\/Wikitext\/WikiLinkParser.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Exceptions\/LocalizedImportException.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Interfaces\/PostImportHandler.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Html\/InputFormPage.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Html\/FileInfoDiffPage.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Services\/UploadBase\/UploadBaseFactory.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Services\/Wikitext\/WikiLinkPrefixer.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Services\/MediaWikiSourceUrlNormalizer.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Services\/WikidataTemplateLookup.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Services\/FileDescriptionPageValidator.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Services\/Wikitext\/NamespaceNameLookup.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Remote\/MediaWiki\/SuggestManualTemplateAction.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Html\/WikitextEditor.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Html\/DuplicateFilesErrorPage.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Remote\/MediaWiki\/HttpApiLookup.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Html\/ImportIdentityFormSnippet.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Services\/Wikitext\/WikiLinkCleaner.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Services\/FileTextRevisionValidator.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Services\/DuplicateFileRevisionChecker.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Remote\/MediaWiki\/RemoteApiActionExecutor.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Remote\/MediaWiki\/MediaWikiSourceUrlParser.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/unit\/FileImporterUtilsTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Services\/SourceSite.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Html\/CategoriesSnippet.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Data\/SourceUrl.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Services\/NullRevisionCreator.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/FileImporterUtils.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/unit\/FileImporterHooksTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Remote\/MediaWiki\/AllowedDomainsFileUrlChecker.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Exceptions\/RecoverableTitleExceptionTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Html\/ImportSuccessSnippet.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Html\/ErrorPage.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Services\/Wikitext\/CommonsHelperConfigParser.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Exceptions\/AbuseFilterWarningsExceptionTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/unit\/Exceptions\/DuplicateFilesExceptionTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Data\/FileRevisions.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Remote\/MediaWiki\/CommonsHelperConfigRetriever.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Services\/Wikitext\/NamespaceUnlocalizer.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/unit\/Exceptions\/ImportExceptionTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Remote\/NullPrefixLookup.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Services\/UploadBase\/ValidatingUploadBase.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Exceptions\/LocalizedImportExceptionTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Data\/TextRevision.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Services\/Http\/HttpRequestExecutor.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Remote\/MediaWiki\/RemoteSourceFileEditDeleteAction.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/unit\/Exceptions\/HttpRequestExceptionTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Html\/SourceWikiCleanupSnippet.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Services\/Wikitext\/WikiLinkParserFactory.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/unit\/Data\/TextRevisionsTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Data\/ImportDetails.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Html\/SpecialPageHtmlFragment.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Services\/ImportPlanFactory.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Data\/FileRevision.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Operations\/FileRevisionFromRemoteUrl.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/FileImporter.alias.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/unit\/Services\/Wikitext\/WikiLinkParserTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/unit\/Data\/FileRevisionTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Data\/TextRevisions.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/MediaWiki\/AnyMediaWikiFileUrlCheckerTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Data\/ImportPlan.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/unit\/Remote\/MediaWiki\/RemoteApiActionExecutorTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/MediaWiki\/AllowedDomainsFileUrlCheckerTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Services\/Http\/FileChunkSaver.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Services\/ImportPlanValidator.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Services\/Wikitext\/WikiLinkParserFactoryTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Services\/SourceUrlNormalizer.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Remote\/MediaWiki\/HttpApiLookupTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Remote\/MediaWiki\/InterwikiTablePrefixLookup.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Services\/WikimediaSourceUrlNormalizer.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/unit\/Services\/Http\/HttpRequestExecutorTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/unit\/Services\/Wikitext\/NamespaceUnlocalizerTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Data\/ImportRequest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Services\/SourceSiteLocatorTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/unit\/Remote\/MediaWiki\/RemoteApiRequestExecutorTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Html\/ImportSuccessSnippetTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Remote\/MediaWiki\/CommonsHelperConfigRetrieverTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/unit\/Data\/FileRevisionsTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Remote\/MediaWiki\/CentralAuthTokenProvider.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Data\/ImportOperations.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Html\/ImportPreviewPage.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Services\/FileDescriptionPageValidatorTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/MediaWiki\/SiteTableSiteLookupTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Data\/ImportRequestTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Services\/CategoryExtractor.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Services\/Wikitext\/WikitextContentCleaner.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/unit\/Services\/DuplicateFileRevisionCheckerTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Services\/Wikitext\/WikiLinkPrefixerTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Remote\/MediaWiki\/SiteTableSourceUrlCheckerTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Services\/SourceSiteTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Services\/WikidataTemplateLookupTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Services\/Importer.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/unit\/Remote\/MediaWiki\/SuggestManualTemplateActionTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Services\/SuccessCache.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/unit\/HookRunnerTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/unit\/Data\/WikitextConversionsTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/MediaWiki\/FileImporterUploadBaseTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Services\/Http\/FileChunkSaverTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/unit\/Data\/TextRevisionTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/ServiceWiring.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/SpecialImportFileDoImportTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/unit\/Data\/ImportOperationsTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Services\/WikiRevisionFactory.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Remote\/MediaWiki\/ApiDetailRetriever.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Html\/SourceWikiCleanupSnippetTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Html\/ImportPreviewPageTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Remote\/MediaWiki\/AnyMediaWikiFileUrlChecker.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Html\/CategoriesSnippetTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Data\/SourceUrlTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Remote\/MediaWiki\/InterwikiTablePrefixLookupTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Html\/FileInfoDiffPageTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Services\/NullRevisionCreatorTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Operations\/TextRevisionFromTextRevision.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Remote\/MediaWiki\/RemoteApiImportTitleCheckerTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Services\/CategoryExtractorTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Data\/ImportDetailsTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Data\/WikitextConversions.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Operations\/FileRevisionFromRemoteUrlTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/.phan\/config.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/SpecialImportFileIntegrationTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Remote\/MediaWiki\/RemoteSourceFileEditDeleteActionTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Services\/Wikitext\/CommonsHelperConfigParserTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Html\/ChangeFileNameFormTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Services\/WikimediaSourceUrlNormalizerTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/unit\/Services\/Wikitext\/WikitextContentCleanerTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/SpecialImportFile.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Html\/ChangeFileInfoFormTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Operations\/TextRevisionFromTextRevisionTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Services\/ImportPlanValidatorTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Remote\/MediaWiki\/RemoteApiRequestExecutor.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/src\/Remote\/MediaWiki\/RemoteApiImportTitleChecker.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Services\/ImporterTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Services\/UploadBase\/ValidatingUploadBaseTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Services\/FileTextRevisionValidatorTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Data\/ImportPlanTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Remote\/MediaWiki\/ApiDetailRetrieverTest.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/tests\/phpunit\/Services\/ImporterComponentTest.php":{"errors":0,"warnings":0,"messages":[]}}}
--- end ---
$ /usr/bin/composer install
--- stderr ---
Installing dependencies from lock file (including require-dev)
Verifying lock file contents can be installed on current platform.
Nothing to install, update or remove
Generating autoload files
16 packages you are using are looking for funding.
Use the `composer fund` command to find out more!
--- stdout ---
--- end ---
$ /usr/bin/composer test
--- stderr ---
> parallel-lint . --exclude vendor --exclude node_modules
> phpcs -sp --cache
> minus-x check .
--- stdout ---
PHP 8.4.18 | 10 parallel jobs
............................................................ 60/164 ( 36%)
............................................................ 120/164 ( 73%)
............................................ 164/164 (100%)
Checked 164 files in 0.6 seconds
No syntax error found
....................................................... 55 / 55 (100%)
Time: 419ms; Memory: 12MB
MinusX
======
Processing /src/repo...
.............................................................
.............................................................
.............................................................
.............................................................
.............................................................
...............................
All good!
--- end ---
$ /usr/bin/npm audit --json
--- stdout ---
{
"auditReportVersion": 2,
"vulnerabilities": {
"@typescript-eslint/eslint-plugin": {
"name": "@typescript-eslint/eslint-plugin",
"severity": "high",
"isDirect": false,
"via": [
"@typescript-eslint/type-utils",
"@typescript-eslint/utils"
],
"effects": [],
"range": "6.16.0 - 7.5.0",
"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"
],
"effects": [],
"range": "6.16.0 - 7.5.0",
"nodes": [
"node_modules/@typescript-eslint/parser"
],
"fixAvailable": true
},
"@typescript-eslint/type-utils": {
"name": "@typescript-eslint/type-utils",
"severity": "high",
"isDirect": false,
"via": [
"@typescript-eslint/typescript-estree",
"@typescript-eslint/utils"
],
"effects": [],
"range": "6.16.0 - 7.5.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 - 7.5.0",
"nodes": [
"node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree",
"node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree",
"node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/typescript-estree"
],
"fixAvailable": true
},
"@typescript-eslint/utils": {
"name": "@typescript-eslint/utils",
"severity": "high",
"isDirect": false,
"via": [
"@typescript-eslint/typescript-estree"
],
"effects": [
"@typescript-eslint/eslint-plugin"
],
"range": "6.16.0 - 7.5.0",
"nodes": [
"node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/utils",
"node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/utils"
],
"fixAvailable": true
},
"editorconfig": {
"name": "editorconfig",
"severity": "high",
"isDirect": false,
"via": [
"minimatch"
],
"effects": [],
"range": "1.0.3 - 1.0.4 || 2.0.0",
"nodes": [
"node_modules/editorconfig"
],
"fixAvailable": true
},
"grunt": {
"name": "grunt",
"severity": "high",
"isDirect": true,
"via": [
"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": [
"grunt"
],
"effects": [],
"range": "<=1.0.0 || >=18.1.0",
"nodes": [
"node_modules/grunt-eslint"
],
"fixAvailable": {
"name": "grunt-eslint",
"version": "18.0.0",
"isSemVerMajor": true
}
},
"minimatch": {
"name": "minimatch",
"severity": "high",
"isDirect": false,
"via": [
{
"source": 1113459,
"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": "<3.1.3"
},
{
"source": 1113465,
"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": ">=9.0.0 <9.0.6"
},
{
"source": 1113538,
"name": "minimatch",
"dependency": "minimatch",
"title": "minimatch has ReDoS: matchOne() combinatorial backtracking via multiple non-adjacent GLOBSTAR segments",
"url": "https://github.com/advisories/GHSA-7r86-cg39-jmmj",
"severity": "high",
"cwe": [
"CWE-407"
],
"cvss": {
"score": 7.5,
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
},
"range": "<3.1.3"
},
{
"source": 1113544,
"name": "minimatch",
"dependency": "minimatch",
"title": "minimatch has ReDoS: matchOne() combinatorial backtracking via multiple non-adjacent GLOBSTAR segments",
"url": "https://github.com/advisories/GHSA-7r86-cg39-jmmj",
"severity": "high",
"cwe": [
"CWE-407"
],
"cvss": {
"score": 7.5,
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
},
"range": ">=9.0.0 <9.0.7"
},
{
"source": 1113546,
"name": "minimatch",
"dependency": "minimatch",
"title": "minimatch ReDoS: nested *() extglobs generate catastrophically backtracking regular expressions",
"url": "https://github.com/advisories/GHSA-23c5-xmqv-rm74",
"severity": "high",
"cwe": [
"CWE-1333"
],
"cvss": {
"score": 7.5,
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
},
"range": "<3.1.4"
},
{
"source": 1113552,
"name": "minimatch",
"dependency": "minimatch",
"title": "minimatch ReDoS: nested *() extglobs generate catastrophically backtracking regular expressions",
"url": "https://github.com/advisories/GHSA-23c5-xmqv-rm74",
"severity": "high",
"cwe": [
"CWE-1333"
],
"cvss": {
"score": 7.5,
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
},
"range": ">=9.0.0 <9.0.7"
}
],
"effects": [
"@typescript-eslint/typescript-estree",
"editorconfig",
"grunt"
],
"range": "<=3.1.3 || 9.0.0 - 9.0.6",
"nodes": [
"node_modules/@stylistic/eslint-plugin/node_modules/minimatch",
"node_modules/@typescript-eslint/eslint-plugin/node_modules/minimatch",
"node_modules/@typescript-eslint/parser/node_modules/minimatch",
"node_modules/@typescript-eslint/type-utils/node_modules/minimatch",
"node_modules/editorconfig/node_modules/minimatch",
"node_modules/eslint-config-wikimedia/node_modules/minimatch",
"node_modules/glob/node_modules/minimatch",
"node_modules/grunt/node_modules/minimatch",
"node_modules/minimatch"
],
"fixAvailable": {
"name": "grunt",
"version": "0.3.17",
"isSemVerMajor": true
}
}
},
"metadata": {
"vulnerabilities": {
"info": 0,
"low": 0,
"moderate": 0,
"high": 9,
"critical": 0,
"total": 9
},
"dependencies": {
"prod": 1,
"dev": 1075,
"optional": 32,
"peer": 43,
"peerOptional": 0,
"total": 1075
}
}
}
--- 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
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE package: '@wikimedia/codex@2.3.4',
npm WARN EBADENGINE required: { node: '>=20.19.1', npm: '>=10.8.2' },
npm WARN EBADENGINE current: { node: 'v20.19.2', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE package: '@wikimedia/codex-icons@2.3.4',
npm WARN EBADENGINE required: { node: '>=20.19.1', npm: '>=10.8.2' },
npm WARN EBADENGINE current: { node: 'v20.19.2', npm: '9.2.0' }
npm WARN EBADENGINE }
--- stdout ---
{
"added": 1075,
"removed": 0,
"changed": 0,
"audited": 1076,
"funding": 175,
"audit": {
"auditReportVersion": 2,
"vulnerabilities": {
"@typescript-eslint/eslint-plugin": {
"name": "@typescript-eslint/eslint-plugin",
"severity": "high",
"isDirect": false,
"via": [
"@typescript-eslint/type-utils",
"@typescript-eslint/utils"
],
"effects": [],
"range": "6.16.0 - 7.5.0",
"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"
],
"effects": [],
"range": "6.16.0 - 7.5.0",
"nodes": [
"node_modules/@typescript-eslint/parser"
],
"fixAvailable": true
},
"@typescript-eslint/type-utils": {
"name": "@typescript-eslint/type-utils",
"severity": "high",
"isDirect": false,
"via": [
"@typescript-eslint/typescript-estree",
"@typescript-eslint/utils"
],
"effects": [
"@typescript-eslint/eslint-plugin"
],
"range": "6.16.0 - 7.5.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 - 7.5.0",
"nodes": [
"node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree",
"node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree",
"node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/typescript-estree"
],
"fixAvailable": true
},
"@typescript-eslint/utils": {
"name": "@typescript-eslint/utils",
"severity": "high",
"isDirect": false,
"via": [
"@typescript-eslint/typescript-estree"
],
"effects": [],
"range": "6.16.0 - 7.5.0",
"nodes": [
"node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/utils",
"node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/utils"
],
"fixAvailable": true
},
"editorconfig": {
"name": "editorconfig",
"severity": "high",
"isDirect": false,
"via": [
"minimatch"
],
"effects": [],
"range": "1.0.3 - 1.0.4 || 2.0.0",
"nodes": [
""
],
"fixAvailable": true
},
"grunt": {
"name": "grunt",
"severity": "high",
"isDirect": true,
"via": [
"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": [
"grunt"
],
"effects": [],
"range": "<=1.0.0 || >=18.1.0",
"nodes": [
"node_modules/grunt-eslint"
],
"fixAvailable": {
"name": "grunt-eslint",
"version": "18.0.0",
"isSemVerMajor": true
}
},
"minimatch": {
"name": "minimatch",
"severity": "high",
"isDirect": false,
"via": [
{
"source": 1113459,
"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": "<3.1.3"
},
{
"source": 1113465,
"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": ">=9.0.0 <9.0.6"
},
{
"source": 1113538,
"name": "minimatch",
"dependency": "minimatch",
"title": "minimatch has ReDoS: matchOne() combinatorial backtracking via multiple non-adjacent GLOBSTAR segments",
"url": "https://github.com/advisories/GHSA-7r86-cg39-jmmj",
"severity": "high",
"cwe": [
"CWE-407"
],
"cvss": {
"score": 7.5,
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
},
"range": "<3.1.3"
},
{
"source": 1113544,
"name": "minimatch",
"dependency": "minimatch",
"title": "minimatch has ReDoS: matchOne() combinatorial backtracking via multiple non-adjacent GLOBSTAR segments",
"url": "https://github.com/advisories/GHSA-7r86-cg39-jmmj",
"severity": "high",
"cwe": [
"CWE-407"
],
"cvss": {
"score": 7.5,
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
},
"range": ">=9.0.0 <9.0.7"
},
{
"source": 1113546,
"name": "minimatch",
"dependency": "minimatch",
"title": "minimatch ReDoS: nested *() extglobs generate catastrophically backtracking regular expressions",
"url": "https://github.com/advisories/GHSA-23c5-xmqv-rm74",
"severity": "high",
"cwe": [
"CWE-1333"
],
"cvss": {
"score": 7.5,
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
},
"range": "<3.1.4"
},
{
"source": 1113552,
"name": "minimatch",
"dependency": "minimatch",
"title": "minimatch ReDoS: nested *() extglobs generate catastrophically backtracking regular expressions",
"url": "https://github.com/advisories/GHSA-23c5-xmqv-rm74",
"severity": "high",
"cwe": [
"CWE-1333"
],
"cvss": {
"score": 7.5,
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
},
"range": ">=9.0.0 <9.0.7"
}
],
"effects": [
"@typescript-eslint/typescript-estree",
"editorconfig",
"grunt"
],
"range": "<=3.1.3 || 9.0.0 - 9.0.6",
"nodes": [
"",
"",
"",
"",
"",
"node_modules/@typescript-eslint/eslint-plugin/node_modules/minimatch",
"node_modules/@typescript-eslint/parser/node_modules/minimatch",
"node_modules/@typescript-eslint/type-utils/node_modules/minimatch",
"node_modules/grunt/node_modules/minimatch"
],
"fixAvailable": {
"name": "grunt",
"version": "0.3.17",
"isSemVerMajor": true
}
}
},
"metadata": {
"vulnerabilities": {
"info": 0,
"low": 0,
"moderate": 0,
"high": 9,
"critical": 0,
"total": 9
},
"dependencies": {
"prod": 1,
"dev": 1075,
"optional": 32,
"peer": 43,
"peerOptional": 0,
"total": 1075
}
}
}
}
--- end ---
{"added": 1075, "removed": 0, "changed": 0, "audited": 1076, "funding": 175, "audit": {"auditReportVersion": 2, "vulnerabilities": {"@typescript-eslint/eslint-plugin": {"name": "@typescript-eslint/eslint-plugin", "severity": "high", "isDirect": false, "via": ["@typescript-eslint/type-utils", "@typescript-eslint/utils"], "effects": [], "range": "6.16.0 - 7.5.0", "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"], "effects": [], "range": "6.16.0 - 7.5.0", "nodes": ["node_modules/@typescript-eslint/parser"], "fixAvailable": true}, "@typescript-eslint/type-utils": {"name": "@typescript-eslint/type-utils", "severity": "high", "isDirect": false, "via": ["@typescript-eslint/typescript-estree", "@typescript-eslint/utils"], "effects": ["@typescript-eslint/eslint-plugin"], "range": "6.16.0 - 7.5.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 - 7.5.0", "nodes": ["node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree", "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree", "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/typescript-estree"], "fixAvailable": true}, "@typescript-eslint/utils": {"name": "@typescript-eslint/utils", "severity": "high", "isDirect": false, "via": ["@typescript-eslint/typescript-estree"], "effects": [], "range": "6.16.0 - 7.5.0", "nodes": ["node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/utils", "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/utils"], "fixAvailable": true}, "editorconfig": {"name": "editorconfig", "severity": "high", "isDirect": false, "via": ["minimatch"], "effects": [], "range": "1.0.3 - 1.0.4 || 2.0.0", "nodes": [""], "fixAvailable": true}, "grunt": {"name": "grunt", "severity": "high", "isDirect": true, "via": ["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": ["grunt"], "effects": [], "range": "<=1.0.0 || >=18.1.0", "nodes": ["node_modules/grunt-eslint"], "fixAvailable": {"name": "grunt-eslint", "version": "18.0.0", "isSemVerMajor": true}}, "minimatch": {"name": "minimatch", "severity": "high", "isDirect": false, "via": [{"source": 1113459, "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": "<3.1.3"}, {"source": 1113465, "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": ">=9.0.0 <9.0.6"}, {"source": 1113538, "name": "minimatch", "dependency": "minimatch", "title": "minimatch has ReDoS: matchOne() combinatorial backtracking via multiple non-adjacent GLOBSTAR segments", "url": "https://github.com/advisories/GHSA-7r86-cg39-jmmj", "severity": "high", "cwe": ["CWE-407"], "cvss": {"score": 7.5, "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"}, "range": "<3.1.3"}, {"source": 1113544, "name": "minimatch", "dependency": "minimatch", "title": "minimatch has ReDoS: matchOne() combinatorial backtracking via multiple non-adjacent GLOBSTAR segments", "url": "https://github.com/advisories/GHSA-7r86-cg39-jmmj", "severity": "high", "cwe": ["CWE-407"], "cvss": {"score": 7.5, "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"}, "range": ">=9.0.0 <9.0.7"}, {"source": 1113546, "name": "minimatch", "dependency": "minimatch", "title": "minimatch ReDoS: nested *() extglobs generate catastrophically backtracking regular expressions", "url": "https://github.com/advisories/GHSA-23c5-xmqv-rm74", "severity": "high", "cwe": ["CWE-1333"], "cvss": {"score": 7.5, "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"}, "range": "<3.1.4"}, {"source": 1113552, "name": "minimatch", "dependency": "minimatch", "title": "minimatch ReDoS: nested *() extglobs generate catastrophically backtracking regular expressions", "url": "https://github.com/advisories/GHSA-23c5-xmqv-rm74", "severity": "high", "cwe": ["CWE-1333"], "cvss": {"score": 7.5, "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"}, "range": ">=9.0.0 <9.0.7"}], "effects": ["@typescript-eslint/typescript-estree", "editorconfig", "grunt"], "range": "<=3.1.3 || 9.0.0 - 9.0.6", "nodes": ["", "", "", "", "", "node_modules/@typescript-eslint/eslint-plugin/node_modules/minimatch", "node_modules/@typescript-eslint/parser/node_modules/minimatch", "node_modules/@typescript-eslint/type-utils/node_modules/minimatch", "node_modules/grunt/node_modules/minimatch"], "fixAvailable": {"name": "grunt", "version": "0.3.17", "isSemVerMajor": true}}}, "metadata": {"vulnerabilities": {"info": 0, "low": 0, "moderate": 0, "high": 9, "critical": 0, "total": 9}, "dependencies": {"prod": 1, "dev": 1075, "optional": 32, "peer": 43, "peerOptional": 0, "total": 1075}}}}
$ /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 EBADENGINE Unsupported engine {
npm WARN EBADENGINE package: '@wikimedia/codex@2.3.4',
npm WARN EBADENGINE required: { node: '>=20.19.1', npm: '>=10.8.2' },
npm WARN EBADENGINE current: { node: 'v20.19.2', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE package: '@wikimedia/codex-icons@2.3.4',
npm WARN EBADENGINE required: { node: '>=20.19.1', npm: '>=10.8.2' },
npm WARN EBADENGINE current: { node: 'v20.19.2', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN deprecated osenv@0.1.5: This package is no longer supported.
npm WARN deprecated inflight@1.0.6: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
npm WARN deprecated @humanwhocodes/config-array@0.13.0: Use @eslint/config-array instead
npm WARN deprecated rimraf@3.0.2: Rimraf versions prior to v4 are no longer supported
npm WARN deprecated abab@2.0.6: Use your platform's native atob() and btoa() methods instead
npm WARN deprecated @humanwhocodes/object-schema@2.0.3: Use @eslint/object-schema instead
npm WARN deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
npm WARN deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
npm WARN deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
npm WARN deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
npm WARN deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
npm WARN deprecated glob@7.1.7: Glob versions prior to v9 are no longer supported
npm WARN deprecated domexception@4.0.0: Use your platform's native DOMException instead
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 1074 packages, and audited 1075 packages in 15s
175 packages are looking for funding
run `npm fund` for details
# npm audit report
minimatch <=3.1.3 || 9.0.0 - 9.0.6
Severity: high
minimatch has a ReDoS via repeated wildcards with non-matching literal in pattern - https://github.com/advisories/GHSA-3ppc-4f35-3m26
minimatch has a ReDoS via repeated wildcards with non-matching literal in pattern - https://github.com/advisories/GHSA-3ppc-4f35-3m26
minimatch has ReDoS: matchOne() combinatorial backtracking via multiple non-adjacent GLOBSTAR segments - https://github.com/advisories/GHSA-7r86-cg39-jmmj
minimatch has ReDoS: matchOne() combinatorial backtracking via multiple non-adjacent GLOBSTAR segments - https://github.com/advisories/GHSA-7r86-cg39-jmmj
minimatch ReDoS: nested *() extglobs generate catastrophically backtracking regular expressions - https://github.com/advisories/GHSA-23c5-xmqv-rm74
minimatch ReDoS: nested *() extglobs generate catastrophically backtracking regular expressions - https://github.com/advisories/GHSA-23c5-xmqv-rm74
fix available via `npm audit fix --force`
Will install grunt@0.3.17, which is a breaking change
node_modules/@typescript-eslint/eslint-plugin/node_modules/minimatch
node_modules/@typescript-eslint/parser/node_modules/minimatch
node_modules/@typescript-eslint/type-utils/node_modules/minimatch
node_modules/grunt/node_modules/minimatch
@typescript-eslint/typescript-estree 6.16.0 - 7.5.0
Depends on vulnerable versions of minimatch
node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree
node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree
node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/typescript-estree
@typescript-eslint/parser 6.16.0 - 7.5.0
Depends on vulnerable versions of @typescript-eslint/typescript-estree
node_modules/@typescript-eslint/parser
@typescript-eslint/type-utils 6.16.0 - 7.5.0
Depends on vulnerable versions of @typescript-eslint/typescript-estree
Depends on vulnerable versions of @typescript-eslint/utils
node_modules/@typescript-eslint/type-utils
@typescript-eslint/utils 6.16.0 - 7.5.0
Depends on vulnerable versions of @typescript-eslint/typescript-estree
node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/utils
node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/utils
@typescript-eslint/eslint-plugin 6.16.0 - 7.5.0
Depends on vulnerable versions of @typescript-eslint/type-utils
Depends on vulnerable versions of @typescript-eslint/utils
node_modules/@typescript-eslint/eslint-plugin
grunt >=0.4.0-a
Depends on vulnerable versions of minimatch
node_modules/grunt
grunt-eslint <=1.0.0 || >=18.1.0
Depends on vulnerable versions of grunt
node_modules/grunt-eslint
8 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 EBADENGINE Unsupported engine {
npm WARN EBADENGINE package: '@wikimedia/codex@2.3.4',
npm WARN EBADENGINE required: { node: '>=20.19.1', npm: '>=10.8.2' },
npm WARN EBADENGINE current: { node: 'v20.19.2', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE package: '@wikimedia/codex-icons@2.3.4',
npm WARN EBADENGINE required: { node: '>=20.19.1', npm: '>=10.8.2' },
npm WARN EBADENGINE current: { node: 'v20.19.2', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN deprecated osenv@0.1.5: This package is no longer supported.
npm WARN deprecated inflight@1.0.6: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
npm WARN deprecated @humanwhocodes/config-array@0.13.0: Use @eslint/config-array instead
npm WARN deprecated rimraf@3.0.2: Rimraf versions prior to v4 are no longer supported
npm WARN deprecated abab@2.0.6: Use your platform's native atob() and btoa() methods instead
npm WARN deprecated @humanwhocodes/object-schema@2.0.3: Use @eslint/object-schema instead
npm WARN deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
npm WARN deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
npm WARN deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
npm WARN deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
npm WARN deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
npm WARN deprecated glob@7.1.7: Glob versions prior to v9 are no longer supported
npm WARN deprecated domexception@4.0.0: Use your platform's native DOMException instead
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 1074 packages, and audited 1075 packages in 21s
175 packages are looking for funding
run `npm fund` for details
8 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 ---
PASS tests/vue/CategoriesList.test.js
CategoriesList
✓ renders categories with correct structure and href attributes (49 ms)
PASS tests/vue/CategoriesSection.test.js
CategoriesSection
✓ displays notice message when there are no categories (133 ms)
✓ does not render category catlinks when there are no categories (31 ms)
✓ renders visible and hidden categories in distinct sections with correct content when present (29 ms)
PASS tests/vue/HelpBanner.test.js
Basic usage
✓ close button sets user option (129 ms)
PASS tests/vue/FileTitle.test.js
Basic usage
✓ click on title enters editing mode (88 ms)
✓ changing title triggers normalization (68 ms)
Test Suites: 4 passed, 4 total
Tests: 7 passed, 7 total
Snapshots: 0 total
Time: 3.474 s
Ran all test suites.
--- stdout ---
> test
> npm run lint && npm run test:unit
> lint
> grunt test
Running "eslint:all" (eslint) task
/src/repo/modules/components/HelpBanner.vue
13:5 warning 'v-html' directive can lead to XSS attack vue/no-v-html
/src/repo/modules/components/ImportFile.vue
4:10 warning 'v-html' directive can lead to XSS attack vue/no-v-html
39:10 warning 'v-html' directive can lead to XSS attack vue/no-v-html
67:4 warning 'v-html' directive can lead to XSS attack vue/no-v-html
165:1 warning This line has a length of 123. Maximum allowed is 100 max-len
✖ 5 problems (0 errors, 5 warnings)
Running "stylelint:all" (stylelint) task
>> Linted 7 files without errors
Running "banana:FileImporter" (banana) task
>> 1 message directory checked.
Done.
> test:unit
> jest
console.warn
[CdxMessage]: The boolean `allowUserDismiss` prop is required to show the dismiss button.
Refer to https://doc.wikimedia.org/codex/latest/components/demos/message.html#props.
15 |
16 | it( 'close button sets user option', async () => {
> 17 | const wrapper = mount( HelpBanner, {
| ^
18 | props: {
19 | contentHtml: 'Foo'
20 | }
at validator (node_modules/@wikimedia/codex/dist/codex.cjs:1:93916)
at validateProp (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4367:21)
at validateProps (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4335:5)
at initProps (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4036:5)
at setupComponent (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:7807:3)
at mountComponent (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5159:7)
at processComponent (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5125:9)
at patch (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4654:11)
at mountChildren (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4886:7)
at mountElement (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4809:7)
at processElement (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4774:7)
at patch (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4642:11)
at ReactiveEffect.componentUpdateFn [as fn] (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5269:11)
at ReactiveEffect.run (node_modules/@vue/reactivity/dist/reactivity.cjs.js:229:19)
at setupRenderEffect (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5397:5)
at mountComponent (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5172:7)
at processComponent (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5125:9)
at patch (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4654:11)
at ReactiveEffect.componentUpdateFn [as fn] (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5269:11)
at ReactiveEffect.run (node_modules/@vue/reactivity/dist/reactivity.cjs.js:229:19)
at setupRenderEffect (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5397:5)
at mountComponent (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5172:7)
at processComponent (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5125:9)
at patch (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4654:11)
at render (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5922:7)
at mount (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:3922:13)
at Object.app.mount (node_modules/@vue/runtime-dom/dist/runtime-dom.cjs.js:1703:19)
at mount (node_modules/@vue/test-utils/dist/vue-test-utils.cjs.js:8415:18)
at Object.<anonymous> (tests/vue/HelpBanner.test.js:17:19)
console.warn
[Vue warn]: Invalid prop: custom validator check failed for prop "dismissButtonLabel".
at <CdxMessage type="notice" dismiss-button-label="fileimporter-help-banner-close-tooltip" onUserDismissed=fn<bound dismissHelp> >
at <HelpBanner contentHtml="Foo" ref="VTU_COMPONENT" >
at <VTUROOT>
15 |
16 | it( 'close button sets user option', async () => {
> 17 | const wrapper = mount( HelpBanner, {
| ^
18 | props: {
19 | contentHtml: 'Foo'
20 | }
at warn$1 (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:53:13)
at validateProp (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4368:5)
at validateProps (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4335:5)
at initProps (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4036:5)
at setupComponent (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:7807:3)
at mountComponent (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5159:7)
at processComponent (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5125:9)
at patch (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4654:11)
at mountChildren (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4886:7)
at mountElement (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4809:7)
at processElement (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4774:7)
at patch (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4642:11)
at ReactiveEffect.componentUpdateFn [as fn] (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5269:11)
at ReactiveEffect.run (node_modules/@vue/reactivity/dist/reactivity.cjs.js:229:19)
at setupRenderEffect (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5397:5)
at mountComponent (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5172:7)
at processComponent (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5125:9)
at patch (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4654:11)
at ReactiveEffect.componentUpdateFn [as fn] (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5269:11)
at ReactiveEffect.run (node_modules/@vue/reactivity/dist/reactivity.cjs.js:229:19)
at setupRenderEffect (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5397:5)
at mountComponent (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5172:7)
at processComponent (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5125:9)
at patch (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4654:11)
at render (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5922:7)
at mount (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:3922:13)
at Object.app.mount (node_modules/@vue/runtime-dom/dist/runtime-dom.cjs.js:1703:19)
at mount (node_modules/@vue/test-utils/dist/vue-test-utils.cjs.js:8415:18)
at Object.<anonymous> (tests/vue/HelpBanner.test.js:17:19)
-----------------------|---------|----------|---------|---------|-------------------
File | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s
-----------------------|---------|----------|---------|---------|-------------------
All files | 97.53 | 85.71 | 92.3 | 97.5 |
CategoriesList.vue | 100 | 50 | 100 | 100 | 41
CategoriesSection.vue | 88.88 | 100 | 60 | 88.88 | 59-69
FileTitle.vue | 100 | 88.88 | 100 | 100 | 55-57
HelpBanner.vue | 100 | 75 | 100 | 100 | 41
-----------------------|---------|----------|---------|---------|-------------------
--- end ---
{}
{}
{}
{}
{}
{}
$ package-lock-lint /src/repo/package-lock.json
--- stdout ---
Checking /src/repo/package-lock.json
--- end ---
build: Updating composer dependencies
* mediawiki/mediawiki-codesniffer: 49.0.0 → 50.0.0
* mediawiki/mediawiki-phan-config: 0.18.0 → 0.19.0
$ git add .
--- stdout ---
--- end ---
$ git commit -F /tmp/tmpr9tqewus
--- stdout ---
[master 1558b0e] build: Updating composer dependencies
2 files changed, 25 insertions(+), 25 deletions(-)
--- end ---
$ git format-patch HEAD~1 --stdout
--- stdout ---
From 1558b0e4f0e02b60c6e0fe13a8f90a2fd788d4fb Mon Sep 17 00:00:00 2001
From: libraryupgrader <tools.libraryupgrader@tools.wmflabs.org>
Date: Wed, 4 Mar 2026 03:02:08 +0000
Subject: [PATCH] build: Updating composer dependencies
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
* mediawiki/mediawiki-codesniffer: 49.0.0 → 50.0.0
* mediawiki/mediawiki-phan-config: 0.18.0 → 0.19.0
Change-Id: I4b96835126fefa3d380ad862687d87a429822b7d
---
composer.json | 4 ++--
package-lock.json | 46 +++++++++++++++++++++++-----------------------
2 files changed, 25 insertions(+), 25 deletions(-)
diff --git a/composer.json b/composer.json
index ae1f4f1..10e4755 100644
--- a/composer.json
+++ b/composer.json
@@ -1,7 +1,7 @@
{
"require-dev": {
- "mediawiki/mediawiki-codesniffer": "49.0.0",
- "mediawiki/mediawiki-phan-config": "0.18.0",
+ "mediawiki/mediawiki-codesniffer": "50.0.0",
+ "mediawiki/mediawiki-phan-config": "0.19.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 cda1c0a..ce8ceaf 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -3036,12 +3036,12 @@
}
},
"node_modules/@stylistic/eslint-plugin/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.9",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.9.tgz",
+ "integrity": "sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg==",
"dev": true,
"dependencies": {
- "brace-expansion": "^2.0.1"
+ "brace-expansion": "^2.0.2"
},
"engines": {
"node": ">=16 || 14 >=14.17"
@@ -5703,14 +5703,14 @@
"dev": true
},
"node_modules/editorconfig": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/editorconfig/-/editorconfig-1.0.4.tgz",
- "integrity": "sha512-L9Qe08KWTlqYMVvMcTIvMAdl1cDUubzRNYL+WfA4bLDMHe4nemKkpmYzkznE1FwLKu0EEmy6obgQKzMJrg4x9Q==",
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/editorconfig/-/editorconfig-1.0.7.tgz",
+ "integrity": "sha512-e0GOtq/aTQhVdNyDU9e02+wz9oDDM+SIOQxWME2QRjzRX5yyLAuHDE+0aE8vHb9XRC8XD37eO2u57+F09JqFhw==",
"dev": true,
"dependencies": {
"@one-ini/wasm": "0.1.1",
"commander": "^10.0.0",
- "minimatch": "9.0.1",
+ "minimatch": "^9.0.1",
"semver": "^7.5.3"
},
"bin": {
@@ -5730,12 +5730,12 @@
}
},
"node_modules/editorconfig/node_modules/minimatch": {
- "version": "9.0.1",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.1.tgz",
- "integrity": "sha512-0jWhJpD/MdhPXwPuiRkCbfYfSKp2qnn2eOc279qI7f+osl/l+prKSrvhg157zSYvx/1nmgn2NqdT6k2Z7zSH9w==",
+ "version": "9.0.9",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.9.tgz",
+ "integrity": "sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg==",
"dev": true,
"dependencies": {
- "brace-expansion": "^2.0.1"
+ "brace-expansion": "^2.0.2"
},
"engines": {
"node": ">=16 || 14 >=14.17"
@@ -6447,12 +6447,12 @@
}
},
"node_modules/eslint-config-wikimedia/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.9",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.9.tgz",
+ "integrity": "sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg==",
"dev": true,
"dependencies": {
- "brace-expansion": "^2.0.1"
+ "brace-expansion": "^2.0.2"
},
"engines": {
"node": ">=16 || 14 >=14.17"
@@ -7844,12 +7844,12 @@
}
},
"node_modules/glob/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.9",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.9.tgz",
+ "integrity": "sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg==",
"dev": true,
"dependencies": {
- "brace-expansion": "^2.0.1"
+ "brace-expansion": "^2.0.2"
},
"engines": {
"node": ">=16 || 14 >=14.17"
@@ -11003,9 +11003,9 @@
}
},
"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.5",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz",
+ "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==",
"dev": true,
"dependencies": {
"brace-expansion": "^1.1.7"
--
2.47.3
--- end ---