This run took 112 seconds.
$ date --- stdout --- Mon Mar 24 03:48:13 UTC 2025 --- end --- $ git clone file:///srv/git/mediawiki-extensions-VueTest.git repo --depth=1 -b master --- stderr --- Cloning into 'repo'... --- stdout --- --- end --- $ git config user.name libraryupgrader --- stdout --- --- end --- $ git config user.email tools.libraryupgrader@tools.wmflabs.org --- stdout --- --- end --- $ git submodule update --init --- stderr --- Submodule 'lib/codex' (https://gerrit.wikimedia.org/r/design/codex) registered for path 'lib/codex' Cloning into '/src/repo/lib/codex'... --- stdout --- Submodule path 'lib/codex': checked out '821a94b2890356c6897dd3d19490f5007f90f7f6' --- end --- $ grr init --- stdout --- Installed commit-msg hook. --- end --- $ git show-ref refs/heads/master --- stdout --- 756d6347868d19da740e81cce36b1f426feaa7e0 refs/heads/master --- end --- $ /usr/bin/npm audit --json --- stdout --- { "auditReportVersion": 2, "vulnerabilities": { "@babel/helpers": { "name": "@babel/helpers", "severity": "moderate", "isDirect": false, "via": [ { "source": 1103026, "name": "@babel/helpers", "dependency": "@babel/helpers", "title": "Babel has inefficient RexExp complexity in generated code with .replace when transpiling named capturing groups", "url": "https://github.com/advisories/GHSA-968p-4wvh-cqc8", "severity": "moderate", "cwe": [ "CWE-1333" ], "cvss": { "score": 6.2, "vectorString": "CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H" }, "range": "<7.26.10" } ], "effects": [], "range": "<7.26.10", "nodes": [ "node_modules/@babel/helpers" ], "fixAvailable": true }, "@babel/runtime": { "name": "@babel/runtime", "severity": "moderate", "isDirect": false, "via": [ { "source": 1103025, "name": "@babel/runtime", "dependency": "@babel/runtime", "title": "Babel has inefficient RexExp complexity in generated code with .replace when transpiling named capturing groups", "url": "https://github.com/advisories/GHSA-968p-4wvh-cqc8", "severity": "moderate", "cwe": [ "CWE-1333" ], "cvss": { "score": 6.2, "vectorString": "CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H" }, "range": "<7.26.10" } ], "effects": [], "range": "<7.26.10", "nodes": [ "node_modules/@babel/runtime" ], "fixAvailable": true }, "nanoid": { "name": "nanoid", "severity": "moderate", "isDirect": false, "via": [ { "source": 1101163, "name": "nanoid", "dependency": "nanoid", "title": "Predictable results in nanoid generation when given non-integer values", "url": "https://github.com/advisories/GHSA-mwcw-c2x4-8c55", "severity": "moderate", "cwe": [ "CWE-835" ], "cvss": { "score": 4.3, "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N" }, "range": "<3.3.8" } ], "effects": [], "range": "<3.3.8", "nodes": [ "node_modules/nanoid" ], "fixAvailable": true } }, "metadata": { "vulnerabilities": { "info": 0, "low": 0, "moderate": 3, "high": 0, "critical": 0, "total": 3 }, "dependencies": { "prod": 1, "dev": 1040, "optional": 3, "peer": 1, "peerOptional": 0, "total": 1040 } } } --- 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: 21 installs, 0 updates, 0 removals - Locking composer/semver (3.4.3) - Locking composer/spdx-licenses (1.5.8) - Locking dealerdirect/phpcodesniffer-composer-installer (v1.0.0) - Locking mediawiki/mediawiki-codesniffer (v46.0.0) - Locking mediawiki/minus-x (1.1.3) - Locking php-parallel-lint/php-console-color (v1.0.1) - Locking php-parallel-lint/php-console-highlighter (v1.0.0) - Locking php-parallel-lint/php-parallel-lint (v1.4.0) - Locking phpcsstandards/phpcsextra (1.2.1) - Locking phpcsstandards/phpcsutils (1.0.12) - Locking psr/container (2.0.2) - Locking squizlabs/php_codesniffer (3.11.3) - Locking symfony/console (v7.2.1) - Locking symfony/deprecation-contracts (v3.5.1) - Locking symfony/polyfill-ctype (v1.31.0) - Locking symfony/polyfill-intl-grapheme (v1.31.0) - Locking symfony/polyfill-intl-normalizer (v1.31.0) - Locking symfony/polyfill-mbstring (v1.31.0) - Locking symfony/polyfill-php80 (v1.31.0) - Locking symfony/service-contracts (v3.5.1) - Locking symfony/string (v7.2.0) Writing lock file Installing dependencies from lock file (including require-dev) Package operations: 21 installs, 0 updates, 0 removals 0 [>---------------------------] 0 [->--------------------------] - Installing squizlabs/php_codesniffer (3.11.3): Extracting archive - Installing dealerdirect/phpcodesniffer-composer-installer (v1.0.0): Extracting archive - Installing symfony/polyfill-php80 (v1.31.0): Extracting archive - Installing phpcsstandards/phpcsutils (1.0.12): Extracting archive - Installing phpcsstandards/phpcsextra (1.2.1): Extracting archive - Installing symfony/polyfill-mbstring (v1.31.0): Extracting archive - Installing composer/spdx-licenses (1.5.8): Extracting archive - Installing composer/semver (3.4.3): Extracting archive - Installing mediawiki/mediawiki-codesniffer (v46.0.0): Extracting archive - Installing symfony/polyfill-intl-normalizer (v1.31.0): Extracting archive - Installing symfony/polyfill-intl-grapheme (v1.31.0): Extracting archive - Installing symfony/polyfill-ctype (v1.31.0): Extracting archive - Installing symfony/string (v7.2.0): Extracting archive - Installing symfony/deprecation-contracts (v3.5.1): Extracting archive - Installing psr/container (2.0.2): Extracting archive - Installing symfony/service-contracts (v3.5.1): Extracting archive - Installing symfony/console (v7.2.1): Extracting archive - Installing mediawiki/minus-x (1.1.3): Extracting archive - Installing php-parallel-lint/php-console-color (v1.0.1): Extracting archive - Installing php-parallel-lint/php-console-highlighter (v1.0.0): Extracting archive - Installing php-parallel-lint/php-parallel-lint (v1.4.0): Extracting archive 0/19 [>---------------------------] 0% 19/19 [============================] 100% Generating autoload files 14 packages you are using are looking for funding. Use the `composer fund` command to find out more! --- stdout --- PHP CodeSniffer Config installed_paths set to ../../mediawiki/mediawiki-codesniffer,../../phpcsstandards/phpcsextra,../../phpcsstandards/phpcsutils --- end --- Upgrading n:@vue/compiler-sfc from 3.4.27 -> 3.5.13 Upgrading n:@vue/test-utils from ^2.0.0 -> 2.4.6 Upgrading n:@vue/vue3-jest from 27.0.0-alpha.4 -> 29.2.6 Upgrading n:@wikimedia/codex from 1.16.0 -> 1.21.1 Upgrading n:jest from ^27.4.7 -> 29.7.0 Upgrading n:stylelint-config-wikimedia from 0.17.2 -> 0.18.0 Upgrading n:vue from 3.4.27 -> 3.5.13 $ /usr/bin/npm install --- stderr --- npm ERR! code ERESOLVE npm ERR! ERESOLVE could not resolve npm ERR! npm ERR! While resolving: VueTest@undefined npm ERR! Found: @wikimedia/codex@1.16.0 npm ERR! node_modules/@wikimedia/codex npm ERR! dev @wikimedia/codex@"1.21.1" from the root project npm ERR! npm ERR! Could not resolve dependency: npm ERR! dev @wikimedia/codex@"1.21.1" from the root project npm ERR! npm ERR! Conflicting peer dependency: vue@3.5.13 npm ERR! node_modules/vue npm ERR! peer vue@"^3.5.13" from @wikimedia/codex@1.21.1 npm ERR! node_modules/@wikimedia/codex npm ERR! dev @wikimedia/codex@"1.21.1" from the root project npm ERR! npm ERR! Fix the upstream dependency conflict, or retry npm ERR! this command with --force or --legacy-peer-deps npm ERR! to accept an incorrect (and potentially broken) dependency resolution. npm ERR! npm ERR! npm ERR! For a full report see: npm ERR! /cache/_logs/2025-03-24T03_48_26_089Z-eresolve-report.txt npm ERR! A complete log of this run can be found in: npm ERR! /cache/_logs/2025-03-24T03_48_26_089Z-debug-0.log --- stdout --- --- end --- $ rm -rf package-lock.json node_modules --- stdout --- --- end --- $ /usr/bin/npm install --- stderr --- npm WARN EBADENGINE Unsupported engine { npm WARN EBADENGINE package: '@wikimedia/codex@1.21.1', npm WARN EBADENGINE required: { npm: '>=10.8.1', node: '>=20' }, npm WARN EBADENGINE current: { node: 'v18.19.0', npm: '9.2.0' } npm WARN EBADENGINE } npm WARN EBADENGINE Unsupported engine { npm WARN EBADENGINE package: '@wikimedia/codex-icons@1.21.1', npm WARN EBADENGINE required: { npm: '>=10.8.1', node: '>=20' }, npm WARN EBADENGINE current: { node: 'v18.19.0', 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 glob@7.2.3: Glob versions prior to v9 are no longer supported npm WARN deprecated @humanwhocodes/object-schema@2.0.3: Use @eslint/object-schema instead npm WARN deprecated glob@7.1.7: Glob versions prior to v9 are no longer supported 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 982 packages, and audited 983 packages in 23s 130 packages are looking for funding run `npm fund` for details found 0 vulnerabilities --- end --- $ package-lock-lint package-lock.json --- stdout --- Checking package-lock.json --- end --- $ /usr/bin/npm install jest-environment-jsdom@29.7.0 --save-dev --save-exact --- stderr --- npm WARN EBADENGINE Unsupported engine { npm WARN EBADENGINE package: '@wikimedia/codex@1.21.1', npm WARN EBADENGINE required: { node: '>=20', npm: '>=10.8.1' }, npm WARN EBADENGINE current: { node: 'v18.19.0', npm: '9.2.0' } npm WARN EBADENGINE } npm WARN EBADENGINE Unsupported engine { npm WARN EBADENGINE package: '@wikimedia/codex-icons@1.21.1', npm WARN EBADENGINE required: { node: '>=20', npm: '>=10.8.1' }, npm WARN EBADENGINE current: { node: 'v18.19.0', npm: '9.2.0' } npm WARN EBADENGINE } npm WARN deprecated abab@2.0.6: Use your platform's native atob() and btoa() methods instead npm WARN deprecated domexception@4.0.0: Use your platform's native DOMException instead --- stdout --- added 57 packages, and audited 1040 packages in 4s 136 packages are looking for funding run `npm fund` for details found 0 vulnerabilities --- end --- $ package-lock-lint package-lock.json --- stdout --- Checking package-lock.json --- end --- $ ./node_modules/.bin/grunt stylelint --- stdout --- Running "stylelint:all" (stylelint) task >> Linted 429 files without errors Done. --- end --- $ /usr/bin/npm ci --- stderr --- npm WARN EBADENGINE Unsupported engine { npm WARN EBADENGINE package: '@wikimedia/codex@1.21.1', npm WARN EBADENGINE required: { node: '>=20', npm: '>=10.8.1' }, npm WARN EBADENGINE current: { node: 'v18.19.0', npm: '9.2.0' } npm WARN EBADENGINE } npm WARN EBADENGINE Unsupported engine { npm WARN EBADENGINE package: '@wikimedia/codex-icons@1.21.1', npm WARN EBADENGINE required: { node: '>=20', npm: '>=10.8.1' }, npm WARN EBADENGINE current: { node: 'v18.19.0', 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 glob@7.2.3: Glob versions prior to v9 are no longer supported npm WARN deprecated @humanwhocodes/object-schema@2.0.3: Use @eslint/object-schema instead 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 1039 packages, and audited 1040 packages in 12s 136 packages are looking for funding run `npm fund` for details found 0 vulnerabilities --- end --- $ /usr/bin/npm test --- stderr --- FAIL resources/components/App.test.js ● Test suite failed to run ReferenceError: Vue is not defined > 1 | const VueTestUtils = require( '@vue/test-utils' ); | ^ 2 | const App = require( './App.vue' ); 3 | 4 | VueTestUtils.config.global.mocks = { at Object.<anonymous> (node_modules/@vue/test-utils/dist/vue-test-utils.browser.js:8510:8) at Object.<anonymous> (resources/components/App.test.js:1:124) Test Suites: 1 failed, 1 total Tests: 0 total Snapshots: 0 total Time: 18.038 s Ran all test suites. --- stdout --- > test > grunt test && npm run test:unit Running "eslint:all" (eslint) task Running "stylelint:all" (stylelint) task >> Linted 429 files without errors Running "banana:VueTest" (banana) task >> 1 message directory checked. Done. > test:unit > jest ---------------------|---------|----------|---------|---------|------------------- File | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s ---------------------|---------|----------|---------|---------|------------------- All files | 0 | 0 | 0 | 0 | codex-demos | 0 | 0 | 0 | 0 | Sandbox.vue | 0 | 0 | 0 | 0 | 1-351 codex-demos.js | 0 | 0 | 0 | 0 | 1 codex-demos.umd.js | 0 | 0 | 0 | 0 | 1-7 init.js | 0 | 100 | 0 | 0 | 1-5 components | 0 | 0 | 0 | 0 | App.vue | 0 | 0 | 0 | 0 | 6-76 ---------------------|---------|----------|---------|---------|------------------- --- end --- $ node_modules/.bin/jest -u --- stderr --- FAIL resources/components/App.test.js ● Test suite failed to run ReferenceError: Vue is not defined > 1 | const VueTestUtils = require( '@vue/test-utils' ); | ^ 2 | const App = require( './App.vue' ); 3 | 4 | VueTestUtils.config.global.mocks = { at Object.<anonymous> (node_modules/@vue/test-utils/dist/vue-test-utils.browser.js:8510:8) at Object.<anonymous> (resources/components/App.test.js:1:124) Test Suites: 1 failed, 1 total Tests: 0 total Snapshots: 0 total Time: 14.651 s Ran all test suites. --- stdout --- ---------------------|---------|----------|---------|---------|------------------- File | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s ---------------------|---------|----------|---------|---------|------------------- All files | 0 | 0 | 0 | 0 | codex-demos | 0 | 0 | 0 | 0 | Sandbox.vue | 0 | 0 | 0 | 0 | 1-351 codex-demos.js | 0 | 0 | 0 | 0 | 1 codex-demos.umd.js | 0 | 0 | 0 | 0 | 1-7 init.js | 0 | 100 | 0 | 0 | 1-5 components | 0 | 0 | 0 | 0 | App.vue | 0 | 0 | 0 | 0 | 6-76 ---------------------|---------|----------|---------|---------|------------------- --- end --- Traceback (most recent call last): File "/venv/lib/python3.11/site-packages/runner-0.1.0-py3.11.egg/runner/__init__.py", line 325, in npm_test self.check_call(["npm", "test"]) File "/venv/lib/python3.11/site-packages/runner-0.1.0-py3.11.egg/runner/shell2.py", line 59, in check_call res.check_returncode() File "/usr/lib/python3.11/subprocess.py", line 502, in check_returncode raise CalledProcessError(self.returncode, self.args, self.stdout, subprocess.CalledProcessError: Command '['/usr/bin/npm', 'test']' returned non-zero exit status 1. During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/venv/lib/python3.11/site-packages/runner-0.1.0-py3.11.egg/runner/__init__.py", line 1964, in main libup.run(args.repo, args.output, args.branch) File "/venv/lib/python3.11/site-packages/runner-0.1.0-py3.11.egg/runner/__init__.py", line 1902, in run self.npm_upgrade(plan) File "/venv/lib/python3.11/site-packages/runner-0.1.0-py3.11.egg/runner/__init__.py", line 1252, in npm_upgrade self.npm_test() File "/venv/lib/python3.11/site-packages/runner-0.1.0-py3.11.egg/runner/__init__.py", line 330, in npm_test self.check_call(["node_modules/.bin/jest", "-u"]) File "/venv/lib/python3.11/site-packages/runner-0.1.0-py3.11.egg/runner/shell2.py", line 59, in check_call res.check_returncode() File "/usr/lib/python3.11/subprocess.py", line 502, in check_returncode raise CalledProcessError(self.returncode, self.args, self.stdout, subprocess.CalledProcessError: Command '['node_modules/.bin/jest', '-u']' returned non-zero exit status 1.