$ date
--- stdout ---
Wed Nov 19 19:19:33 UTC 2025
--- end ---
$ git clone file:///srv/git/mediawiki-extensions-WikiLambda.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 'function-schemata' (https://gitlab.wikimedia.org/repos/abstract-wiki/wikifunctions/function-schemata.git) registered for path 'function-schemata'
Cloning into '/src/repo/function-schemata'...
--- stdout ---
Submodule path 'function-schemata': checked out '91e3ffefc35583284d83fef3f3b4e97457f192b8'
--- end ---
$ grr init
--- stdout ---
Installed commit-msg hook.
--- end ---
$ git show-ref refs/heads/master
--- stdout ---
b50477c20be3f75f53ccc3623a5012e0d315a0e1 refs/heads/master
--- end ---
$ /usr/bin/npm audit --json
--- stdout ---
{
"auditReportVersion": 2,
"vulnerabilities": {
"@wdio/cli": {
"name": "@wdio/cli",
"severity": "high",
"isDirect": true,
"via": [
"inquirer",
"webdriverio",
"yarn-install"
],
"effects": [
"@wdio/junit-reporter",
"@wdio/local-runner",
"@wdio/spec-reporter"
],
"range": "<=9.0.0-alpha.426",
"nodes": [
"node_modules/@wdio/cli"
],
"fixAvailable": {
"name": "@wdio/cli",
"version": "9.20.1",
"isSemVerMajor": true
}
},
"@wdio/junit-reporter": {
"name": "@wdio/junit-reporter",
"severity": "high",
"isDirect": true,
"via": [
"@wdio/cli"
],
"effects": [],
"range": "6.0.4 - 8.0.0-alpha.631",
"nodes": [
"node_modules/@wdio/junit-reporter"
],
"fixAvailable": {
"name": "@wdio/junit-reporter",
"version": "9.20.0",
"isSemVerMajor": true
}
},
"@wdio/local-runner": {
"name": "@wdio/local-runner",
"severity": "high",
"isDirect": true,
"via": [
"@wdio/cli",
"@wdio/runner"
],
"effects": [],
"range": "6.0.4 - 8.46.0",
"nodes": [
"node_modules/@wdio/local-runner"
],
"fixAvailable": {
"name": "@wdio/local-runner",
"version": "9.20.1",
"isSemVerMajor": true
}
},
"@wdio/runner": {
"name": "@wdio/runner",
"severity": "high",
"isDirect": false,
"via": [
"webdriverio"
],
"effects": [
"@wdio/local-runner"
],
"range": "7.16.5 - 8.46.0",
"nodes": [
"node_modules/@wdio/runner"
],
"fixAvailable": {
"name": "@wdio/local-runner",
"version": "9.20.1",
"isSemVerMajor": true
}
},
"@wdio/spec-reporter": {
"name": "@wdio/spec-reporter",
"severity": "high",
"isDirect": true,
"via": [
"@wdio/cli"
],
"effects": [],
"range": "6.0.4 - 8.0.0-alpha.631",
"nodes": [
"node_modules/@wdio/spec-reporter"
],
"fixAvailable": {
"name": "@wdio/spec-reporter",
"version": "9.20.0",
"isSemVerMajor": true
}
},
"cross-spawn": {
"name": "cross-spawn",
"severity": "high",
"isDirect": false,
"via": [
{
"source": 1104663,
"name": "cross-spawn",
"dependency": "cross-spawn",
"title": "Regular Expression Denial of Service (ReDoS) in cross-spawn",
"url": "https://github.com/advisories/GHSA-3xgq-45jj-v275",
"severity": "high",
"cwe": [
"CWE-1333"
],
"cvss": {
"score": 7.5,
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
},
"range": "<6.0.6"
}
],
"effects": [
"yarn-install"
],
"range": "<6.0.6",
"nodes": [
"node_modules/yarn-install/node_modules/cross-spawn"
],
"fixAvailable": {
"name": "@wdio/cli",
"version": "9.20.1",
"isSemVerMajor": true
}
},
"devtools": {
"name": "devtools",
"severity": "high",
"isDirect": false,
"via": [
"puppeteer-core"
],
"effects": [],
"range": ">=7.16.5",
"nodes": [
"node_modules/devtools"
],
"fixAvailable": true
},
"external-editor": {
"name": "external-editor",
"severity": "low",
"isDirect": false,
"via": [
"tmp"
],
"effects": [
"inquirer"
],
"range": ">=1.1.1",
"nodes": [
"node_modules/external-editor"
],
"fixAvailable": {
"name": "@wdio/cli",
"version": "9.20.1",
"isSemVerMajor": true
}
},
"form-data": {
"name": "form-data",
"severity": "critical",
"isDirect": false,
"via": [
{
"source": 1109540,
"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": [
"request"
],
"range": "<2.5.4",
"nodes": [
"node_modules/request/node_modules/form-data"
],
"fixAvailable": {
"name": "wdio-mediawiki",
"version": "6.0.0",
"isSemVerMajor": true
}
},
"inquirer": {
"name": "inquirer",
"severity": "low",
"isDirect": false,
"via": [
"external-editor"
],
"effects": [
"@wdio/cli"
],
"range": "3.0.0 - 8.2.6 || 9.0.0 - 9.3.7",
"nodes": [
"node_modules/inquirer"
],
"fixAvailable": {
"name": "@wdio/cli",
"version": "9.20.1",
"isSemVerMajor": true
}
},
"mwbot": {
"name": "mwbot",
"severity": "moderate",
"isDirect": false,
"via": [
"request"
],
"effects": [
"wdio-mediawiki"
],
"range": ">=0.1.6",
"nodes": [
"node_modules/mwbot"
],
"fixAvailable": {
"name": "wdio-mediawiki",
"version": "6.0.0",
"isSemVerMajor": true
}
},
"puppeteer-core": {
"name": "puppeteer-core",
"severity": "high",
"isDirect": false,
"via": [
"tar-fs",
"ws"
],
"effects": [
"devtools",
"webdriverio"
],
"range": "10.0.0 - 22.11.1",
"nodes": [
"node_modules/puppeteer-core"
],
"fixAvailable": {
"name": "@wdio/cli",
"version": "9.20.1",
"isSemVerMajor": true
}
},
"request": {
"name": "request",
"severity": "critical",
"isDirect": false,
"via": [
{
"source": 1096727,
"name": "request",
"dependency": "request",
"title": "Server-Side Request Forgery in Request",
"url": "https://github.com/advisories/GHSA-p8p7-x288-28g6",
"severity": "moderate",
"cwe": [
"CWE-918"
],
"cvss": {
"score": 6.1,
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N"
},
"range": "<=2.88.2"
},
"form-data",
"tough-cookie"
],
"effects": [
"mwbot"
],
"range": "*",
"nodes": [
"node_modules/request"
],
"fixAvailable": {
"name": "wdio-mediawiki",
"version": "6.0.0",
"isSemVerMajor": true
}
},
"tar-fs": {
"name": "tar-fs",
"severity": "high",
"isDirect": false,
"via": [
{
"source": 1109532,
"name": "tar-fs",
"dependency": "tar-fs",
"title": "tar-fs has a symlink validation bypass if destination directory is predictable with a specific tarball",
"url": "https://github.com/advisories/GHSA-vj76-c3g6-qr5v",
"severity": "high",
"cwe": [
"CWE-22",
"CWE-61"
],
"cvss": {
"score": 0,
"vectorString": null
},
"range": ">=2.0.0 <2.1.4"
},
{
"source": 1109543,
"name": "tar-fs",
"dependency": "tar-fs",
"title": "tar-fs can extract outside the specified dir with a specific tarball",
"url": "https://github.com/advisories/GHSA-8cj5-5rvv-wf4v",
"severity": "high",
"cwe": [
"CWE-22"
],
"cvss": {
"score": 0,
"vectorString": null
},
"range": ">=2.0.0 <2.1.3"
},
{
"source": 1109552,
"name": "tar-fs",
"dependency": "tar-fs",
"title": "tar-fs Vulnerable to Link Following and Path Traversal via Extracting a Crafted tar File",
"url": "https://github.com/advisories/GHSA-pq67-2wwv-3xjx",
"severity": "high",
"cwe": [
"CWE-22"
],
"cvss": {
"score": 7.5,
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N"
},
"range": ">=2.0.0 <2.1.2"
}
],
"effects": [
"puppeteer-core"
],
"range": "2.0.0 - 2.1.3",
"nodes": [
"node_modules/tar-fs"
],
"fixAvailable": {
"name": "@wdio/cli",
"version": "9.20.1",
"isSemVerMajor": true
}
},
"tmp": {
"name": "tmp",
"severity": "low",
"isDirect": false,
"via": [
{
"source": 1109537,
"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": [
"external-editor"
],
"range": "<=0.2.3",
"nodes": [
"node_modules/tmp"
],
"fixAvailable": {
"name": "@wdio/cli",
"version": "9.20.1",
"isSemVerMajor": true
}
},
"tough-cookie": {
"name": "tough-cookie",
"severity": "moderate",
"isDirect": false,
"via": [
{
"source": 1097682,
"name": "tough-cookie",
"dependency": "tough-cookie",
"title": "tough-cookie Prototype Pollution vulnerability",
"url": "https://github.com/advisories/GHSA-72xf-g2v4-qvf3",
"severity": "moderate",
"cwe": [
"CWE-1321"
],
"cvss": {
"score": 6.5,
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N"
},
"range": "<4.1.3"
}
],
"effects": [
"request"
],
"range": "<4.1.3",
"nodes": [
"node_modules/request/node_modules/tough-cookie"
],
"fixAvailable": {
"name": "wdio-mediawiki",
"version": "6.0.0",
"isSemVerMajor": true
}
},
"wdio-mediawiki": {
"name": "wdio-mediawiki",
"severity": "moderate",
"isDirect": true,
"via": [
"mwbot"
],
"effects": [],
"range": "<=5.1.0",
"nodes": [
"node_modules/wdio-mediawiki"
],
"fixAvailable": {
"name": "wdio-mediawiki",
"version": "6.0.0",
"isSemVerMajor": true
}
},
"webdriverio": {
"name": "webdriverio",
"severity": "high",
"isDirect": false,
"via": [
"devtools",
"puppeteer-core"
],
"effects": [
"@wdio/cli",
"@wdio/runner"
],
"range": "7.16.5 - 8.46.0",
"nodes": [
"node_modules/webdriverio"
],
"fixAvailable": {
"name": "@wdio/cli",
"version": "9.20.1",
"isSemVerMajor": true
}
},
"ws": {
"name": "ws",
"severity": "high",
"isDirect": false,
"via": [
{
"source": 1098392,
"name": "ws",
"dependency": "ws",
"title": "ws affected by a DoS when handling a request with many HTTP headers",
"url": "https://github.com/advisories/GHSA-3h5v-q93c-6h6q",
"severity": "high",
"cwe": [
"CWE-476"
],
"cvss": {
"score": 7.5,
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
},
"range": ">=8.0.0 <8.17.1"
}
],
"effects": [
"puppeteer-core"
],
"range": "8.0.0 - 8.17.0",
"nodes": [
"node_modules/puppeteer-core/node_modules/ws"
],
"fixAvailable": {
"name": "@wdio/cli",
"version": "9.20.1",
"isSemVerMajor": true
}
},
"yarn-install": {
"name": "yarn-install",
"severity": "high",
"isDirect": false,
"via": [
"cross-spawn"
],
"effects": [
"@wdio/cli"
],
"range": "*",
"nodes": [
"node_modules/yarn-install"
],
"fixAvailable": {
"name": "@wdio/cli",
"version": "9.20.1",
"isSemVerMajor": true
}
}
},
"metadata": {
"vulnerabilities": {
"info": 0,
"low": 3,
"moderate": 3,
"high": 12,
"critical": 2,
"total": 20
},
"dependencies": {
"prod": 1,
"dev": 1277,
"optional": 4,
"peer": 18,
"peerOptional": 0,
"total": 1277
}
}
}
--- 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: 41 installs, 0 updates, 0 removals
- Locking composer/pcre (3.3.2)
- Locking composer/semver (3.4.4)
- Locking composer/spdx-licenses (1.5.9)
- Locking composer/xdebug-handler (3.0.5)
- Locking dealerdirect/phpcodesniffer-composer-installer (v1.2.0)
- Locking diff/diff (3.4.0)
- Locking doctrine/deprecations (1.1.5)
- Locking felixfbecker/advanced-json-rpc (v3.2.1)
- Locking mediawiki/mediawiki-codesniffer (v48.0.0)
- Locking mediawiki/mediawiki-phan-config (0.17.0)
- Locking mediawiki/minus-x (1.1.3)
- Locking mediawiki/phan-taint-check-plugin (7.0.0)
- Locking microsoft/tolerant-php-parser (v0.1.2)
- Locking netresearch/jsonmapper (v4.5.0)
- Locking phan/phan (5.5.1)
- Locking php-parallel-lint/php-console-color (v1.0.1)
- Locking php-parallel-lint/php-console-highlighter (v1.0.0)
- Locking php-parallel-lint/php-parallel-lint (v1.4.0)
- Locking phpcsstandards/phpcsextra (1.4.0)
- Locking phpcsstandards/phpcsutils (1.1.1)
- Locking phpdocumentor/reflection-common (2.2.0)
- Locking phpdocumentor/reflection-docblock (5.6.4)
- Locking phpdocumentor/type-resolver (1.10.1)
- Locking phpstan/phpdoc-parser (2.3.0)
- Locking psr/container (2.0.2)
- Locking psr/log (3.0.2)
- Locking sabre/event (5.1.7)
- Locking squizlabs/php_codesniffer (3.13.2)
- Locking symfony/console (v7.3.6)
- Locking symfony/deprecation-contracts (v3.6.0)
- Locking symfony/polyfill-ctype (v1.33.0)
- Locking symfony/polyfill-intl-grapheme (v1.33.0)
- Locking symfony/polyfill-intl-normalizer (v1.33.0)
- Locking symfony/polyfill-mbstring (v1.33.0)
- Locking symfony/polyfill-php80 (v1.33.0)
- Locking symfony/service-contracts (v3.6.1)
- Locking symfony/string (v7.3.4)
- Locking tysonandre/var_representation_polyfill (0.1.3)
- Locking webmozart/assert (1.12.1)
- Locking wikimedia/remex-html (5.1.0)
- Locking wikimedia/utfnormal (4.0.0)
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 41 installs, 0 updates, 0 removals
0 [>---------------------------] 0 [->--------------------------]
- Installing squizlabs/php_codesniffer (3.13.2): Extracting archive
- Installing dealerdirect/phpcodesniffer-composer-installer (v1.2.0): Extracting archive
- Installing composer/pcre (3.3.2): Extracting archive
- Installing diff/diff (3.4.0): Extracting archive
- Installing phpcsstandards/phpcsutils (1.1.1): Extracting archive
- Installing phpcsstandards/phpcsextra (1.4.0): Extracting archive
- Installing symfony/polyfill-mbstring (v1.33.0): Extracting archive
- Installing composer/spdx-licenses (1.5.9): Extracting archive
- Installing composer/semver (3.4.4): Extracting archive
- Installing mediawiki/mediawiki-codesniffer (v48.0.0): Extracting archive
- Installing tysonandre/var_representation_polyfill (0.1.3): Extracting archive
- Installing symfony/polyfill-php80 (v1.33.0): Extracting archive
- Installing symfony/polyfill-intl-normalizer (v1.33.0): Extracting archive
- Installing symfony/polyfill-intl-grapheme (v1.33.0): Extracting archive
- Installing symfony/polyfill-ctype (v1.33.0): Extracting archive
- Installing symfony/string (v7.3.4): Extracting archive
- Installing symfony/deprecation-contracts (v3.6.0): Extracting archive
- Installing psr/container (2.0.2): Extracting archive
- Installing symfony/service-contracts (v3.6.1): Extracting archive
- Installing symfony/console (v7.3.6): Extracting archive
- Installing sabre/event (5.1.7): Extracting archive
- Installing netresearch/jsonmapper (v4.5.0): Extracting archive
- Installing microsoft/tolerant-php-parser (v0.1.2): Extracting archive
- Installing webmozart/assert (1.12.1): Extracting archive
- Installing phpstan/phpdoc-parser (2.3.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.1): Extracting archive
- Installing phpdocumentor/reflection-docblock (5.6.4): 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.1): Extracting archive
- Installing mediawiki/phan-taint-check-plugin (7.0.0): Extracting archive
- Installing mediawiki/mediawiki-phan-config (0.17.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 wikimedia/utfnormal (4.0.0): Extracting archive
- Installing wikimedia/remex-html (5.1.0): Extracting archive
0/39 [>---------------------------] 0%
28/39 [====================>-------] 71%
38/39 [===========================>] 97%
39/39 [============================] 100%
1 package suggestions were added by new dependencies, use `composer suggest` to see details.
Generating autoload files
17 packages you are using are looking for funding.
Use the `composer fund` command to find out more!
--- stdout ---
PHP CodeSniffer Config installed_paths set to ../../mediawiki/mediawiki-codesniffer,../../phpcsstandards/phpcsextra,../../phpcsstandards/phpcsutils
--- end ---
Upgrading n:jsdoc from 4.0.4 -> 4.0.5
$ /usr/bin/npm install
--- stderr ---
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE package: '@wikimedia/codex@2.3.2',
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.2',
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 @types/easy-table@1.2.3: This is a stub types definition. easy-table provides its own type definitions, so you do not need this installed.
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 har-validator@5.1.5: this library is no longer supported
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@8.1.0: 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.2.3: Glob versions prior to v9 are no longer supported
npm WARN deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
npm WARN deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
npm WARN deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
npm WARN deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
npm WARN deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
npm WARN deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
npm WARN deprecated glob@7.1.7: Glob versions prior to v9 are no longer supported
npm WARN deprecated 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 uuid@3.4.0: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
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 1276 packages, and audited 1277 packages in 16s
208 packages are looking for funding
run `npm fund` for details
20 vulnerabilities (3 low, 3 moderate, 12 high, 2 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 /src/repo/package-lock.json
--- stdout ---
Checking /src/repo/package-lock.json
--- end ---
$ /usr/bin/npm ci
--- stderr ---
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE package: '@wikimedia/codex@2.3.2',
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.2',
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 @types/easy-table@1.2.3: This is a stub types definition. easy-table provides its own type definitions, so you do not need this installed.
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 har-validator@5.1.5: this library is no longer supported
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@8.1.0: 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.2.3: Glob versions prior to v9 are no longer supported
npm WARN deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
npm WARN deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
npm WARN deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
npm WARN deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
npm WARN deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
npm WARN deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
npm WARN deprecated glob@7.1.7: Glob versions prior to v9 are no longer supported
npm WARN deprecated 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 uuid@3.4.0: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
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 1276 packages, and audited 1277 packages in 24s
208 packages are looking for funding
run `npm fund` for details
20 vulnerabilities (3 low, 3 moderate, 12 high, 2 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 tests/jest/utils/zobjectUtils.test.js
PASS tests/jest/store/stores/submission.test.js
PASS tests/jest/store/stores/library.test.js
PASS tests/jest/store/stores/zobject.test.js
PASS tests/jest/store/stores/factory.test.js
PASS tests/jest/components/widgets/about/About.test.js
PASS tests/jest/components/default/ZObjectKeyValue.test.js (6.482 s)
PASS tests/jest/components/visualeditor/FunctionInputPreview.test.js
PASS tests/jest/components/widgets/about/AboutLanguageBlock.test.js
PASS tests/jest/store/stores/router.test.js
PASS tests/jest/components/base/ModeSelector.test.js
PASS tests/jest/components/default/ZObjectStringRenderer.test.js
PASS tests/jest/store/stores/wikidata/lexemes.test.js
PASS tests/jest/utils/typeUtils.test.js
PASS tests/jest/components/default/ZObjectToString.test.js (10.718 s)
PASS tests/jest/store/stores/zfunction.test.js
PASS tests/jest/components/widgets/function-evaluator/FunctionMetadataDialog.test.js
PASS tests/jest/components/widgets/function-evaluator/FunctionEvaluator.test.js
PASS tests/jest/store/stores/wikidata/entities.test.js
PASS tests/jest/components/default/ZMultilingualString.test.js
PASS tests/jest/components/default/ZMultilingualStringDialog.test.js
PASS tests/jest/store/stores/testResults.test.js
PASS tests/jest/components/visualeditor/FunctionInputField.test.js
PASS tests/jest/components/function/viewer/FunctionViewerDetails.test.js
PASS tests/jest/components/base/CodeEditor.test.js
PASS tests/jest/components/widgets/function-explorer/FunctionExplorer.test.js
PASS tests/jest/utils/scrollUtils.test.js
PASS tests/jest/store/stores/ztype.test.js
PASS tests/jest/components/base/ZObjectSelector.test.js
PASS tests/jest/components/default/wikidata/EntitySelector.test.js
PASS tests/jest/components/widgets/publish/PublishDialog.test.js
PASS tests/jest/components/default/wikidata/LexemeSense.test.js
PASS tests/jest/components/widgets/about/AboutLanguagesDialog.test.js
PASS tests/jest/languageselector/LanguageSelector.test.js
PASS tests/jest/store/stores/errors.test.js
PASS tests/jest/store/classes/ApiError.test.js
PASS tests/jest/store/stores/wikidata/properties.test.js
PASS tests/jest/components/default/ZCode.test.js
PASS tests/jest/store/stores/wikidata/items.test.js
PASS tests/jest/integration/CreateNewWikidataEnum.test.js (15.108 s)
PASS tests/jest/components/visualeditor/fields/FunctionInputParser.test.js
PASS tests/jest/components/widgets/function-report/FunctionReport.test.js
PASS tests/jest/components/default/ZImplementation.test.js
PASS tests/jest/components/widgets/publish/Publish.test.js
PASS tests/jest/components/default/ZTester.test.js
PASS tests/jest/components/visualeditor/fields/FunctionInputWikidata.test.js
PASS tests/jest/components/widgets/function-evaluator/EvaluationResult.test.js
PASS tests/jest/integration/DisconnectFunctionImplementation.test.js
PASS tests/jest/utils/schemata.test.js
PASS tests/jest/store/stores/currentPage.test.js
PASS tests/jest/components/base/TypeSelector.test.js
PASS tests/jest/integration/CreateNewTester.test.js (8.306 s)
PASS tests/jest/composables/useScroll.test.js
PASS tests/jest/components/visualeditor/fields/FunctionInputLanguage.test.js
PASS tests/jest/utils/urlUtils.test.js
PASS tests/jest/components/visualeditor/fields/FunctionInputEnum.test.js
PASS tests/jest/integration/CreateNewFunction.test.js
PASS tests/jest/integration/CreateNewCompositionImplementation.test.js (11.154 s)
PASS tests/jest/integration/EditFunction.test.js
PASS tests/jest/components/visualeditor/FunctionInputSetup.test.js
PASS tests/jest/components/default/ZArgumentReference.test.js
PASS tests/jest/integration/CreateNewCodeImplementation.test.js (11.209 s)
PASS tests/jest/components/visualeditor/ExpandableDescription.test.js
PASS tests/jest/store/stores/visualeditor.test.js
PASS tests/jest/composables/useClipboardManager.test.js
PASS tests/jest/components/default/ZReference.test.js
PASS tests/jest/integration/FunctionEditorEdgeCases.test.js
PASS tests/jest/components/default/wikidata/LexemeForm.test.js
PASS tests/jest/components/function/editor/FunctionEditorInputsItem.test.js
PASS tests/jest/components/default/wikidata/Property.test.js
PASS tests/jest/components/function/editor/FunctionEditorName.test.js
PASS tests/jest/components/default/wikidata/Lexeme.test.js
PASS tests/jest/integration/RunFunctionCall.test.js
PASS tests/jest/composables/useZObject.test.js
PASS tests/jest/store/stores/queue.test.js
PASS tests/jest/components/default/wikidata/Item.test.js
PASS tests/jest/utils/miscUtils.test.js
PASS tests/jest/composables/useShareUrl.test.js
PASS tests/jest/components/function/editor/FunctionEditorDescription.test.js
PASS tests/jest/composables/usePageTitle.test.js
PASS tests/jest/components/default/ZTypedList.test.js
PASS tests/jest/composables/useError.test.js
PASS tests/jest/components/visualeditor/FunctionSelect.test.js
PASS tests/jest/utils/metadataUtils.test.js
PASS tests/jest/components/function/editor/FunctionEditorLanguageBlock.test.js
PASS tests/jest/integration/FunctionEditorGenericTypes.test.js (5.145 s)
PASS tests/jest/components/default/wikidata/ReferenceSelector.test.js
PASS tests/jest/components/default/ZTypedListItems.test.js
PASS tests/jest/components/function/editor/FunctionEditorAliases.test.js
PASS tests/jest/composables/useBreakpoints.test.js
PASS tests/jest/components/default/ZMonolingualString.test.js
PASS tests/jest/store/stores/listItems.test.js
PASS tests/jest/components/function/editor/FunctionEditorInputs.test.js
PASS tests/jest/composables/useClipboard.test.js
PASS tests/jest/components/function/viewer/FunctionViewerDetailsTable.test.js
PASS tests/jest/store/stores/user.test.js
PASS tests/jest/utils/errorUtils.test.js
PASS tests/jest/components/default/wikidata/Enum.test.js
PASS tests/jest/components/visualeditor/FunctionCallSetup.test.js
PASS tests/jest/components/App.test.js
PASS tests/jest/components/widgets/function-report/FunctionReportItem.test.js
PASS tests/jest/integration/ConnectFunctionImplementation.test.js
PASS tests/jest/utils/eventLogUtils.test.js
PASS tests/jest/store/classes/ErrorData.test.js
PASS tests/jest/components/function/editor/FunctionEditor.test.js
PASS tests/jest/integration/ConnectFunctionTest.test.js
PASS tests/jest/components/base/ExpandedToggle.test.js
PASS tests/jest/integration/CancelEditExistingFunction.test.js
PASS tests/jest/integration/DisconnectFunctionTest.test.js
PASS tests/jest/components/function/editor/FunctionEditorOutput.test.js
PASS tests/jest/components/visualeditor/FunctionInputDefaultValueCheckbox.test.js
PASS tests/jest/store/stores/languages.test.js
PASS tests/jest/components/function/editor/FunctionEditorLanguage.test.js
PASS tests/jest/store/stores/functionCall.test.js
PASS tests/jest/components/visualeditor/fields/FunctionInputString.test.js
PASS tests/jest/components/default/ZBoolean.test.js
PASS tests/jest/components/base/LocalizedLabel.test.js
PASS tests/jest/components/default/wikidata/Statement.test.js
PASS tests/jest/components/base/TypeToString.test.js
PASS tests/jest/components/default/ZHTMLFragment.test.js
PASS tests/jest/components/default/ZString.test.js
PASS tests/jest/components/default/ZTypedListType.test.js
PASS tests/jest/integration/CancelEditNewFunction.test.js
PASS tests/jest/components/base/SafeMessage.test.js
PASS tests/jest/views/FunctionViewer.test.js
PASS tests/jest/store/stores/programmingLanguages.test.js
PASS tests/jest/composables/useType.test.js
PASS tests/jest/composables/useEventLog.test.js
PASS tests/jest/components/widgets/publish/LeaveEditorDialog.test.js
PASS tests/jest/components/default/ZFunctionCall.test.js
PASS tests/jest/utils/wikidataUtils.test.js
PASS tests/jest/store/index.test.js
Jest: "./resources/ext.wikilambda.app/utils" coverage threshold for statements (88%) not met: 85.55%
Jest: "./resources/ext.wikilambda.app/utils" coverage threshold for lines (88%) not met: 85.55%
Test Suites: 132 passed, 132 total
Tests: 2030 passed, 2030 total
Snapshots: 0 total
Time: 91.375 s
Ran all test suites.
--- stdout ---
> test
> grunt test && npm run test:unit
Running "eslint:all" (eslint) task
/src/repo/docker-compose.sample.yml
3:1 warning This line has a length of 103. Maximum allowed is 100 max-len
4:1 warning This line has a length of 107. Maximum allowed is 100 max-len
48:1 warning This line has a length of 117. Maximum allowed is 100 max-len
49:1 warning This line has a length of 104. Maximum allowed is 100 max-len
50:1 warning This line has a length of 106. Maximum allowed is 100 max-len
56:1 warning This line has a length of 120. Maximum allowed is 100 max-len
57:1 warning This line has a length of 104. Maximum allowed is 100 max-len
58:1 warning This line has a length of 109. Maximum allowed is 100 max-len
/src/repo/resources/ext.wikilambda.app/store/classes/ErrorData.js
22:1 warning The type 'type' is undefined jsdoc/no-undefined-types
✖ 9 problems (0 errors, 9 warnings)
Running "banana:WikiLambda" (banana) task
>> 3 message directories checked.
Running "stylelint:all" (stylelint) task
>> Linted 310 files without errors
Done.
> test:unit
> jest
----------------------------------------------------------|---------|----------|---------|---------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
File | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s
----------------------------------------------------------|---------|----------|---------|---------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
All files | 95.96 | 89.95 | 96.07 | 95.96 |
ext.wikilambda.app/components | 97.54 | 100 | 100 | 97.54 |
App.vue | 97.54 | 100 | 100 | 97.54 | 71,75,95
ext.wikilambda.app/components/base | 91.1 | 88.26 | 87.17 | 91.1 |
CodeEditor.vue | 97.55 | 94.44 | 100 | 97.55 | 180-187
CustomDialogHeader.vue | 100 | 100 | 100 | 100 |
ExpandedToggle.vue | 100 | 100 | 100 | 100 |
KeyBlock.vue | 100 | 100 | 100 | 100 |
KeyValueBlock.vue | 100 | 100 | 100 | 100 |
LocalizedLabel.vue | 100 | 100 | 100 | 100 |
ModeSelector.vue | 99.76 | 95 | 100 | 99.76 | 166
Pagination.vue | 0 | 0 | 0 | 0 | 1-179
SafeMessage.vue | 100 | 100 | 100 | 100 |
StatusIcon.vue | 100 | 100 | 100 | 100 |
TypeSelector.vue | 94.49 | 80 | 66.66 | 94.49 | 159-164,176-178,182-185
TypeToString.vue | 96.79 | 73.33 | 100 | 96.79 | 76,78,108,111-112
WidgetBase.vue | 100 | 100 | 100 | 100 |
ZObjectSelector.vue | 93.35 | 80.82 | 75 | 93.35 | 188-189,220-221,333-341,374-375,394,406-407,437-439,463-467,476-481,502-504,520-522,539-540,545-547,593-594
ext.wikilambda.app/components/function/editor | 99.14 | 90.78 | 100 | 99.14 |
FunctionEditor.vue | 95.54 | 77.14 | 100 | 95.54 | 156,160-162,218-220,222-227
FunctionEditorAliases.vue | 100 | 94.11 | 100 | 100 | 134
FunctionEditorDescription.vue | 98.92 | 94.44 | 100 | 98.92 | 131-132
FunctionEditorField.vue | 100 | 100 | 100 | 100 |
FunctionEditorInputs.vue | 100 | 100 | 100 | 100 |
FunctionEditorInputsItem.vue | 100 | 83.33 | 100 | 100 | 218,227
FunctionEditorLanguage.vue | 100 | 100 | 100 | 100 |
FunctionEditorLanguageBlock.vue | 100 | 100 | 100 | 100 |
FunctionEditorName.vue | 99 | 94.44 | 100 | 99 | 142-143
FunctionEditorOutput.vue | 100 | 100 | 100 | 100 |
ext.wikilambda.app/components/function/viewer | 99.17 | 96.03 | 96 | 99.17 |
FunctionTesterTable.vue | 97.81 | 85.71 | 50 | 97.81 | 85-86,104,154
FunctionViewerDetails.vue | 99.27 | 97.97 | 100 | 99.27 | 235-236,546,565,583
FunctionViewerDetailsTable.vue | 100 | 100 | 100 | 100 |
ext.wikilambda.app/components/types | 97.58 | 88.46 | 97.05 | 97.58 |
ZArgumentReference.vue | 97.36 | 72.72 | 100 | 97.36 | 158-162
ZBoolean.vue | 100 | 100 | 100 | 100 |
ZCode.vue | 96.3 | 92.15 | 100 | 96.3 | 290,336-349,424-425
ZFunctionCall.vue | 100 | 100 | 100 | 100 |
ZHTMLFragment.vue | 100 | 80 | 100 | 100 | 107
ZImplementation.vue | 100 | 100 | 100 | 100 |
ZMonolingualString.vue | 100 | 92.3 | 100 | 100 | 137
ZMultilingualString.vue | 98.97 | 89.47 | 100 | 98.97 | 213-214,381,383-384
ZMultilingualStringDialog.vue | 96.92 | 83.33 | 90.9 | 96.92 | 168-169,350-351,360-362,364-365,367-369,375-376,420-421
ZObjectKeyValue.vue | 94.79 | 86.25 | 100 | 94.79 | 237-243,247-248,292-293,365-371,513-514,558-559,561-562,564-565,567-568,589-591,614-615,620-623,652-653,680-685,740-741
ZObjectKeyValueSet.vue | 100 | 66.66 | 100 | 100 | 70-77
ZObjectStringRenderer.vue | 95.81 | 94.73 | 83.33 | 95.81 | 290-291,320-321,377-379,390-391,447-452,509-510,536,546-552
ZObjectToString.vue | 97.22 | 90.32 | 100 | 97.22 | 226,313,381-383,399-401,423-425,429-430,435-436,568-570
ZReference.vue | 98.18 | 69.56 | 100 | 98.18 | 169,171-173
ZString.vue | 100 | 100 | 100 | 100 |
ZTester.vue | 99.24 | 95.65 | 100 | 99.24 | 218-219
ZTypedList.vue | 100 | 87.5 | 100 | 100 | 98
ZTypedListItems.vue | 100 | 100 | 100 | 100 |
ZTypedListType.vue | 100 | 100 | 100 | 100 |
ext.wikilambda.app/components/types/wikidata | 97.61 | 87.65 | 93.33 | 97.61 |
EntitySelector.vue | 94.18 | 86.2 | 75 | 94.18 | 89-90,134-135,197-200,229-236
Enum.vue | 97.84 | 81.81 | 100 | 97.84 | 187-191
Item.vue | 100 | 92.85 | 100 | 100 | 137
Lexeme.vue | 100 | 92.85 | 100 | 100 | 139
LexemeForm.vue | 97.86 | 81.81 | 100 | 97.86 | 135-138
LexemeSense.vue | 94.63 | 86.84 | 100 | 94.63 | 154-155,223-228,253-254,264-266,291-295,300-301
Property.vue | 99.42 | 81.81 | 100 | 99.42 | 134
ReferenceSelector.vue | 100 | 93.75 | 100 | 100 | 104
Statement.vue | 100 | 100 | 100 | 100 |
wikidataIconSvg.js | 100 | 100 | 100 | 100 |
ext.wikilambda.app/components/visualeditor | 98.87 | 96.96 | 90.19 | 98.87 |
ExpandableDescription.vue | 99.35 | 100 | 100 | 99.35 | 91
FunctionCallSetup.vue | 98.4 | 100 | 60 | 98.4 | 93,100
FunctionInputDefaultValueCheckbox.vue | 100 | 100 | 100 | 100 |
FunctionInputField.vue | 100 | 100 | 100 | 100 |
FunctionInputPreview.vue | 98.26 | 95.08 | 86.36 | 98.26 | 154-155,364,414-415,475-478
FunctionInputSetup.vue | 99.43 | 100 | 100 | 99.43 | 106-107
FunctionSelect.vue | 97.34 | 88.88 | 100 | 97.34 | 157-158,168-169,184-186
FunctionSelectItem.vue | 100 | 100 | 100 | 100 |
wikifunctionsIconSvg.js | 100 | 100 | 100 | 100 |
ext.wikilambda.app/components/visualeditor/fields | 94.33 | 89.1 | 94.28 | 94.33 |
FunctionInputEnum.vue | 97.36 | 94.28 | 88.88 | 97.36 | 100-101,163,190-191,211
FunctionInputLanguage.vue | 95.45 | 83.33 | 100 | 95.45 | 74-75,89,135-136,156-157,166-167,205
FunctionInputParser.vue | 89.16 | 92 | 90.9 | 89.16 | 202-214,225-226,265-266,351-360,369-378,387-393,407-410
FunctionInputString.vue | 100 | 100 | 100 | 100 |
FunctionInputWikidata.vue | 97.67 | 82.85 | 100 | 97.67 | 117-118,182-183,192-193
ext.wikilambda.app/components/widgets/about | 97.98 | 92.9 | 90 | 97.98 |
About.vue | 98.23 | 96.25 | 88.88 | 98.23 | 262-263,307-311,346-347,396-397
AboutLanguageBlock.vue | 99.68 | 97.77 | 100 | 99.68 | 490-491
AboutLanguagesDialog.vue | 94.83 | 76.66 | 88.88 | 94.83 | 235-238,249-251,266-267,299-300,302-303,305-306,308-309,315-317
ext.wikilambda.app/components/widgets/function-evaluator | 95.96 | 84.15 | 95.45 | 95.96 |
EvaluationResult.vue | 99.15 | 77.27 | 100 | 99.15 | 167-168
FunctionEvaluator.vue | 94.89 | 90.38 | 90 | 94.89 | 371-373,409-433,500
FunctionMetadataDialog.vue | 95.57 | 82.67 | 96.66 | 95.57 | 189-190,196-197,233-234,254,355-359,373-374,464-465,555-556,628-629,657-658,691-692,745-746,767-769,793-797,802-806,811-815,976-978
FunctionMetadataItem.vue | 100 | 100 | 100 | 100 |
ext.wikilambda.app/components/widgets/function-explorer | 100 | 100 | 100 | 100 |
FunctionExplorer.vue | 100 | 100 | 100 | 100 |
ext.wikilambda.app/components/widgets/function-report | 95.15 | 85.88 | 62.5 | 95.15 |
FunctionReport.vue | 96.14 | 91.52 | 66.66 | 96.14 | 211-213,266-268,275-277,316-322
FunctionReportItem.vue | 93.49 | 73.07 | 50 | 93.49 | 125-126,128-129,131-132,146,148,161-162,164-165,181-184
ext.wikilambda.app/components/widgets/publish | 97.42 | 86.07 | 95.83 | 97.42 |
LeaveEditorDialog.vue | 100 | 100 | 100 | 100 |
Publish.vue | 93.31 | 84.61 | 92.85 | 93.31 | 195-204,207,209-214,231-234
PublishDialog.vue | 100 | 85.29 | 100 | 100 | 221,254,307-309
ext.wikilambda.app/composables | 94.51 | 86.66 | 100 | 94.51 |
useBreakpoints.js | 100 | 100 | 100 | 100 |
useClipboard.js | 100 | 100 | 100 | 100 |
useClipboardManager.js | 87.5 | 84.61 | 100 | 87.5 | 60-61,63-71
useError.js | 100 | 77.77 | 100 | 100 | 45,62
useEventLog.js | 100 | 100 | 100 | 100 |
usePageTitle.js | 100 | 92.3 | 100 | 100 | 78
useScroll.js | 100 | 100 | 100 | 100 |
useShareUrl.js | 60.52 | 50 | 100 | 60.52 | 30-31,39-43,45-52,54-68
useType.js | 100 | 100 | 100 | 100 |
useZObject.js | 95.34 | 54.54 | 100 | 95.34 | 60-61,76-77,91-92
ext.wikilambda.app/store | 100 | 100 | 100 | 100 |
index.js | 100 | 100 | 100 | 100 |
ext.wikilambda.app/store/classes | 95.59 | 83.05 | 100 | 95.59 |
ApiError.js | 92.41 | 68.96 | 100 | 92.41 | 40-41,46-50,151-153,159-160,200-203
ErrorData.js | 97.7 | 90.9 | 100 | 97.7 | 70-71
LabelData.js | 100 | 100 | 100 | 100 |
ext.wikilambda.app/store/stores | 98.1 | 93.93 | 97.5 | 98.1 |
errors.js | 100 | 97.05 | 100 | 100 | 71
functionCall.js | 100 | 100 | 100 | 100 |
languages.js | 92.39 | 76.92 | 100 | 92.39 | 26-29,43-45
library.js | 98.35 | 95.79 | 96.55 | 98.35 | 148-149,417-418,524-525,550-551,562-565,569,693-695,902,1050-1051,1181
listItems.js | 100 | 100 | 100 | 100 |
programmingLanguages.js | 100 | 100 | 100 | 100 |
queue.js | 100 | 100 | 100 | 100 |
router.js | 100 | 97.43 | 100 | 100 | 21
testResults.js | 99.1 | 88.33 | 100 | 99.1 | 276-278
user.js | 100 | 90.9 | 100 | 100 | 26
visualeditor.js | 90.72 | 88.46 | 88 | 90.72 | 89-93,95-101,149-153,156-157,181-184,198-202
zfunction.js | 96.15 | 87.03 | 100 | 96.15 | 38-40,124-125,144-145,166-170,190-192
zobject.js | 98.7 | 93.78 | 97.87 | 98.7 | 154-155,167-168,211-212,408-409,650-651,691-692,828-829,1201-1202
ztype.js | 99.39 | 100 | 100 | 99.39 | 277-278
ext.wikilambda.app/store/stores/wikidata | 95.92 | 92.51 | 97.14 | 95.92 |
entities.js | 92.97 | 89.28 | 100 | 92.97 | 47,87,98,143-155,273-278
items.js | 100 | 94.28 | 100 | 100 | 94,115
lexemes.js | 95.06 | 95.09 | 93.93 | 95.06 | 100-113,368,452-454,464-467,478-479
properties.js | 100 | 90.9 | 100 | 100 | 88,91,113
ext.wikilambda.app/store/stores/zobject | 96.5 | 85.12 | 100 | 96.5 |
currentPage.js | 100 | 86.36 | 100 | 100 | 73,119,121
factory.js | 93.96 | 76.06 | 100 | 93.96 | 68-94,99-100,110,116,118,120,124,128,132,134,136,142,147,190-196,385-388
submission.js | 98.73 | 95.14 | 100 | 98.73 | 402-403,534-535,540-541,572-573
ext.wikilambda.app/utils | 85.55 | 89.12 | 99.01 | 85.55 |
apiUtils.js | 98.64 | 80.39 | 100 | 98.64 | 262-264,328-329
errorUtils.js | 90.65 | 77.77 | 100 | 90.65 | 57-64,90-91
eventLogUtils.js | 96.15 | 88.88 | 100 | 96.15 | 40-41
metadataUtils.js | 100 | 100 | 100 | 100 |
miscUtils.js | 100 | 100 | 100 | 100 |
schemata.js | 91.76 | 86.58 | 88.88 | 91.76 | 98-102,108-109,123,159-164,174-179
scrollUtils.js | 100 | 100 | 100 | 100 |
typeUtils.js | 50.95 | 63.38 | 100 | 50.95 | 126-127,150-151,154-156,159-169,173-175,178-179,182,204-212,226-235,238-248,299-321,324-344,347-366,369-382,385-418,421-465,468-505,508-529,532-539,542-568,571-611,631-639,642,716-717
urlUtils.js | 97.81 | 89.47 | 100 | 97.81 | 25-27
wikidataUtils.js | 100 | 100 | 100 | 100 |
zobjectUtils.js | 99.12 | 98.63 | 100 | 99.12 | 422-423,669-673
ext.wikilambda.app/views | 97.64 | 74.07 | 75 | 97.64 |
Default.vue | 97.88 | 68.75 | 66.66 | 97.88 | 170,185-188
FunctionEditor.vue | 100 | 100 | 100 | 100 |
FunctionEvaluator.vue | 100 | 100 | 100 | 100 |
FunctionViewer.vue | 95.62 | 71.42 | 66.66 | 95.62 | 105-111
ext.wikilambda.languageselector/components | 98.03 | 93.33 | 94.11 | 98.03 |
LanguageSelector.vue | 98.03 | 93.33 | 94.11 | 98.03 | 226-227,265-266,287-288
----------------------------------------------------------|---------|----------|---------|---------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
--- end ---
$ node_modules/.bin/jest -u
--- stderr ---
PASS tests/jest/integration/CreateNewCompositionImplementation.test.js (10.302 s)
PASS tests/jest/integration/CreateNewCodeImplementation.test.js (11.153 s)
PASS tests/jest/integration/CreateNewWikidataEnum.test.js (12.951 s)
PASS tests/jest/components/default/ZObjectKeyValue.test.js
PASS tests/jest/integration/CreateNewTester.test.js (6.388 s)
PASS tests/jest/components/default/ZObjectToString.test.js (8.074 s)
PASS tests/jest/integration/FunctionEditorGenericTypes.test.js
PASS tests/jest/components/widgets/about/About.test.js
PASS tests/jest/integration/FunctionEditorEdgeCases.test.js
PASS tests/jest/components/base/ZObjectSelector.test.js
PASS tests/jest/integration/CancelEditExistingFunction.test.js
PASS tests/jest/integration/EditFunction.test.js
PASS tests/jest/components/widgets/function-evaluator/FunctionEvaluator.test.js
PASS tests/jest/integration/CreateNewFunction.test.js
PASS tests/jest/components/widgets/function-evaluator/FunctionMetadataDialog.test.js
PASS tests/jest/integration/DisconnectFunctionImplementation.test.js
PASS tests/jest/integration/RunFunctionCall.test.js
PASS tests/jest/components/visualeditor/FunctionInputField.test.js
PASS tests/jest/integration/CancelEditNewFunction.test.js
PASS tests/jest/components/widgets/function-evaluator/EvaluationResult.test.js
PASS tests/jest/integration/DisconnectFunctionTest.test.js
PASS tests/jest/languageselector/LanguageSelector.test.js
PASS tests/jest/components/function/viewer/FunctionViewerDetails.test.js
PASS tests/jest/integration/ConnectFunctionImplementation.test.js
PASS tests/jest/components/default/ZMultilingualString.test.js
PASS tests/jest/integration/ConnectFunctionTest.test.js
PASS tests/jest/components/visualeditor/FunctionInputSetup.test.js
PASS tests/jest/store/stores/zobject.test.js
PASS tests/jest/components/default/wikidata/EntitySelector.test.js
PASS tests/jest/components/default/ZMultilingualStringDialog.test.js
PASS tests/jest/components/widgets/function-report/FunctionReport.test.js
PASS tests/jest/components/widgets/publish/PublishDialog.test.js
PASS tests/jest/components/App.test.js
PASS tests/jest/components/base/ModeSelector.test.js
PASS tests/jest/components/default/ZObjectStringRenderer.test.js
PASS tests/jest/components/visualeditor/FunctionInputPreview.test.js
PASS tests/jest/components/default/ZArgumentReference.test.js
PASS tests/jest/components/function/editor/FunctionEditor.test.js
PASS tests/jest/components/visualeditor/FunctionSelect.test.js
PASS tests/jest/components/function/editor/FunctionEditorLanguage.test.js
PASS tests/jest/components/default/ZTester.test.js
PASS tests/jest/components/default/ZString.test.js
PASS tests/jest/composables/useBreakpoints.test.js
PASS tests/jest/components/default/wikidata/Enum.test.js
PASS tests/jest/components/widgets/publish/Publish.test.js
PASS tests/jest/components/visualeditor/fields/FunctionInputWikidata.test.js
PASS tests/jest/components/visualeditor/FunctionCallSetup.test.js
PASS tests/jest/components/widgets/function-explorer/FunctionExplorer.test.js
PASS tests/jest/components/default/ZTypedListType.test.js
PASS tests/jest/components/default/wikidata/LexemeSense.test.js
PASS tests/jest/store/stores/listItems.test.js
PASS tests/jest/components/function/editor/FunctionEditorLanguageBlock.test.js
PASS tests/jest/components/base/ExpandedToggle.test.js
PASS tests/jest/components/default/ZTypedListItems.test.js
PASS tests/jest/components/default/ZFunctionCall.test.js
PASS tests/jest/components/default/wikidata/Item.test.js
PASS tests/jest/components/default/ZCode.test.js
PASS tests/jest/store/stores/languages.test.js
PASS tests/jest/components/default/ZBoolean.test.js
PASS tests/jest/composables/useError.test.js
PASS tests/jest/utils/eventLogUtils.test.js
PASS tests/jest/components/visualeditor/fields/FunctionInputParser.test.js
PASS tests/jest/composables/usePageTitle.test.js
PASS tests/jest/store/stores/submission.test.js
PASS tests/jest/store/stores/programmingLanguages.test.js
PASS tests/jest/components/function/editor/FunctionEditorAliases.test.js
PASS tests/jest/components/default/ZTypedList.test.js
PASS tests/jest/components/base/CodeEditor.test.js
PASS tests/jest/components/default/wikidata/Lexeme.test.js
PASS tests/jest/components/default/wikidata/Statement.test.js
PASS tests/jest/components/default/wikidata/Property.test.js
PASS tests/jest/composables/useClipboard.test.js
PASS tests/jest/views/FunctionViewer.test.js
PASS tests/jest/components/function/viewer/FunctionViewerDetailsTable.test.js
PASS tests/jest/composables/useType.test.js
PASS tests/jest/components/default/ZHTMLFragment.test.js
PASS tests/jest/utils/wikidataUtils.test.js
PASS tests/jest/components/default/wikidata/ReferenceSelector.test.js
PASS tests/jest/composables/useClipboardManager.test.js
PASS tests/jest/components/visualeditor/fields/FunctionInputLanguage.test.js
PASS tests/jest/utils/errorUtils.test.js
PASS tests/jest/components/default/ZImplementation.test.js
PASS tests/jest/components/function/editor/FunctionEditorName.test.js
PASS tests/jest/components/widgets/function-report/FunctionReportItem.test.js
PASS tests/jest/utils/zobjectUtils.test.js
PASS tests/jest/components/base/SafeMessage.test.js
PASS tests/jest/components/function/editor/FunctionEditorInputsItem.test.js
PASS tests/jest/components/function/editor/FunctionEditorOutput.test.js
PASS tests/jest/components/widgets/about/AboutLanguagesDialog.test.js
PASS tests/jest/components/visualeditor/fields/FunctionInputString.test.js
PASS tests/jest/utils/metadataUtils.test.js
PASS tests/jest/components/widgets/about/AboutLanguageBlock.test.js
PASS tests/jest/components/function/editor/FunctionEditorInputs.test.js
PASS tests/jest/components/function/editor/FunctionEditorDescription.test.js
PASS tests/jest/components/widgets/publish/LeaveEditorDialog.test.js
PASS tests/jest/store/stores/functionCall.test.js
PASS tests/jest/composables/useEventLog.test.js
PASS tests/jest/components/base/TypeToString.test.js
PASS tests/jest/components/default/ZMonolingualString.test.js
PASS tests/jest/components/visualeditor/ExpandableDescription.test.js
PASS tests/jest/store/stores/zfunction.test.js
PASS tests/jest/components/default/wikidata/LexemeForm.test.js
PASS tests/jest/store/index.test.js
PASS tests/jest/composables/useShareUrl.test.js
PASS tests/jest/components/visualeditor/FunctionInputDefaultValueCheckbox.test.js
PASS tests/jest/components/default/ZReference.test.js
PASS tests/jest/store/stores/queue.test.js
PASS tests/jest/store/stores/library.test.js
PASS tests/jest/components/base/LocalizedLabel.test.js
PASS tests/jest/utils/miscUtils.test.js
PASS tests/jest/composables/useZObject.test.js
PASS tests/jest/store/stores/errors.test.js
PASS tests/jest/store/classes/ErrorData.test.js
PASS tests/jest/store/stores/user.test.js
PASS tests/jest/components/visualeditor/fields/FunctionInputEnum.test.js
PASS tests/jest/store/stores/currentPage.test.js
PASS tests/jest/store/stores/testResults.test.js
PASS tests/jest/composables/useScroll.test.js
PASS tests/jest/components/base/TypeSelector.test.js
PASS tests/jest/store/stores/ztype.test.js
PASS tests/jest/store/stores/wikidata/entities.test.js
PASS tests/jest/store/stores/visualeditor.test.js
PASS tests/jest/utils/urlUtils.test.js
PASS tests/jest/store/stores/wikidata/properties.test.js
PASS tests/jest/store/stores/wikidata/items.test.js
PASS tests/jest/store/stores/router.test.js
PASS tests/jest/store/stores/wikidata/lexemes.test.js
PASS tests/jest/store/classes/ApiError.test.js
PASS tests/jest/utils/scrollUtils.test.js
PASS tests/jest/store/stores/factory.test.js
PASS tests/jest/utils/schemata.test.js
PASS tests/jest/utils/typeUtils.test.js
Jest: "./resources/ext.wikilambda.app/" coverage threshold for statements (95%) not met: 94.15%
Jest: "./resources/ext.wikilambda.app/" coverage threshold for branches (85%) not met: 83.31%
Jest: "./resources/ext.wikilambda.app/" coverage threshold for lines (95%) not met: 94.15%
Jest: "./resources/ext.wikilambda.app/utils" coverage threshold for statements (88%) not met: 83.67%
Jest: "./resources/ext.wikilambda.app/utils" coverage threshold for branches (82%) not met: 74.69%
Jest: "./resources/ext.wikilambda.app/utils" coverage threshold for lines (88%) not met: 83.67%
Jest: "./resources/ext.wikilambda.app/store" coverage threshold for statements (94%) not met: 93.78%
Jest: "./resources/ext.wikilambda.app/store" coverage threshold for branches (84%) not met: 83.41%
Jest: "./resources/ext.wikilambda.app/store" coverage threshold for lines (94%) not met: 93.78%
Test Suites: 132 passed, 132 total
Tests: 2030 passed, 2030 total
Snapshots: 0 total
Time: 86.767 s
Ran all test suites.
--- stdout ---
----------------------------------------------------------|---------|----------|---------|---------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
File | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s
----------------------------------------------------------|---------|----------|---------|---------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
All files | 94.18 | 83.39 | 96.07 | 94.18 |
ext.wikilambda.app/components | 97.54 | 100 | 100 | 97.54 |
App.vue | 97.54 | 100 | 100 | 97.54 | 71,75,95
ext.wikilambda.app/components/base | 89.68 | 83.92 | 87.17 | 89.68 |
CodeEditor.vue | 97.55 | 94.44 | 100 | 97.55 | 180-187
CustomDialogHeader.vue | 100 | 100 | 100 | 100 |
ExpandedToggle.vue | 100 | 100 | 100 | 100 |
KeyBlock.vue | 100 | 100 | 100 | 100 |
KeyValueBlock.vue | 100 | 100 | 100 | 100 |
LocalizedLabel.vue | 100 | 100 | 100 | 100 |
ModeSelector.vue | 91.6 | 82.69 | 100 | 91.6 | 166,251,253-259,346-358,362-375
Pagination.vue | 0 | 0 | 0 | 0 | 1-179
SafeMessage.vue | 100 | 100 | 100 | 100 |
StatusIcon.vue | 100 | 100 | 100 | 100 |
TypeSelector.vue | 94.49 | 80 | 66.66 | 94.49 | 159-164,176-178,182-185
TypeToString.vue | 96.79 | 73.33 | 100 | 96.79 | 76,78,108,111-112
WidgetBase.vue | 100 | 100 | 100 | 100 |
ZObjectSelector.vue | 92.61 | 77.63 | 75 | 92.61 | 188-189,220-221,227-229,314,318,333-341,374-375,394,406-407,437-439,463-467,476-481,502-504,520-522,545-547,593-594,632-633
ext.wikilambda.app/components/function/editor | 99.04 | 89.28 | 100 | 99.04 |
FunctionEditor.vue | 94.86 | 74.28 | 100 | 94.86 | 156,160-162,218-220,222-227,248-249
FunctionEditorAliases.vue | 100 | 100 | 100 | 100 |
FunctionEditorDescription.vue | 98.92 | 81.25 | 100 | 98.92 | 131-132
FunctionEditorField.vue | 100 | 100 | 100 | 100 |
FunctionEditorInputs.vue | 100 | 100 | 100 | 100 |
FunctionEditorInputsItem.vue | 100 | 83.33 | 100 | 100 | 218,227
FunctionEditorLanguage.vue | 100 | 100 | 100 | 100 |
FunctionEditorLanguageBlock.vue | 100 | 100 | 100 | 100 |
FunctionEditorName.vue | 99 | 94.44 | 100 | 99 | 142-143
FunctionEditorOutput.vue | 100 | 100 | 100 | 100 |
ext.wikilambda.app/components/function/viewer | 99.17 | 95.96 | 96 | 99.17 |
FunctionTesterTable.vue | 97.81 | 85.71 | 50 | 97.81 | 85-86,104,154
FunctionViewerDetails.vue | 99.27 | 97.93 | 100 | 99.27 | 235-236,546,565,583
FunctionViewerDetailsTable.vue | 100 | 100 | 100 | 100 |
ext.wikilambda.app/components/types | 95.73 | 80.26 | 97.05 | 95.73 |
ZArgumentReference.vue | 100 | 92.3 | 100 | 100 | 142
ZBoolean.vue | 100 | 100 | 100 | 100 |
ZCode.vue | 94.13 | 78.26 | 100 | 94.13 | 171-174,288,290,336-349,411-417
ZFunctionCall.vue | 100 | 100 | 100 | 100 |
ZHTMLFragment.vue | 100 | 80 | 100 | 100 | 107
ZImplementation.vue | 100 | 100 | 100 | 100 |
ZMonolingualString.vue | 100 | 92.3 | 100 | 100 | 137
ZMultilingualString.vue | 98.97 | 89.47 | 100 | 98.97 | 213-214,381,383-384
ZMultilingualStringDialog.vue | 96.92 | 83.33 | 90.9 | 96.92 | 168-169,350-351,360-362,364-365,367-369,375-376,420-421
ZObjectKeyValue.vue | 87.59 | 66.94 | 100 | 87.59 | 237-243,247-248,271-272,292-293,296-297,355-360,365-371,377-380,386-395,475-476,482,484-485,489-503,507-509,553-554,558-559,561-562,564-565,567-568,589-591,614-615,620-623,631-633,652-653,661,663-665,670,672-675,697-700,710,712-716,740-741,748-749
ZObjectKeyValueSet.vue | 100 | 66.66 | 100 | 100 | 70-77
ZObjectStringRenderer.vue | 95.81 | 94.73 | 83.33 | 95.81 | 290-291,320-321,377-379,390-391,447-452,509-510,536,546-552
ZObjectToString.vue | 91.52 | 67.6 | 100 | 91.52 | 226,252-253,260-261,264-265,270-271,313,348-351,362-363,365-366,368-369,381-383,399-401,423-425,429-430,435-436,458-461,518-527,535,537,539,568-570,577-578
ZReference.vue | 98.18 | 69.56 | 100 | 98.18 | 169,171-173
ZString.vue | 100 | 100 | 100 | 100 |
ZTester.vue | 99.24 | 95.23 | 100 | 99.24 | 218-219
ZTypedList.vue | 100 | 87.5 | 100 | 100 | 98
ZTypedListItems.vue | 100 | 100 | 100 | 100 |
ZTypedListType.vue | 100 | 100 | 100 | 100 |
ext.wikilambda.app/components/types/wikidata | 97.35 | 86.33 | 93.33 | 97.35 |
EntitySelector.vue | 94.18 | 86.2 | 75 | 94.18 | 89-90,134-135,197-200,229-236
Enum.vue | 97.84 | 81.81 | 100 | 97.84 | 187-191
Item.vue | 100 | 92.85 | 100 | 100 | 137
Lexeme.vue | 97.46 | 76.92 | 100 | 97.46 | 133-135,154-155
LexemeForm.vue | 97.86 | 81.81 | 100 | 97.86 | 135-138
LexemeSense.vue | 94.63 | 86.84 | 100 | 94.63 | 154-155,223-228,253-254,264-266,291-295,300-301
Property.vue | 99.42 | 81.81 | 100 | 99.42 | 134
ReferenceSelector.vue | 100 | 93.75 | 100 | 100 | 104
Statement.vue | 100 | 100 | 100 | 100 |
wikidataIconSvg.js | 100 | 100 | 100 | 100 |
ext.wikilambda.app/components/visualeditor | 98.87 | 96.96 | 90.19 | 98.87 |
ExpandableDescription.vue | 99.35 | 100 | 100 | 99.35 | 91
FunctionCallSetup.vue | 98.4 | 100 | 60 | 98.4 | 93,100
FunctionInputDefaultValueCheckbox.vue | 100 | 100 | 100 | 100 |
FunctionInputField.vue | 100 | 100 | 100 | 100 |
FunctionInputPreview.vue | 98.26 | 95.08 | 86.36 | 98.26 | 154-155,364,414-415,475-478
FunctionInputSetup.vue | 99.43 | 100 | 100 | 99.43 | 106-107
FunctionSelect.vue | 97.34 | 88.88 | 100 | 97.34 | 157-158,168-169,184-186
FunctionSelectItem.vue | 100 | 100 | 100 | 100 |
wikifunctionsIconSvg.js | 100 | 100 | 100 | 100 |
ext.wikilambda.app/components/visualeditor/fields | 94.33 | 89.1 | 94.28 | 94.33 |
FunctionInputEnum.vue | 97.36 | 94.28 | 88.88 | 97.36 | 100-101,163,190-191,211
FunctionInputLanguage.vue | 95.45 | 83.33 | 100 | 95.45 | 74-75,89,135-136,156-157,166-167,205
FunctionInputParser.vue | 89.16 | 92 | 90.9 | 89.16 | 202-214,225-226,265-266,351-360,369-378,387-393,407-410
FunctionInputString.vue | 100 | 100 | 100 | 100 |
FunctionInputWikidata.vue | 97.67 | 82.85 | 100 | 97.67 | 117-118,182-183,192-193
ext.wikilambda.app/components/widgets/about | 93.28 | 79.84 | 90 | 93.28 |
About.vue | 89.87 | 78.68 | 88.88 | 89.87 | 262-263,307-311,331,340-367,376-377,396-397,411-412,513-518,525-530,534-542
AboutLanguageBlock.vue | 95.7 | 84.21 | 100 | 95.7 | 326-332,345-346,349-355,368-369,372-378,490-491
AboutLanguagesDialog.vue | 94.83 | 76.66 | 88.88 | 94.83 | 235-238,249-251,266-267,299-300,302-303,305-306,308-309,315-317
ext.wikilambda.app/components/widgets/function-evaluator | 95.8 | 83.24 | 95.45 | 95.8 |
EvaluationResult.vue | 97.88 | 61.11 | 100 | 97.88 | 143-144,167-168,202
FunctionEvaluator.vue | 94.89 | 92.15 | 90 | 94.89 | 371-373,409-433,500
FunctionMetadataDialog.vue | 95.57 | 82.67 | 96.66 | 95.57 | 189-190,196-197,233-234,254,355-359,373-374,464-465,555-556,628-629,657-658,691-692,745-746,767-769,793-797,802-806,811-815,976-978
FunctionMetadataItem.vue | 100 | 100 | 100 | 100 |
ext.wikilambda.app/components/widgets/function-explorer | 100 | 100 | 100 | 100 |
FunctionExplorer.vue | 100 | 100 | 100 | 100 |
ext.wikilambda.app/components/widgets/function-report | 93.04 | 76.38 | 62.5 | 93.04 |
FunctionReport.vue | 89.87 | 60.46 | 66.66 | 89.87 | 150-151,156-161,173-174,177,211-213,266-268,275-277,316-322,335-336,342-352,365-366
FunctionReportItem.vue | 98.37 | 100 | 50 | 98.37 | 181-184
ext.wikilambda.app/components/widgets/publish | 96.43 | 79.72 | 95.83 | 96.43 |
LeaveEditorDialog.vue | 100 | 100 | 100 | 100 |
Publish.vue | 90.76 | 74.28 | 92.85 | 90.76 | 98-99,157-162,195-204,207,209-214,231-234
PublishDialog.vue | 100 | 81.81 | 100 | 100 | 138,221,254,307-309
ext.wikilambda.app/composables | 92.64 | 83.17 | 100 | 92.64 |
useBreakpoints.js | 100 | 84.61 | 100 | 100 | 13,28
useClipboard.js | 100 | 100 | 100 | 100 |
useClipboardManager.js | 87.5 | 84.61 | 100 | 87.5 | 60-61,63-71
useError.js | 100 | 90.9 | 100 | 100 | 62
useEventLog.js | 100 | 100 | 100 | 100 |
usePageTitle.js | 88.73 | 69.23 | 100 | 88.73 | 84-88,97-102,122-126
useScroll.js | 100 | 100 | 100 | 100 |
useShareUrl.js | 60.52 | 50 | 100 | 60.52 | 30-31,39-43,45-52,54-68
useType.js | 100 | 100 | 100 | 100 |
useZObject.js | 95.34 | 54.54 | 100 | 95.34 | 60-61,76-77,91-92
ext.wikilambda.app/store | 100 | 100 | 100 | 100 |
index.js | 100 | 100 | 100 | 100 |
ext.wikilambda.app/store/classes | 95.59 | 75.43 | 100 | 95.59 |
ApiError.js | 92.41 | 66.66 | 100 | 92.41 | 40-41,46-50,151-153,159-160,200-203
ErrorData.js | 97.7 | 66.66 | 100 | 97.7 | 70-71
LabelData.js | 100 | 94.44 | 100 | 100 | 45
ext.wikilambda.app/store/stores | 95.11 | 84.75 | 97.5 | 95.11 |
errors.js | 99.19 | 93.93 | 100 | 99.19 | 232-233
functionCall.js | 95.83 | 87.5 | 100 | 95.83 | 33-35
languages.js | 92.39 | 76.92 | 100 | 92.39 | 26-29,43-45
library.js | 94.81 | 85.12 | 96.55 | 94.81 | 76,100-102,123-124,148-149,153,178-179,188-189,198-199,205-208,247-248,250-251,283,417-418,441-442,524-525,550-551,562-565,569,590-591,594-595,693-695,902,1050-1051,1082-1086,1100-1101,1127-1130,1132-1135,1181
listItems.js | 100 | 100 | 100 | 100 |
programmingLanguages.js | 100 | 100 | 100 | 100 |
queue.js | 100 | 100 | 100 | 100 |
router.js | 87.17 | 76.66 | 100 | 87.17 | 95-96,108-126,144-147
testResults.js | 94.32 | 75 | 100 | 94.32 | 43-44,48-49,209-216,224-225,234-235,276-278
user.js | 100 | 90.9 | 100 | 100 | 26
visualeditor.js | 90.72 | 88.46 | 88 | 90.72 | 89-93,95-101,149-153,156-157,181-184,198-202
zfunction.js | 97.69 | 87.27 | 100 | 97.69 | 38-40,124-125,144-145,185-186
zobject.js | 94.33 | 80.13 | 97.87 | 94.33 | 71-72,90-91,113,115,129-130,154-155,167-168,211-212,237-238,242-243,314-315,345-346,369-371,376-380,382-383,408-409,432-433,499-500,503-504,527-528,531-532,538-539,650-651,691-692,828-829,933-941,996-1002,1201-1202
ztype.js | 97.59 | 94.44 | 100 | 97.59 | 129-134,277-278
ext.wikilambda.app/store/stores/wikidata | 94.86 | 88.52 | 97.14 | 94.86 |
entities.js | 92.33 | 87.95 | 100 | 92.33 | 47,87,98,143-155,220-221,273-278
items.js | 100 | 94.11 | 100 | 100 | 94,115
lexemes.js | 93.41 | 88.54 | 93.93 | 93.41 | 61-62,100-113,240-241,286-287,317-318,368,452-454,464-467,478-479
properties.js | 98.78 | 83.87 | 100 | 98.78 | 57-58
ext.wikilambda.app/store/stores/zobject | 88.43 | 75.78 | 100 | 88.43 |
currentPage.js | 100 | 86.36 | 100 | 100 | 73,119,121
factory.js | 95.26 | 77.96 | 100 | 95.26 | 74-93,99-100,104,108,110,114,116,120,124,130,134,136,142,190-196
submission.js | 75.51 | 69.87 | 100 | 75.51 | 52-53,63-65,75-76,86-94,127-138,141-150,161-178,180-195,197-208,287-291,295-308,316-317,321-330,338-339,356-357,402-403,433-434,466-467,480-482,491-502,511-515,534-535,540-541,555-556,572-573,602-603
ext.wikilambda.app/utils | 83.67 | 74.69 | 99.01 | 83.67 |
apiUtils.js | 98.64 | 77.55 | 100 | 98.64 | 262-264,328-329
errorUtils.js | 90.65 | 80 | 100 | 90.65 | 57-64,90-91
eventLogUtils.js | 96.15 | 88.88 | 100 | 96.15 | 40-41
metadataUtils.js | 100 | 100 | 100 | 100 |
miscUtils.js | 100 | 100 | 100 | 100 |
schemata.js | 90.94 | 79.72 | 88.88 | 90.94 | 80,98-102,108-109,123,139,159-164,174-179
scrollUtils.js | 100 | 100 | 100 | 100 |
typeUtils.js | 55.87 | 60.31 | 100 | 55.87 | 126-127,150-151,154-156,159-169,173-175,178-179,182,226-235,238-248,267-282,299-321,324-344,385-418,468-505,508-529,542-568,571-611,614-625,631-639,642,671-698,716-717,719-722
urlUtils.js | 96.35 | 76.47 | 100 | 96.35 | 25-27,54-55
wikidataUtils.js | 100 | 100 | 100 | 100 |
zobjectUtils.js | 88.48 | 64.16 | 100 | 88.48 | 33-34,98-99,107-108,138-139,154-155,169-170,184-186,220-221,227-239,265-266,408-409,422-423,437-438,457-458,483-484,487-491,503-504,535-536,564-565,583-585,600-601,644-649,669-673,677-682,701-715,779-780
ext.wikilambda.app/views | 96.85 | 70.37 | 75 | 96.85 |
Default.vue | 97.88 | 68.75 | 66.66 | 97.88 | 170,185-188
FunctionEditor.vue | 100 | 100 | 100 | 100 |
FunctionEvaluator.vue | 100 | 100 | 100 | 100 |
FunctionViewer.vue | 93.12 | 57.14 | 66.66 | 93.12 | 105-111,119-122
ext.wikilambda.languageselector/components | 98.03 | 93.33 | 94.11 | 98.03 |
LanguageSelector.vue | 98.03 | 93.33 | 94.11 | 98.03 | 226-227,265-266,287-288
----------------------------------------------------------|---------|----------|---------|---------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
--- end ---
Traceback (most recent call last):
File "/venv/lib/python3.13/site-packages/runner/__init__.py", line 326, in npm_test
self.check_call(["npm", "test"])
~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
File "/venv/lib/python3.13/site-packages/runner/shell2.py", line 63, in check_call
res.check_returncode()
~~~~~~~~~~~~~~~~~~~~^^
File "/usr/lib/python3.13/subprocess.py", line 508, in check_returncode
raise CalledProcessError(self.returncode, self.args, self.stdout,
self.stderr)
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.13/site-packages/runner/__init__.py", line 2044, in main
libup.run(args.repo, args.output, args.branch)
~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/venv/lib/python3.13/site-packages/runner/__init__.py", line 1980, in run
self.npm_upgrade(plan)
~~~~~~~~~~~~~~~~^^^^^^
File "/venv/lib/python3.13/site-packages/runner/__init__.py", line 1259, in npm_upgrade
self.npm_test()
~~~~~~~~~~~~~^^
File "/venv/lib/python3.13/site-packages/runner/__init__.py", line 331, in npm_test
self.check_call(["node_modules/.bin/jest", "-u"])
~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/venv/lib/python3.13/site-packages/runner/shell2.py", line 63, in check_call
res.check_returncode()
~~~~~~~~~~~~~~~~~~~~^^
File "/usr/lib/python3.13/subprocess.py", line 508, in check_returncode
raise CalledProcessError(self.returncode, self.args, self.stdout,
self.stderr)
subprocess.CalledProcessError: Command '['node_modules/.bin/jest', '-u']' returned non-zero exit status 1.
diff/diff: ^3.2.0
wikimedia/remex-html: ^5.1.0
mediawiki/mediawiki-codesniffer: 48.0.0
mediawiki/mediawiki-phan-config: 0.17.0
mediawiki/minus-x: 1.1.3
php-parallel-lint/php-console-highlighter: 1.0.0
php-parallel-lint/php-parallel-lint: 1.4.0
@babel/preset-env: 7.28.0
@pinia/testing: ^0.1.7
@testing-library/jest-dom: 6.8.0
@testing-library/vue: 8.1.0
@vue/test-utils: 2.4.6
@vue/vue3-jest: 29.2.6
@wdio/cli: 7.40.0
@wdio/junit-reporter: 7.40.0
@wdio/local-runner: 7.40.0
@wdio/mocha-framework: 7.40.0
@wdio/spec-reporter: 7.40.0
@wikimedia/codex: 2.3.2
eslint-config-wikimedia: 0.32.2
grunt: 1.6.1
grunt-banana-checker: 0.13.0
grunt-eslint: 24.3.0
grunt-stylelint: 0.20.1
jest: 29.7.0
jest-environment-jsdom: 29.7.0
jquery: 3.7.1
jsdoc: 4.0.4
jsdoc-wmf-theme: 1.1.0
pinia: 2.3.1
stylelint-config-wikimedia: 0.18.0
vue: 3.5.13
wdio-mediawiki: 2.7.1