This run took 56 seconds.
From ac6c7ca8b6ecf005a59c245464a2540de5bfe26c Mon Sep 17 00:00:00 2001
From: libraryupgrader <tools.libraryupgrader@tools.wmflabs.org>
Date: Thu, 9 Apr 2026 19:55:19 +0000
Subject: [PATCH] build: Updating vite to 7.3.2
* https://github.com/advisories/GHSA-4w7w-66w2-5vf9
* https://github.com/advisories/GHSA-p9ff-h696-f583
* https://github.com/advisories/GHSA-v2wj-q39q-566r
Change-Id: I8a7de0b4b9e39e63d66474d715c138f97ad45e97
---
package-lock.json | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/package-lock.json b/package-lock.json
index e4d6aa6..d1616aa 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -7388,11 +7388,10 @@
}
},
"node_modules/vite": {
- "version": "7.3.1",
- "resolved": "https://registry.npmjs.org/vite/-/vite-7.3.1.tgz",
- "integrity": "sha512-w+N7Hifpc3gRjZ63vYBXA56dvvRlNWRczTdmCBBa+CotUzAPf5b7YMdMR/8CQoeYE5LX3W4wj6RYTgonm1b9DA==",
+ "version": "7.3.2",
+ "resolved": "https://registry.npmjs.org/vite/-/vite-7.3.2.tgz",
+ "integrity": "sha512-Bby3NOsna2jsjfLVOHKes8sGwgl4TT0E6vvpYgnAYDIF/tie7MRaFthmKuHx1NSXjiTueXH3do80FMQgvEktRg==",
"dev": true,
- "license": "MIT",
"peer": true,
"dependencies": {
"esbuild": "^0.27.0",
--
2.47.3
$ date
--- stdout ---
Thu Apr 9 19:54:28 UTC 2026
--- end ---
$ git clone file:///srv/git/mediawiki-extensions-PersonalDashboard.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 ---
9cd8c1cc202024b770b763c5a2b6b1f4331f024c refs/heads/master
--- end ---
$ /usr/bin/npm audit --json
--- stdout ---
{
"auditReportVersion": 2,
"vulnerabilities": {
"vite": {
"name": "vite",
"severity": "high",
"isDirect": false,
"via": [
{
"source": 1116230,
"name": "vite",
"dependency": "vite",
"title": "Vite Vulnerable to Path Traversal in Optimized Deps `.map` Handling",
"url": "https://github.com/advisories/GHSA-4w7w-66w2-5vf9",
"severity": "moderate",
"cwe": [
"CWE-22",
"CWE-200"
],
"cvss": {
"score": 0,
"vectorString": null
},
"range": ">=7.0.0 <=7.3.1"
},
{
"source": 1116232,
"name": "vite",
"dependency": "vite",
"title": "Vite: `server.fs.deny` bypassed with queries",
"url": "https://github.com/advisories/GHSA-v2wj-q39q-566r",
"severity": "high",
"cwe": [
"CWE-180",
"CWE-284"
],
"cvss": {
"score": 0,
"vectorString": null
},
"range": ">=7.1.0 <=7.3.1"
},
{
"source": 1116235,
"name": "vite",
"dependency": "vite",
"title": "Vite Vulnerable to Arbitrary File Read via Vite Dev Server WebSocket",
"url": "https://github.com/advisories/GHSA-p9ff-h696-f583",
"severity": "high",
"cwe": [
"CWE-200",
"CWE-306"
],
"cvss": {
"score": 0,
"vectorString": null
},
"range": ">=7.0.0 <=7.3.1"
}
],
"effects": [],
"range": "7.0.0 - 7.3.1",
"nodes": [
"node_modules/vite"
],
"fixAvailable": true
}
},
"metadata": {
"vulnerabilities": {
"info": 0,
"low": 0,
"moderate": 0,
"high": 1,
"critical": 0,
"total": 1
},
"dependencies": {
"prod": 1,
"dev": 566,
"optional": 65,
"peer": 182,
"peerOptional": 0,
"total": 566
}
}
}
--- 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: 37 installs, 0 updates, 0 removals
- Locking composer/pcre (3.3.2)
- Locking composer/semver (3.4.4)
- Locking composer/spdx-licenses (1.5.10)
- Locking composer/xdebug-handler (3.0.5)
- Locking danog/advanced-json-rpc (v3.2.3)
- Locking dealerdirect/phpcodesniffer-composer-installer (v1.2.0)
- Locking doctrine/deprecations (1.1.6)
- Locking mediawiki/mediawiki-codesniffer (v50.0.0)
- Locking mediawiki/mediawiki-phan-config (0.20.0)
- Locking mediawiki/minus-x (2.0.1)
- Locking mediawiki/phan-taint-check-plugin (9.1.0)
- Locking netresearch/jsonmapper (v5.0.1)
- Locking phan/phan (6.0.2)
- Locking phan/tolerant-php-parser (v0.2.0)
- Locking phan/var_representation_polyfill (0.1.4)
- 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 (6.0.3)
- Locking phpdocumentor/type-resolver (2.0.0)
- Locking phpstan/phpdoc-parser (2.3.2)
- Locking psr/container (2.0.2)
- Locking psr/log (3.0.2)
- Locking sabre/event (6.0.1)
- Locking squizlabs/php_codesniffer (3.13.5)
- Locking symfony/console (v8.0.8)
- 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.8)
- Locking webmozart/assert (2.2.0)
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 37 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.10): Extracting archive
- Installing composer/semver (3.4.4): Extracting archive
- Installing mediawiki/mediawiki-codesniffer (v50.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.8): 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.8): Extracting archive
- Installing sabre/event (6.0.1): Extracting archive
- Installing phan/var_representation_polyfill (0.1.4): Extracting archive
- Installing phan/tolerant-php-parser (v0.2.0): Extracting archive
- Installing netresearch/jsonmapper (v5.0.1): Extracting archive
- Installing webmozart/assert (2.2.0): 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 (2.0.0): Extracting archive
- Installing phpdocumentor/reflection-docblock (6.0.3): Extracting archive
- Installing danog/advanced-json-rpc (v3.2.3): Extracting archive
- Installing psr/log (3.0.2): Extracting archive
- Installing composer/xdebug-handler (3.0.5): Extracting archive
- Installing phan/phan (6.0.2): Extracting archive
- Installing mediawiki/phan-taint-check-plugin (9.1.0): Extracting archive
- Installing mediawiki/mediawiki-phan-config (0.20.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/35 [>---------------------------] 0%
27/35 [=====================>------] 77%
35/35 [============================] 100%
1 package suggestions were added by new dependencies, use `composer suggest` to see details.
Generating autoload files
16 packages you are using are looking for funding.
Use the `composer fund` command to find out more!
--- stdout ---
PHP CodeSniffer Config installed_paths set to ../../mediawiki/mediawiki-codesniffer,../../phpcsstandards/phpcsextra,../../phpcsstandards/phpcsutils
--- end ---
$ /usr/bin/npm audit --json
--- stdout ---
{
"auditReportVersion": 2,
"vulnerabilities": {
"vite": {
"name": "vite",
"severity": "high",
"isDirect": false,
"via": [
{
"source": 1116230,
"name": "vite",
"dependency": "vite",
"title": "Vite Vulnerable to Path Traversal in Optimized Deps `.map` Handling",
"url": "https://github.com/advisories/GHSA-4w7w-66w2-5vf9",
"severity": "moderate",
"cwe": [
"CWE-22",
"CWE-200"
],
"cvss": {
"score": 0,
"vectorString": null
},
"range": ">=7.0.0 <=7.3.1"
},
{
"source": 1116232,
"name": "vite",
"dependency": "vite",
"title": "Vite: `server.fs.deny` bypassed with queries",
"url": "https://github.com/advisories/GHSA-v2wj-q39q-566r",
"severity": "high",
"cwe": [
"CWE-180",
"CWE-284"
],
"cvss": {
"score": 0,
"vectorString": null
},
"range": ">=7.1.0 <=7.3.1"
},
{
"source": 1116235,
"name": "vite",
"dependency": "vite",
"title": "Vite Vulnerable to Arbitrary File Read via Vite Dev Server WebSocket",
"url": "https://github.com/advisories/GHSA-p9ff-h696-f583",
"severity": "high",
"cwe": [
"CWE-200",
"CWE-306"
],
"cvss": {
"score": 0,
"vectorString": null
},
"range": ">=7.0.0 <=7.3.1"
}
],
"effects": [],
"range": "7.0.0 - 7.3.1",
"nodes": [
"node_modules/vite"
],
"fixAvailable": true
}
},
"metadata": {
"vulnerabilities": {
"info": 0,
"low": 0,
"moderate": 0,
"high": 1,
"critical": 0,
"total": 1
},
"dependencies": {
"prod": 1,
"dev": 566,
"optional": 65,
"peer": 182,
"peerOptional": 0,
"total": 566
}
}
}
--- 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": 566,
"removed": 0,
"changed": 0,
"audited": 567,
"funding": 137,
"audit": {
"auditReportVersion": 2,
"vulnerabilities": {
"vite": {
"name": "vite",
"severity": "high",
"isDirect": false,
"via": [
{
"source": 1116230,
"name": "vite",
"dependency": "vite",
"title": "Vite Vulnerable to Path Traversal in Optimized Deps `.map` Handling",
"url": "https://github.com/advisories/GHSA-4w7w-66w2-5vf9",
"severity": "moderate",
"cwe": [
"CWE-22",
"CWE-200"
],
"cvss": {
"score": 0,
"vectorString": null
},
"range": ">=7.0.0 <=7.3.1"
},
{
"source": 1116232,
"name": "vite",
"dependency": "vite",
"title": "Vite: `server.fs.deny` bypassed with queries",
"url": "https://github.com/advisories/GHSA-v2wj-q39q-566r",
"severity": "high",
"cwe": [
"CWE-180",
"CWE-284"
],
"cvss": {
"score": 0,
"vectorString": null
},
"range": ">=7.1.0 <=7.3.1"
},
{
"source": 1116235,
"name": "vite",
"dependency": "vite",
"title": "Vite Vulnerable to Arbitrary File Read via Vite Dev Server WebSocket",
"url": "https://github.com/advisories/GHSA-p9ff-h696-f583",
"severity": "high",
"cwe": [
"CWE-200",
"CWE-306"
],
"cvss": {
"score": 0,
"vectorString": null
},
"range": ">=7.0.0 <=7.3.1"
}
],
"effects": [],
"range": "7.0.0 - 7.3.1",
"nodes": [
""
],
"fixAvailable": true
}
},
"metadata": {
"vulnerabilities": {
"info": 0,
"low": 0,
"moderate": 0,
"high": 1,
"critical": 0,
"total": 1
},
"dependencies": {
"prod": 1,
"dev": 566,
"optional": 65,
"peer": 182,
"peerOptional": 0,
"total": 566
}
}
}
}
--- end ---
{"added": 566, "removed": 0, "changed": 0, "audited": 567, "funding": 137, "audit": {"auditReportVersion": 2, "vulnerabilities": {"vite": {"name": "vite", "severity": "high", "isDirect": false, "via": [{"source": 1116230, "name": "vite", "dependency": "vite", "title": "Vite Vulnerable to Path Traversal in Optimized Deps `.map` Handling", "url": "https://github.com/advisories/GHSA-4w7w-66w2-5vf9", "severity": "moderate", "cwe": ["CWE-22", "CWE-200"], "cvss": {"score": 0, "vectorString": null}, "range": ">=7.0.0 <=7.3.1"}, {"source": 1116232, "name": "vite", "dependency": "vite", "title": "Vite: `server.fs.deny` bypassed with queries", "url": "https://github.com/advisories/GHSA-v2wj-q39q-566r", "severity": "high", "cwe": ["CWE-180", "CWE-284"], "cvss": {"score": 0, "vectorString": null}, "range": ">=7.1.0 <=7.3.1"}, {"source": 1116235, "name": "vite", "dependency": "vite", "title": "Vite Vulnerable to Arbitrary File Read via Vite Dev Server WebSocket", "url": "https://github.com/advisories/GHSA-p9ff-h696-f583", "severity": "high", "cwe": ["CWE-200", "CWE-306"], "cvss": {"score": 0, "vectorString": null}, "range": ">=7.0.0 <=7.3.1"}], "effects": [], "range": "7.0.0 - 7.3.1", "nodes": [""], "fixAvailable": true}}, "metadata": {"vulnerabilities": {"info": 0, "low": 0, "moderate": 0, "high": 1, "critical": 0, "total": 1}, "dependencies": {"prod": 1, "dev": 566, "optional": 65, "peer": 182, "peerOptional": 0, "total": 566}}}}
$ /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 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 @humanwhocodes/object-schema@2.0.3: Use @eslint/object-schema instead
npm WARN deprecated glob@7.2.3: 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 glob@10.5.0: 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 517 packages, and audited 518 packages in 8s
137 packages are looking for funding
run `npm fund` for details
found 0 vulnerabilities
--- 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 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 @humanwhocodes/object-schema@2.0.3: Use @eslint/object-schema instead
npm WARN deprecated glob@7.2.3: 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 glob@10.5.0: 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 517 packages, and audited 518 packages in 9s
137 packages are looking for funding
run `npm fund` for details
found 0 vulnerabilities
--- end ---
$ /usr/bin/npm test
--- stderr ---
stderr | tests/vitest/ext.personalDashboard.activeDiscussions/composables/useFetchActiveDiscussionsResult.test.mjs > fetchActiveDiscussions with key missing
No valid active discussions found
stderr | tests/vitest/ext.personalDashboard.activeDiscussions/composables/useFetchActiveDiscussionsResult.test.mjs > fetchActiveDiscussions with all keys missing
No valid active discussions found
stderr | tests/vitest/ext.personalDashboard.activeDiscussions/composables/useFetchActiveDiscussionsResult.test.mjs > fetchActiveDiscussions with error
An error
stderr | tests/vitest/ext.personalDashboard.riskyArticleEdits/composables/useFetchActivityResult.test.mjs > fetchRecentActivity with error
An error
stderr | tests/vitest/ext.personalDashboard.riskyArticleEdits/composables/useFetchActivityResult.test.mjs > fetchRecentActivity with revertrisklanguageagnostic model enabled
unable to randomly sample array: only 2 found
stderr | tests/vitest/ext.personalDashboard.riskyArticleEdits/composables/useFetchActivityResult.test.mjs > fetchRecentActivity with damaging model enabled
unable to randomly sample array: only 2 found
stderr | tests/vitest/ext.personalDashboard.riskyArticleEdits/composables/useFetchActivityResult.test.mjs > fetchRecentActivity with no model enabled
unable to randomly sample array: only 2 found
stderr | tests/vitest/ext.personalDashboard.riskyArticleEdits/composables/useFetchActivityResult.test.mjs > fetchRecentActivity with watchlist enabled
unable to randomly sample array: only 2 found
stderr | tests/vitest/ext.personalDashboard.riskyArticleEdits/composables/useFetchActivityResult.test.mjs > fetchRecentActivity with watchlist enabled
unable to randomly sample array: only 1 found
stderr | tests/vitest/ext.personalDashboard.riskyArticleEdits/composables/useFetchActivityResult.test.mjs > fetchRecentActivity with watchlist enabled and two edits from same page
unable to randomly sample array: only 2 found
stderr | tests/vitest/ext.personalDashboard.riskyArticleEdits/composables/useFetchActivityResult.test.mjs > fetchRecentActivity with watchlist enabled and two edits from same page
unable to randomly sample array: only 2 found
stderr | tests/vitest/ext.personalDashboard.riskyArticleEdits/composables/useFetchActivityResult.test.mjs > fetchRecentActivity with watchlist enabled and more than limit
unable to randomly sample array: only 3 found
stderr | tests/vitest/ext.personalDashboard.riskyArticleEdits/composables/useFetchActivityResult.test.mjs > fetchRecentActivity with watchlist enabled and more than limit
unable to randomly sample array: only 4 found
stderr | tests/vitest/ext.personalDashboard.riskyArticleEdits/App.test.mjs > mount component
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
stderr | tests/vitest/ext.personalDashboard.riskyArticleEdits/App.test.mjs > shows progress bar when loading
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
stderr | tests/vitest/ext.personalDashboard.riskyArticleEdits/App.test.mjs > shows error message when there is one
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
stderr | tests/vitest/ext.personalDashboard.riskyArticleEdits/App.test.mjs > shows up to 5 recent changes with information
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
stderr | tests/vitest/ext.personalDashboard.riskyArticleEdits/App.test.mjs > shows up to 5 recent changes with information
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Missing required prop: "feedorigin"
at <ListCard ref_for=true title="Article Title" type="" ... >
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Missing required prop: "feedorigin"
at <ListCard ref_for=true title="Article Title" type="" ... >
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Missing required prop: "feedorigin"
at <ListCard ref_for=true title="Article Title" type="" ... >
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Missing required prop: "feedorigin"
at <ListCard ref_for=true title="Article Title" type="" ... >
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
stderr | tests/vitest/ext.personalDashboard.riskyArticleEdits/App.test.mjs > shows up to 10 recent changes with information when on mobile view
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
stderr | tests/vitest/ext.personalDashboard.riskyArticleEdits/App.test.mjs > shows up to 10 recent changes with information when on mobile view
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Missing required prop: "feedorigin"
at <ListCard ref_for=true title="Article Title" type="" ... >
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Missing required prop: "feedorigin"
at <ListCard ref_for=true title="Article Title" type="" ... >
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Missing required prop: "feedorigin"
at <ListCard ref_for=true title="Article Title" type="" ... >
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Missing required prop: "feedorigin"
at <ListCard ref_for=true title="Article Title" type="" ... >
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Missing required prop: "feedorigin"
at <ListCard ref_for=true title="Article Title" type="" ... >
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
stderr | tests/vitest/ext.personalDashboard.riskyArticleEdits/App.test.mjs > shows header message by default on mobile and updates preference when closed
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
stderr | tests/vitest/ext.personalDashboard.riskyArticleEdits/App.test.mjs > shows header message by default on mobile and updates preference when closed
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
stderr | tests/vitest/ext.personalDashboard.riskyArticleEdits/App.test.mjs > shows header message by default on non-mobile
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
stderr | tests/vitest/ext.personalDashboard.riskyArticleEdits/App.test.mjs > shows header message by default on non-mobile
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
stderr | tests/vitest/ext.personalDashboard.riskyArticleEdits/App.test.mjs > does not show header message by default on mobile summary rendermode
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
stderr | tests/vitest/ext.personalDashboard.riskyArticleEdits/App.test.mjs > does not show header message by default on mobile summary rendermode
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
stderr | tests/vitest/ext.personalDashboard.riskyArticleEdits/App.test.mjs > does not show header message if preference is off
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
stderr | tests/vitest/ext.personalDashboard.riskyArticleEdits/App.test.mjs > does not show header message if preference is off
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
[Vue warn]: Failed to resolve directive: i18n-html
at <App ref="VTU_COMPONENT" >
at <VTUROOT>
stderr | tests/vitest/ext.personalDashboard.riskyArticleEdits/components/ListCard.test.mjs > mount component
[Vue warn]: Missing required prop: "feedorigin"
at <ListCard title="TestTitle" type="TestType" ns=0 ... >
at <VTUROOT>
stderr | tests/vitest/ext.personalDashboard.riskyArticleEdits/components/ListCard.test.mjs > renders appropriate message when edit is made today
[Vue warn]: Missing required prop: "feedorigin"
at <ListCard title="TestTitle" type="TestType" ns=0 ... >
at <VTUROOT>
stderr | tests/vitest/ext.personalDashboard.riskyArticleEdits/components/ListCard.test.mjs > renders timestamp without hours when edit is not made today
[Vue warn]: Missing required prop: "feedorigin"
at <ListCard title="TestTitle" type="TestType" ns=0 ... >
at <VTUROOT>
stderr | tests/vitest/ext.personalDashboard.riskyArticleEdits/components/ListCard.test.mjs > strips all html formatting from parsedcomment
[Vue warn]: Missing required prop: "feedorigin"
at <ListCard title="TestTitle" type="TestType" ns=0 ... >
at <VTUROOT>
stderr | tests/vitest/ext.personalDashboard.activeDiscussions/components/ListCardMobile.test.mjs > mount component
[Vue warn]: Missing required prop: "latestReplyId"
at <ListCard discussionTitle="Test Title" discussionPage="Wikipedia:Village Pump" commentCount=12 ... >
at <VTUROOT>
stderr | tests/vitest/ext.personalDashboard.activeDiscussions/components/ListCardMobile.test.mjs > renders appropriate message when edit is made today
[Vue warn]: Missing required prop: "latestReplyId"
at <ListCard discussionTitle="Test Title" discussionPage="Wikipedia:Village Pump" commentCount=12 ... >
at <VTUROOT>
stderr | tests/vitest/ext.personalDashboard.activeDiscussions/components/ListCardMobile.test.mjs > renders timestamp without hours when edit is not made today
[Vue warn]: Missing required prop: "latestReplyId"
at <ListCard discussionTitle="Test Title" discussionPage="Wikipedia:Village Pump" commentCount=12 ... >
at <VTUROOT>
stderr | tests/vitest/ext.personalDashboard.activeDiscussions/components/ListCard.test.mjs > mount component
[Vue warn]: Missing required prop: "latestReplyId"
at <ListCard discussionTitle="Test Title" discussionPage="Wikipedia:Village Pump" commentCount=12 ... >
at <VTUROOT>
stderr | tests/vitest/ext.personalDashboard.activeDiscussions/components/ListCard.test.mjs > renders appropriate message when edit is made today
[Vue warn]: Missing required prop: "latestReplyId"
at <ListCard discussionTitle="Test Title" discussionPage="Wikipedia:Village Pump" commentCount=12 ... >
at <VTUROOT>
stderr | tests/vitest/ext.personalDashboard.activeDiscussions/components/ListCard.test.mjs > renders timestamp without hours when edit is not made today
[Vue warn]: Missing required prop: "latestReplyId"
at <ListCard discussionTitle="Test Title" discussionPage="Wikipedia:Village Pump" commentCount=12 ... >
at <VTUROOT>
--- stdout ---
> test
> npm -s run lint && npm -s run test:unit
/src/repo/resources/ext.personalDashboard.activeDiscussions/components/ListCard.vue
23:1 warning This line has a length of 106. Maximum allowed is 100 max-len
24:1 warning This line has a length of 102. Maximum allowed is 100 max-len
/src/repo/resources/ext.personalDashboard.activeDiscussions/composables/useFetchActiveDiscussionsResult.js
27:1 warning This line has a length of 104. Maximum allowed is 100 max-len
35:1 warning This line has a length of 107. Maximum allowed is 100 max-len
/src/repo/resources/ext.personalDashboard.riskyArticleEdits/App.vue
47:1 warning This line has a length of 102. Maximum allowed is 100 max-len
54:1 warning This line has a length of 116. Maximum allowed is 100 max-len
59:1 warning This line has a length of 102. Maximum allowed is 100 max-len
/src/repo/resources/ext.personalDashboard.riskyArticleEdits/components/HeaderMessage.vue
27:1 warning This line has a length of 114. Maximum allowed is 100 max-len
/src/repo/resources/ext.personalDashboard.riskyArticleEdits/components/ListCard.vue
103:1 warning This line has a length of 134. Maximum allowed is 100 max-len
✖ 9 problems (0 errors, 9 warnings)
Checked 8 message directories.
RUN v4.0.18 /src/repo
✓ tests/vitest/ext.personalDashboard.activeDiscussions/composables/useFetchActiveDiscussionsResult.test.mjs (6 tests) 25ms
✓ tests/vitest/ext.personalDashboard.riskyArticleEdits/composables/useFetchActivityResult.test.mjs (10 tests) 75ms
✓ tests/vitest/ext.personalDashboard.riskyArticleEdits/App.test.mjs (9 tests) 365ms
✓ tests/vitest/ext.personalDashboard.riskyArticleEdits/components/HeaderMessage.test.mjs (6 tests) 170ms
✓ tests/vitest/ext.personalDashboard.riskyArticleEdits/components/ListCard.test.mjs (4 tests) 89ms
✓ tests/vitest/ext.personalDashboard.activeDiscussions/components/ListCardMobile.test.mjs (3 tests) 100ms
✓ tests/vitest/ext.personalDashboard.activeDiscussions/components/ListCard.test.mjs (3 tests) 101ms
✓ tests/vitest/ext.personalDashboard.riskyArticleEdits/components/ChangeNumber.test.mjs (4 tests) 59ms
✓ tests/vitest/ext.personalDashboard.activeDiscussions/App.test.mjs (1 test) 32ms
✓ tests/vitest/ext.personalDashboard.riskyArticleEdits/components/CreatorByline.test.mjs (3 tests) 37ms
✓ tests/vitest/ext.personalDashboard.common/utils.test.mjs (1 test) 6ms
✓ tests/vitest/ext.personalDashboard.policiesGuidelines/App.test.mjs (1 test) 71ms
✓ tests/vitest/ext.personalDashboard.impact/App.test.mjs (2 tests) 98ms
✓ tests/vitest/ext.personalDashboard.onboarding/App.test.mjs (1 test) 74ms
Test Files 14 passed (14)
Tests 54 passed (54)
Start at 19:55:12
Duration 6.47s (transform 1.03s, setup 1.96s, import 2.13s, tests 1.30s, environment 8.19s)
--- end ---
{"1116230": {"source": 1116230, "name": "vite", "dependency": "vite", "title": "Vite Vulnerable to Path Traversal in Optimized Deps `.map` Handling", "url": "https://github.com/advisories/GHSA-4w7w-66w2-5vf9", "severity": "moderate", "cwe": ["CWE-22", "CWE-200"], "cvss": {"score": 0, "vectorString": null}, "range": ">=7.0.0 <=7.3.1"}, "1116232": {"source": 1116232, "name": "vite", "dependency": "vite", "title": "Vite: `server.fs.deny` bypassed with queries", "url": "https://github.com/advisories/GHSA-v2wj-q39q-566r", "severity": "high", "cwe": ["CWE-180", "CWE-284"], "cvss": {"score": 0, "vectorString": null}, "range": ">=7.1.0 <=7.3.1"}, "1116235": {"source": 1116235, "name": "vite", "dependency": "vite", "title": "Vite Vulnerable to Arbitrary File Read via Vite Dev Server WebSocket", "url": "https://github.com/advisories/GHSA-p9ff-h696-f583", "severity": "high", "cwe": ["CWE-200", "CWE-306"], "cvss": {"score": 0, "vectorString": null}, "range": ">=7.0.0 <=7.3.1"}}
Upgrading n:vite from 7.3.1 -> 7.3.2
$ package-lock-lint /src/repo/package-lock.json
--- stdout ---
Checking /src/repo/package-lock.json
--- end ---
build: Updating vite to 7.3.2
* https://github.com/advisories/GHSA-4w7w-66w2-5vf9
* https://github.com/advisories/GHSA-p9ff-h696-f583
* https://github.com/advisories/GHSA-v2wj-q39q-566r
$ git add .
--- stdout ---
--- end ---
$ git commit -F /tmp/tmp7xmex85h
--- stdout ---
[master ac6c7ca] build: Updating vite to 7.3.2
1 file changed, 3 insertions(+), 4 deletions(-)
--- end ---
$ git format-patch HEAD~1 --stdout
--- stdout ---
From ac6c7ca8b6ecf005a59c245464a2540de5bfe26c Mon Sep 17 00:00:00 2001
From: libraryupgrader <tools.libraryupgrader@tools.wmflabs.org>
Date: Thu, 9 Apr 2026 19:55:19 +0000
Subject: [PATCH] build: Updating vite to 7.3.2
* https://github.com/advisories/GHSA-4w7w-66w2-5vf9
* https://github.com/advisories/GHSA-p9ff-h696-f583
* https://github.com/advisories/GHSA-v2wj-q39q-566r
Change-Id: I8a7de0b4b9e39e63d66474d715c138f97ad45e97
---
package-lock.json | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/package-lock.json b/package-lock.json
index e4d6aa6..d1616aa 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -7388,11 +7388,10 @@
}
},
"node_modules/vite": {
- "version": "7.3.1",
- "resolved": "https://registry.npmjs.org/vite/-/vite-7.3.1.tgz",
- "integrity": "sha512-w+N7Hifpc3gRjZ63vYBXA56dvvRlNWRczTdmCBBa+CotUzAPf5b7YMdMR/8CQoeYE5LX3W4wj6RYTgonm1b9DA==",
+ "version": "7.3.2",
+ "resolved": "https://registry.npmjs.org/vite/-/vite-7.3.2.tgz",
+ "integrity": "sha512-Bby3NOsna2jsjfLVOHKes8sGwgl4TT0E6vvpYgnAYDIF/tie7MRaFthmKuHx1NSXjiTueXH3do80FMQgvEktRg==",
"dev": true,
- "license": "MIT",
"peer": true,
"dependencies": {
"esbuild": "^0.27.0",
--
2.47.3
--- end ---