mediawiki/extensions/WikiLambda: main (log #2130145)

sourcepatches

This run took 383 seconds.

$ date
--- stdout ---
Tue Sep 30 05:54:28 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 'a31b49967117582611ea479e76766234ee6c159c'

--- end ---
$ grr init
--- stdout ---
Installed commit-msg hook.

--- end ---
$ git show-ref refs/heads/master
--- stdout ---
79442dfdb1255ac8b3fb612c22793c51473fe6df 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.0",
        "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.0",
        "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.0",
        "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.0",
        "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.0",
        "isSemVerMajor": true
      }
    },
    "form-data": {
      "name": "form-data",
      "severity": "critical",
      "isDirect": false,
      "via": [
        {
          "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": [
        "request"
      ],
      "range": "<2.5.4",
      "nodes": [
        "node_modules/request/node_modules/form-data"
      ],
      "fixAvailable": false
    },
    "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.0",
        "isSemVerMajor": true
      }
    },
    "mwbot": {
      "name": "mwbot",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        "request"
      ],
      "effects": [
        "wdio-mediawiki"
      ],
      "range": ">=0.1.6",
      "nodes": [
        "node_modules/mwbot"
      ],
      "fixAvailable": false
    },
    "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.0",
        "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": false
    },
    "tar-fs": {
      "name": "tar-fs",
      "severity": "high",
      "isDirect": false,
      "via": [
        {
          "source": 1104677,
          "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"
        },
        {
          "source": 1106930,
          "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"
        }
      ],
      "effects": [
        "puppeteer-core"
      ],
      "range": "2.0.0 - 2.1.2",
      "nodes": [
        "node_modules/tar-fs"
      ],
      "fixAvailable": {
        "name": "@wdio/cli",
        "version": "9.20.0",
        "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": [
        "external-editor"
      ],
      "range": "<=0.2.3",
      "nodes": [
        "node_modules/tmp"
      ],
      "fixAvailable": {
        "name": "@wdio/cli",
        "version": "9.20.0",
        "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": false
    },
    "wdio-mediawiki": {
      "name": "wdio-mediawiki",
      "severity": "moderate",
      "isDirect": true,
      "via": [
        "mwbot"
      ],
      "effects": [],
      "range": "*",
      "nodes": [
        "node_modules/wdio-mediawiki"
      ],
      "fixAvailable": false
    },
    "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.0",
        "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.0",
        "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.0",
        "isSemVerMajor": true
      }
    }
  },
  "metadata": {
    "vulnerabilities": {
      "info": 0,
      "low": 3,
      "moderate": 3,
      "high": 12,
      "critical": 2,
      "total": 20
    },
    "dependencies": {
      "prod": 1,
      "dev": 1277,
      "optional": 4,
      "peer": 1,
      "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.1.2)
  - 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.3)
  - Locking phpdocumentor/type-resolver (1.10.0)
  - 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.4)
  - 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.0)
  - Locking symfony/string (v7.3.4)
  - Locking tysonandre/var_representation_polyfill (0.1.3)
  - Locking webmozart/assert (1.11.0)
  - 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.1.2): 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.0): Extracting archive
  - Installing symfony/console (v7.3.4): 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.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.0): Extracting archive
  - Installing phpdocumentor/reflection-docblock (5.6.3): 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%
 29/39 [====================>-------]  74%
 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:@wikimedia/codex from 2.3.1 -> 2.3.2
$ /usr/bin/npm install
--- stderr ---
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@wikimedia/codex@2.3.2',
npm WARN EBADENGINE   required: { npm: '>=10.8.2', node: '>=20.19.1' },
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: { npm: '>=10.8.2', node: '>=20.19.1' },
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

205 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 possible (including breaking changes), run:
  npm audit fix --force

Some issues need review, and may require choosing
a different dependency.

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.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 26s

205 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 possible (including breaking changes), run:
  npm audit fix --force

Some issues need review, and may require choosing
a different dependency.

Run `npm audit` for details.

--- end ---
$ /usr/bin/npm test
--- stderr ---
PASS tests/jest/store/stores/submission.test.js
PASS tests/jest/utils/zobjectUtils.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/default/ZObjectKeyValue.test.js
PASS tests/jest/components/widgets/about/About.test.js
PASS tests/jest/components/visualeditor/FunctionInputPreview.test.js
PASS tests/jest/components/default/ZObjectStringRenderer.test.js
PASS tests/jest/components/widgets/about/AboutLanguageBlock.test.js
PASS tests/jest/store/stores/router.test.js
PASS tests/jest/store/stores/wikidata/lexemes.test.js
PASS tests/jest/components/base/ModeSelector.test.js
PASS tests/jest/components/default/ZMultilingualStringDialog.test.js
PASS tests/jest/utils/typeUtils.test.js
PASS tests/jest/components/default/ZObjectToString.test.js (10.014 s)
PASS tests/jest/store/stores/zfunction.test.js
PASS tests/jest/components/default/ZMultilingualString.test.js
PASS tests/jest/components/widgets/function-evaluator/FunctionMetadataDialog.test.js
PASS tests/jest/store/stores/wikidata/entities.test.js
PASS tests/jest/store/stores/testResults.test.js
PASS tests/jest/components/widgets/function-evaluator/FunctionEvaluator.test.js
PASS tests/jest/utils/scrollUtils.test.js
PASS tests/jest/components/widgets/function-explorer/FunctionExplorer.test.js
PASS tests/jest/store/stores/ztype.test.js
PASS tests/jest/components/base/ZObjectSelector.test.js
PASS tests/jest/components/default/wikidata/LexemeSense.test.js
PASS tests/jest/components/default/ZCode.test.js
PASS tests/jest/components/widgets/publish/PublishDialog.test.js
PASS tests/jest/components/function/viewer/FunctionViewerDetails.test.js
PASS tests/jest/components/widgets/about/AboutLanguagesDialog.test.js
PASS tests/jest/store/classes/ApiError.test.js
PASS tests/jest/store/stores/errors.test.js
PASS tests/jest/components/default/ZImplementation.test.js
PASS tests/jest/components/default/wikidata/EntitySelector.test.js
PASS tests/jest/store/stores/wikidata/properties.test.js
PASS tests/jest/store/stores/wikidata/items.test.js
PASS tests/jest/languageselector/LanguageSelector.test.js
PASS tests/jest/mixins/scrollMixin.test.js
PASS tests/jest/components/default/ZTester.test.js
PASS tests/jest/components/widgets/publish/Publish.test.js
PASS tests/jest/integration/CreateNewWikidataEnum.test.js (14.714 s)
PASS tests/jest/components/widgets/function-report/FunctionReport.test.js
PASS tests/jest/utils/schemata.test.js
PASS tests/jest/integration/DisconnectFunctionImplementation.test.js
PASS tests/jest/components/default/wikidata/LexemeForm.test.js
PASS tests/jest/components/visualeditor/FunctionInputField.test.js
PASS tests/jest/integration/CreateNewTester.test.js (8.095 s)
PASS tests/jest/components/base/CodeEditor.test.js
PASS tests/jest/components/default/wikidata/Property.test.js
PASS tests/jest/components/default/wikidata/Lexeme.test.js
PASS tests/jest/store/stores/currentPage.test.js
PASS tests/jest/components/visualeditor/fields/FunctionInputParser.test.js
PASS tests/jest/components/base/TypeSelector.test.js
PASS tests/jest/components/default/wikidata/Item.test.js
PASS tests/jest/components/visualeditor/fields/FunctionInputWikidata.test.js
PASS tests/jest/integration/CreateNewCompositionImplementation.test.js (9.952 s)
PASS tests/jest/components/base/Pagination.test.js
PASS tests/jest/integration/CreateNewFunction.test.js
PASS tests/jest/components/default/ZArgumentReference.test.js
PASS tests/jest/integration/EditFunction.test.js
PASS tests/jest/components/function/editor/FunctionEditorInputsItem.test.js
PASS tests/jest/integration/FunctionEditorEdgeCases.test.js
PASS tests/jest/store/stores/visualeditor.test.js
PASS tests/jest/integration/CreateNewCodeImplementation.test.js (11.047 s)
PASS tests/jest/components/visualeditor/FunctionInputSetup.test.js
PASS tests/jest/components/default/ZReference.test.js
PASS tests/jest/components/function/editor/FunctionEditorName.test.js
PASS tests/jest/components/visualeditor/fields/FunctionInputEnum.test.js
PASS tests/jest/components/default/ZTypedList.test.js
PASS tests/jest/components/visualeditor/fields/FunctionInputLanguage.test.js
PASS tests/jest/utils/miscUtils.test.js
PASS tests/jest/components/function/editor/FunctionEditorDescription.test.js
PASS tests/jest/mixins/pageTitleMixin.test.js
PASS tests/jest/components/base/ClipboardManager.test.js
PASS tests/jest/utils/urlUtils.test.js
PASS tests/jest/integration/RunFunctionCall.test.js
PASS tests/jest/components/default/wikidata/ReferenceSelector.test.js
PASS tests/jest/components/function/editor/FunctionEditorLanguageBlock.test.js
PASS tests/jest/components/function/editor/FunctionEditorInputs.test.js
PASS tests/jest/integration/FunctionEditorGenericTypes.test.js
PASS tests/jest/components/visualeditor/FunctionSelect.test.js
PASS tests/jest/components/widgets/function-report/FunctionReportItem.test.js
PASS tests/jest/composables/useBreakpoints.test.js
PASS tests/jest/store/stores/listItems.test.js
PASS tests/jest/components/function/editor/FunctionEditorAliases.test.js
PASS tests/jest/components/default/wikidata/Enum.test.js
PASS tests/jest/components/App.test.js
PASS tests/jest/store/stores/user.test.js
PASS tests/jest/mixins/errorMixin.test.js
PASS tests/jest/components/default/ZMonolingualString.test.js
PASS tests/jest/utils/errorUtils.test.js
PASS tests/jest/mixins/zobjectMixin.test.js
PASS tests/jest/mixins/eventLogMixin.test.js
PASS tests/jest/store/classes/ErrorData.test.js
PASS tests/jest/integration/ConnectFunctionImplementation.test.js
PASS tests/jest/integration/ConnectFunctionTest.test.js
PASS tests/jest/components/base/ExpandedToggle.test.js
PASS tests/jest/components/widgets/function-evaluator/EvaluationResult.test.js
PASS tests/jest/integration/DisconnectFunctionTest.test.js
PASS tests/jest/integration/CancelEditExistingFunction.test.js
PASS tests/jest/components/function/editor/FunctionEditor.test.js
PASS tests/jest/store/stores/languages.test.js
PASS tests/jest/store/stores/functionCall.test.js
PASS tests/jest/components/function/editor/FunctionEditorOutput.test.js
PASS tests/jest/components/default/ZTypedListItems.test.js
PASS tests/jest/components/visualeditor/FunctionCallSetup.test.js
PASS tests/jest/components/default/ZBoolean.test.js
PASS tests/jest/components/function/editor/FunctionEditorLanguage.test.js
PASS tests/jest/mixins/clipboardMixin.test.js
PASS tests/jest/components/base/LocalizedLabel.test.js
PASS tests/jest/components/visualeditor/ExpandableDescription.test.js
PASS tests/jest/components/default/ZHTMLFragment.test.js
PASS tests/jest/integration/CancelEditNewFunction.test.js
PASS tests/jest/components/base/TypeToString.test.js
PASS tests/jest/components/default/ZString.test.js
PASS tests/jest/components/default/ZTypedListType.test.js
PASS tests/jest/views/FunctionViewer.test.js
PASS tests/jest/store/stores/programmingLanguages.test.js
PASS tests/jest/components/base/SafeMessage.test.js
PASS tests/jest/components/default/ZFunctionCall.test.js
PASS tests/jest/components/widgets/publish/LeaveEditorDialog.test.js
PASS tests/jest/utils/wikidataUtils.test.js
PASS tests/jest/components/visualeditor/fields/FunctionInputString.test.js
PASS tests/jest/components/function/viewer/FunctionViewerDetailsTable.test.js
PASS tests/jest/store/index.test.js

Test Suites: 126 passed, 126 total
Tests:       1 skipped, 1931 passed, 1932 total
Snapshots:   0 total
Time:        79.872 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

✖ 8 problems (0 errors, 8 warnings)


Running "banana:WikiLambda" (banana) task
>> 3 message directories checked.

Running "stylelint:all" (stylelint) task
>> Linted 309 files without errors

Done.

> test:unit
> jest

----------------------------------------------------------|---------|----------|---------|---------|-----------------------------------------------------------------------------------------------------------------------------
File                                                      | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s                                                                                                           
----------------------------------------------------------|---------|----------|---------|---------|-----------------------------------------------------------------------------------------------------------------------------
All files                                                 |   97.61 |       91 |   96.05 |   97.61 |                                                                                                                             
 ext.wikilambda.app/components                            |   97.74 |      100 |     100 |   97.74 |                                                                                                                             
  App.vue                                                 |   97.74 |      100 |     100 |   97.74 | 93,97,117                                                                                                                   
 ext.wikilambda.app/components/base                       |   97.23 |    87.02 |   95.87 |   97.23 |                                                                                                                             
  ClipboardManager.vue                                    |   86.66 |    77.77 |     100 |   86.66 | 67-68,70-79                                                                                                                 
  CodeEditor.vue                                          |   96.54 |    92.59 |     100 |   96.54 | 90-92,263-270                                                                                                               
  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                                        |     100 |       95 |     100 |     100 | 91,190,292                                                                                                                  
  Pagination.vue                                          |     100 |      100 |     100 |     100 |                                                                                                                             
  SafeMessage.vue                                         |     100 |      100 |     100 |     100 |                                                                                                                             
  StatusIcon.vue                                          |     100 |      100 |     100 |     100 |                                                                                                                             
  TypeSelector.vue                                        |   94.71 |    78.57 |   85.71 |   94.71 | 163-167,179-181,185-188                                                                                                     
  TypeToString.vue                                        |   96.73 |    71.42 |     100 |   96.73 | 79,81,109,112-113                                                                                                           
  WidgetBase.vue                                          |     100 |      100 |     100 |     100 |                                                                                                                             
  ZObjectSelector.vue                                     |   94.53 |    78.75 |   88.88 |   94.53 | 187-188,191-192,200-201,208-209,374-375,398,406-411,447-448,477-479,503-505,520-521,555-556,579-580,585-587,604-606,648-649 
 ext.wikilambda.app/components/function/editor            |   99.02 |    90.84 |     100 |   99.02 |                                                                                                                             
  FunctionEditor.vue                                      |   94.82 |    74.28 |     100 |   94.82 | 126,130-132,230-232,234-239,259-260                                                                                         
  FunctionEditorAliases.vue                               |     100 |      100 |     100 |     100 |                                                                                                                             
  FunctionEditorDescription.vue                           |   98.88 |    94.44 |     100 |   98.88 | 139-140                                                                                                                     
  FunctionEditorField.vue                                 |     100 |      100 |     100 |     100 |                                                                                                                             
  FunctionEditorInputs.vue                                |     100 |      100 |     100 |     100 |                                                                                                                             
  FunctionEditorInputsItem.vue                            |     100 |    84.61 |     100 |     100 | 222,231                                                                                                                     
  FunctionEditorLanguage.vue                              |     100 |      100 |     100 |     100 |                                                                                                                             
  FunctionEditorLanguageBlock.vue                         |     100 |      100 |     100 |     100 |                                                                                                                             
  FunctionEditorName.vue                                  |   98.94 |    94.44 |     100 |   98.94 | 147-148                                                                                                                     
  FunctionEditorOutput.vue                                |     100 |      100 |     100 |     100 |                                                                                                                             
 ext.wikilambda.app/components/function/viewer            |   98.73 |    95.96 |   97.95 |   98.73 |                                                                                                                             
  FunctionTesterTable.vue                                 |      95 |    85.71 |    87.5 |      95 | 91-92,109,159-164                                                                                                           
  FunctionViewerDetails.vue                               |   99.28 |    97.91 |     100 |   99.28 | 225-226,551,570,588                                                                                                         
  FunctionViewerDetailsTable.vue                          |     100 |      100 |     100 |     100 |                                                                                                                             
 ext.wikilambda.app/components/types                      |   97.93 |     89.5 |    96.8 |   97.93 |                                                                                                                             
  ZArgumentReference.vue                                  |   97.29 |    72.72 |     100 |   97.29 | 165-169                                                                                                                     
  ZBoolean.vue                                            |     100 |      100 |     100 |     100 |                                                                                                                             
  ZCode.vue                                               |   97.36 |    94.23 |     100 |   97.36 | 338,384-395                                                                                                                 
  ZFunctionCall.vue                                       |     100 |      100 |     100 |     100 |                                                                                                                             
  ZHTMLFragment.vue                                       |     100 |       80 |     100 |     100 | 115                                                                                                                         
  ZImplementation.vue                                     |     100 |      100 |     100 |     100 |                                                                                                                             
  ZMonolingualString.vue                                  |     100 |     92.3 |     100 |     100 | 145                                                                                                                         
  ZMultilingualString.vue                                 |   99.34 |       92 |     100 |   99.34 | 337-338,360                                                                                                                 
  ZMultilingualStringDialog.vue                           |    99.2 |    92.98 |   94.73 |    99.2 | 409-410,413-414                                                                                                             
  ZObjectKeyValue.vue                                     |   95.06 |    85.83 |     100 |   95.06 | 231-237,241-242,271-272,292-293,505-506,563-565,588-589,594-597,626-627,654-659,714-715,822-823,825-826,828-829,831-832     
  ZObjectKeyValueSet.vue                                  |     100 |       60 |     100 |     100 | 70,78                                                                                                                       
  ZObjectStringRenderer.vue                               |   95.43 |    94.54 |   80.76 |   95.43 | 270,299-300,356-358,369-370,426-431,497,523-524,550-551,558-565                                                             
  ZObjectToString.vue                                     |   97.31 |    90.32 |   96.29 |   97.31 | 333-335,351-353,409-411,415-416,421-422,573-576                                                                             
  ZReference.vue                                          |   98.63 |    68.18 |     100 |   98.63 | 178,180-181                                                                                                                 
  ZString.vue                                             |     100 |    66.66 |     100 |     100 | 88                                                                                                                          
  ZTester.vue                                             |   99.25 |    95.65 |     100 |   99.25 | 197-198                                                                                                                     
  ZTypedList.vue                                          |     100 |    85.71 |     100 |     100 | 95                                                                                                                          
  ZTypedListItems.vue                                     |     100 |      100 |     100 |     100 |                                                                                                                             
  ZTypedListType.vue                                      |     100 |      100 |     100 |     100 |                                                                                                                             
 ext.wikilambda.app/components/types/wikidata             |   97.07 |    85.33 |   90.36 |   97.07 |                                                                                                                             
  EntitySelector.vue                                      |   95.29 |    89.28 |   81.81 |   95.29 | 153-155,184-190,228-229                                                                                                     
  Enum.vue                                                |   97.75 |    81.81 |     100 |   97.75 | 191-195                                                                                                                     
  Item.vue                                                |   98.41 |    84.61 |     100 |   98.41 | 140-142                                                                                                                     
  Lexeme.vue                                              |   97.38 |    76.92 |     100 |   97.38 | 140-142,160-161                                                                                                             
  LexemeForm.vue                                          |   97.43 |    81.81 |    87.5 |   97.43 | 155-159                                                                                                                     
  LexemeSense.vue                                         |   95.64 |    88.57 |   78.94 |   95.64 | 184,225,242-246,274-275,288-290,322-326                                                                                     
  Property.vue                                            |   98.94 |    81.81 |    87.5 |   98.94 | 154-155                                                                                                                     
  ReferenceSelector.vue                                   |   97.72 |    86.66 |     100 |   97.72 | 113-115                                                                                                                     
  wikidataIconSvg.js                                      |     100 |      100 |     100 |     100 |                                                                                                                             
 ext.wikilambda.app/components/visualeditor               |   98.09 |    96.57 |    87.5 |   98.09 |                                                                                                                             
  ExpandableDescription.vue                               |   98.62 |      100 |   83.33 |   98.62 | 91-92                                                                                                                       
  FunctionCallSetup.vue                                   |   95.52 |      100 |   66.66 |   95.52 | 99,106,112-115                                                                                                              
  FunctionInputField.vue                                  |     100 |      100 |     100 |     100 |                                                                                                                             
  FunctionInputPreview.vue                                |   98.11 |    95.08 |   85.18 |   98.11 | 148-149,393-394,415,503-507                                                                                                 
  FunctionInputSetup.vue                                  |   98.88 |      100 |      95 |   98.88 | 116-119                                                                                                                     
  FunctionSelect.vue                                      |   95.97 |    88.88 |      90 |   95.97 | 189-190,200-201,216-218,237-240                                                                                             
  FunctionSelectItem.vue                                  |     100 |      100 |     100 |     100 |                                                                                                                             
  wikifunctionsIconSvg.js                                 |     100 |      100 |     100 |     100 |                                                                                                                             
 ext.wikilambda.app/components/visualeditor/fields        |   96.08 |    90.17 |   94.54 |   96.08 |                                                                                                                             
  FunctionInputEnum.vue                                   |   98.48 |    95.83 |    92.3 |   98.48 | 93,165-166                                                                                                                  
  FunctionInputLanguage.vue                               |   98.78 |     90.9 |     100 |   98.78 | 101-102                                                                                                                     
  FunctionInputParser.vue                                 |   91.51 |     87.8 |   90.47 |   91.51 | 107-109,192-204,215-216,256-257,336-342,354-358                                                                             
  FunctionInputString.vue                                 |     100 |      100 |     100 |     100 |                                                                                                                             
  FunctionInputWikidata.vue                               |      99 |    86.95 |     100 |      99 | 135-136                                                                                                                     
 ext.wikilambda.app/components/widgets/about              |   98.13 |     92.9 |      95 |   98.13 |                                                                                                                             
  About.vue                                               |    98.5 |    96.25 |   92.85 |    98.5 | 238,280-283,318-319,402-403                                                                                                 
  AboutLanguageBlock.vue                                  |   99.67 |    97.77 |     100 |   99.67 | 499-500                                                                                                                     
  AboutLanguagesDialog.vue                                |   95.15 |    76.66 |   92.85 |   95.15 | 252-254,266-268,283-284,316-317,319-320,322-323,325-326,332-334                                                             
 ext.wikilambda.app/components/widgets/function-evaluator |   97.35 |    83.72 |   95.58 |   97.35 |                                                                                                                             
  EvaluationResult.vue                                    |   96.71 |    71.42 |   71.42 |   96.71 | 112,121-122,134-135                                                                                                         
  FunctionEvaluator.vue                                   |     100 |    91.66 |     100 |     100 | 440,469-471                                                                                                                 
  FunctionMetadataDialog.vue                              |   95.87 |    81.03 |   97.36 |   95.87 | 242-243,317-318,324-325,419-420,440,456-457,586-588,602-603,670-671,698,731,783,800,830-832,856-860,865-869,874-878         
  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    |   94.89 |    85.71 |      90 |   94.89 |                                                                                                                             
  FunctionReport.vue                                      |   96.09 |    91.52 |    90.9 |   96.09 | 229-231,289-291,297-299,327-333                                                                                             
  FunctionReportItem.vue                                  |   92.79 |       72 |    87.5 |   92.79 | 129-130,132-133,135-136,149,151,163-164,166-167,182-186                                                                     
 ext.wikilambda.app/components/widgets/publish            |   98.12 |    86.07 |   94.73 |   98.12 |                                                                                                                             
  LeaveEditorDialog.vue                                   |     100 |      100 |     100 |     100 |                                                                                                                             
  Publish.vue                                             |   94.98 |    84.61 |    87.5 |   94.98 | 105-112,208,212-214,232-234                                                                                                 
  PublishDialog.vue                                       |     100 |    85.71 |     100 |     100 | 242,304,353-355                                                                                                             
 ext.wikilambda.app/composables                           |     100 |      100 |     100 |     100 |                                                                                                                             
  useBreakpoints.js                                       |     100 |      100 |     100 |     100 |                                                                                                                             
 ext.wikilambda.app/mixins                                |    98.9 |    90.69 |     100 |    98.9 |                                                                                                                             
  clipboardMixin.js                                       |     100 |      100 |     100 |     100 |                                                                                                                             
  errorMixin.js                                           |     100 |       90 |     100 |     100 | 68                                                                                                                          
  eventLogMixin.js                                        |   97.43 |    93.33 |     100 |   97.43 | 45-46                                                                                                                       
  metadataMixin.js                                        |     100 |      100 |     100 |     100 |                                                                                                                             
  pageTitleMixin.js                                       |     100 |    93.33 |     100 |     100 | 71                                                                                                                          
  scrollMixin.js                                          |     100 |      100 |     100 |     100 |                                                                                                                             
  typeMixin.js                                            |     100 |      100 |     100 |     100 |                                                                                                                             
  zobjectMixin.js                                         |   94.87 |       50 |     100 |   94.87 | 51-52,66-67,80-81                                                                                                           
 ext.wikilambda.app/store                                 |     100 |      100 |     100 |     100 |                                                                                                                             
  index.js                                                |     100 |      100 |     100 |     100 |                                                                                                                             
 ext.wikilambda.app/store/classes                         |   95.56 |    81.35 |     100 |   95.56 |                                                                                                                             
  ApiError.js                                             |   92.41 |       70 |     100 |   92.41 | 40-41,46-50,151-153,159-160,200-203                                                                                         
  ErrorData.js                                            |   97.61 |       80 |     100 |   97.61 | 68-69                                                                                                                       
  LabelData.js                                            |     100 |      100 |     100 |     100 |                                                                                                                             
 ext.wikilambda.app/store/stores                          |   98.31 |    94.41 |   97.33 |   98.31 |                                                                                                                             
  errors.js                                               |   99.57 |      100 |   92.85 |   99.57 | 52                                                                                                                          
  functionCall.js                                         |   97.22 |     87.5 |     100 |   97.22 | 31-32                                                                                                                       
  languages.js                                            |   92.39 |    76.92 |     100 |   92.39 | 26-29,43-45                                                                                                                 
  library.js                                              |      98 |     95.3 |   98.24 |      98 | 138-139,514-515,540-541,552-555,559,650-655,683-685,890,1038-1039,1169                                                      
  listItems.js                                            |   94.95 |       80 |     100 |   94.95 | 77-78,85-88                                                                                                                 
  programmingLanguages.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 |      100 |     100 |     100 |                                                                                                                             
  visualeditor.js                                         |   96.44 |    95.45 |      85 |   96.44 | 62,72,95-96,149-153                                                                                                         
  zfunction.js                                            |     100 |    96.42 |     100 |     100 | 90                                                                                                                          
  zobject.js                                              |   98.09 |     93.6 |   97.72 |   98.09 | 152-153,165-166,204-212,406-407,622-623,663-664,800-801,1173-1174                                                           
  ztype.js                                                |   99.38 |      100 |     100 |   99.38 | 274-275                                                                                                                     
 ext.wikilambda.app/store/stores/wikidata                 |    95.3 |    92.94 |    97.1 |    95.3 |                                                                                                                             
  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                                              |   93.62 |    96.11 |   93.75 |   93.62 | 95-115,368,452-454,464-467,478-479                                                                                          
  properties.js                                           |     100 |     90.9 |     100 |     100 | 88,91,113                                                                                                                   
 ext.wikilambda.app/store/stores/zobject                  |   98.85 |     94.4 |     100 |   98.85 |                                                                                                                             
  currentPage.js                                          |     100 |    86.36 |     100 |     100 | 73,119,121                                                                                                                  
  factory.js                                              |   98.69 |    95.27 |     100 |   98.69 | 190-196,385-388                                                                                                             
  submission.js                                           |   98.67 |    95.04 |     100 |   98.67 | 373-374,505-506,511-512,543-544                                                                                             
 ext.wikilambda.app/utils                                 |   95.48 |    91.31 |   98.95 |   95.48 |                                                                                                                             
  apiUtils.js                                             |   98.64 |    75.51 |     100 |   98.64 | 263-265,329-330                                                                                                             
  errorUtils.js                                           |   90.65 |    77.77 |     100 |   90.65 | 57-64,90-91                                                                                                                 
  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                                            |   90.71 |     84.5 |     100 |   90.71 | 126-127,150-151,154-156,159-169,173-175,178-179,182,204-212,226-235,508-529,642,716-717                                     
  urlUtils.js                                             |   97.41 |    88.88 |     100 |   97.41 | 25-27                                                                                                                       
  wikidataUtils.js                                        |     100 |      100 |     100 |     100 |                                                                                                                             
  zobjectUtils.js                                         |   98.43 |    98.53 |     100 |   98.43 | 422-423,623-627,669-673                                                                                                     
 ext.wikilambda.app/views                                 |   95.86 |       68 |   83.33 |   95.86 |                                                                                                                             
  Default.vue                                             |   97.51 |    68.75 |   81.81 |   97.51 | 161,197,211-214                                                                                                             
  FunctionEditor.vue                                      |     100 |      100 |     100 |     100 |                                                                                                                             
  FunctionEvaluator.vue                                   |     100 |      100 |     100 |     100 |                                                                                                                             
  FunctionViewer.vue                                      |   90.32 |    57.14 |      80 |   90.32 | 87-94,106-109                                                                                                               
 ext.wikilambda.languageselector/components               |   98.05 |    93.75 |   94.11 |   98.05 |                                                                                                                             
  LanguageSelector.vue                                    |   98.05 |    93.75 |   94.11 |   98.05 | 229-230,268-269,290-291                                                                                                     
----------------------------------------------------------|---------|----------|---------|---------|-----------------------------------------------------------------------------------------------------------------------------

--- 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.0",
        "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.0",
        "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.0",
        "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.0",
        "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.0",
        "isSemVerMajor": true
      }
    },
    "form-data": {
      "name": "form-data",
      "severity": "critical",
      "isDirect": false,
      "via": [
        {
          "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": [
        "request"
      ],
      "range": "<2.5.4",
      "nodes": [
        "node_modules/request/node_modules/form-data"
      ],
      "fixAvailable": false
    },
    "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.0",
        "isSemVerMajor": true
      }
    },
    "mwbot": {
      "name": "mwbot",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        "request"
      ],
      "effects": [
        "wdio-mediawiki"
      ],
      "range": ">=0.1.6",
      "nodes": [
        "node_modules/mwbot"
      ],
      "fixAvailable": false
    },
    "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.0",
        "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": false
    },
    "tar-fs": {
      "name": "tar-fs",
      "severity": "high",
      "isDirect": false,
      "via": [
        {
          "source": 1104677,
          "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"
        },
        {
          "source": 1106930,
          "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"
        }
      ],
      "effects": [
        "puppeteer-core"
      ],
      "range": "2.0.0 - 2.1.2",
      "nodes": [
        "node_modules/tar-fs"
      ],
      "fixAvailable": {
        "name": "@wdio/cli",
        "version": "9.20.0",
        "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": [
        "external-editor"
      ],
      "range": "<=0.2.3",
      "nodes": [
        "node_modules/tmp"
      ],
      "fixAvailable": {
        "name": "@wdio/cli",
        "version": "9.20.0",
        "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": false
    },
    "wdio-mediawiki": {
      "name": "wdio-mediawiki",
      "severity": "moderate",
      "isDirect": true,
      "via": [
        "mwbot"
      ],
      "effects": [],
      "range": "*",
      "nodes": [
        "node_modules/wdio-mediawiki"
      ],
      "fixAvailable": false
    },
    "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.0",
        "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.0",
        "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.0",
        "isSemVerMajor": true
      }
    }
  },
  "metadata": {
    "vulnerabilities": {
      "info": 0,
      "low": 3,
      "moderate": 3,
      "high": 12,
      "critical": 2,
      "total": 20
    },
    "dependencies": {
      "prod": 1,
      "dev": 1277,
      "optional": 4,
      "peer": 1,
      "peerOptional": 0,
      "total": 1277
    }
  }
}

--- end ---
Attempting to npm audit fix
$ /usr/bin/npm audit fix --dry-run --only=dev --json
--- stderr ---
npm WARN invalid config only="dev" set in command line options
npm WARN invalid config Must be one of: null, prod, production
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@wikimedia/codex@2.3.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 }
--- stdout ---
{
  "added": 1,
  "removed": 0,
  "changed": 0,
  "audited": 1278,
  "funding": 205,
  "audit": {
    "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.0",
          "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.0",
          "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.0",
          "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.0",
          "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.0",
          "isSemVerMajor": true
        }
      },
      "form-data": {
        "name": "form-data",
        "severity": "critical",
        "isDirect": false,
        "via": [
          {
            "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": [
          "request"
        ],
        "range": "<2.5.4",
        "nodes": [
          "node_modules/request/node_modules/form-data"
        ],
        "fixAvailable": false
      },
      "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.0",
          "isSemVerMajor": true
        }
      },
      "mwbot": {
        "name": "mwbot",
        "severity": "moderate",
        "isDirect": false,
        "via": [
          "request"
        ],
        "effects": [
          "wdio-mediawiki"
        ],
        "range": ">=0.1.6",
        "nodes": [
          "node_modules/mwbot"
        ],
        "fixAvailable": false
      },
      "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.0",
          "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": false
      },
      "tar-fs": {
        "name": "tar-fs",
        "severity": "high",
        "isDirect": false,
        "via": [
          {
            "source": 1104677,
            "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"
          },
          {
            "source": 1106930,
            "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"
          }
        ],
        "effects": [
          "puppeteer-core"
        ],
        "range": "2.0.0 - 2.1.2",
        "nodes": [
          "node_modules/tar-fs"
        ],
        "fixAvailable": {
          "name": "@wdio/cli",
          "version": "9.20.0",
          "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": [
          "external-editor"
        ],
        "range": "<=0.2.3",
        "nodes": [
          "node_modules/tmp"
        ],
        "fixAvailable": {
          "name": "@wdio/cli",
          "version": "9.20.0",
          "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": false
      },
      "wdio-mediawiki": {
        "name": "wdio-mediawiki",
        "severity": "moderate",
        "isDirect": true,
        "via": [
          "mwbot"
        ],
        "effects": [],
        "range": "*",
        "nodes": [
          "node_modules/wdio-mediawiki"
        ],
        "fixAvailable": false
      },
      "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.0",
          "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.0",
          "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.0",
          "isSemVerMajor": true
        }
      }
    },
    "metadata": {
      "vulnerabilities": {
        "info": 0,
        "low": 3,
        "moderate": 3,
        "high": 12,
        "critical": 2,
        "total": 20
      },
      "dependencies": {
        "prod": 1,
        "dev": 1277,
        "optional": 4,
        "peer": 1,
        "peerOptional": 0,
        "total": 1277
      }
    }
  }
}

--- end ---
{"added": 1, "removed": 0, "changed": 0, "audited": 1278, "funding": 205, "audit": {"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.0", "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.0", "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.0", "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.0", "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.0", "isSemVerMajor": true}}, "form-data": {"name": "form-data", "severity": "critical", "isDirect": false, "via": [{"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": ["request"], "range": "<2.5.4", "nodes": ["node_modules/request/node_modules/form-data"], "fixAvailable": false}, "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.0", "isSemVerMajor": true}}, "mwbot": {"name": "mwbot", "severity": "moderate", "isDirect": false, "via": ["request"], "effects": ["wdio-mediawiki"], "range": ">=0.1.6", "nodes": ["node_modules/mwbot"], "fixAvailable": false}, "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.0", "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": false}, "tar-fs": {"name": "tar-fs", "severity": "high", "isDirect": false, "via": [{"source": 1104677, "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"}, {"source": 1106930, "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"}], "effects": ["puppeteer-core"], "range": "2.0.0 - 2.1.2", "nodes": ["node_modules/tar-fs"], "fixAvailable": {"name": "@wdio/cli", "version": "9.20.0", "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": ["external-editor"], "range": "<=0.2.3", "nodes": ["node_modules/tmp"], "fixAvailable": {"name": "@wdio/cli", "version": "9.20.0", "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": false}, "wdio-mediawiki": {"name": "wdio-mediawiki", "severity": "moderate", "isDirect": true, "via": ["mwbot"], "effects": [], "range": "*", "nodes": ["node_modules/wdio-mediawiki"], "fixAvailable": false}, "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.0", "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.0", "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.0", "isSemVerMajor": true}}}, "metadata": {"vulnerabilities": {"info": 0, "low": 3, "moderate": 3, "high": 12, "critical": 2, "total": 20}, "dependencies": {"prod": 1, "dev": 1277, "optional": 4, "peer": 1, "peerOptional": 0, "total": 1277}}}}
$ /usr/bin/npm audit fix --only=dev
--- stderr ---
npm WARN invalid config only="dev" set in command line options
npm WARN invalid config Must be one of: null, prod, production
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@wikimedia/codex@2.3.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 }
--- stdout ---

up to date, audited 1277 packages in 6s

205 packages are looking for funding
  run `npm fund` for details

# npm audit report

cross-spawn  <6.0.6
Severity: high
Regular Expression Denial of Service (ReDoS) in cross-spawn - https://github.com/advisories/GHSA-3xgq-45jj-v275
fix available via `npm audit fix --force`
Will install @wdio/cli@9.20.0, which is a breaking change
node_modules/yarn-install/node_modules/cross-spawn
  yarn-install  *
  Depends on vulnerable versions of cross-spawn
  node_modules/yarn-install
    @wdio/cli  <=9.0.0-alpha.426
    Depends on vulnerable versions of inquirer
    Depends on vulnerable versions of webdriverio
    Depends on vulnerable versions of yarn-install
    node_modules/@wdio/cli
      @wdio/junit-reporter  6.0.4 - 8.0.0-alpha.631
      Depends on vulnerable versions of @wdio/cli
      node_modules/@wdio/junit-reporter
      @wdio/local-runner  6.0.4 - 8.46.0
      Depends on vulnerable versions of @wdio/cli
      Depends on vulnerable versions of @wdio/runner
      node_modules/@wdio/local-runner
      @wdio/spec-reporter  6.0.4 - 8.0.0-alpha.631
      Depends on vulnerable versions of @wdio/cli
      node_modules/@wdio/spec-reporter

form-data  <2.5.4
Severity: critical
form-data uses unsafe random function in form-data for choosing boundary - https://github.com/advisories/GHSA-fjxv-7rqg-78g4
No fix available
node_modules/request/node_modules/form-data
  request  *
  Depends on vulnerable versions of form-data
  Depends on vulnerable versions of tough-cookie
  node_modules/request
    mwbot  >=0.1.6
    Depends on vulnerable versions of request
    node_modules/mwbot
      wdio-mediawiki  *
      Depends on vulnerable versions of mwbot
      node_modules/wdio-mediawiki


tar-fs  2.0.0 - 2.1.2
Severity: high
tar-fs Vulnerable to Link Following and Path Traversal via Extracting a Crafted tar File - https://github.com/advisories/GHSA-pq67-2wwv-3xjx
tar-fs can extract outside the specified dir with a specific tarball - https://github.com/advisories/GHSA-8cj5-5rvv-wf4v
fix available via `npm audit fix --force`
Will install @wdio/cli@9.20.0, which is a breaking change
node_modules/tar-fs
  puppeteer-core  10.0.0 - 22.11.1
  Depends on vulnerable versions of tar-fs
  Depends on vulnerable versions of ws
  node_modules/puppeteer-core
    devtools  >=7.16.5
    Depends on vulnerable versions of puppeteer-core
    node_modules/devtools
    webdriverio  7.16.5 - 8.46.0
    Depends on vulnerable versions of devtools
    Depends on vulnerable versions of puppeteer-core
    node_modules/webdriverio
      @wdio/runner  7.16.5 - 8.46.0
      Depends on vulnerable versions of webdriverio
      node_modules/@wdio/runner

tmp  <=0.2.3
tmp allows arbitrary temporary file / directory write via symbolic link `dir` parameter - https://github.com/advisories/GHSA-52f5-9888-hmc6
fix available via `npm audit fix --force`
Will install @wdio/cli@9.20.0, which is a breaking change
node_modules/tmp
  external-editor  >=1.1.1
  Depends on vulnerable versions of tmp
  node_modules/external-editor
    inquirer  3.0.0 - 8.2.6 || 9.0.0 - 9.3.7
    Depends on vulnerable versions of external-editor
    node_modules/inquirer

tough-cookie  <4.1.3
Severity: moderate
tough-cookie Prototype Pollution vulnerability - https://github.com/advisories/GHSA-72xf-g2v4-qvf3
No fix available
node_modules/request/node_modules/tough-cookie

ws  8.0.0 - 8.17.0
Severity: high
ws affected by a DoS when handling a request with many HTTP headers - https://github.com/advisories/GHSA-3h5v-q93c-6h6q
fix available via `npm audit fix --force`
Will install @wdio/cli@9.20.0, which is a breaking change
node_modules/puppeteer-core/node_modules/ws

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 possible (including breaking changes), run:
  npm audit fix --force

Some issues need review, and may require choosing
a different dependency.

--- end ---
Verifying that tests still pass
$ /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 17s

205 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 possible (including breaking changes), run:
  npm audit fix --force

Some issues need review, and may require choosing
a different dependency.

Run `npm audit` for details.

--- end ---
$ /usr/bin/npm test
--- stderr ---
PASS tests/jest/components/default/ZObjectToString.test.js (7.869 s)
PASS tests/jest/integration/CreateNewCodeImplementation.test.js (11.222 s)
PASS tests/jest/integration/CreateNewWikidataEnum.test.js (13.031 s)
PASS tests/jest/integration/FunctionEditorGenericTypes.test.js
PASS tests/jest/integration/CreateNewCompositionImplementation.test.js (9.075 s)
PASS tests/jest/integration/CreateNewTester.test.js (6.876 s)
PASS tests/jest/components/default/ZObjectKeyValue.test.js
PASS tests/jest/integration/FunctionEditorEdgeCases.test.js
PASS tests/jest/integration/CancelEditExistingFunction.test.js
PASS tests/jest/integration/CreateNewFunction.test.js
PASS tests/jest/components/widgets/about/About.test.js
PASS tests/jest/components/base/ZObjectSelector.test.js
PASS tests/jest/integration/EditFunction.test.js
PASS tests/jest/integration/DisconnectFunctionImplementation.test.js
PASS tests/jest/components/widgets/function-evaluator/FunctionMetadataDialog.test.js
PASS tests/jest/integration/CancelEditNewFunction.test.js
PASS tests/jest/components/widgets/function-evaluator/FunctionEvaluator.test.js
PASS tests/jest/integration/RunFunctionCall.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/visualeditor/FunctionInputPreview.test.js
PASS tests/jest/integration/DisconnectFunctionTest.test.js
PASS tests/jest/integration/ConnectFunctionTest.test.js
PASS tests/jest/store/stores/zobject.test.js
PASS tests/jest/components/visualeditor/FunctionInputSetup.test.js
PASS tests/jest/components/default/ZObjectStringRenderer.test.js
PASS tests/jest/components/widgets/function-explorer/FunctionExplorer.test.js
PASS tests/jest/components/visualeditor/FunctionSelect.test.js
PASS tests/jest/components/default/ZMultilingualString.test.js
PASS tests/jest/components/visualeditor/ExpandableDescription.test.js
PASS tests/jest/components/base/ModeSelector.test.js
PASS tests/jest/components/base/ExpandedToggle.test.js
PASS tests/jest/components/widgets/function-report/FunctionReport.test.js
PASS tests/jest/components/default/wikidata/EntitySelector.test.js
PASS tests/jest/components/widgets/publish/PublishDialog.test.js
PASS tests/jest/utils/urlUtils.test.js
PASS tests/jest/components/default/ZCode.test.js
PASS tests/jest/components/visualeditor/fields/FunctionInputWikidata.test.js
PASS tests/jest/components/visualeditor/FunctionInputField.test.js
PASS tests/jest/components/default/wikidata/LexemeSense.test.js
PASS tests/jest/components/function/editor/FunctionEditorName.test.js
PASS tests/jest/components/App.test.js
PASS tests/jest/views/FunctionViewer.test.js
PASS tests/jest/components/visualeditor/fields/FunctionInputLanguage.test.js
PASS tests/jest/components/base/Pagination.test.js
PASS tests/jest/mixins/pageTitleMixin.test.js
PASS tests/jest/components/widgets/publish/LeaveEditorDialog.test.js
PASS tests/jest/components/base/SafeMessage.test.js
PASS tests/jest/components/widgets/function-evaluator/EvaluationResult.test.js
PASS tests/jest/components/base/ClipboardManager.test.js
PASS tests/jest/components/function/editor/FunctionEditorOutput.test.js
PASS tests/jest/components/default/ZTypedListType.test.js
PASS tests/jest/components/visualeditor/FunctionCallSetup.test.js
PASS tests/jest/components/base/TypeToString.test.js
PASS tests/jest/components/default/ZString.test.js
PASS tests/jest/store/stores/languages.test.js
PASS tests/jest/components/widgets/about/AboutLanguagesDialog.test.js
PASS tests/jest/components/widgets/publish/Publish.test.js
PASS tests/jest/components/function/editor/FunctionEditorAliases.test.js
PASS tests/jest/components/function/editor/FunctionEditor.test.js
PASS tests/jest/components/visualeditor/fields/FunctionInputString.test.js
PASS tests/jest/components/default/ZTester.test.js
PASS tests/jest/components/visualeditor/fields/FunctionInputParser.test.js
PASS tests/jest/components/visualeditor/fields/FunctionInputEnum.test.js
PASS tests/jest/components/function/editor/FunctionEditorLanguageBlock.test.js
PASS tests/jest/components/function/viewer/FunctionViewerDetailsTable.test.js
PASS tests/jest/components/default/ZTypedList.test.js
PASS tests/jest/components/default/ZImplementation.test.js
PASS tests/jest/components/default/ZBoolean.test.js
PASS tests/jest/utils/errorUtils.test.js
PASS tests/jest/components/default/ZHTMLFragment.test.js
PASS tests/jest/components/default/ZArgumentReference.test.js
PASS tests/jest/utils/zobjectUtils.test.js
PASS tests/jest/components/default/ZTypedListItems.test.js
PASS tests/jest/store/classes/ErrorData.test.js
PASS tests/jest/components/function/editor/FunctionEditorLanguage.test.js
PASS tests/jest/store/stores/zfunction.test.js
PASS tests/jest/components/widgets/function-report/FunctionReportItem.test.js
PASS tests/jest/store/stores/submission.test.js
PASS tests/jest/components/default/wikidata/Enum.test.js
PASS tests/jest/components/base/LocalizedLabel.test.js
PASS tests/jest/utils/miscUtils.test.js
PASS tests/jest/store/stores/errors.test.js
PASS tests/jest/store/stores/user.test.js
PASS tests/jest/store/stores/programmingLanguages.test.js
PASS tests/jest/components/function/editor/FunctionEditorInputsItem.test.js
PASS tests/jest/components/base/TypeSelector.test.js
PASS tests/jest/mixins/eventLogMixin.test.js
PASS tests/jest/store/index.test.js
PASS tests/jest/components/default/wikidata/Property.test.js
PASS tests/jest/mixins/errorMixin.test.js
PASS tests/jest/store/stores/factory.test.js
PASS tests/jest/mixins/clipboardMixin.test.js
PASS tests/jest/components/default/ZMonolingualString.test.js
PASS tests/jest/store/stores/visualeditor.test.js
PASS tests/jest/components/function/editor/FunctionEditorDescription.test.js
PASS tests/jest/utils/schemata.test.js
PASS tests/jest/components/function/editor/FunctionEditorInputs.test.js
PASS tests/jest/components/widgets/about/AboutLanguageBlock.test.js
PASS tests/jest/components/default/wikidata/Item.test.js
PASS tests/jest/utils/wikidataUtils.test.js
PASS tests/jest/components/default/ZFunctionCall.test.js
PASS tests/jest/store/stores/functionCall.test.js
PASS tests/jest/mixins/scrollMixin.test.js
PASS tests/jest/store/stores/listItems.test.js
PASS tests/jest/components/default/ZMultilingualStringDialog.test.js
PASS tests/jest/composables/useBreakpoints.test.js
PASS tests/jest/components/default/wikidata/ReferenceSelector.test.js
PASS tests/jest/mixins/zobjectMixin.test.js
PASS tests/jest/store/stores/library.test.js
PASS tests/jest/components/base/CodeEditor.test.js
PASS tests/jest/store/stores/currentPage.test.js
PASS tests/jest/store/stores/wikidata/properties.test.js
PASS tests/jest/store/stores/ztype.test.js
PASS tests/jest/components/default/wikidata/Lexeme.test.js
PASS tests/jest/utils/scrollUtils.test.js
PASS tests/jest/components/default/ZReference.test.js
PASS tests/jest/store/classes/ApiError.test.js
PASS tests/jest/store/stores/wikidata/entities.test.js
PASS tests/jest/store/stores/wikidata/lexemes.test.js
PASS tests/jest/components/default/wikidata/LexemeForm.test.js
PASS tests/jest/utils/typeUtils.test.js
PASS tests/jest/store/stores/wikidata/items.test.js
PASS tests/jest/store/stores/router.test.js
PASS tests/jest/store/stores/testResults.test.js
Jest: "./resources/ext.wikilambda.app/" coverage threshold for statements (95%) not met: 94.83%
Jest: "./resources/ext.wikilambda.app/" coverage threshold for branches (85%) not met: 83.32%
Jest: "./resources/ext.wikilambda.app/" coverage threshold for lines (95%) not met: 94.83%
Jest: "./resources/ext.wikilambda.app/utils" coverage threshold for statements (88%) not met: 83.33%
Jest: "./resources/ext.wikilambda.app/utils" coverage threshold for branches (82%) not met: 76.42%
Jest: "./resources/ext.wikilambda.app/utils" coverage threshold for lines (88%) not met: 83.33%
Jest: "./resources/ext.wikilambda.app/store" coverage threshold for statements (94%) not met: 93.35%
Jest: "./resources/ext.wikilambda.app/store" coverage threshold for branches (84%) not met: 83.42%
Jest: "./resources/ext.wikilambda.app/store" coverage threshold for lines (94%) not met: 93.35%

Test Suites: 126 passed, 126 total
Tests:       1 skipped, 1931 passed, 1932 total
Snapshots:   0 total
Time:        77.666 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

✖ 8 problems (0 errors, 8 warnings)


Running "banana:WikiLambda" (banana) task
>> 3 message directories checked.

Running "stylelint:all" (stylelint) task
>> Linted 311 files without errors

Done.

> test:unit
> jest

----------------------------------------------------------|---------|----------|---------|---------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
File                                                      | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s                                                                                                                                                                                                                               
----------------------------------------------------------|---------|----------|---------|---------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
All files                                                 |   94.86 |    83.41 |   96.05 |   94.86 |                                                                                                                                                                                                                                                 
 ext.wikilambda.app/components                            |   97.74 |      100 |     100 |   97.74 |                                                                                                                                                                                                                                                 
  App.vue                                                 |   97.74 |      100 |     100 |   97.74 | 93,97,117                                                                                                                                                                                                                                       
 ext.wikilambda.app/components/base                       |   95.75 |    82.17 |   95.87 |   95.75 |                                                                                                                                                                                                                                                 
  ClipboardManager.vue                                    |   86.66 |    77.77 |     100 |   86.66 | 67-68,70-79                                                                                                                                                                                                                                     
  CodeEditor.vue                                          |   96.54 |    92.59 |     100 |   96.54 | 90-92,263-270                                                                                                                                                                                                                                   
  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.82 |    82.69 |     100 |   91.82 | 251-263,267-280,414,416-422                                                                                                                                                                                                                     
  Pagination.vue                                          |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                                 
  SafeMessage.vue                                         |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                                 
  StatusIcon.vue                                          |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                                 
  TypeSelector.vue                                        |   94.71 |    78.57 |   85.71 |   94.71 | 163-167,179-181,185-188                                                                                                                                                                                                                         
  TypeToString.vue                                        |   96.73 |    71.42 |     100 |   96.73 | 79,81,109,112-113                                                                                                                                                                                                                               
  WidgetBase.vue                                          |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                                 
  ZObjectSelector.vue                                     |   93.54 |    73.75 |   88.88 |   93.54 | 187-188,191-192,196-197,200-201,208-209,243-244,325,329,374-375,398,406-411,447-448,477-479,503-505,520-521,555-556,585-587,604-606,648-649,690-692                                                                                             
 ext.wikilambda.app/components/function/editor            |   99.02 |    89.28 |     100 |   99.02 |                                                                                                                                                                                                                                                 
  FunctionEditor.vue                                      |   94.82 |    74.28 |     100 |   94.82 | 126,130-132,230-232,234-239,259-260                                                                                                                                                                                                             
  FunctionEditorAliases.vue                               |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                                 
  FunctionEditorDescription.vue                           |   98.88 |    81.25 |     100 |   98.88 | 139-140                                                                                                                                                                                                                                         
  FunctionEditorField.vue                                 |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                                 
  FunctionEditorInputs.vue                                |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                                 
  FunctionEditorInputsItem.vue                            |     100 |    84.61 |     100 |     100 | 222,231                                                                                                                                                                                                                                         
  FunctionEditorLanguage.vue                              |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                                 
  FunctionEditorLanguageBlock.vue                         |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                                 
  FunctionEditorName.vue                                  |   98.94 |    94.44 |     100 |   98.94 | 147-148                                                                                                                                                                                                                                         
  FunctionEditorOutput.vue                                |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                                 
 ext.wikilambda.app/components/function/viewer            |   98.73 |    93.49 |   97.95 |   98.73 |                                                                                                                                                                                                                                                 
  FunctionTesterTable.vue                                 |      95 |    85.71 |    87.5 |      95 | 91-92,109,159-164                                                                                                                                                                                                                               
  FunctionViewerDetails.vue                               |   99.28 |    94.73 |     100 |   99.28 | 225-226,551,570,588                                                                                                                                                                                                                             
  FunctionViewerDetailsTable.vue                          |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                                 
 ext.wikilambda.app/components/types                      |   96.58 |    83.58 |    96.8 |   96.58 |                                                                                                                                                                                                                                                 
  ZArgumentReference.vue                                  |   97.29 |    72.72 |     100 |   97.29 | 165-169                                                                                                                                                                                                                                         
  ZBoolean.vue                                            |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                                 
  ZCode.vue                                               |   94.73 |    78.26 |     100 |   94.73 | 197-200,336,338,384-395,462-469                                                                                                                                                                                                                 
  ZFunctionCall.vue                                       |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                                 
  ZHTMLFragment.vue                                       |     100 |       80 |     100 |     100 | 115                                                                                                                                                                                                                                             
  ZImplementation.vue                                     |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                                 
  ZMonolingualString.vue                                  |     100 |     92.3 |     100 |     100 | 145                                                                                                                                                                                                                                             
  ZMultilingualString.vue                                 |   99.34 |       92 |     100 |   99.34 | 337-338,360                                                                                                                                                                                                                                     
  ZMultilingualStringDialog.vue                           |    99.2 |    92.98 |   94.73 |    99.2 | 409-410,413-414                                                                                                                                                                                                                                 
  ZObjectKeyValue.vue                                     |   87.66 |    65.74 |     100 |   87.66 | 231-237,241-242,271-272,292-293,296-297,358-363,369-372,378-387,467-468,474,476-477,481-495,499-501,563-565,588-589,594-597,605-607,626-627,635,637-639,644,646-649,671-674,684,686-690,714-715,722-723,817-818,822-823,825-826,828-829,831-832 
  ZObjectKeyValueSet.vue                                  |     100 |       60 |     100 |     100 | 70,78                                                                                                                                                                                                                                           
  ZObjectStringRenderer.vue                               |   95.43 |    94.54 |   80.76 |   95.43 | 270,299-300,356-358,369-370,426-431,497,523-524,550-551,558-565                                                                                                                                                                                 
  ZObjectToString.vue                                     |   97.31 |    88.04 |   96.29 |   97.31 | 333-335,351-353,409-411,415-416,421-422,573-576                                                                                                                                                                                                 
  ZReference.vue                                          |   98.63 |    68.18 |     100 |   98.63 | 178,180-181                                                                                                                                                                                                                                     
  ZString.vue                                             |     100 |    66.66 |     100 |     100 | 88                                                                                                                                                                                                                                              
  ZTester.vue                                             |   99.25 |    95.65 |     100 |   99.25 | 197-198                                                                                                                                                                                                                                         
  ZTypedList.vue                                          |     100 |    85.71 |     100 |     100 | 95                                                                                                                                                                                                                                              
  ZTypedListItems.vue                                     |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                                 
  ZTypedListType.vue                                      |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                                 
 ext.wikilambda.app/components/types/wikidata             |   97.52 |     87.5 |   90.36 |   97.52 |                                                                                                                                                                                                                                                 
  EntitySelector.vue                                      |   95.29 |    89.28 |   81.81 |   95.29 | 153-155,184-190,228-229                                                                                                                                                                                                                         
  Enum.vue                                                |   97.75 |    81.81 |     100 |   97.75 | 191-195                                                                                                                                                                                                                                         
  Item.vue                                                |     100 |    92.85 |     100 |     100 | 146                                                                                                                                                                                                                                             
  Lexeme.vue                                              |     100 |    92.85 |     100 |     100 | 146                                                                                                                                                                                                                                             
  LexemeForm.vue                                          |   97.43 |    81.81 |    87.5 |   97.43 | 155-159                                                                                                                                                                                                                                         
  LexemeSense.vue                                         |   95.64 |    88.57 |   78.94 |   95.64 | 184,225,242-246,274-275,288-290,322-326                                                                                                                                                                                                         
  Property.vue                                            |   98.94 |    81.81 |    87.5 |   98.94 | 154-155                                                                                                                                                                                                                                         
  ReferenceSelector.vue                                   |   97.72 |    86.66 |     100 |   97.72 | 113-115                                                                                                                                                                                                                                         
  wikidataIconSvg.js                                      |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                                 
 ext.wikilambda.app/components/visualeditor               |   98.09 |    96.57 |    87.5 |   98.09 |                                                                                                                                                                                                                                                 
  ExpandableDescription.vue                               |   98.62 |      100 |   83.33 |   98.62 | 91-92                                                                                                                                                                                                                                           
  FunctionCallSetup.vue                                   |   95.52 |      100 |   66.66 |   95.52 | 99,106,112-115                                                                                                                                                                                                                                  
  FunctionInputField.vue                                  |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                                 
  FunctionInputPreview.vue                                |   98.11 |    95.08 |   85.18 |   98.11 | 148-149,393-394,415,503-507                                                                                                                                                                                                                     
  FunctionInputSetup.vue                                  |   98.88 |      100 |      95 |   98.88 | 116-119                                                                                                                                                                                                                                         
  FunctionSelect.vue                                      |   95.97 |    88.88 |      90 |   95.97 | 189-190,200-201,216-218,237-240                                                                                                                                                                                                                 
  FunctionSelectItem.vue                                  |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                                 
  wikifunctionsIconSvg.js                                 |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                                 
 ext.wikilambda.app/components/visualeditor/fields        |   96.08 |    90.17 |   94.54 |   96.08 |                                                                                                                                                                                                                                                 
  FunctionInputEnum.vue                                   |   98.48 |    95.83 |    92.3 |   98.48 | 93,165-166                                                                                                                                                                                                                                      
  FunctionInputLanguage.vue                               |   98.78 |     90.9 |     100 |   98.78 | 101-102                                                                                                                                                                                                                                         
  FunctionInputParser.vue                                 |   91.51 |     87.8 |   90.47 |   91.51 | 107-109,192-204,215-216,256-257,336-342,354-358                                                                                                                                                                                                 
  FunctionInputString.vue                                 |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                                 
  FunctionInputWikidata.vue                               |      99 |    86.95 |     100 |      99 | 135-136                                                                                                                                                                                                                                         
 ext.wikilambda.app/components/widgets/about              |   93.41 |    79.84 |      95 |   93.41 |                                                                                                                                                                                                                                                 
  About.vue                                               |   90.06 |    78.68 |   92.85 |   90.06 | 238,280-283,303,312-339,348,402-403,416-417,443-448,455-460,464-472                                                                                                                                                                             
  AboutLanguageBlock.vue                                  |   95.59 |    84.21 |     100 |   95.59 | 332-338,350-351,354-360,372-373,376-382,499-500                                                                                                                                                                                                 
  AboutLanguagesDialog.vue                                |   95.15 |    76.66 |   92.85 |   95.15 | 252-254,266-268,283-284,316-317,319-320,322-323,325-326,332-334                                                                                                                                                                                 
 ext.wikilambda.app/components/widgets/function-evaluator |   96.94 |    81.06 |   95.58 |   96.94 |                                                                                                                                                                                                                                                 
  EvaluationResult.vue                                    |   96.71 |    71.42 |   71.42 |   96.71 | 112,121-122,134-135                                                                                                                                                                                                                             
  FunctionEvaluator.vue                                   |   99.61 |    84.78 |     100 |   99.61 | 314,316                                                                                                                                                                                                                                         
  FunctionMetadataDialog.vue                              |   95.35 |       80 |   97.36 |   95.35 | 242-243,317-318,324-325,419-420,440,456-457,586-588,602-603,670-671,698,731,783,800,830-832,838-842,856-860,865-869,874-878                                                                                                                     
  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    |    90.4 |    54.09 |      90 |    90.4 |                                                                                                                                                                                                                                                 
  FunctionReport.vue                                      |   89.75 |    60.46 |    90.9 |   89.75 | 184-185,190-195,207-208,211,229-231,289-291,297-299,327-333,355-356,362-372,384-385                                                                                                                                                             
  FunctionReportItem.vue                                  |   91.52 |    38.88 |    87.5 |   91.52 | 126-127,129-130,132-133,135-136,149,151,153,163-164,166-167,182-186                                                                                                                                                                             
 ext.wikilambda.app/components/widgets/publish            |   97.86 |    80.82 |   94.73 |   97.86 |                                                                                                                                                                                                                                                 
  LeaveEditorDialog.vue                                   |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                                 
  Publish.vue                                             |   94.31 |    76.47 |    87.5 |   94.31 | 105-112,122-123,208,212-214,232-234                                                                                                                                                                                                             
  PublishDialog.vue                                       |     100 |    82.35 |     100 |     100 | 145,242,304,353-355                                                                                                                                                                                                                             
 ext.wikilambda.app/composables                           |     100 |    84.61 |     100 |     100 |                                                                                                                                                                                                                                                 
  useBreakpoints.js                                       |     100 |    84.61 |     100 |     100 | 11,26                                                                                                                                                                                                                                           
 ext.wikilambda.app/mixins                                |   96.44 |    85.18 |     100 |   96.44 |                                                                                                                                                                                                                                                 
  clipboardMixin.js                                       |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                                 
  errorMixin.js                                           |     100 |       90 |     100 |     100 | 68                                                                                                                                                                                                                                              
  eventLogMixin.js                                        |   97.43 |    93.33 |     100 |   97.43 | 45-46                                                                                                                                                                                                                                           
  metadataMixin.js                                        |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                                 
  pageTitleMixin.js                                       |   86.77 |    69.23 |     100 |   86.77 | 77-81,90-95,114-118                                                                                                                                                                                                                             
  scrollMixin.js                                          |   98.54 |    93.33 |     100 |   98.54 | 104-105                                                                                                                                                                                                                                         
  typeMixin.js                                            |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                                 
  zobjectMixin.js                                         |   94.87 |       50 |     100 |   94.87 | 51-52,66-67,80-81                                                                                                                                                                                                                               
 ext.wikilambda.app/store                                 |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                                 
  index.js                                                |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                                 
 ext.wikilambda.app/store/classes                         |   95.56 |    72.72 |     100 |   95.56 |                                                                                                                                                                                                                                                 
  ApiError.js                                             |   92.41 |    60.71 |     100 |   92.41 | 40-41,46-50,151-153,159-160,200-203                                                                                                                                                                                                             
  ErrorData.js                                            |   97.61 |    66.66 |     100 |   97.61 | 68-69                                                                                                                                                                                                                                           
  LabelData.js                                            |     100 |    94.44 |     100 |     100 | 45                                                                                                                                                                                                                                              
 ext.wikilambda.app/store/stores                          |   94.23 |    84.29 |   97.33 |   94.23 |                                                                                                                                                                                                                                                 
  errors.js                                               |   98.72 |    93.93 |   92.85 |   98.72 | 52,223-224                                                                                                                                                                                                                                      
  functionCall.js                                         |   97.22 |     87.5 |     100 |   97.22 | 31-32                                                                                                                                                                                                                                           
  languages.js                                            |   92.39 |    76.92 |     100 |   92.39 | 26-29,43-45                                                                                                                                                                                                                                     
  library.js                                              |   94.35 |    82.44 |   98.24 |   94.35 | 76,113-114,138-139,143,168-169,178-179,188-189,195-198,237-238,240-241,273,431-432,466,507-508,514-515,519,540-541,552-555,559,580-581,584-585,650-655,683-685,890,1038-1039,1070-1074,1088-1089,1115-1118,1120-1123,1169                       
  listItems.js                                            |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                                 
  programmingLanguages.js                                 |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                                 
  router.js                                               |   87.17 |    76.66 |     100 |   87.17 | 95-96,108-126,144-147                                                                                                                                                                                                                           
  testResults.js                                          |   90.14 |    69.56 |     100 |   90.14 | 43-44,48-49,129-142,209-216,224-225,234-235,276-278                                                                                                                                                                                             
  user.js                                                 |     100 |     90.9 |     100 |     100 | 26                                                                                                                                                                                                                                              
  visualeditor.js                                         |   96.44 |    95.45 |      85 |   96.44 | 62,72,95-96,149-153                                                                                                                                                                                                                             
  zfunction.js                                            |   98.44 |    90.38 |     100 |   98.44 | 36-37,142-143,182-183                                                                                                                                                                                                                           
  zobject.js                                              |   90.97 |     81.5 |   97.72 |   90.97 | 69-70,88-89,127-128,152-153,165-166,204-212,235-236,240-241,312-313,343-344,406-407,471-472,475-476,499-500,503-504,510-511,622-623,663-664,800-801,968-974,1087-1093,1097-1103,1115-1118,1120-1156,1173-1174                                   
  ztype.js                                                |   99.38 |    97.29 |     100 |   99.38 | 274-275                                                                                                                                                                                                                                         
 ext.wikilambda.app/store/stores/wikidata                 |    94.6 |    89.79 |    97.1 |    94.6 |                                                                                                                                                                                                                                                 
  entities.js                                             |   92.33 |    86.07 |     100 |   92.33 | 47,87,98,143-155,220-221,273-278                                                                                                                                                                                                                
  items.js                                                |     100 |    94.28 |     100 |     100 | 94,115                                                                                                                                                                                                                                          
  lexemes.js                                              |   92.38 |    90.72 |   93.75 |   92.38 | 95-115,240-241,286-287,317-318,368,452-454,464-467,478-479                                                                                                                                                                                      
  properties.js                                           |     100 |    91.17 |     100 |     100 | 88,91,113                                                                                                                                                                                                                                       
 ext.wikilambda.app/store/stores/zobject                  |   89.13 |    76.36 |     100 |   89.13 |                                                                                                                                                                                                                                                 
  currentPage.js                                          |     100 |    85.71 |     100 |     100 | 73,119,121                                                                                                                                                                                                                                      
  factory.js                                              |   95.26 |    78.81 |     100 |   95.26 | 74-93,99-100,104,108,110,114,116,120,124,130,134,136,142,190-196                                                                                                                                                                                
  submission.js                                           |   76.82 |    70.37 |     100 |   76.82 | 50-51,60-62,71-72,82-88,104-110,120-129,132-141,152-167,176-183,192-195,258-262,266-279,287-288,292-301,309-310,327-328,373-374,404-405,437-438,451-453,462-473,482-486,505-506,511-512,526-527,543-544,573-574                                 
 ext.wikilambda.app/utils                                 |   83.33 |    76.42 |   98.95 |   83.33 |                                                                                                                                                                                                                                                 
  apiUtils.js                                             |   98.64 |    72.34 |     100 |   98.64 | 263-265,329-330                                                                                                                                                                                                                                 
  errorUtils.js                                           |   90.65 |    77.77 |     100 |   90.65 | 57-64,90-91                                                                                                                                                                                                                                     
  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                                          |    97.5 |    93.75 |     100 |    97.5 | 132-135                                                                                                                                                                                                                                         
  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                                             |   97.41 |    94.73 |     100 |   97.41 | 25-27                                                                                                                                                                                                                                           
  wikidataUtils.js                                        |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                                 
  zobjectUtils.js                                         |      91 |    73.07 |     100 |      91 | 98-99,107-108,138-139,154-155,169-170,184-186,220-221,238-239,265-266,408-409,422-423,437-438,457-458,483-484,487-491,503-504,535-536,623-627,669-673,677-682,701-715                                                                           
 ext.wikilambda.app/views                                 |   95.86 |       68 |   83.33 |   95.86 |                                                                                                                                                                                                                                                 
  Default.vue                                             |   97.51 |    68.75 |   81.81 |   97.51 | 161,197,211-214                                                                                                                                                                                                                                 
  FunctionEditor.vue                                      |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                                 
  FunctionEvaluator.vue                                   |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                                 
  FunctionViewer.vue                                      |   90.32 |    57.14 |      80 |   90.32 | 87-94,106-109                                                                                                                                                                                                                                   
 ext.wikilambda.languageselector/components               |   98.05 |    93.75 |   94.11 |   98.05 |                                                                                                                                                                                                                                                 
  LanguageSelector.vue                                    |   98.05 |    93.75 |   94.11 |   98.05 | 229-230,268-269,290-291                                                                                                                                                                                                                         
----------------------------------------------------------|---------|----------|---------|---------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

--- end ---
$ node_modules/.bin/jest -u
--- stderr ---
PASS tests/jest/integration/CreateNewCompositionImplementation.test.js (9.967 s)
PASS tests/jest/integration/CreateNewCodeImplementation.test.js (10.988 s)
PASS tests/jest/integration/CreateNewWikidataEnum.test.js (12.542 s)
PASS tests/jest/integration/FunctionEditorEdgeCases.test.js
PASS tests/jest/integration/CreateNewTester.test.js (6.559 s)
PASS tests/jest/components/default/ZObjectToString.test.js (8.22 s)
PASS tests/jest/components/base/ZObjectSelector.test.js
PASS tests/jest/integration/CancelEditExistingFunction.test.js
PASS tests/jest/integration/DisconnectFunctionImplementation.test.js
PASS tests/jest/integration/CreateNewFunction.test.js
PASS tests/jest/integration/EditFunction.test.js
PASS tests/jest/integration/FunctionEditorGenericTypes.test.js
PASS tests/jest/integration/CancelEditNewFunction.test.js
PASS tests/jest/languageselector/LanguageSelector.test.js
PASS tests/jest/components/widgets/function-evaluator/FunctionMetadataDialog.test.js
PASS tests/jest/integration/RunFunctionCall.test.js
PASS tests/jest/components/base/ModeSelector.test.js
PASS tests/jest/components/widgets/publish/PublishDialog.test.js
PASS tests/jest/components/default/ZObjectStringRenderer.test.js
PASS tests/jest/components/widgets/function-evaluator/FunctionEvaluator.test.js
PASS tests/jest/integration/DisconnectFunctionTest.test.js
PASS tests/jest/components/visualeditor/FunctionInputPreview.test.js
PASS tests/jest/components/widgets/about/About.test.js
PASS tests/jest/components/default/ZObjectKeyValue.test.js
PASS tests/jest/components/default/ZMultilingualString.test.js
PASS tests/jest/components/default/wikidata/EntitySelector.test.js
PASS tests/jest/integration/ConnectFunctionTest.test.js
PASS tests/jest/store/stores/library.test.js
PASS tests/jest/components/function/viewer/FunctionViewerDetails.test.js
PASS tests/jest/store/stores/zobject.test.js
PASS tests/jest/components/default/ZMultilingualStringDialog.test.js
PASS tests/jest/components/widgets/function-explorer/FunctionExplorer.test.js
PASS tests/jest/store/stores/router.test.js
PASS tests/jest/integration/ConnectFunctionImplementation.test.js
PASS tests/jest/components/function/viewer/FunctionViewerDetailsTable.test.js
PASS tests/jest/components/widgets/function-report/FunctionReport.test.js
PASS tests/jest/components/visualeditor/FunctionInputSetup.test.js
PASS tests/jest/store/stores/wikidata/lexemes.test.js
PASS tests/jest/components/default/ZCode.test.js
PASS tests/jest/components/visualeditor/fields/FunctionInputWikidata.test.js
PASS tests/jest/components/widgets/about/AboutLanguageBlock.test.js
PASS tests/jest/components/default/ZTester.test.js
PASS tests/jest/store/stores/errors.test.js
PASS tests/jest/components/widgets/function-evaluator/EvaluationResult.test.js
PASS tests/jest/components/default/wikidata/LexemeSense.test.js
PASS tests/jest/components/default/wikidata/Lexeme.test.js
PASS tests/jest/store/stores/ztype.test.js
PASS tests/jest/components/default/ZImplementation.test.js
PASS tests/jest/components/visualeditor/fields/FunctionInputParser.test.js
PASS tests/jest/store/stores/factory.test.js
PASS tests/jest/store/stores/wikidata/entities.test.js
PASS tests/jest/composables/useBreakpoints.test.js
PASS tests/jest/store/stores/submission.test.js
PASS tests/jest/components/widgets/about/AboutLanguagesDialog.test.js
PASS tests/jest/components/App.test.js
PASS tests/jest/store/classes/ApiError.test.js
PASS tests/jest/components/default/wikidata/LexemeForm.test.js
PASS tests/jest/mixins/scrollMixin.test.js
PASS tests/jest/components/base/ExpandedToggle.test.js
PASS tests/jest/components/default/ZReference.test.js
PASS tests/jest/mixins/zobjectMixin.test.js
PASS tests/jest/views/FunctionViewer.test.js
PASS tests/jest/components/base/Pagination.test.js
PASS tests/jest/components/visualeditor/fields/FunctionInputLanguage.test.js
PASS tests/jest/store/stores/listItems.test.js
PASS tests/jest/store/stores/wikidata/properties.test.js
PASS tests/jest/components/visualeditor/ExpandableDescription.test.js
PASS tests/jest/store/stores/functionCall.test.js
PASS tests/jest/utils/zobjectUtils.test.js
PASS tests/jest/components/default/wikidata/Item.test.js
PASS tests/jest/store/stores/zfunction.test.js
PASS tests/jest/components/widgets/publish/LeaveEditorDialog.test.js
PASS tests/jest/store/stores/wikidata/items.test.js
PASS tests/jest/components/function/editor/FunctionEditor.test.js
PASS tests/jest/components/function/editor/FunctionEditorInputs.test.js
PASS tests/jest/components/visualeditor/FunctionSelect.test.js
PASS tests/jest/components/default/wikidata/Property.test.js
PASS tests/jest/components/default/wikidata/Enum.test.js
PASS tests/jest/components/widgets/function-report/FunctionReportItem.test.js
PASS tests/jest/components/base/TypeSelector.test.js
PASS tests/jest/store/stores/testResults.test.js
PASS tests/jest/components/widgets/publish/Publish.test.js
PASS tests/jest/components/base/CodeEditor.test.js
PASS tests/jest/components/default/ZFunctionCall.test.js
PASS tests/jest/mixins/clipboardMixin.test.js
PASS tests/jest/components/visualeditor/fields/FunctionInputEnum.test.js
PASS tests/jest/components/function/editor/FunctionEditorDescription.test.js
PASS tests/jest/store/stores/visualeditor.test.js
PASS tests/jest/components/default/ZTypedListType.test.js
PASS tests/jest/store/index.test.js
PASS tests/jest/components/function/editor/FunctionEditorLanguage.test.js
PASS tests/jest/store/stores/currentPage.test.js
PASS tests/jest/components/base/SafeMessage.test.js
PASS tests/jest/utils/schemata.test.js
PASS tests/jest/components/function/editor/FunctionEditorAliases.test.js
PASS tests/jest/components/default/ZTypedListItems.test.js
PASS tests/jest/mixins/pageTitleMixin.test.js
PASS tests/jest/utils/scrollUtils.test.js
PASS tests/jest/components/default/ZTypedList.test.js
PASS tests/jest/store/stores/programmingLanguages.test.js
PASS tests/jest/components/visualeditor/FunctionInputField.test.js
PASS tests/jest/utils/wikidataUtils.test.js
PASS tests/jest/utils/typeUtils.test.js
PASS tests/jest/store/stores/user.test.js
PASS tests/jest/components/visualeditor/FunctionCallSetup.test.js
PASS tests/jest/utils/miscUtils.test.js
PASS tests/jest/components/base/ClipboardManager.test.js
PASS tests/jest/components/visualeditor/fields/FunctionInputString.test.js
PASS tests/jest/components/base/LocalizedLabel.test.js
PASS tests/jest/components/default/ZArgumentReference.test.js
PASS tests/jest/components/function/editor/FunctionEditorInputsItem.test.js
PASS tests/jest/store/stores/languages.test.js
PASS tests/jest/components/default/ZHTMLFragment.test.js
PASS tests/jest/components/default/wikidata/ReferenceSelector.test.js
PASS tests/jest/components/function/editor/FunctionEditorOutput.test.js
PASS tests/jest/components/default/ZBoolean.test.js
PASS tests/jest/mixins/errorMixin.test.js
PASS tests/jest/mixins/eventLogMixin.test.js
PASS tests/jest/components/default/ZMonolingualString.test.js
PASS tests/jest/components/function/editor/FunctionEditorName.test.js
PASS tests/jest/components/function/editor/FunctionEditorLanguageBlock.test.js
PASS tests/jest/utils/urlUtils.test.js
PASS tests/jest/components/default/ZString.test.js
PASS tests/jest/components/base/TypeToString.test.js
PASS tests/jest/store/classes/ErrorData.test.js
PASS tests/jest/utils/errorUtils.test.js
Jest: "./resources/ext.wikilambda.app/" coverage threshold for statements (95%) not met: 94.93%
Jest: "./resources/ext.wikilambda.app/" coverage threshold for branches (85%) not met: 83.38%
Jest: "./resources/ext.wikilambda.app/" coverage threshold for lines (95%) not met: 94.93%
Jest: "./resources/ext.wikilambda.app/utils" coverage threshold for statements (88%) not met: 83.1%
Jest: "./resources/ext.wikilambda.app/utils" coverage threshold for branches (82%) not met: 74.8%
Jest: "./resources/ext.wikilambda.app/utils" coverage threshold for lines (88%) not met: 83.1%
Jest: "./resources/ext.wikilambda.app/store" coverage threshold for statements (94%) not met: 93.52%
Jest: "./resources/ext.wikilambda.app/store" coverage threshold for branches (84%) not met: 83.93%
Jest: "./resources/ext.wikilambda.app/store" coverage threshold for lines (94%) not met: 93.52%

Test Suites: 126 passed, 126 total
Tests:       1 skipped, 1931 passed, 1932 total
Snapshots:   0 total
Time:        76.906 s
Ran all test suites.
--- stdout ---
----------------------------------------------------------|---------|----------|---------|---------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
File                                                      | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s                                                                                                                                                                                                                       
----------------------------------------------------------|---------|----------|---------|---------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
All files                                                 |   94.96 |    83.47 |   96.05 |   94.96 |                                                                                                                                                                                                                                         
 ext.wikilambda.app/components                            |   97.74 |      100 |     100 |   97.74 |                                                                                                                                                                                                                                         
  App.vue                                                 |   97.74 |      100 |     100 |   97.74 | 93,97,117                                                                                                                                                                                                                               
 ext.wikilambda.app/components/base                       |   95.72 |    82.25 |   95.87 |   95.72 |                                                                                                                                                                                                                                         
  ClipboardManager.vue                                    |   86.66 |    77.77 |     100 |   86.66 | 67-68,70-79                                                                                                                                                                                                                             
  CodeEditor.vue                                          |   96.54 |    92.59 |     100 |   96.54 | 90-92,263-270                                                                                                                                                                                                                           
  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.82 |    82.69 |     100 |   91.82 | 251-263,267-280,414,416-422                                                                                                                                                                                                             
  Pagination.vue                                          |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                         
  SafeMessage.vue                                         |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                         
  StatusIcon.vue                                          |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                         
  TypeSelector.vue                                        |   92.51 |       50 |   85.71 |   92.51 | 163-167,179-181,185-188,202-206                                                                                                                                                                                                         
  TypeToString.vue                                        |   99.34 |    94.11 |     100 |   99.34 | 81                                                                                                                                                                                                                                      
  WidgetBase.vue                                          |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                         
  ZObjectSelector.vue                                     |   93.54 |    73.75 |   88.88 |   93.54 | 187-188,191-192,196-197,200-201,208-209,243-244,325,329,374-375,398,406-411,447-448,477-479,503-505,520-521,555-556,585-587,604-606,648-649,690-692                                                                                     
 ext.wikilambda.app/components/function/editor            |   99.48 |    90.78 |     100 |   99.48 |                                                                                                                                                                                                                                         
  FunctionEditor.vue                                      |   97.93 |    80.55 |     100 |   97.93 | 126,130-132,259-260                                                                                                                                                                                                                     
  FunctionEditorAliases.vue                               |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                         
  FunctionEditorDescription.vue                           |   98.88 |    81.25 |     100 |   98.88 | 139-140                                                                                                                                                                                                                                 
  FunctionEditorField.vue                                 |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                         
  FunctionEditorInputs.vue                                |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                         
  FunctionEditorInputsItem.vue                            |     100 |    84.61 |     100 |     100 | 222,231                                                                                                                                                                                                                                 
  FunctionEditorLanguage.vue                              |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                         
  FunctionEditorLanguageBlock.vue                         |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                         
  FunctionEditorName.vue                                  |   98.94 |    94.44 |     100 |   98.94 | 147-148                                                                                                                                                                                                                                 
  FunctionEditorOutput.vue                                |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                         
 ext.wikilambda.app/components/function/viewer            |   98.73 |    96.06 |   97.95 |   98.73 |                                                                                                                                                                                                                                         
  FunctionTesterTable.vue                                 |      95 |    85.71 |    87.5 |      95 | 91-92,109,159-164                                                                                                                                                                                                                       
  FunctionViewerDetails.vue                               |   99.28 |    97.97 |     100 |   99.28 | 225-226,551,570,588                                                                                                                                                                                                                     
  FunctionViewerDetailsTable.vue                          |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                         
 ext.wikilambda.app/components/types                      |   95.96 |    80.51 |    96.8 |   95.96 |                                                                                                                                                                                                                                         
  ZArgumentReference.vue                                  |   97.29 |    72.72 |     100 |   97.29 | 165-169                                                                                                                                                                                                                                 
  ZBoolean.vue                                            |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                         
  ZCode.vue                                               |   94.73 |    78.26 |     100 |   94.73 | 197-200,336,338,384-395,462-469                                                                                                                                                                                                         
  ZFunctionCall.vue                                       |     100 |       75 |     100 |     100 | 78                                                                                                                                                                                                                                      
  ZHTMLFragment.vue                                       |     100 |       80 |     100 |     100 | 115                                                                                                                                                                                                                                     
  ZImplementation.vue                                     |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                         
  ZMonolingualString.vue                                  |     100 |     92.3 |     100 |     100 | 145                                                                                                                                                                                                                                     
  ZMultilingualString.vue                                 |   99.34 |       92 |     100 |   99.34 | 337-338,360                                                                                                                                                                                                                             
  ZMultilingualStringDialog.vue                           |    99.2 |    92.98 |   94.73 |    99.2 | 409-410,413-414                                                                                                                                                                                                                         
  ZObjectKeyValue.vue                                     |   87.89 |    67.56 |     100 |   87.89 | 231-237,241-242,271-272,292-293,296-297,358-363,369-372,378-387,467-468,474,476-477,481-495,499-501,563-565,588-589,594-597,605-607,626-627,635,637-639,644,646-649,671-674,684,686-690,714-715,722-723,822-823,825-826,828-829,831-832 
  ZObjectKeyValueSet.vue                                  |     100 |       60 |     100 |     100 | 70,78                                                                                                                                                                                                                                   
  ZObjectStringRenderer.vue                               |   95.43 |    94.54 |   80.76 |   95.43 | 270,299-300,356-358,369-370,426-431,497,523-524,550-551,558-565                                                                                                                                                                         
  ZObjectToString.vue                                     |   91.45 |     67.6 |   96.29 |   91.45 | 200-201,208-209,212-213,218-219,300-303,314-315,317-318,320-321,333-335,351-353,391-394,409-411,415-416,421-422,521-530,538,540,542,573-576,581-582                                                                                     
  ZReference.vue                                          |   98.63 |    68.18 |     100 |   98.63 | 178,180-181                                                                                                                                                                                                                             
  ZString.vue                                             |     100 |    66.66 |     100 |     100 | 88                                                                                                                                                                                                                                      
  ZTester.vue                                             |   99.25 |    95.23 |     100 |   99.25 | 197-198                                                                                                                                                                                                                                 
  ZTypedList.vue                                          |     100 |    85.71 |     100 |     100 | 95                                                                                                                                                                                                                                      
  ZTypedListItems.vue                                     |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                         
  ZTypedListType.vue                                      |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                         
 ext.wikilambda.app/components/types/wikidata             |   97.12 |    85.23 |   90.36 |   97.12 |                                                                                                                                                                                                                                         
  EntitySelector.vue                                      |   93.33 |       80 |   81.81 |   93.33 | 113-114,139-141,153-155,184-190,228-229                                                                                                                                                                                                 
  Enum.vue                                                |   97.75 |    81.81 |     100 |   97.75 | 191-195                                                                                                                                                                                                                                 
  Item.vue                                                |     100 |    92.85 |     100 |     100 | 146                                                                                                                                                                                                                                     
  Lexeme.vue                                              |   97.38 |    76.92 |     100 |   97.38 | 140-142,160-161                                                                                                                                                                                                                         
  LexemeForm.vue                                          |   97.43 |    81.81 |    87.5 |   97.43 | 155-159                                                                                                                                                                                                                                 
  LexemeSense.vue                                         |   95.64 |    88.57 |   78.94 |   95.64 | 184,225,242-246,274-275,288-290,322-326                                                                                                                                                                                                 
  Property.vue                                            |   98.94 |    81.81 |    87.5 |   98.94 | 154-155                                                                                                                                                                                                                                 
  ReferenceSelector.vue                                   |     100 |    93.75 |     100 |     100 | 119                                                                                                                                                                                                                                     
  wikidataIconSvg.js                                      |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                         
 ext.wikilambda.app/components/visualeditor               |   98.09 |    96.57 |    87.5 |   98.09 |                                                                                                                                                                                                                                         
  ExpandableDescription.vue                               |   98.62 |      100 |   83.33 |   98.62 | 91-92                                                                                                                                                                                                                                   
  FunctionCallSetup.vue                                   |   95.52 |      100 |   66.66 |   95.52 | 99,106,112-115                                                                                                                                                                                                                          
  FunctionInputField.vue                                  |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                         
  FunctionInputPreview.vue                                |   98.11 |    95.08 |   85.18 |   98.11 | 148-149,393-394,415,503-507                                                                                                                                                                                                             
  FunctionInputSetup.vue                                  |   98.88 |      100 |      95 |   98.88 | 116-119                                                                                                                                                                                                                                 
  FunctionSelect.vue                                      |   95.97 |    88.88 |      90 |   95.97 | 189-190,200-201,216-218,237-240                                                                                                                                                                                                         
  FunctionSelectItem.vue                                  |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                         
  wikifunctionsIconSvg.js                                 |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                         
 ext.wikilambda.app/components/visualeditor/fields        |   96.08 |    90.17 |   94.54 |   96.08 |                                                                                                                                                                                                                                         
  FunctionInputEnum.vue                                   |   98.48 |    95.83 |    92.3 |   98.48 | 93,165-166                                                                                                                                                                                                                              
  FunctionInputLanguage.vue                               |   98.78 |     90.9 |     100 |   98.78 | 101-102                                                                                                                                                                                                                                 
  FunctionInputParser.vue                                 |   91.51 |     87.8 |   90.47 |   91.51 | 107-109,192-204,215-216,256-257,336-342,354-358                                                                                                                                                                                         
  FunctionInputString.vue                                 |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                         
  FunctionInputWikidata.vue                               |      99 |    86.95 |     100 |      99 | 135-136                                                                                                                                                                                                                                 
 ext.wikilambda.app/components/widgets/about              |   94.84 |    83.33 |      95 |   94.84 |                                                                                                                                                                                                                                         
  About.vue                                               |   93.87 |    85.93 |   92.85 |   93.87 | 238,280-283,303,312-339,348,402-403                                                                                                                                                                                                     
  AboutLanguageBlock.vue                                  |   95.59 |    84.21 |     100 |   95.59 | 332-338,350-351,354-360,372-373,376-382,499-500                                                                                                                                                                                         
  AboutLanguagesDialog.vue                                |   95.15 |    76.66 |   92.85 |   95.15 | 252-254,266-268,283-284,316-317,319-320,322-323,325-326,332-334                                                                                                                                                                         
 ext.wikilambda.app/components/widgets/function-evaluator |   97.35 |    83.62 |   95.58 |   97.35 |                                                                                                                                                                                                                                         
  EvaluationResult.vue                                    |   96.71 |    71.42 |   71.42 |   96.71 | 112,121-122,134-135                                                                                                                                                                                                                     
  FunctionEvaluator.vue                                   |     100 |    91.48 |     100 |     100 | 440,469-471                                                                                                                                                                                                                             
  FunctionMetadataDialog.vue                              |   95.87 |    81.03 |   97.36 |   95.87 | 242-243,317-318,324-325,419-420,440,456-457,586-588,602-603,670-671,698,731,783,800,830-832,856-860,865-869,874-878                                                                                                                     
  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    |   92.41 |    58.73 |      90 |   92.41 |                                                                                                                                                                                                                                         
  FunctionReport.vue                                      |   92.92 |    66.66 |    90.9 |   92.92 | 184-185,190-195,207-208,211,229-231,289-291,297-299,327-333,355-356                                                                                                                                                                     
  FunctionReportItem.vue                                  |   91.52 |    38.88 |    87.5 |   91.52 | 126-127,129-130,132-133,135-136,149,151,153,163-164,166-167,182-186                                                                                                                                                                     
 ext.wikilambda.app/components/widgets/publish            |   97.86 |    81.08 |   94.73 |   97.86 |                                                                                                                                                                                                                                         
  LeaveEditorDialog.vue                                   |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                         
  Publish.vue                                             |   94.31 |    77.14 |    87.5 |   94.31 | 105-112,122-123,208,212-214,232-234                                                                                                                                                                                                     
  PublishDialog.vue                                       |     100 |    82.35 |     100 |     100 | 145,242,304,353-355                                                                                                                                                                                                                     
 ext.wikilambda.app/composables                           |     100 |    84.61 |     100 |     100 |                                                                                                                                                                                                                                         
  useBreakpoints.js                                       |     100 |    84.61 |     100 |     100 | 11,26                                                                                                                                                                                                                                   
 ext.wikilambda.app/mixins                                |   98.49 |    87.95 |     100 |   98.49 |                                                                                                                                                                                                                                         
  clipboardMixin.js                                       |   98.73 |     92.3 |     100 |   98.73 | 51                                                                                                                                                                                                                                      
  errorMixin.js                                           |     100 |       90 |     100 |     100 | 68                                                                                                                                                                                                                                      
  eventLogMixin.js                                        |   97.43 |    93.33 |     100 |   97.43 | 45-46                                                                                                                                                                                                                                   
  metadataMixin.js                                        |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                         
  pageTitleMixin.js                                       |     100 |    93.33 |     100 |     100 | 71                                                                                                                                                                                                                                      
  scrollMixin.js                                          |   98.54 |    93.33 |     100 |   98.54 | 104-105                                                                                                                                                                                                                                 
  typeMixin.js                                            |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                         
  zobjectMixin.js                                         |   94.87 |       50 |     100 |   94.87 | 51-52,66-67,80-81                                                                                                                                                                                                                       
 ext.wikilambda.app/store                                 |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                         
  index.js                                                |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                         
 ext.wikilambda.app/store/classes                         |   95.56 |    74.54 |     100 |   95.56 |                                                                                                                                                                                                                                         
  ApiError.js                                             |   92.41 |    68.96 |     100 |   92.41 | 40-41,46-50,151-153,159-160,200-203                                                                                                                                                                                                     
  ErrorData.js                                            |   97.61 |    66.66 |     100 |   97.61 | 68-69                                                                                                                                                                                                                                   
  LabelData.js                                            |     100 |    88.23 |     100 |     100 | 45,76                                                                                                                                                                                                                                   
 ext.wikilambda.app/store/stores                          |   94.23 |    84.51 |   97.33 |   94.23 |                                                                                                                                                                                                                                         
  errors.js                                               |   98.72 |    93.54 |   92.85 |   98.72 | 52,223-224                                                                                                                                                                                                                              
  functionCall.js                                         |   97.22 |     87.5 |     100 |   97.22 | 31-32                                                                                                                                                                                                                                   
  languages.js                                            |   92.39 |    76.92 |     100 |   92.39 | 26-29,43-45                                                                                                                                                                                                                             
  library.js                                              |   94.35 |    82.44 |   98.24 |   94.35 | 76,113-114,138-139,143,168-169,178-179,188-189,195-198,237-238,240-241,273,431-432,466,507-508,514-515,519,540-541,552-555,559,580-581,584-585,650-655,683-685,890,1038-1039,1070-1074,1088-1089,1115-1118,1120-1123,1169               
  listItems.js                                            |   96.63 |    91.66 |     100 |   96.63 | 85-88                                                                                                                                                                                                                                   
  programmingLanguages.js                                 |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                         
  router.js                                               |   87.17 |    76.66 |     100 |   87.17 | 95-96,108-126,144-147                                                                                                                                                                                                                   
  testResults.js                                          |   90.14 |    69.56 |     100 |   90.14 | 43-44,48-49,129-142,209-216,224-225,234-235,276-278                                                                                                                                                                                     
  user.js                                                 |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                         
  visualeditor.js                                         |   96.44 |    95.45 |      85 |   96.44 | 62,72,95-96,149-153                                                                                                                                                                                                                     
  zfunction.js                                            |   98.96 |    92.45 |     100 |   98.96 | 36-37,182-183                                                                                                                                                                                                                           
  zobject.js                                              |   91.14 |       82 |   97.72 |   91.14 | 69-70,88-89,104-105,111,113,127-128,152-153,165-166,204-212,235-236,240-241,312-313,343-344,406-407,471-472,475-476,622-623,663-664,800-801,968-974,1087-1093,1097-1103,1115-1118,1120-1156,1173-1174                                   
  ztype.js                                                |   99.38 |    97.29 |     100 |   99.38 | 274-275                                                                                                                                                                                                                                 
 ext.wikilambda.app/store/stores/wikidata                 |   95.13 |    91.32 |    97.1 |   95.13 |                                                                                                                                                                                                                                         
  entities.js                                             |   92.97 |     87.5 |     100 |   92.97 | 47,87,98,143-155,273-278                                                                                                                                                                                                                
  items.js                                                |     100 |    93.54 |     100 |     100 | 94,115                                                                                                                                                                                                                                  
  lexemes.js                                              |    93.2 |    93.81 |   93.75 |    93.2 | 95-115,240-241,368,452-454,464-467,478-479                                                                                                                                                                                              
  properties.js                                           |     100 |    91.17 |     100 |     100 | 88,91,113                                                                                                                                                                                                                               
 ext.wikilambda.app/store/stores/zobject                  |   89.55 |    76.36 |     100 |   89.55 |                                                                                                                                                                                                                                         
  currentPage.js                                          |     100 |    86.36 |     100 |     100 | 73,119,121                                                                                                                                                                                                                              
  factory.js                                              |   95.26 |    78.81 |     100 |   95.26 | 74-93,99-100,104,108,110,114,116,120,124,130,134,136,142,190-196                                                                                                                                                                        
  submission.js                                           |   77.98 |       70 |     100 |   77.98 | 50-51,60-62,71-72,82-88,120-129,132-141,152-167,176-183,192-195,258-262,266-279,287-288,292-301,309-310,327-328,373-374,404-405,437-438,451-453,462-473,482-486,505-506,511-512,526-527,543-544,573-574                                 
 ext.wikilambda.app/utils                                 |    83.1 |     74.8 |   98.95 |    83.1 |                                                                                                                                                                                                                                         
  apiUtils.js                                             |   98.64 |    77.55 |     100 |   98.64 | 263-265,329-330                                                                                                                                                                                                                         
  errorUtils.js                                           |   98.13 |    90.47 |     100 |   98.13 | 90-91                                                                                                                                                                                                                                   
  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                                          |    97.5 |    93.75 |     100 |    97.5 | 132-135                                                                                                                                                                                                                                 
  typeUtils.js                                            |   57.51 |       60 |     100 |   57.51 | 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,680-687,689-696,716-717,719-722                                                 
  urlUtils.js                                             |   97.41 |    94.73 |     100 |   97.41 | 25-27                                                                                                                                                                                                                                   
  wikidataUtils.js                                        |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                         
  zobjectUtils.js                                         |   87.61 |    63.39 |     100 |   87.61 | 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,623-627,644-649,669-673,677-682,701-715                             
 ext.wikilambda.app/views                                 |   96.78 |       72 |   83.33 |   96.78 |                                                                                                                                                                                                                                         
  Default.vue                                             |   97.51 |    68.75 |   81.81 |   97.51 | 161,197,211-214                                                                                                                                                                                                                         
  FunctionEditor.vue                                      |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                         
  FunctionEvaluator.vue                                   |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                         
  FunctionViewer.vue                                      |   93.54 |    71.42 |      80 |   93.54 | 87-94                                                                                                                                                                                                                                   
 ext.wikilambda.languageselector/components               |   98.05 |    93.75 |   94.11 |   98.05 |                                                                                                                                                                                                                                         
  LanguageSelector.vue                                    |   98.05 |    93.75 |   94.11 |   98.05 | 229-230,268-269,290-291                                                                                                                                                                                                                 
----------------------------------------------------------|---------|----------|---------|---------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

--- end ---
Traceback (most recent call last):
  File "/venv/lib/python3.13/site-packages/runner/__init__.py", line 324, 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 2030, in main
    libup.run(args.repo, args.output, args.branch)
    ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/venv/lib/python3.13/site-packages/runner/__init__.py", line 1972, in run
    self.npm_audit_fix(new_npm_audit)
    ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^
  File "/venv/lib/python3.13/site-packages/runner/__init__.py", line 274, in npm_audit_fix
    self.npm_test()
    ~~~~~~~~~~~~~^^
  File "/venv/lib/python3.13/site-packages/runner/__init__.py", line 329, 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.
Source code is licensed under the AGPL.