This run took 165 seconds.
$ date --- stdout --- Tue Aug 12 02:14:36 UTC 2025 --- end --- $ git clone file:///srv/git/mediawiki-extensions-GrowthExperiments.git repo --depth=1 -b master --- stderr --- Cloning into 'repo'... --- stdout --- --- end --- $ git config user.name libraryupgrader --- stdout --- --- end --- $ git config user.email tools.libraryupgrader@tools.wmflabs.org --- stdout --- --- end --- $ git submodule update --init --- stdout --- --- end --- $ grr init --- stdout --- Installed commit-msg hook. --- end --- $ git show-ref refs/heads/master --- stdout --- 2562643a9d94a4067f7dfd6533d7b991885c48c5 refs/heads/master --- end --- $ /usr/bin/npm audit --json --- stdout --- { "auditReportVersion": 2, "vulnerabilities": { "babel-core": { "name": "babel-core", "severity": "critical", "isDirect": true, "via": [ "babel-helpers", "babel-register", "babel-template", "babel-traverse", "json5" ], "effects": [ "babel-register" ], "range": "5.8.20 - 7.0.0-beta.3", "nodes": [ "node_modules/babel-core" ], "fixAvailable": { "name": "babel-core", "version": "4.7.16", "isSemVerMajor": true } }, "babel-helpers": { "name": "babel-helpers", "severity": "critical", "isDirect": false, "via": [ "babel-template" ], "effects": [], "range": "*", "nodes": [ "node_modules/babel-helpers" ], "fixAvailable": true }, "babel-register": { "name": "babel-register", "severity": "high", "isDirect": false, "via": [ "babel-core" ], "effects": [ "babel-core" ], "range": "*", "nodes": [ "node_modules/babel-register" ], "fixAvailable": { "name": "babel-core", "version": "4.7.16", "isSemVerMajor": true } }, "babel-template": { "name": "babel-template", "severity": "critical", "isDirect": false, "via": [ "babel-traverse" ], "effects": [ "babel-helpers" ], "range": "*", "nodes": [ "node_modules/babel-template" ], "fixAvailable": true }, "babel-traverse": { "name": "babel-traverse", "severity": "critical", "isDirect": false, "via": [ { "source": 1096879, "name": "babel-traverse", "dependency": "babel-traverse", "title": "Babel vulnerable to arbitrary code execution when compiling specifically crafted malicious code", "url": "https://github.com/advisories/GHSA-67hx-6x53-jw92", "severity": "critical", "cwe": [ "CWE-184", "CWE-697" ], "cvss": { "score": 9.4, "vectorString": "CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H" }, "range": "<7.23.2" } ], "effects": [ "babel-core", "babel-template" ], "range": "*", "nodes": [ "node_modules/babel-traverse" ], "fixAvailable": { "name": "babel-core", "version": "4.7.16", "isSemVerMajor": true } }, "brace-expansion": { "name": "brace-expansion", "severity": "low", "isDirect": false, "via": [ { "source": 1105443, "name": "brace-expansion", "dependency": "brace-expansion", "title": "brace-expansion Regular Expression Denial of Service vulnerability", "url": "https://github.com/advisories/GHSA-v6h2-p8h4-qcjw", "severity": "low", "cwe": [ "CWE-400" ], "cvss": { "score": 3.1, "vectorString": "CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:L" }, "range": ">=1.0.0 <=1.1.11" }, { "source": 1105444, "name": "brace-expansion", "dependency": "brace-expansion", "title": "brace-expansion Regular Expression Denial of Service vulnerability", "url": "https://github.com/advisories/GHSA-v6h2-p8h4-qcjw", "severity": "low", "cwe": [ "CWE-400" ], "cvss": { "score": 3.1, "vectorString": "CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:L" }, "range": ">=2.0.0 <=2.0.1" } ], "effects": [], "range": "1.0.0 - 1.1.11 || 2.0.0 - 2.0.1", "nodes": [ "node_modules/@typescript-eslint/eslint-plugin/node_modules/brace-expansion", "node_modules/@typescript-eslint/parser/node_modules/brace-expansion", "node_modules/@typescript-eslint/type-utils/node_modules/brace-expansion", "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion", "node_modules/brace-expansion", "node_modules/editorconfig/node_modules/brace-expansion", "node_modules/eslint-plugin-n/node_modules/brace-expansion", "node_modules/js-beautify/node_modules/brace-expansion" ], "fixAvailable": true }, "form-data": { "name": "form-data", "severity": "critical", "isDirect": false, "via": [ { "source": 1106507, "name": "form-data", "dependency": "form-data", "title": "form-data uses unsafe random function in form-data for choosing boundary", "url": "https://github.com/advisories/GHSA-fjxv-7rqg-78g4", "severity": "critical", "cwe": [ "CWE-330" ], "cvss": { "score": 0, "vectorString": null }, "range": ">=4.0.0 <4.0.4" }, { "source": 1106509, "name": "form-data", "dependency": "form-data", "title": "form-data uses unsafe random function in form-data for choosing boundary", "url": "https://github.com/advisories/GHSA-fjxv-7rqg-78g4", "severity": "critical", "cwe": [ "CWE-330" ], "cvss": { "score": 0, "vectorString": null }, "range": "<2.5.4" } ], "effects": [], "range": ">=4.0.0 <4.0.4 || <2.5.4", "nodes": [ "node_modules/@cypress/request/node_modules/form-data", "node_modules/form-data" ], "fixAvailable": true }, "json5": { "name": "json5", "severity": "high", "isDirect": false, "via": [ { "source": 1096543, "name": "json5", "dependency": "json5", "title": "Prototype Pollution in JSON5 via Parse Method", "url": "https://github.com/advisories/GHSA-9c47-m6qq-7p4h", "severity": "high", "cwe": [ "CWE-1321" ], "cvss": { "score": 7.1, "vectorString": "CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:L/A:H" }, "range": "<1.0.2" } ], "effects": [ "babel-core" ], "range": "<1.0.2", "nodes": [ "node_modules/babel-core/node_modules/json5" ], "fixAvailable": { "name": "babel-core", "version": "4.7.16", "isSemVerMajor": true } }, "tmp": { "name": "tmp", "severity": "low", "isDirect": false, "via": [ { "source": 1106849, "name": "tmp", "dependency": "tmp", "title": "tmp allows arbitrary temporary file / directory write via symbolic link `dir` parameter", "url": "https://github.com/advisories/GHSA-52f5-9888-hmc6", "severity": "low", "cwe": [ "CWE-59" ], "cvss": { "score": 2.5, "vectorString": "CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:L/A:N" }, "range": "<=0.2.3" } ], "effects": [], "range": "<=0.2.3", "nodes": [ "node_modules/cypress/node_modules/tmp" ], "fixAvailable": true } }, "metadata": { "vulnerabilities": { "info": 0, "low": 2, "moderate": 0, "high": 2, "critical": 5, "total": 9 }, "dependencies": { "prod": 1, "dev": 1401, "optional": 31, "peer": 26, "peerOptional": 0, "total": 1401 } } } --- 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: 49 installs, 0 updates, 0 removals - Locking composer/pcre (3.3.2) - Locking composer/semver (3.4.3) - Locking composer/spdx-licenses (1.5.9) - Locking composer/xdebug-handler (3.0.5) - Locking dealerdirect/phpcodesniffer-composer-installer (v1.1.2) - Locking doctrine/annotations (2.0.2) - Locking doctrine/deprecations (1.1.5) - Locking doctrine/lexer (3.0.1) - Locking felixfbecker/advanced-json-rpc (v3.2.1) - Locking mediawiki/mediawiki-codesniffer (v47.0.0) - Locking mediawiki/mediawiki-phan-config (0.16.0) - Locking mediawiki/minus-x (1.1.3) - Locking mediawiki/phan-taint-check-plugin (6.2.1) - Locking microsoft/tolerant-php-parser (v0.1.2) - Locking netresearch/jsonmapper (v4.5.0) - Locking phan/phan (5.5.0) - 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 phpbench/container (2.2.2) - Locking phpbench/phpbench (1.4.1) - Locking phpcsstandards/phpcsextra (1.2.1) - Locking phpcsstandards/phpcsutils (1.0.12) - Locking phpdocumentor/reflection-common (2.2.0) - Locking phpdocumentor/reflection-docblock (5.6.2) - Locking phpdocumentor/type-resolver (1.10.0) - Locking phpstan/phpdoc-parser (2.2.0) - Locking psr/cache (3.0.0) - Locking psr/container (2.0.2) - Locking psr/log (3.0.2) - Locking sabre/event (5.1.7) - Locking seld/jsonlint (1.11.0) - Locking squizlabs/php_codesniffer (3.12.2) - Locking symfony/console (v7.3.2) - Locking symfony/deprecation-contracts (v3.6.0) - Locking symfony/filesystem (v7.3.2) - Locking symfony/finder (v7.3.2) - Locking symfony/options-resolver (v7.3.2) - Locking symfony/polyfill-ctype (v1.32.0) - Locking symfony/polyfill-intl-grapheme (v1.32.0) - Locking symfony/polyfill-intl-normalizer (v1.32.0) - Locking symfony/polyfill-mbstring (v1.32.0) - Locking symfony/polyfill-php80 (v1.32.0) - Locking symfony/process (v7.3.0) - Locking symfony/service-contracts (v3.6.0) - Locking symfony/string (v7.3.2) - Locking tysonandre/var_representation_polyfill (0.1.3) - Locking webmozart/assert (1.11.0) - Locking webmozart/glob (4.7.0) Writing lock file Installing dependencies from lock file (including require-dev) Package operations: 49 installs, 0 updates, 0 removals - Downloading webmozart/glob (4.7.0) - Downloading symfony/options-resolver (v7.3.2) - Downloading phpbench/container (2.2.2) - Downloading doctrine/annotations (2.0.2) - Downloading phpbench/phpbench (1.4.1) 0/5 [>---------------------------] 0% 3/5 [================>-----------] 60% 5/5 [============================] 100% - Installing squizlabs/php_codesniffer (3.12.2): Extracting archive - Installing dealerdirect/phpcodesniffer-composer-installer (v1.1.2): Extracting archive - Installing composer/pcre (3.3.2): Extracting archive - Installing doctrine/lexer (3.0.1): Extracting archive - Installing symfony/polyfill-php80 (v1.32.0): Extracting archive - Installing phpcsstandards/phpcsutils (1.0.12): Extracting archive - Installing phpcsstandards/phpcsextra (1.2.1): Extracting archive - Installing symfony/polyfill-mbstring (v1.32.0): Extracting archive - Installing composer/spdx-licenses (1.5.9): Extracting archive - Installing composer/semver (3.4.3): Extracting archive - Installing mediawiki/mediawiki-codesniffer (v47.0.0): Extracting archive - Installing tysonandre/var_representation_polyfill (0.1.3): Extracting archive - Installing symfony/polyfill-intl-normalizer (v1.32.0): Extracting archive - Installing symfony/polyfill-intl-grapheme (v1.32.0): Extracting archive - Installing symfony/polyfill-ctype (v1.32.0): Extracting archive - Installing symfony/string (v7.3.2): 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.0): Extracting archive - Installing symfony/console (v7.3.2): Extracting archive - Installing sabre/event (5.1.7): Extracting archive - Installing netresearch/jsonmapper (v4.5.0): Extracting archive - Installing microsoft/tolerant-php-parser (v0.1.2): Extracting archive - Installing webmozart/assert (1.11.0): Extracting archive - Installing phpstan/phpdoc-parser (2.2.0): Extracting archive - Installing phpdocumentor/reflection-common (2.2.0): Extracting archive - Installing doctrine/deprecations (1.1.5): Extracting archive - Installing phpdocumentor/type-resolver (1.10.0): Extracting archive - Installing phpdocumentor/reflection-docblock (5.6.2): 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.0): Extracting archive - Installing mediawiki/phan-taint-check-plugin (6.2.1): Extracting archive - Installing mediawiki/mediawiki-phan-config (0.16.0): Extracting archive - Installing mediawiki/minus-x (1.1.3): Extracting archive - Installing php-parallel-lint/php-console-color (v1.0.1): Extracting archive - Installing php-parallel-lint/php-console-highlighter (v1.0.0): Extracting archive - Installing php-parallel-lint/php-parallel-lint (v1.4.0): Extracting archive - Installing webmozart/glob (4.7.0): Extracting archive - Installing symfony/process (v7.3.0): Extracting archive - Installing symfony/options-resolver (v7.3.2): Extracting archive - Installing symfony/finder (v7.3.2): Extracting archive - Installing symfony/filesystem (v7.3.2): Extracting archive - Installing seld/jsonlint (1.11.0): Extracting archive - Installing phpbench/container (2.2.2): Extracting archive - Installing psr/cache (3.0.0): Extracting archive - Installing doctrine/annotations (2.0.2): Extracting archive - Installing phpbench/phpbench (1.4.1): Extracting archive 0/47 [>---------------------------] 0% 20/47 [===========>----------------] 42% 34/47 [====================>-------] 72% 46/47 [===========================>] 97% 47/47 [============================] 100% 2 package suggestions were added by new dependencies, use `composer suggest` to see details. Generating autoload files 24 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:@wikimedia/codex from 2.0.0-rc.1 -> 2.2.1 $ /usr/bin/npm install --- stderr --- npm WARN EBADENGINE Unsupported engine { npm WARN EBADENGINE package: '@wikimedia/codex@2.2.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@2.2.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 @babel/plugin-proposal-unicode-property-regex@7.18.6: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-unicode-property-regex instead. npm WARN deprecated @babel/plugin-proposal-private-methods@7.18.6: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-private-methods instead. npm WARN deprecated @babel/plugin-proposal-optional-catch-binding@7.18.6: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-optional-catch-binding instead. npm WARN deprecated @babel/plugin-proposal-numeric-separator@7.18.6: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-numeric-separator instead. npm WARN deprecated @babel/plugin-proposal-nullish-coalescing-operator@7.18.6: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-nullish-coalescing-operator instead. npm WARN deprecated @babel/plugin-proposal-json-strings@7.18.6: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-json-strings instead. npm WARN deprecated @babel/plugin-proposal-export-namespace-from@7.18.9: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-export-namespace-from instead. npm WARN deprecated @babel/plugin-proposal-dynamic-import@7.18.6: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-dynamic-import instead. npm WARN deprecated @babel/plugin-proposal-class-properties@7.18.6: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-class-properties instead. npm WARN deprecated @babel/plugin-proposal-logical-assignment-operators@7.20.7: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-logical-assignment-operators instead. npm WARN deprecated @babel/plugin-proposal-class-static-block@7.21.0: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-class-static-block instead. 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 @babel/plugin-proposal-optional-chaining@7.21.0: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-optional-chaining instead. npm WARN deprecated @babel/plugin-proposal-async-generator-functions@7.20.7: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-async-generator-functions instead. npm WARN deprecated @babel/plugin-proposal-private-property-in-object@7.21.11: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-private-property-in-object 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 @babel/plugin-proposal-object-rest-spread@7.20.7: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-object-rest-spread 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. npm WARN deprecated core-js@2.6.12: core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js. npm WARN deprecated core-js@2.6.12: core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js. --- stdout --- added 1400 packages, and audited 1401 packages in 40s 252 packages are looking for funding run `npm fund` for details 9 vulnerabilities (2 low, 2 high, 5 critical) 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 --- $ package-lock-lint package-lock.json --- stdout --- Checking package-lock.json --- end --- $ /usr/bin/npm ci --- stderr --- npm WARN EBADENGINE Unsupported engine { npm WARN EBADENGINE package: '@wikimedia/codex@2.2.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@2.2.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 @babel/plugin-proposal-unicode-property-regex@7.18.6: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-unicode-property-regex instead. npm WARN deprecated @babel/plugin-proposal-private-methods@7.18.6: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-private-methods instead. npm WARN deprecated @babel/plugin-proposal-optional-catch-binding@7.18.6: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-optional-catch-binding instead. npm WARN deprecated @babel/plugin-proposal-numeric-separator@7.18.6: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-numeric-separator instead. npm WARN deprecated @babel/plugin-proposal-json-strings@7.18.6: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-json-strings instead. npm WARN deprecated @babel/plugin-proposal-nullish-coalescing-operator@7.18.6: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-nullish-coalescing-operator instead. npm WARN deprecated @babel/plugin-proposal-export-namespace-from@7.18.9: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-export-namespace-from instead. npm WARN deprecated @babel/plugin-proposal-class-properties@7.18.6: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-class-properties instead. npm WARN deprecated @babel/plugin-proposal-dynamic-import@7.18.6: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-dynamic-import instead. npm WARN deprecated @babel/plugin-proposal-class-static-block@7.21.0: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-class-static-block instead. npm WARN deprecated @babel/plugin-proposal-logical-assignment-operators@7.20.7: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-logical-assignment-operators instead. 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 @babel/plugin-proposal-optional-chaining@7.21.0: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-optional-chaining instead. npm WARN deprecated @babel/plugin-proposal-private-property-in-object@7.21.11: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-private-property-in-object instead. npm WARN deprecated @babel/plugin-proposal-async-generator-functions@7.20.7: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-async-generator-functions 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 @babel/plugin-proposal-object-rest-spread@7.20.7: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-object-rest-spread 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. npm WARN deprecated core-js@2.6.12: core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js. npm WARN deprecated core-js@2.6.12: core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js. --- stdout --- added 1400 packages, and audited 1401 packages in 31s 252 packages are looking for funding run `npm fund` for details 9 vulnerabilities (2 low, 2 high, 5 critical) 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 modules/ext.growthExperiments.MentorDashboard/store/modules/mentees.test.js PASS modules/ext.growthExperiments.Homepage.Impact/components/NoEditsDisplay.test.js PASS modules/ext.growthExperiments.DataStore/NewcomerTasksStore.test.js PASS modules/ext.growthExperiments.MentorDashboard/components/MenteeOverview/MenteeOverview.test.js PASS modules/vue-components/CScoreCards.test.js PASS modules/ext.growthExperiments.Homepage.Impact/components/ImpactVue.test.js PASS modules/ext.growthExperiments.Homepage.Impact/components/TrendChart.test.js PASS modules/vue-components/CScoreCard.test.js FAIL modules/ext.growthExperiments.MentorDashboard/components/PersonalizedPraise/PersonalizedPraise.test.js ● PersonalizedPraise › NoResult when no mentees Expected test not to call console.warn(). If the warn is expected, test for it explicitly by mocking it out using jest.spyOn(console, 'warn').mockImplementation() and test that the warning occurs. [CdxDialog]: The boolean `useCloseButton` prop is required to show the close button. Refer to https://doc.wikimedia.org/codex/latest/components/demos/dialog.html#props. at console.captureMessage [as warn] (/src/repo/node_modules/jest-fail-on-console/index.js:83:25) at validator (/src/repo/node_modules/@wikimedia/codex/dist/codex.cjs:9:81587) at validateProp (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4367:21) at validateProps (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4335:5) at initProps (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4036:5) at setupComponent (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:7807:3) at mountComponent (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5159:7) at processComponent (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5125:9) at patch (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4654:11) at mountChildren (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4886:7) at mountElement (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4809:7) at processElement (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4774:7) at patch (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4642:11) at ReactiveEffect.componentUpdateFn [as fn] (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5269:11) at ReactiveEffect.run (/src/repo/node_modules/@vue/reactivity/dist/reactivity.cjs.js:229:19) at setupRenderEffect (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5397:5) at mountComponent (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5172:7) at processComponent (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5125:9) at patch (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4654:11) at mountChildren (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4886:7) at mountElement (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4809:7) at processElement (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4774:7) at patch (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4642:11) at ReactiveEffect.componentUpdateFn [as fn] (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5269:11) at ReactiveEffect.run (/src/repo/node_modules/@vue/reactivity/dist/reactivity.cjs.js:229:19) at setupRenderEffect (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5397:5) at mountComponent (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5172:7) at processComponent (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5125:9) at patch (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4654:11) at ReactiveEffect.componentUpdateFn [as fn] (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5269:11) at ReactiveEffect.run (/src/repo/node_modules/@vue/reactivity/dist/reactivity.cjs.js:229:19) at setupRenderEffect (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5397:5) at mountComponent (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5172:7) at processComponent (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5125:9) at patch (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4654:11) at render (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5922:7) at mount (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:3922:13) at Object.app.mount (/src/repo/node_modules/@vue/runtime-dom/dist/runtime-dom.cjs.js:1703:19) at mount (/src/repo/node_modules/@vue/test-utils/dist/vue-test-utils.cjs.js:8415:18) at Object.<anonymous> (/src/repo/modules/ext.growthExperiments.MentorDashboard/components/PersonalizedPraise/PersonalizedPraise.test.js:73:19) at Promise.then.completed (/src/repo/node_modules/jest-circus/build/utils.js:298:28) at new Promise (<anonymous>) at callAsyncCircusFn (/src/repo/node_modules/jest-circus/build/utils.js:231:10) at _callCircusTest (/src/repo/node_modules/jest-circus/build/run.js:316:40) at processTicksAndRejections (node:internal/process/task_queues:95:5) at _runTest (/src/repo/node_modules/jest-circus/build/run.js:252:3) at _runTestsForDescribeBlock (/src/repo/node_modules/jest-circus/build/run.js:126:9) at _runTestsForDescribeBlock (/src/repo/node_modules/jest-circus/build/run.js:121:9) at run (/src/repo/node_modules/jest-circus/build/run.js:71:3) at runAndTransformResultsToJestFormat (/src/repo/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21) at jestAdapter (/src/repo/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19) at runTestInternal (/src/repo/node_modules/jest-runner/build/runTest.js:367:16) at runTest (/src/repo/node_modules/jest-runner/build/runTest.js:444:34) at Object.worker (/src/repo/node_modules/jest-runner/build/testWorker.js:106:12) [Vue warn]: Invalid prop: custom validator check failed for prop "closeButtonLabel". at <CdxDialog open=false onUpdate:open=fn class="ext-growthExperiments-PersonalizedPraise-Settings__dialog" ... > at <Anonymous settings-data= { minEdits: 1, days: 14, messageSubject: 'Message subject', messageText: 'Message text', notificationFrequency: 0 } onUpdate:settings=fn<bound onSettingsUpdate> > at <Anonymous ref="VTU_COMPONENT" > at <VTUROOT> at console.captureMessage [as warn] (/src/repo/node_modules/jest-fail-on-console/index.js:83:25) at warn$1 (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:53:13) at validateProp (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4368:5) at validateProps (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4335:5) at initProps (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4036:5) at setupComponent (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:7807:3) at mountComponent (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5159:7) at processComponent (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5125:9) at patch (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4654:11) at mountChildren (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4886:7) at mountElement (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4809:7) at processElement (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4774:7) at patch (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4642:11) at ReactiveEffect.componentUpdateFn [as fn] (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5269:11) at ReactiveEffect.run (/src/repo/node_modules/@vue/reactivity/dist/reactivity.cjs.js:229:19) at setupRenderEffect (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5397:5) at mountComponent (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5172:7) at processComponent (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5125:9) at patch (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4654:11) at mountChildren (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4886:7) at mountElement (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4809:7) at processElement (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4774:7) at patch (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4642:11) at ReactiveEffect.componentUpdateFn [as fn] (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5269:11) at ReactiveEffect.run (/src/repo/node_modules/@vue/reactivity/dist/reactivity.cjs.js:229:19) at setupRenderEffect (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5397:5) at mountComponent (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5172:7) at processComponent (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5125:9) at patch (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4654:11) at ReactiveEffect.componentUpdateFn [as fn] (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5269:11) at ReactiveEffect.run (/src/repo/node_modules/@vue/reactivity/dist/reactivity.cjs.js:229:19) at setupRenderEffect (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5397:5) at mountComponent (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5172:7) at processComponent (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5125:9) at patch (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4654:11) at render (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5922:7) at mount (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:3922:13) at Object.app.mount (/src/repo/node_modules/@vue/runtime-dom/dist/runtime-dom.cjs.js:1703:19) at mount (/src/repo/node_modules/@vue/test-utils/dist/vue-test-utils.cjs.js:8415:18) at Object.<anonymous> (/src/repo/modules/ext.growthExperiments.MentorDashboard/components/PersonalizedPraise/PersonalizedPraise.test.js:73:19) at Promise.then.completed (/src/repo/node_modules/jest-circus/build/utils.js:298:28) at new Promise (<anonymous>) at callAsyncCircusFn (/src/repo/node_modules/jest-circus/build/utils.js:231:10) at _callCircusTest (/src/repo/node_modules/jest-circus/build/run.js:316:40) at processTicksAndRejections (node:internal/process/task_queues:95:5) at _runTest (/src/repo/node_modules/jest-circus/build/run.js:252:3) at _runTestsForDescribeBlock (/src/repo/node_modules/jest-circus/build/run.js:126:9) at _runTestsForDescribeBlock (/src/repo/node_modules/jest-circus/build/run.js:121:9) at run (/src/repo/node_modules/jest-circus/build/run.js:71:3) at runAndTransformResultsToJestFormat (/src/repo/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21) at jestAdapter (/src/repo/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19) at runTestInternal (/src/repo/node_modules/jest-runner/build/runTest.js:367:16) at runTest (/src/repo/node_modules/jest-runner/build/runTest.js:444:34) at Object.worker (/src/repo/node_modules/jest-runner/build/testWorker.js:106:12) at flushUnexpectedConsoleCalls (node_modules/jest-fail-on-console/index.js:48:13) at Object.<anonymous> (node_modules/jest-fail-on-console/index.js:139:7) PASS modules/ext.growthExperiments.Homepage.Impact/components/ErrorDisplay.test.js PASS modules/vue-components/CText.test.js PASS modules/ext.growthExperiments.MentorDashboard/components/DataTable/DataTableCellValue.test.js PASS modules/ext.growthExperiments.Homepage.Impact/composables/useUserImpact.test.js FAIL modules/ext.growthExperiments.MentorDashboard/components/PersonalizedPraise/PersonalizedPraiseSettingsForm.test.js ● PersonalizedPraiseSettingsForm › it renders with correct defaults expect(received).toMatchSnapshot() Snapshot name: `PersonalizedPraiseSettingsForm it renders with correct defaults 1` - Snapshot - 0 + Received + 1 @@ -200,10 +200,11 @@ <!--v-if--> </ul> </div> + <!--v-if--> </div> </div> <label> growthexperiments-mentor-dashboard-personalized-praise-settings-praiseworthy-metric-max-reverts </label> 19 | } 20 | } ); > 21 | expect( wrapper.element ).toMatchSnapshot(); | ^ 22 | } ); 23 | } ); 24 | at Object.<anonymous> (modules/ext.growthExperiments.MentorDashboard/components/PersonalizedPraise/PersonalizedPraiseSettingsForm.test.js:21:29) › 1 snapshot failed. PASS modules/ext.growthExperiments.MentorDashboard/components/MenteeOverview/MenteeFiltersForm.test.js Snapshot Summary › 1 snapshot failed from 1 test suite. Inspect your code changes or run `npm run test:jest -- -u` to update them. Test Suites: 2 failed, 13 passed, 15 total Tests: 2 failed, 41 passed, 43 total Snapshots: 1 failed, 13 passed, 14 total Time: 9.715 s Ran all test suites. ERROR: "test:jest" exited with 1. --- stdout --- > test > npm-run-all test:* > test:types > tsc --noEmit && tsc --noEmit -p cypress/tsconfig.json > test:eslint > eslint --cache . --max-warnings=0 > test:stylelint > stylelint --cache "**/*.{css,vue,less}" > test:i18n > grunt test Running "banana:docs" (banana) task >> 10 message directories checked. Done. > test:jest > jest ---------------------------------------------------------------------|---------|----------|---------|---------|--------------------------------------------------------------------------------------- File | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s ---------------------------------------------------------------------|---------|----------|---------|---------|--------------------------------------------------------------------------------------- All files | 49.72 | 41.32 | 34.45 | 50.22 | ext.growthExperiments.Homepage.Impact | 2.91 | 0 | 0 | 2.94 | App.vue | 0 | 0 | 0 | 0 | 3-105 constants.js | 100 | 100 | 100 | 100 | init.js | 0 | 0 | 0 | 0 | 1-165 ext.growthExperiments.Homepage.Impact/components | 70.49 | 70.32 | 67.01 | 70.97 | ArticlesList.vue | 77.77 | 100 | 20 | 77.77 | 18,41-46 ArticlesListItem.vue | 41.86 | 0 | 0 | 45 | 44-52,83-165 ErrorDisplay.vue | 100 | 100 | 100 | 100 | ErrorDisplaySummary.vue | 0 | 100 | 0 | 0 | 3-58 Impact.vue | 97.43 | 86.36 | 92.3 | 97.43 | 112 ImpactSummary.vue | 0 | 0 | 0 | 0 | 1-48 InfoBoxes.vue | 0 | 0 | 0 | 0 | 1-83 LayoutWrapper.vue | 0 | 100 | 0 | 0 | 8-34 NoEditsDisplay.vue | 96.36 | 89.18 | 100 | 96.36 | 60-61 RecentActivity.vue | 97.14 | 50 | 100 | 97.14 | 63 StreakGraph.vue | 95.23 | 100 | 87.5 | 95.23 | 25 TrendChart.vue | 100 | 100 | 100 | 100 | ext.growthExperiments.Homepage.Impact/composables | 73.21 | 72.72 | 78.94 | 71.69 | useMWRestApi.js | 0 | 0 | 0 | 0 | 1-35 useUserImpact.js | 97.61 | 88.88 | 100 | 97.43 | 93 ext.growthExperiments.MentorDashboard | 0 | 0 | 0 | 0 | Discovery.js | 0 | 0 | 0 | 0 | 2-12 PersonalizedPraisePostEdit.js | 0 | 0 | 0 | 0 | 1-18 init.js | 0 | 0 | 0 | 0 | 1-53 ext.growthExperiments.MentorDashboard/MentorTools | 0 | 0 | 0 | 0 | AwaySettingsDialog.js | 0 | 0 | 0 | 0 | 1-108 MentorMessageChangeDialog.js | 0 | 0 | 0 | 0 | 10-103 MentorTools.js | 0 | 0 | 0 | 0 | 2-223 MentorToolsEllipsisMenu.js | 0 | 0 | 0 | 0 | 1-63 ext.growthExperiments.MentorDashboard/components/CNumberInput | 66.66 | 55.55 | 23.07 | 65.51 | CNumberInput.vue | 66.66 | 55.55 | 23.07 | 65.51 | 99,102,105,108,129,148-164 ext.growthExperiments.MentorDashboard/components/DataTable | 47 | 0 | 5.26 | 52.38 | DataTable.vue | 32.25 | 0 | 0 | 39.21 | 37-89,100-103,121-164 DataTableCellLink.vue | 75 | 100 | 0 | 75 | 36-41 DataTableCellValue.vue | 100 | 100 | 100 | 100 | DataTableLimit.vue | 50 | 0 | 0 | 53.33 | 24-31,49-55 DataTablePagination.vue | 50 | 0 | 0 | 50 | 31-38,53-79 ext.growthExperiments.MentorDashboard/components/HorizontalDivider | 100 | 100 | 100 | 100 | HorizontalDivider.vue | 100 | 100 | 100 | 100 | ext.growthExperiments.MentorDashboard/components/MenteeOverview | 66.66 | 41.46 | 37.36 | 66.95 | DataTableCellMentee.vue | 60.86 | 0 | 0 | 60.86 | 27-45,74-82 LegendBox.vue | 73.33 | 100 | 0 | 73.33 | 21,43-45 MenteeFilters.vue | 40.74 | 0 | 0 | 40.74 | 28-64,82-89 MenteeFiltersForm.vue | 75.47 | 50 | 56.52 | 75.47 | 87-105,160-175,191,206,219 MenteeOverview.vue | 72.83 | 58.82 | 52.5 | 73.75 | 27-99,180-187,219-231,304-329 MenteeSearch.vue | 45.45 | 0 | 0 | 45.45 | 22-43,60-66 NoResults.vue | 84.61 | 0 | 0 | 84.61 | 53-54 ext.growthExperiments.MentorDashboard/components/PersonalizedPraise | 56.65 | 48.48 | 25.58 | 57.39 | NoResults.vue | 100 | 100 | 100 | 100 | PersonalizedPraise.vue | 81.25 | 91.66 | 58.82 | 81.25 | 65-80,123,138-148 PersonalizedPraisePagination.vue | 45.45 | 0 | 0 | 45.45 | 33-43,58-92 PersonalizedPraiseSettings.vue | 68.96 | 50 | 33.33 | 68.96 | 44-54,78,90-99 PersonalizedPraiseSettingsForm.vue | 70.73 | 68.18 | 44.44 | 70.73 | 67-70,88,144-164,180-185,200,218 SkipMenteeDialog.vue | 26.31 | 0 | 0 | 28.57 | 34-70,87-136 UserCard.vue | 34.04 | 0 | 0 | 34.04 | 33-123,147-172 ext.growthExperiments.MentorDashboard/logger | 0 | 0 | 0 | 0 | Logger.js | 0 | 0 | 0 | 0 | 5-41 ext.growthExperiments.MentorDashboard/plugins | 0 | 0 | 0 | 0 | logger.js | 0 | 0 | 0 | 0 | 9-15 ext.growthExperiments.MentorDashboard/store | 26.66 | 0 | 6.89 | 26.96 | MenteeOverviewApi.js | 28.91 | 0 | 6.89 | 29.26 | 32,37-52,56-71,83,87,91,95,99,103-110,115-118,122-128,134-145,150-161,167-178,185-186 index.js | 0 | 100 | 100 | 0 | 1-16 ext.growthExperiments.MentorDashboard/store/modules | 44.56 | 49.23 | 25.39 | 44 | mentees-search.js | 0 | 0 | 0 | 0 | 2-50 mentees.js | 66.36 | 67.39 | 41.66 | 66.01 | 31,61-63,71-74,107,121,128,144,147,150,200-201,217,226,235-243,253-286 praiseworthy-mentees.js | 0 | 0 | 0 | 0 | 1-101 user-preferences.js | 52.94 | 50 | 20 | 52.94 | 12,21,27-32,41 ext.growthExperiments.MentorDashboard/validators | 100 | 100 | 100 | 100 | align-text.validator.js | 100 | 100 | 100 | 100 | vue-components | 72.41 | 60.71 | 58.92 | 73.73 | CList.vue | 53.33 | 0 | 33.33 | 53.33 | 22-30 CListItem.vue | 85.71 | 100 | 0 | 85.71 | 21 CScoreCard.vue | 93.33 | 78.57 | 77.77 | 93.1 | 139-141 CScoreCards.vue | 56.66 | 56.25 | 54.83 | 56.66 | 98-101,112,130-193,199,262-292,337-344 CSparkline.vue | 81.08 | 50 | 50 | 90.9 | 63-67,76 CText.vue | 100 | 100 | 100 | 100 | vue-components/directives | 0 | 0 | 0 | 0 | click-outside.directive.js | 0 | 0 | 0 | 0 | 1-25 vue-components/plugins | 0 | 100 | 0 | 0 | logger.js | 0 | 100 | 0 | 0 | 9-19 ---------------------------------------------------------------------|---------|----------|---------|---------|--------------------------------------------------------------------------------------- --- end --- $ node_modules/.bin/jest -u --- stderr --- PASS modules/ext.growthExperiments.MentorDashboard/components/MenteeOverview/MenteeOverview.test.js PASS modules/ext.growthExperiments.MentorDashboard/components/PersonalizedPraise/PersonalizedPraiseSettingsForm.test.js › 1 snapshot updated. FAIL modules/ext.growthExperiments.MentorDashboard/components/PersonalizedPraise/PersonalizedPraise.test.js ● PersonalizedPraise › NoResult when no mentees Expected test not to call console.warn(). If the warn is expected, test for it explicitly by mocking it out using jest.spyOn(console, 'warn').mockImplementation() and test that the warning occurs. [CdxDialog]: The boolean `useCloseButton` prop is required to show the close button. Refer to https://doc.wikimedia.org/codex/latest/components/demos/dialog.html#props. at console.captureMessage [as warn] (/src/repo/node_modules/jest-fail-on-console/index.js:83:25) at validator (/src/repo/node_modules/@wikimedia/codex/dist/codex.cjs:9:81587) at validateProp (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4367:21) at validateProps (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4335:5) at initProps (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4036:5) at setupComponent (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:7807:3) at mountComponent (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5159:7) at processComponent (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5125:9) at patch (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4654:11) at mountChildren (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4886:7) at mountElement (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4809:7) at processElement (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4774:7) at patch (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4642:11) at ReactiveEffect.componentUpdateFn [as fn] (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5269:11) at ReactiveEffect.run (/src/repo/node_modules/@vue/reactivity/dist/reactivity.cjs.js:229:19) at setupRenderEffect (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5397:5) at mountComponent (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5172:7) at processComponent (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5125:9) at patch (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4654:11) at mountChildren (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4886:7) at mountElement (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4809:7) at processElement (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4774:7) at patch (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4642:11) at ReactiveEffect.componentUpdateFn [as fn] (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5269:11) at ReactiveEffect.run (/src/repo/node_modules/@vue/reactivity/dist/reactivity.cjs.js:229:19) at setupRenderEffect (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5397:5) at mountComponent (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5172:7) at processComponent (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5125:9) at patch (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4654:11) at ReactiveEffect.componentUpdateFn [as fn] (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5269:11) at ReactiveEffect.run (/src/repo/node_modules/@vue/reactivity/dist/reactivity.cjs.js:229:19) at setupRenderEffect (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5397:5) at mountComponent (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5172:7) at processComponent (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5125:9) at patch (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4654:11) at render (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5922:7) at mount (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:3922:13) at Object.app.mount (/src/repo/node_modules/@vue/runtime-dom/dist/runtime-dom.cjs.js:1703:19) at mount (/src/repo/node_modules/@vue/test-utils/dist/vue-test-utils.cjs.js:8415:18) at Object.<anonymous> (/src/repo/modules/ext.growthExperiments.MentorDashboard/components/PersonalizedPraise/PersonalizedPraise.test.js:73:19) at Promise.then.completed (/src/repo/node_modules/jest-circus/build/utils.js:298:28) at new Promise (<anonymous>) at callAsyncCircusFn (/src/repo/node_modules/jest-circus/build/utils.js:231:10) at _callCircusTest (/src/repo/node_modules/jest-circus/build/run.js:316:40) at processTicksAndRejections (node:internal/process/task_queues:95:5) at _runTest (/src/repo/node_modules/jest-circus/build/run.js:252:3) at _runTestsForDescribeBlock (/src/repo/node_modules/jest-circus/build/run.js:126:9) at _runTestsForDescribeBlock (/src/repo/node_modules/jest-circus/build/run.js:121:9) at run (/src/repo/node_modules/jest-circus/build/run.js:71:3) at runAndTransformResultsToJestFormat (/src/repo/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21) at jestAdapter (/src/repo/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19) at runTestInternal (/src/repo/node_modules/jest-runner/build/runTest.js:367:16) at runTest (/src/repo/node_modules/jest-runner/build/runTest.js:444:34) at Object.worker (/src/repo/node_modules/jest-runner/build/testWorker.js:106:12) [Vue warn]: Invalid prop: custom validator check failed for prop "closeButtonLabel". at <CdxDialog open=false onUpdate:open=fn class="ext-growthExperiments-PersonalizedPraise-Settings__dialog" ... > at <Anonymous settings-data= { minEdits: 1, days: 14, messageSubject: 'Message subject', messageText: 'Message text', notificationFrequency: 0 } onUpdate:settings=fn<bound onSettingsUpdate> > at <Anonymous ref="VTU_COMPONENT" > at <VTUROOT> at console.captureMessage [as warn] (/src/repo/node_modules/jest-fail-on-console/index.js:83:25) at warn$1 (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:53:13) at validateProp (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4368:5) at validateProps (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4335:5) at initProps (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4036:5) at setupComponent (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:7807:3) at mountComponent (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5159:7) at processComponent (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5125:9) at patch (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4654:11) at mountChildren (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4886:7) at mountElement (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4809:7) at processElement (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4774:7) at patch (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4642:11) at ReactiveEffect.componentUpdateFn [as fn] (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5269:11) at ReactiveEffect.run (/src/repo/node_modules/@vue/reactivity/dist/reactivity.cjs.js:229:19) at setupRenderEffect (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5397:5) at mountComponent (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5172:7) at processComponent (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5125:9) at patch (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4654:11) at mountChildren (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4886:7) at mountElement (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4809:7) at processElement (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4774:7) at patch (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4642:11) at ReactiveEffect.componentUpdateFn [as fn] (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5269:11) at ReactiveEffect.run (/src/repo/node_modules/@vue/reactivity/dist/reactivity.cjs.js:229:19) at setupRenderEffect (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5397:5) at mountComponent (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5172:7) at processComponent (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5125:9) at patch (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4654:11) at ReactiveEffect.componentUpdateFn [as fn] (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5269:11) at ReactiveEffect.run (/src/repo/node_modules/@vue/reactivity/dist/reactivity.cjs.js:229:19) at setupRenderEffect (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5397:5) at mountComponent (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5172:7) at processComponent (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5125:9) at patch (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4654:11) at render (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5922:7) at mount (/src/repo/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:3922:13) at Object.app.mount (/src/repo/node_modules/@vue/runtime-dom/dist/runtime-dom.cjs.js:1703:19) at mount (/src/repo/node_modules/@vue/test-utils/dist/vue-test-utils.cjs.js:8415:18) at Object.<anonymous> (/src/repo/modules/ext.growthExperiments.MentorDashboard/components/PersonalizedPraise/PersonalizedPraise.test.js:73:19) at Promise.then.completed (/src/repo/node_modules/jest-circus/build/utils.js:298:28) at new Promise (<anonymous>) at callAsyncCircusFn (/src/repo/node_modules/jest-circus/build/utils.js:231:10) at _callCircusTest (/src/repo/node_modules/jest-circus/build/run.js:316:40) at processTicksAndRejections (node:internal/process/task_queues:95:5) at _runTest (/src/repo/node_modules/jest-circus/build/run.js:252:3) at _runTestsForDescribeBlock (/src/repo/node_modules/jest-circus/build/run.js:126:9) at _runTestsForDescribeBlock (/src/repo/node_modules/jest-circus/build/run.js:121:9) at run (/src/repo/node_modules/jest-circus/build/run.js:71:3) at runAndTransformResultsToJestFormat (/src/repo/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:122:21) at jestAdapter (/src/repo/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:79:19) at runTestInternal (/src/repo/node_modules/jest-runner/build/runTest.js:367:16) at runTest (/src/repo/node_modules/jest-runner/build/runTest.js:444:34) at Object.worker (/src/repo/node_modules/jest-runner/build/testWorker.js:106:12) at flushUnexpectedConsoleCalls (node_modules/jest-fail-on-console/index.js:48:13) at Object.<anonymous> (node_modules/jest-fail-on-console/index.js:139:7) PASS modules/ext.growthExperiments.MentorDashboard/store/modules/mentees.test.js PASS modules/ext.growthExperiments.Homepage.Impact/components/NoEditsDisplay.test.js PASS modules/ext.growthExperiments.Homepage.Impact/components/ImpactVue.test.js PASS modules/ext.growthExperiments.Homepage.Impact/components/ErrorDisplay.test.js PASS modules/vue-components/CScoreCard.test.js PASS modules/vue-components/CScoreCards.test.js PASS modules/ext.growthExperiments.Homepage.Impact/components/TrendChart.test.js PASS modules/ext.growthExperiments.DataStore/NewcomerTasksStore.test.js PASS modules/ext.growthExperiments.MentorDashboard/components/MenteeOverview/MenteeFiltersForm.test.js PASS modules/ext.growthExperiments.MentorDashboard/components/DataTable/DataTableCellValue.test.js PASS modules/vue-components/CText.test.js PASS modules/ext.growthExperiments.Homepage.Impact/composables/useUserImpact.test.js Snapshot Summary › 1 snapshot updated from 1 test suite. Test Suites: 1 failed, 14 passed, 15 total Tests: 1 failed, 42 passed, 43 total Snapshots: 1 updated, 13 passed, 14 total Time: 6.056 s Ran all test suites. --- stdout --- ---------------------------------------------------------------------|---------|----------|---------|---------|--------------------------------------------------------------------------------------- File | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s ---------------------------------------------------------------------|---------|----------|---------|---------|--------------------------------------------------------------------------------------- All files | 49.72 | 41.32 | 34.45 | 50.22 | ext.growthExperiments.Homepage.Impact | 2.91 | 0 | 0 | 2.94 | App.vue | 0 | 0 | 0 | 0 | 3-105 constants.js | 100 | 100 | 100 | 100 | init.js | 0 | 0 | 0 | 0 | 1-165 ext.growthExperiments.Homepage.Impact/components | 70.49 | 70.32 | 67.01 | 70.97 | ArticlesList.vue | 77.77 | 100 | 20 | 77.77 | 18,41-46 ArticlesListItem.vue | 41.86 | 0 | 0 | 45 | 44-52,83-165 ErrorDisplay.vue | 100 | 100 | 100 | 100 | ErrorDisplaySummary.vue | 0 | 100 | 0 | 0 | 3-58 Impact.vue | 97.43 | 86.36 | 92.3 | 97.43 | 112 ImpactSummary.vue | 0 | 0 | 0 | 0 | 1-48 InfoBoxes.vue | 0 | 0 | 0 | 0 | 1-83 LayoutWrapper.vue | 0 | 100 | 0 | 0 | 8-34 NoEditsDisplay.vue | 96.36 | 89.18 | 100 | 96.36 | 60-61 RecentActivity.vue | 97.14 | 50 | 100 | 97.14 | 63 StreakGraph.vue | 95.23 | 100 | 87.5 | 95.23 | 25 TrendChart.vue | 100 | 100 | 100 | 100 | ext.growthExperiments.Homepage.Impact/composables | 73.21 | 72.72 | 78.94 | 71.69 | useMWRestApi.js | 0 | 0 | 0 | 0 | 1-35 useUserImpact.js | 97.61 | 88.88 | 100 | 97.43 | 93 ext.growthExperiments.MentorDashboard | 0 | 0 | 0 | 0 | Discovery.js | 0 | 0 | 0 | 0 | 2-12 PersonalizedPraisePostEdit.js | 0 | 0 | 0 | 0 | 1-18 init.js | 0 | 0 | 0 | 0 | 1-53 ext.growthExperiments.MentorDashboard/MentorTools | 0 | 0 | 0 | 0 | AwaySettingsDialog.js | 0 | 0 | 0 | 0 | 1-108 MentorMessageChangeDialog.js | 0 | 0 | 0 | 0 | 10-103 MentorTools.js | 0 | 0 | 0 | 0 | 2-223 MentorToolsEllipsisMenu.js | 0 | 0 | 0 | 0 | 1-63 ext.growthExperiments.MentorDashboard/components/CNumberInput | 66.66 | 55.55 | 23.07 | 65.51 | CNumberInput.vue | 66.66 | 55.55 | 23.07 | 65.51 | 99,102,105,108,129,148-164 ext.growthExperiments.MentorDashboard/components/DataTable | 47 | 0 | 5.26 | 52.38 | DataTable.vue | 32.25 | 0 | 0 | 39.21 | 37-89,100-103,121-164 DataTableCellLink.vue | 75 | 100 | 0 | 75 | 36-41 DataTableCellValue.vue | 100 | 100 | 100 | 100 | DataTableLimit.vue | 50 | 0 | 0 | 53.33 | 24-31,49-55 DataTablePagination.vue | 50 | 0 | 0 | 50 | 31-38,53-79 ext.growthExperiments.MentorDashboard/components/HorizontalDivider | 100 | 100 | 100 | 100 | HorizontalDivider.vue | 100 | 100 | 100 | 100 | ext.growthExperiments.MentorDashboard/components/MenteeOverview | 66.66 | 41.46 | 37.36 | 66.95 | DataTableCellMentee.vue | 60.86 | 0 | 0 | 60.86 | 27-45,74-82 LegendBox.vue | 73.33 | 100 | 0 | 73.33 | 21,43-45 MenteeFilters.vue | 40.74 | 0 | 0 | 40.74 | 28-64,82-89 MenteeFiltersForm.vue | 75.47 | 50 | 56.52 | 75.47 | 87-105,160-175,191,206,219 MenteeOverview.vue | 72.83 | 58.82 | 52.5 | 73.75 | 27-99,180-187,219-231,304-329 MenteeSearch.vue | 45.45 | 0 | 0 | 45.45 | 22-43,60-66 NoResults.vue | 84.61 | 0 | 0 | 84.61 | 53-54 ext.growthExperiments.MentorDashboard/components/PersonalizedPraise | 56.65 | 48.48 | 25.58 | 57.39 | NoResults.vue | 100 | 100 | 100 | 100 | PersonalizedPraise.vue | 81.25 | 91.66 | 58.82 | 81.25 | 65-80,123,138-148 PersonalizedPraisePagination.vue | 45.45 | 0 | 0 | 45.45 | 33-43,58-92 PersonalizedPraiseSettings.vue | 68.96 | 50 | 33.33 | 68.96 | 44-54,78,90-99 PersonalizedPraiseSettingsForm.vue | 70.73 | 68.18 | 44.44 | 70.73 | 67-70,88,144-164,180-185,200,218 SkipMenteeDialog.vue | 26.31 | 0 | 0 | 28.57 | 34-70,87-136 UserCard.vue | 34.04 | 0 | 0 | 34.04 | 33-123,147-172 ext.growthExperiments.MentorDashboard/logger | 0 | 0 | 0 | 0 | Logger.js | 0 | 0 | 0 | 0 | 5-41 ext.growthExperiments.MentorDashboard/plugins | 0 | 0 | 0 | 0 | logger.js | 0 | 0 | 0 | 0 | 9-15 ext.growthExperiments.MentorDashboard/store | 26.66 | 0 | 6.89 | 26.96 | MenteeOverviewApi.js | 28.91 | 0 | 6.89 | 29.26 | 32,37-52,56-71,83,87,91,95,99,103-110,115-118,122-128,134-145,150-161,167-178,185-186 index.js | 0 | 100 | 100 | 0 | 1-16 ext.growthExperiments.MentorDashboard/store/modules | 44.56 | 49.23 | 25.39 | 44 | mentees-search.js | 0 | 0 | 0 | 0 | 2-50 mentees.js | 66.36 | 67.39 | 41.66 | 66.01 | 31,61-63,71-74,107,121,128,144,147,150,200-201,217,226,235-243,253-286 praiseworthy-mentees.js | 0 | 0 | 0 | 0 | 1-101 user-preferences.js | 52.94 | 50 | 20 | 52.94 | 12,21,27-32,41 ext.growthExperiments.MentorDashboard/validators | 100 | 100 | 100 | 100 | align-text.validator.js | 100 | 100 | 100 | 100 | vue-components | 72.41 | 60.71 | 58.92 | 73.73 | CList.vue | 53.33 | 0 | 33.33 | 53.33 | 22-30 CListItem.vue | 85.71 | 100 | 0 | 85.71 | 21 CScoreCard.vue | 93.33 | 78.57 | 77.77 | 93.1 | 139-141 CScoreCards.vue | 56.66 | 56.25 | 54.83 | 56.66 | 98-101,112,130-193,199,262-292,337-344 CSparkline.vue | 81.08 | 50 | 50 | 90.9 | 63-67,76 CText.vue | 100 | 100 | 100 | 100 | vue-components/directives | 0 | 0 | 0 | 0 | click-outside.directive.js | 0 | 0 | 0 | 0 | 1-25 vue-components/plugins | 0 | 100 | 0 | 0 | logger.js | 0 | 100 | 0 | 0 | 9-19 ---------------------------------------------------------------------|---------|----------|---------|---------|--------------------------------------------------------------------------------------- --- 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 63, 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 2031, 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 1967, in run self.npm_upgrade(plan) File "/venv/lib/python3.11/site-packages/runner-0.1.0-py3.11.egg/runner/__init__.py", line 1256, 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 63, 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.