mediawiki/extensions/CodeMirror: main (log #1821243)

sourcepatches

This run took 102 seconds.

$ date
--- stdout ---
Wed Mar 26 00:42:19 UTC 2025

--- end ---
$ git clone file:///srv/git/mediawiki-extensions-CodeMirror.git repo --depth=1 -b master
--- stderr ---
Cloning into 'repo'...
--- stdout ---

--- end ---
$ git config user.name libraryupgrader
--- stdout ---

--- end ---
$ git config user.email tools.libraryupgrader@tools.wmflabs.org
--- stdout ---

--- end ---
$ git submodule update --init
--- stdout ---

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

--- end ---
$ git show-ref refs/heads/master
--- stdout ---
c80af221157d0d2002fe4717173630893e6e89b0 refs/heads/master

--- end ---
$ /usr/bin/npm audit --json
--- stdout ---
{
  "auditReportVersion": 2,
  "vulnerabilities": {
    "@babel/helpers": {
      "name": "@babel/helpers",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        {
          "source": 1103026,
          "name": "@babel/helpers",
          "dependency": "@babel/helpers",
          "title": "Babel has inefficient RexExp complexity in generated code with .replace when transpiling named capturing groups",
          "url": "https://github.com/advisories/GHSA-968p-4wvh-cqc8",
          "severity": "moderate",
          "cwe": [
            "CWE-1333"
          ],
          "cvss": {
            "score": 6.2,
            "vectorString": "CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
          },
          "range": "<7.26.10"
        }
      ],
      "effects": [],
      "range": "<7.26.10",
      "nodes": [
        "node_modules/@babel/helpers"
      ],
      "fixAvailable": true
    },
    "@wdio/cli": {
      "name": "@wdio/cli",
      "severity": "high",
      "isDirect": true,
      "via": [
        "webdriverio",
        "yarn-install"
      ],
      "effects": [
        "@wdio/junit-reporter",
        "@wdio/local-runner",
        "@wdio/spec-reporter"
      ],
      "range": "5.4.10 - 8.43.0",
      "nodes": [
        "node_modules/@wdio/cli"
      ],
      "fixAvailable": {
        "name": "@wdio/cli",
        "version": "9.12.1",
        "isSemVerMajor": true
      }
    },
    "@wdio/junit-reporter": {
      "name": "@wdio/junit-reporter",
      "severity": "high",
      "isDirect": true,
      "via": [
        "@wdio/cli"
      ],
      "effects": [],
      "range": "6.0.4 - 8.0.0-alpha.631",
      "nodes": [
        "node_modules/@wdio/junit-reporter"
      ],
      "fixAvailable": {
        "name": "@wdio/junit-reporter",
        "version": "9.11.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.43.0",
      "nodes": [
        "node_modules/@wdio/local-runner"
      ],
      "fixAvailable": {
        "name": "@wdio/local-runner",
        "version": "9.12.1",
        "isSemVerMajor": true
      }
    },
    "@wdio/runner": {
      "name": "@wdio/runner",
      "severity": "high",
      "isDirect": false,
      "via": [
        "webdriverio"
      ],
      "effects": [
        "@wdio/local-runner"
      ],
      "range": "7.16.5 - 8.43.0",
      "nodes": [
        "node_modules/@wdio/runner"
      ],
      "fixAvailable": {
        "name": "@wdio/local-runner",
        "version": "9.12.1",
        "isSemVerMajor": true
      }
    },
    "@wdio/spec-reporter": {
      "name": "@wdio/spec-reporter",
      "severity": "high",
      "isDirect": true,
      "via": [
        "@wdio/cli"
      ],
      "effects": [],
      "range": "6.0.4 - 8.0.0-alpha.631",
      "nodes": [
        "node_modules/@wdio/spec-reporter"
      ],
      "fixAvailable": {
        "name": "@wdio/spec-reporter",
        "version": "9.11.0",
        "isSemVerMajor": true
      }
    },
    "cross-spawn": {
      "name": "cross-spawn",
      "severity": "high",
      "isDirect": false,
      "via": [
        {
          "source": 1100562,
          "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.12.1",
        "isSemVerMajor": true
      }
    },
    "devtools": {
      "name": "devtools",
      "severity": "high",
      "isDirect": false,
      "via": [
        "puppeteer-core"
      ],
      "effects": [],
      "range": ">=7.16.5",
      "nodes": [
        "node_modules/devtools"
      ],
      "fixAvailable": 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": [
        "ws"
      ],
      "effects": [
        "devtools",
        "webdriverio"
      ],
      "range": "11.0.0 - 22.11.1",
      "nodes": [
        "node_modules/devtools/node_modules/puppeteer-core",
        "node_modules/puppeteer-core"
      ],
      "fixAvailable": {
        "name": "@wdio/cli",
        "version": "9.12.1",
        "isSemVerMajor": true
      }
    },
    "request": {
      "name": "request",
      "severity": "moderate",
      "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"
        },
        "tough-cookie"
      ],
      "effects": [
        "mwbot"
      ],
      "range": "*",
      "nodes": [
        "node_modules/request"
      ],
      "fixAvailable": false
    },
    "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.43.0",
      "nodes": [
        "node_modules/webdriverio"
      ],
      "fixAvailable": {
        "name": "@wdio/cli",
        "version": "9.12.1",
        "isSemVerMajor": true
      }
    },
    "ws": {
      "name": "ws",
      "severity": "high",
      "isDirect": false,
      "via": [
        {
          "source": 1098392,
          "name": "ws",
          "dependency": "ws",
          "title": "ws affected by a DoS when handling a request with many HTTP headers",
          "url": "https://github.com/advisories/GHSA-3h5v-q93c-6h6q",
          "severity": "high",
          "cwe": [
            "CWE-476"
          ],
          "cvss": {
            "score": 7.5,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
          },
          "range": ">=8.0.0 <8.17.1"
        }
      ],
      "effects": [
        "puppeteer-core"
      ],
      "range": "8.0.0 - 8.17.0",
      "nodes": [
        "node_modules/devtools/node_modules/ws",
        "node_modules/puppeteer-core/node_modules/ws"
      ],
      "fixAvailable": {
        "name": "@wdio/cli",
        "version": "9.12.1",
        "isSemVerMajor": true
      }
    },
    "yarn-install": {
      "name": "yarn-install",
      "severity": "high",
      "isDirect": false,
      "via": [
        "cross-spawn"
      ],
      "effects": [
        "@wdio/cli"
      ],
      "range": "*",
      "nodes": [
        "node_modules/yarn-install"
      ],
      "fixAvailable": {
        "name": "@wdio/cli",
        "version": "9.12.1",
        "isSemVerMajor": true
      }
    }
  },
  "metadata": {
    "vulnerabilities": {
      "info": 0,
      "low": 0,
      "moderate": 5,
      "high": 11,
      "critical": 0,
      "total": 16
    },
    "dependencies": {
      "prod": 1,
      "dev": 1303,
      "optional": 18,
      "peer": 1,
      "peerOptional": 0,
      "total": 1303
    }
  }
}

--- 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: 38 installs, 0 updates, 0 removals
  - Locking composer/pcre (3.3.2)
  - Locking composer/semver (3.4.3)
  - Locking composer/spdx-licenses (1.5.8)
  - Locking composer/xdebug-handler (3.0.5)
  - Locking dealerdirect/phpcodesniffer-composer-installer (v1.0.0)
  - Locking doctrine/deprecations (1.1.4)
  - Locking felixfbecker/advanced-json-rpc (v3.2.1)
  - Locking mediawiki/mediawiki-codesniffer (v46.0.0)
  - Locking mediawiki/mediawiki-phan-config (0.15.0)
  - Locking mediawiki/minus-x (1.1.3)
  - Locking mediawiki/phan-taint-check-plugin (6.1.0)
  - Locking microsoft/tolerant-php-parser (v0.1.2)
  - Locking netresearch/jsonmapper (v4.5.0)
  - Locking phan/phan (5.4.5)
  - Locking php-parallel-lint/php-console-color (v1.0.1)
  - Locking php-parallel-lint/php-console-highlighter (v1.0.0)
  - Locking php-parallel-lint/php-parallel-lint (v1.4.0)
  - Locking phpcsstandards/phpcsextra (1.2.1)
  - Locking phpcsstandards/phpcsutils (1.0.12)
  - Locking phpdocumentor/reflection-common (2.2.0)
  - Locking phpdocumentor/reflection-docblock (5.6.1)
  - Locking phpdocumentor/type-resolver (1.10.0)
  - Locking phpstan/phpdoc-parser (2.1.0)
  - Locking psr/container (2.0.2)
  - Locking psr/log (3.0.2)
  - Locking sabre/event (5.1.7)
  - Locking squizlabs/php_codesniffer (3.11.3)
  - Locking symfony/console (v7.2.1)
  - Locking symfony/deprecation-contracts (v3.5.1)
  - Locking symfony/polyfill-ctype (v1.31.0)
  - Locking symfony/polyfill-intl-grapheme (v1.31.0)
  - Locking symfony/polyfill-intl-normalizer (v1.31.0)
  - Locking symfony/polyfill-mbstring (v1.31.0)
  - Locking symfony/polyfill-php80 (v1.31.0)
  - Locking symfony/service-contracts (v3.5.1)
  - Locking symfony/string (v7.2.0)
  - Locking tysonandre/var_representation_polyfill (0.1.3)
  - Locking webmozart/assert (1.11.0)
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 38 installs, 0 updates, 0 removals
    0 [>---------------------------]    0 [->--------------------------]
  - Installing squizlabs/php_codesniffer (3.11.3): Extracting archive
  - Installing dealerdirect/phpcodesniffer-composer-installer (v1.0.0): Extracting archive
  - Installing composer/pcre (3.3.2): Extracting archive
  - Installing symfony/polyfill-php80 (v1.31.0): Extracting archive
  - Installing phpcsstandards/phpcsutils (1.0.12): Extracting archive
  - Installing phpcsstandards/phpcsextra (1.2.1): Extracting archive
  - Installing symfony/polyfill-mbstring (v1.31.0): Extracting archive
  - Installing composer/spdx-licenses (1.5.8): Extracting archive
  - Installing composer/semver (3.4.3): Extracting archive
  - Installing mediawiki/mediawiki-codesniffer (v46.0.0): Extracting archive
  - Installing tysonandre/var_representation_polyfill (0.1.3): Extracting archive
  - Installing symfony/polyfill-intl-normalizer (v1.31.0): Extracting archive
  - Installing symfony/polyfill-intl-grapheme (v1.31.0): Extracting archive
  - Installing symfony/polyfill-ctype (v1.31.0): Extracting archive
  - Installing symfony/string (v7.2.0): Extracting archive
  - Installing symfony/deprecation-contracts (v3.5.1): Extracting archive
  - Installing psr/container (2.0.2): Extracting archive
  - Installing symfony/service-contracts (v3.5.1): Extracting archive
  - Installing symfony/console (v7.2.1): Extracting archive
  - Installing 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.1.0): Extracting archive
  - Installing phpdocumentor/reflection-common (2.2.0): Extracting archive
  - Installing doctrine/deprecations (1.1.4): Extracting archive
  - Installing phpdocumentor/type-resolver (1.10.0): Extracting archive
  - Installing phpdocumentor/reflection-docblock (5.6.1): 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.4.5): Extracting archive
  - Installing mediawiki/phan-taint-check-plugin (6.1.0): Extracting archive
  - Installing mediawiki/mediawiki-phan-config (0.15.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
  0/36 [>---------------------------]   0%
 20/36 [===============>------------]  55%
 35/36 [===========================>]  97%
 36/36 [============================] 100%
1 package suggestions were added by new dependencies, use `composer suggest` to see details.
Generating autoload files
16 packages you are using are looking for funding.
Use the `composer fund` command to find out more!
--- stdout ---
PHP CodeSniffer Config installed_paths set to ../../mediawiki/mediawiki-codesniffer,../../phpcsstandards/phpcsextra,../../phpcsstandards/phpcsutils

--- end ---
Upgrading n:stylelint-config-wikimedia from 0.17.2 -> 0.18.0
$ /usr/bin/npm install
--- stderr ---
npm WARN deprecated rimraf@3.0.2: Rimraf versions prior to v4 are no longer supported
npm WARN deprecated glob@8.1.0: 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
--- stdout ---

added 1286 packages, and audited 1287 packages in 32s

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

16 vulnerabilities (5 moderate, 11 high)

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 ---
$ ./node_modules/.bin/stylelint resources/codemirror.mediawiki.colorblind.less resources/lib/codemirror/lib/codemirror.css resources/codemirror.wikieditor.less resources/codemirror.mixins.less resources/legacy/codemirror-fixes.less resources/codemirror.keymap.less resources/ve-cm/ve.ui.CodeMirror.v6.less resources/legacy/modules/ve-cm/ve.ui.CodeMirror.less resources/codemirror.less resources/codemirror.mediawiki.less resources/legacy/ext.CodeMirror.less --fix
--- stderr ---
resources/lib/codemirror/lib/codemirror.css
    7:10   ✖  Unexpected named color "black"                                                                                                                       color-named
   22:21   ✖  Unexpected named color "white"                                                                                                                       color-named
   32:25   ✖  Unexpected empty block                                                                                                                               block-no-empty
   32:27   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
   41:35   ✖  Unexpected named color "black"                                                                                                                       color-named
   41:43   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
   42:49   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
   47:26   ✖  Unexpected named color "black"                                                                                                                       color-named
   48:17   ✖  Unexpected value "none" for property "border-right"                                                                                                  declaration-property-value-disallowed-list
   53:26   ✖  Unexpected named color "silver"                                                                                                                      color-named
   57:13   ✖  Unexpected !important                                                                                                                                declaration-no-important
   65:85   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
   68:91   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
   69:45   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
   71:6    ✖  Unexpected empty block                                                                                                                               block-no-empty
   71:8    ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
   72:41   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
   73:8    ✖  Unexpected empty block                                                                                                                               block-no-empty
   76:6    ✖  Unexpected empty block                                                                                                                               block-no-empty
   76:8    ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
   77:41   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
   78:8    ✖  Unexpected empty block                                                                                                                               block-no-empty
   81:6    ✖  Unexpected empty block                                                                                                                               block-no-empty
   81:8    ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
   82:41   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
   83:8    ✖  Unexpected empty block                                                                                                                               block-no-empty
   87:42   ✖  Unexpected empty block                                                                                                                               block-no-empty
   87:44   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
   89:61   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  104:34   ✖  Unexpected named color "blue"                                                                                                                        color-named
  104:40   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  105:39   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  106:28   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  107:28   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  108:1    ✖  Expected selector ".cm-header" to come before selector ".cm-s-default .cm-header"                                                                    no-descending-specificity
  108:44   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  109:29   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  110:39   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  111:51   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  113:41   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  114:38   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  115:40   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  116:37   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  120:28   ✖  Unexpected empty block                                                                                                                               block-no-empty
  120:30   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  121:44   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  122:68   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  123:41   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  124:40   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  125:42   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  126:38   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  127:43   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  128:41   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  129:41   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  130:37   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  131:43   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  132:36   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  133:38   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  135:39   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  136:31   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  138:52   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  142:62   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  143:65   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  144:63   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  145:57   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  152:1    ✖  Unexpected duplicate selector ".CodeMirror", first used at line 3                                                                                    no-duplicate-selectors
  155:15   ✖  Unexpected named color "white"                                                                                                                       color-named
  159:20   ✖  Unexpected !important                                                                                                                                declaration-no-important
  165:12   ✖  Unexpected value "none" for property "outline"                                                                                                       declaration-property-value-disallowed-list
  181:12   ✖  Unexpected value "none" for property "outline"                                                                                                       declaration-property-value-disallowed-list
  200:1    ✖  Unexpected duplicate selector ".CodeMirror-gutters", first used at line 27                                                                           no-duplicate-selectors
  215:20   ✖  Unexpected !important                                                                                                                                declaration-no-important
  216:11   ✖  Unexpected value "none" for property "border"                                                                                                        declaration-property-value-disallowed-list
  216:16   ✖  Unexpected !important                                                                                                                                declaration-no-important
  228:73   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  229:78   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  231:1    ✖  Unexpected duplicate selector ".CodeMirror-lines", first used at line 13                                                                             no-duplicate-selectors
  235:1    ✖  Unexpected duplicate selector ".CodeMirror pre.CodeMirror-line, .CodeMirror pre.CodeMirror-line-like", first used at line 16                         no-duplicate-selectors
  274:20   ✖  Unexpected empty block                                                                                                                               block-no-empty
  274:22   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  276:40   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  279:12   ✖  Unexpected value "none" for property "outline"                                                                                                       declaration-property-value-disallowed-list
  300:1    ✖  Expected selector ".CodeMirror-cursor" to come before selector ".cm-fat-cursor .CodeMirror-cursor"                                                   no-descending-specificity
  300:1    ✖  Unexpected duplicate selector ".CodeMirror-cursor", first used at line 46                                                                            no-duplicate-selectors
  304:46   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  306:1    ✖  Expected selector "div.CodeMirror-cursors" to come before selector ".cm-fat-cursor div.CodeMirror-cursors"                                           no-descending-specificity
  319:46   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  320:66   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  321:45   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  322:1    ✖  Expected selector ".CodeMirror-line::selection" to come before selector ".cm-fat-cursor .CodeMirror-line::selection"                                 no-descending-specificity
  322:31   ✖  Expected selector ".CodeMirror-line > span::selection" to come before selector ".cm-fat-cursor .CodeMirror-line > span::selection"                   no-descending-specificity
  322:68   ✖  Expected selector ".CodeMirror-line > span > span::selection" to come before selector ".cm-fat-cursor .CodeMirror-line > span::selection"            no-descending-specificity
  322:132  ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  323:1    ✖  Expected selector ".CodeMirror-line::-moz-selection" to come before selector ".cm-fat-cursor .CodeMirror-line::-moz-selection"                       no-descending-specificity
  323:36   ✖  Expected selector ".CodeMirror-line > span::-moz-selection" to come before selector ".cm-fat-cursor .CodeMirror-line > span::-moz-selection"         no-descending-specificity
  323:78   ✖  Expected selector ".CodeMirror-line > span > span::-moz-selection" to come before selector ".cm-fat-cursor .CodeMirror-line > span::-moz-selection"  no-descending-specificity
  323:147  ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  331:42   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after
  341:41   ✖  Expected single space after "}" of a single-line block                                                                                               @stylistic/block-closing-brace-space-after

✖ 99 problems (99 errors, 0 warnings)
--- stdout ---

--- end ---
$ ./node_modules/.bin/stylelint resources/codemirror.mediawiki.colorblind.less resources/lib/codemirror/lib/codemirror.css resources/codemirror.wikieditor.less resources/codemirror.mixins.less resources/legacy/codemirror-fixes.less resources/codemirror.keymap.less resources/ve-cm/ve.ui.CodeMirror.v6.less resources/legacy/modules/ve-cm/ve.ui.CodeMirror.less resources/codemirror.less resources/codemirror.mediawiki.less resources/legacy/ext.CodeMirror.less -f json
--- stdout ---
[{"source":"/src/repo/resources/codemirror.mediawiki.colorblind.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/lib/codemirror/lib/codemirror.css","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":true,"warnings":[{"line":22,"column":2,"endLine":22,"endColumn":3,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 0 tabs (@stylistic/indentation)"},{"line":43,"column":2,"endLine":43,"endColumn":15,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":45,"column":2,"endLine":45,"endColumn":14,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":69,"column":2,"endLine":69,"endColumn":26,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":73,"column":2,"endLine":73,"endColumn":26,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":75,"column":2,"endLine":75,"endColumn":27,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":80,"column":2,"endLine":80,"endColumn":32,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 2 tabs (@stylistic/indentation)"},{"line":87,"column":2,"endLine":87,"endColumn":32,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 2 tabs (@stylistic/indentation)"},{"line":94,"column":2,"endLine":94,"endColumn":32,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 2 tabs (@stylistic/indentation)"},{"line":102,"column":2,"endLine":102,"endColumn":24,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":103,"column":2,"endLine":103,"endColumn":27,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":108,"column":2,"endLine":108,"endColumn":11,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":109,"column":2,"endLine":109,"endColumn":13,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":110,"column":2,"endLine":110,"endColumn":12,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":116,"column":2,"endLine":116,"endColumn":12,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":123,"column":1,"endLine":123,"endColumn":13,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":125,"column":1,"endLine":125,"endColumn":13,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":127,"column":1,"endLine":127,"endColumn":13,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":129,"column":1,"endLine":129,"endColumn":13,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":131,"column":2,"endLine":131,"endColumn":3,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 0 tabs (@stylistic/indentation)"},{"line":132,"column":1,"endLine":132,"endColumn":19,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":134,"column":1,"endLine":134,"endColumn":20,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":136,"column":1,"endLine":136,"endColumn":28,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":138,"column":1,"endLine":138,"endColumn":31,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":141,"column":1,"endLine":141,"endColumn":13,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":143,"column":1,"endLine":143,"endColumn":13,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":145,"column":1,"endLine":145,"endColumn":13,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":147,"column":1,"endLine":147,"endColumn":13,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":153,"column":1,"endLine":153,"endColumn":13,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":155,"column":2,"endLine":155,"endColumn":3,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 0 tabs (@stylistic/indentation)"},{"line":156,"column":1,"endLine":156,"endColumn":13,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":158,"column":1,"endLine":158,"endColumn":13,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":160,"column":1,"endLine":160,"endColumn":13,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":162,"column":1,"endLine":162,"endColumn":13,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":164,"column":1,"endLine":164,"endColumn":13,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":166,"column":1,"endLine":166,"endColumn":13,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":168,"column":1,"endLine":168,"endColumn":13,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":170,"column":1,"endLine":170,"endColumn":13,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":172,"column":1,"endLine":172,"endColumn":13,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":174,"column":1,"endLine":174,"endColumn":13,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":176,"column":1,"endLine":176,"endColumn":13,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":178,"column":1,"endLine":178,"endColumn":13,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":181,"column":1,"endLine":181,"endColumn":13,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":183,"column":1,"endLine":183,"endColumn":13,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":186,"column":2,"endLine":186,"endColumn":27,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":191,"column":1,"endLine":191,"endColumn":13,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":193,"column":1,"endLine":193,"endColumn":13,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":195,"column":2,"endLine":195,"endColumn":39,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":197,"column":1,"endLine":197,"endColumn":21,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":215,"column":2,"endLine":215,"endColumn":22,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":231,"column":2,"endLine":231,"endColumn":3,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 0 tabs (@stylistic/indentation)"},{"line":232,"column":2,"endLine":232,"endColumn":3,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 0 tabs (@stylistic/indentation)"},{"line":233,"column":2,"endLine":233,"endColumn":3,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 0 tabs (@stylistic/indentation)"},{"line":241,"column":2,"endLine":241,"endColumn":9,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":246,"column":2,"endLine":246,"endColumn":10,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":251,"column":2,"endLine":251,"endColumn":12,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":255,"column":2,"endLine":255,"endColumn":12,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":260,"column":2,"endLine":260,"endColumn":10,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":261,"column":2,"endLine":261,"endColumn":9,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":281,"column":2,"endLine":281,"endColumn":12,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":290,"column":2,"endLine":290,"endColumn":32,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":292,"column":2,"endLine":292,"endColumn":32,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":302,"column":2,"endLine":302,"endColumn":27,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":303,"column":2,"endLine":303,"endColumn":19,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":330,"column":2,"endLine":330,"endColumn":11,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":331,"column":2,"endLine":331,"endColumn":9,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":332,"column":2,"endLine":332,"endColumn":12,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":345,"column":2,"endLine":345,"endColumn":17,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":374,"column":2,"endLine":374,"endColumn":19,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":390,"column":2,"endLine":390,"endColumn":22,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":392,"column":2,"endLine":392,"endColumn":22,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":394,"column":2,"endLine":394,"endColumn":20,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":396,"column":2,"endLine":396,"endColumn":3,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 0 tabs (@stylistic/indentation)"},{"line":397,"column":2,"endLine":397,"endColumn":3,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 0 tabs (@stylistic/indentation)"},{"line":398,"column":2,"endLine":398,"endColumn":22,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":400,"column":2,"endLine":400,"endColumn":3,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 0 tabs (@stylistic/indentation)"},{"line":401,"column":2,"endLine":401,"endColumn":3,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 0 tabs (@stylistic/indentation)"},{"line":402,"column":2,"endLine":402,"endColumn":22,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":411,"column":2,"endLine":411,"endColumn":23,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":422,"column":2,"endLine":422,"endColumn":14,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":426,"column":2,"endLine":426,"endColumn":19,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 1 tab (@stylistic/indentation)"},{"line":43,"column":15,"endLine":43,"endColumn":16,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":45,"column":14,"endLine":45,"endColumn":15,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":69,"column":26,"endLine":69,"endColumn":27,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":73,"column":26,"endLine":73,"endColumn":27,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":75,"column":27,"endLine":75,"endColumn":28,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":80,"column":32,"endLine":80,"endColumn":33,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":87,"column":32,"endLine":87,"endColumn":33,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":94,"column":32,"endLine":94,"endColumn":33,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":103,"column":27,"endLine":103,"endColumn":28,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":123,"column":13,"endLine":123,"endColumn":14,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":125,"column":13,"endLine":125,"endColumn":14,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":127,"column":13,"endLine":127,"endColumn":14,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":129,"column":13,"endLine":129,"endColumn":14,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":132,"column":19,"endLine":132,"endColumn":20,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":134,"column":20,"endLine":134,"endColumn":21,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":136,"column":28,"endLine":136,"endColumn":29,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":138,"column":31,"endLine":138,"endColumn":32,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":141,"column":13,"endLine":141,"endColumn":14,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":143,"column":13,"endLine":143,"endColumn":14,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":145,"column":13,"endLine":145,"endColumn":14,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":147,"column":13,"endLine":147,"endColumn":14,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":153,"column":13,"endLine":153,"endColumn":14,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":156,"column":13,"endLine":156,"endColumn":14,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":158,"column":13,"endLine":158,"endColumn":14,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":160,"column":13,"endLine":160,"endColumn":14,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":162,"column":13,"endLine":162,"endColumn":14,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":164,"column":13,"endLine":164,"endColumn":14,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":166,"column":13,"endLine":166,"endColumn":14,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":168,"column":13,"endLine":168,"endColumn":14,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":170,"column":13,"endLine":170,"endColumn":14,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":172,"column":13,"endLine":172,"endColumn":14,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":174,"column":13,"endLine":174,"endColumn":14,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":176,"column":13,"endLine":176,"endColumn":14,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":178,"column":13,"endLine":178,"endColumn":14,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":181,"column":13,"endLine":181,"endColumn":14,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":183,"column":13,"endLine":183,"endColumn":14,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":186,"column":27,"endLine":186,"endColumn":28,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":191,"column":13,"endLine":191,"endColumn":14,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":193,"column":13,"endLine":193,"endColumn":14,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":195,"column":39,"endLine":195,"endColumn":40,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":197,"column":21,"endLine":197,"endColumn":22,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":290,"column":32,"endLine":290,"endColumn":33,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":292,"column":32,"endLine":292,"endColumn":33,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":345,"column":17,"endLine":345,"endColumn":18,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":374,"column":19,"endLine":374,"endColumn":20,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":390,"column":22,"endLine":390,"endColumn":23,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":392,"column":22,"endLine":392,"endColumn":23,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":394,"column":20,"endLine":394,"endColumn":21,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":398,"column":22,"endLine":398,"endColumn":23,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":402,"column":22,"endLine":402,"endColumn":23,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":411,"column":23,"endLine":411,"endColumn":24,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":422,"column":14,"endLine":422,"endColumn":15,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":426,"column":19,"endLine":426,"endColumn":20,"rule":"@stylistic/block-closing-brace-newline-before","severity":"error","text":"Expected newline before \"}\" of a multi-line block (@stylistic/block-closing-brace-newline-before)"},{"line":33,"column":27,"endLine":34,"endColumn":1,"rule":"@stylistic/block-closing-brace-space-after","severity":"error","text":"Expected single space after \"}\" of a single-line block (@stylistic/block-closing-brace-space-after)"},{"line":78,"column":7,"endLine":79,"endColumn":1,"rule":"@stylistic/block-closing-brace-space-after","severity":"error","text":"Expected single space after \"}\" of a single-line block (@stylistic/block-closing-brace-space-after)"},{"line":85,"column":7,"endLine":86,"endColumn":1,"rule":"@stylistic/block-closing-brace-space-after","severity":"error","text":"Expected single space after \"}\" of a single-line block (@stylistic/block-closing-brace-space-after)"},{"line":92,"column":7,"endLine":93,"endColumn":1,"rule":"@stylistic/block-closing-brace-space-after","severity":"error","text":"Expected single space after \"}\" of a single-line block (@stylistic/block-closing-brace-space-after)"},{"line":99,"column":44,"endLine":100,"endColumn":1,"rule":"@stylistic/block-closing-brace-space-after","severity":"error","text":"Expected single space after \"}\" of a single-line block (@stylistic/block-closing-brace-space-after)"},{"line":151,"column":30,"endLine":152,"endColumn":1,"rule":"@stylistic/block-closing-brace-space-after","severity":"error","text":"Expected single space after \"}\" of a single-line block (@stylistic/block-closing-brace-space-after)"},{"line":342,"column":22,"endLine":343,"endColumn":1,"rule":"@stylistic/block-closing-brace-space-after","severity":"error","text":"Expected single space after \"}\" of a single-line block (@stylistic/block-closing-brace-space-after)"},{"line":33,"column":25,"endLine":33,"endColumn":27,"rule":"block-no-empty","severity":"error","text":"Unexpected empty block (block-no-empty)"},{"line":78,"column":5,"endLine":78,"endColumn":7,"rule":"block-no-empty","severity":"error","text":"Unexpected empty block (block-no-empty)"},{"line":81,"column":7,"endLine":81,"endColumn":9,"rule":"block-no-empty","severity":"error","text":"Unexpected empty block (block-no-empty)"},{"line":85,"column":5,"endLine":85,"endColumn":7,"rule":"block-no-empty","severity":"error","text":"Unexpected empty block (block-no-empty)"},{"line":88,"column":7,"endLine":88,"endColumn":9,"rule":"block-no-empty","severity":"error","text":"Unexpected empty block (block-no-empty)"},{"line":92,"column":5,"endLine":92,"endColumn":7,"rule":"block-no-empty","severity":"error","text":"Unexpected empty block (block-no-empty)"},{"line":95,"column":7,"endLine":95,"endColumn":9,"rule":"block-no-empty","severity":"error","text":"Unexpected empty block (block-no-empty)"},{"line":99,"column":42,"endLine":99,"endColumn":44,"rule":"block-no-empty","severity":"error","text":"Unexpected empty block (block-no-empty)"},{"line":151,"column":28,"endLine":151,"endColumn":30,"rule":"block-no-empty","severity":"error","text":"Unexpected empty block (block-no-empty)"},{"line":342,"column":20,"endLine":342,"endColumn":22,"rule":"block-no-empty","severity":"error","text":"Unexpected empty block (block-no-empty)"},{"line":7,"column":9,"endLine":7,"endColumn":14,"rule":"color-named","severity":"error","text":"Unexpected named color \"black\" (color-named)"},{"line":23,"column":20,"endLine":23,"endColumn":25,"rule":"color-named","severity":"error","text":"Unexpected named color \"white\" (color-named)"},{"line":43,"column":9,"endLine":43,"endColumn":14,"rule":"color-named","severity":"error","text":"Unexpected named color \"black\" (color-named)"},{"line":50,"column":25,"endLine":50,"endColumn":30,"rule":"color-named","severity":"error","text":"Unexpected named color \"black\" (color-named)"},{"line":56,"column":25,"endLine":56,"endColumn":31,"rule":"color-named","severity":"error","text":"Unexpected named color \"silver\" (color-named)"},{"line":123,"column":8,"endLine":123,"endColumn":12,"rule":"color-named","severity":"error","text":"Unexpected named color \"blue\" (color-named)"},{"line":207,"column":14,"endLine":207,"endColumn":19,"rule":"color-named","severity":"error","text":"Unexpected named color \"white\" (color-named)"},{"line":60,"column":12,"endLine":60,"endColumn":22,"rule":"declaration-no-important","severity":"error","text":"Unexpected !important (declaration-no-important)"},{"line":211,"column":19,"endLine":211,"endColumn":29,"rule":"declaration-no-important","severity":"error","text":"Unexpected !important (declaration-no-important)"},{"line":275,"column":19,"endLine":275,"endColumn":29,"rule":"declaration-no-important","severity":"error","text":"Unexpected !important (declaration-no-important)"},{"line":276,"column":15,"endLine":276,"endColumn":25,"rule":"declaration-no-important","severity":"error","text":"Unexpected !important (declaration-no-important)"},{"line":51,"column":16,"endLine":51,"endColumn":20,"rule":"declaration-property-value-disallowed-list","severity":"error","text":"Unexpected value \"none\" for property \"border-right\" (declaration-property-value-disallowed-list)"},{"line":218,"column":11,"endLine":218,"endColumn":15,"rule":"declaration-property-value-disallowed-list","severity":"error","text":"Unexpected value \"none\" for property \"outline\" (declaration-property-value-disallowed-list)"},{"line":237,"column":11,"endLine":237,"endColumn":15,"rule":"declaration-property-value-disallowed-list","severity":"error","text":"Unexpected value \"none\" for property \"outline\" (declaration-property-value-disallowed-list)"},{"line":276,"column":10,"endLine":276,"endColumn":14,"rule":"declaration-property-value-disallowed-list","severity":"error","text":"Unexpected value \"none\" for property \"border\" (declaration-property-value-disallowed-list)"},{"line":348,"column":11,"endLine":348,"endColumn":15,"rule":"declaration-property-value-disallowed-list","severity":"error","text":"Unexpected value \"none\" for property \"outline\" (declaration-property-value-disallowed-list)"},{"line":71,"column":1,"endLine":71,"endColumn":50,"rule":"no-descending-specificity","severity":"error","text":"Expected selector \".cm-fat-cursor .CodeMirror-line > span::selection\" to come before selector \".cm-fat-cursor .CodeMirror-line > span > span::selection\" (no-descending-specificity)"},{"line":130,"column":1,"endLine":130,"endColumn":11,"rule":"no-descending-specificity","severity":"error","text":"Expected selector \".cm-header\" to come before selector \".cm-s-default .cm-header\" (no-descending-specificity)"},{"line":369,"column":1,"endLine":369,"endColumn":19,"rule":"no-descending-specificity","severity":"error","text":"Expected selector \".CodeMirror-cursor\" to come before selector \".cm-fat-cursor .CodeMirror-cursor\" (no-descending-specificity)"},{"line":376,"column":1,"endLine":376,"endColumn":23,"rule":"no-descending-specificity","severity":"error","text":"Expected selector \"div.CodeMirror-cursors\" to come before selector \".cm-fat-cursor div.CodeMirror-cursors\" (no-descending-specificity)"},{"line":395,"column":1,"endLine":395,"endColumn":28,"rule":"no-descending-specificity","severity":"error","text":"Expected selector \".CodeMirror-line::selection\" to come before selector \".cm-fat-cursor .CodeMirror-line::selection\" (no-descending-specificity)"},{"line":396,"column":2,"endLine":396,"endColumn":36,"rule":"no-descending-specificity","severity":"error","text":"Expected selector \".CodeMirror-line > span::selection\" to come before selector \".cm-fat-cursor .CodeMirror-line > span::selection\" (no-descending-specificity)"},{"line":397,"column":2,"endLine":397,"endColumn":43,"rule":"no-descending-specificity","severity":"error","text":"Expected selector \".CodeMirror-line > span > span::selection\" to come before selector \".cm-fat-cursor .CodeMirror-line > span::selection\" (no-descending-specificity)"},{"line":399,"column":1,"endLine":399,"endColumn":28,"rule":"no-descending-specificity","severity":"error","text":"Expected selector \".CodeMirror-line::selection\" to come before selector \".cm-fat-cursor .CodeMirror-line::selection\" (no-descending-specificity)"},{"line":400,"column":2,"endLine":400,"endColumn":36,"rule":"no-descending-specificity","severity":"error","text":"Expected selector \".CodeMirror-line > span::selection\" to come before selector \".cm-fat-cursor .CodeMirror-line > span::selection\" (no-descending-specificity)"},{"line":401,"column":2,"endLine":401,"endColumn":43,"rule":"no-descending-specificity","severity":"error","text":"Expected selector \".CodeMirror-line > span > span::selection\" to come before selector \".cm-fat-cursor .CodeMirror-line > span::selection\" (no-descending-specificity)"},{"line":70,"column":1,"endLine":72,"endColumn":57,"rule":"no-duplicate-selectors","severity":"error","text":"Unexpected duplicate selector \".cm-fat-cursor .CodeMirror-line::selection,\n.cm-fat-cursor .CodeMirror-line > span::selection,\n.cm-fat-cursor .CodeMirror-line > span > span::selection\", first used at line 66 (no-duplicate-selectors)"},{"line":204,"column":1,"endLine":204,"endColumn":12,"rule":"no-duplicate-selectors","severity":"error","text":"Unexpected duplicate selector \".CodeMirror\", first used at line 3 (no-duplicate-selectors)"},{"line":258,"column":1,"endLine":258,"endColumn":20,"rule":"no-duplicate-selectors","severity":"error","text":"Unexpected duplicate selector \".CodeMirror-gutters\", first used at line 28 (no-duplicate-selectors)"},{"line":291,"column":1,"endLine":291,"endColumn":39,"rule":"no-duplicate-selectors","severity":"error","text":"Unexpected duplicate selector \".CodeMirror-gutter-wrapper ::selection\", first used at line 289 (no-duplicate-selectors)"},{"line":294,"column":1,"endLine":294,"endColumn":18,"rule":"no-duplicate-selectors","severity":"error","text":"Unexpected duplicate selector \".CodeMirror-lines\", first used at line 13 (no-duplicate-selectors)"},{"line":298,"column":1,"endLine":299,"endColumn":37,"rule":"no-duplicate-selectors","severity":"error","text":"Unexpected duplicate selector \".CodeMirror pre.CodeMirror-line,\n.CodeMirror pre.CodeMirror-line-like\", first used at line 16 (no-duplicate-selectors)"},{"line":369,"column":1,"endLine":369,"endColumn":19,"rule":"no-duplicate-selectors","severity":"error","text":"Unexpected duplicate selector \".CodeMirror-cursor\", first used at line 49 (no-duplicate-selectors)"},{"line":399,"column":1,"endLine":401,"endColumn":43,"rule":"no-duplicate-selectors","severity":"error","text":"Unexpected duplicate selector \".CodeMirror-line::selection,\n .CodeMirror-line > span::selection,\n .CodeMirror-line > span > span::selection\", first used at line 395 (no-duplicate-selectors)"}]},{"source":"/src/repo/resources/codemirror.wikieditor.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/codemirror.mixins.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/legacy/codemirror-fixes.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/codemirror.keymap.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/ve-cm/ve.ui.CodeMirror.v6.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/legacy/modules/ve-cm/ve.ui.CodeMirror.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/codemirror.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/codemirror.mediawiki.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/legacy/ext.CodeMirror.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]}]
--- end ---
$ /usr/bin/npm ci
--- stderr ---
npm WARN deprecated rimraf@3.0.2: Rimraf versions prior to v4 are no longer supported
npm WARN deprecated glob@8.1.0: 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
--- stdout ---

added 1286 packages, and audited 1287 packages in 33s

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

16 vulnerabilities (5 moderate, 11 high)

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 ---
resources/codemirror.keymap.less
  94:11  ✖  Needless disable for "no-descending-specificity"  --report-needless-disables

resources/codemirror.less
  60:3  ✖  Needless disable for "declaration-no-important"  --report-needless-disables
  66:4  ✖  Needless disable for "declaration-no-important"  --report-needless-disables
  71:4  ✖  Needless disable for "declaration-no-important"  --report-needless-disables

resources/ve-cm/ve.ui.CodeMirror.v6.less
   11:3   ✖  Needless disable for "declaration-no-important"  --report-needless-disables
   38:36  ✖  Needless disable for "declaration-no-important"  --report-needless-disables
   90:3   ✖  Needless disable for "declaration-no-important"  --report-needless-disables
  123:35  ✖  Needless disable for "declaration-no-important"  --report-needless-disables

resources/legacy/modules/ve-cm/ve.ui.CodeMirror.less
   41:30  ✖  Needless disable for "declaration-no-important"  --report-needless-disables
   79:3   ✖  Needless disable for "declaration-no-important"  --report-needless-disables
  104:35  ✖  Needless disable for "declaration-no-important"  --report-needless-disables

✖ 11 problems (11 errors, 0 warnings)
--- stdout ---

> test
> npm run test:lint && npm run test:unit && npm run check-built-assets


> test:lint
> npm run test:lint:styles && npm run test:lint:js && npm run test:lint:i18n


> test:lint:styles
> stylelint "resources/**/*.less"


--- end ---
$ node_modules/.bin/jest -u
--- stderr ---
PASS tests/jest/codemirror.preferences.test.js (6.4 s)
PASS tests/jest/codemirror.test.js (6.984 s)
PASS tests/jest/codemirror.wikieditor.test.js
PASS tests/jest/codemirror.mediawiki.test.js (7.615 s)
PASS tests/jest/codemirror.mediawiki.autocomplete.test.js
PASS tests/jest/codemirror.panel.test.js
PASS tests/jest/codemirror.search.test.js
PASS tests/jest/codemirror.keymap.test.js
PASS tests/jest/codemirror.visualEditor.test.js
PASS tests/jest/codemirror.bidiIsolation.test.js
PASS tests/jest/codemirror.gotoLine.test.js
PASS tests/jest/codemirror.mediawiki.keymap.test.js
PASS tests/jest/codemirror.init.test.js
PASS tests/jest/codemirror.mediawiki.openLinks.test.js

Test Suites: 14 passed, 14 total
Tests:       146 passed, 146 total
Snapshots:   0 total
Time:        11.712 s
Ran all test suites.
--- stdout ---
---------------------------------------|---------|----------|---------|---------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
File                                   | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s                                                                                                                                                                                                                                                                              
---------------------------------------|---------|----------|---------|---------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
All files                              |   74.19 |    62.35 |   71.35 |   74.65 |                                                                                                                                                                                                                                                                                                
 codemirror.bundle.lib.js              |       0 |        0 |       0 |       0 |                                                                                                                                                                                                                                                                                                
 codemirror.gotoLine.js                |   90.16 |    56.66 |     100 |      90 | 138,146-150,152                                                                                                                                                                                                                                                                                
 codemirror.init.js                    |   21.87 |    29.41 |       0 |   22.58 | 17-48,62-100                                                                                                                                                                                                                                                                                   
 codemirror.js                         |   84.72 |    80.55 |   76.36 |   85.04 | 197-200,224,263-272,378,501-508,610,624-629,658,706,775,787,837,937,939-944                                                                                                                                                                                                                    
 codemirror.keymap.js                  |   87.09 |    69.14 |   71.42 |   87.09 | 211,233-234,255-256,325-335,340,346-347,351-353,405,464,501,524-526                                                                                                                                                                                                                            
 codemirror.mediawiki.autocomplete.js  |   55.17 |    46.66 |   46.15 |   55.55 | 72-84,100-131,145-150,166-167,197,203-208                                                                                                                                                                                                                                                      
 codemirror.mediawiki.bidiIsolation.js |     100 |    61.11 |     100 |     100 | 33,84-105                                                                                                                                                                                                                                                                                      
 codemirror.mediawiki.codeFolding.js   |   25.78 |    17.64 |   26.92 |   25.65 | 39-40,96-97,115,126,131-137,142-192,206-231,248-257,283-294,309-366,383-399                                                                                                                                                                                                                    
 codemirror.mediawiki.config.js        |     100 |      100 |     100 |     100 |                                                                                                                                                                                                                                                                                                
 codemirror.mediawiki.js               |   85.54 |    81.68 |   97.33 |    85.5 | 138,143,183-187,209,229,262-267,278,294,324-326,332-335,369-371,381-384,387-388,396-399,404,409-412,421,426-429,432-433,455-473,492-493,503,508,557-558,570-571,609,717,751,771-773,776-778,816-818,826,847,872,899,1000,1018,1048-1053,1065-1071,1121,1127,1200,1233,1253-1257,1293,1353,1369 
 codemirror.mediawiki.keymap.js        |   79.31 |     87.5 |   70.58 |   79.31 | 214-215,231-250,301-320,372-377                                                                                                                                                                                                                                                                
 codemirror.mediawiki.matchTag.js      |   17.33 |        0 |    6.66 |   18.05 | 9-11,53-83,96-115,127-145,157-175                                                                                                                                                                                                                                                              
 codemirror.mediawiki.openLinks.js     |   34.88 |    16.21 |   66.66 |   34.88 | 14,24,51-84                                                                                                                                                                                                                                                                                    
 codemirror.panel.js                   |   92.78 |     87.5 |      60 |   93.75 | 193-198                                                                                                                                                                                                                                                                                        
 codemirror.preferences.js             |    90.4 |    77.77 |      84 |   90.32 | 306,344,380,404-409,421-437                                                                                                                                                                                                                                                                    
 codemirror.search.js                  |   72.02 |    32.83 |   72.72 |   72.02 | 184-185,192-193,281-332,366-379,390-392,403-404                                                                                                                                                                                                                                                
 codemirror.textSelection.js           |   81.35 |    96.15 |   83.33 |   82.75 | 83-88,187-188,192-193,225-235                                                                                                                                                                                                                                                                  
 codemirror.visualEditor.js            |   61.11 |    24.32 |   76.47 |   61.97 | 209-210,227-233,246-328                                                                                                                                                                                                                                                                        
 codemirror.wikieditor.js              |   70.31 |    60.71 |   61.11 |   71.42 | 68,80,88,109-118,133,194-196,211-220,260,280,301,304                                                                                                                                                                                                                                           
---------------------------------------|---------|----------|---------|---------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

--- end ---
$ /usr/bin/npm test
--- stderr ---
resources/codemirror.keymap.less
  94:11  ✖  Needless disable for "no-descending-specificity"  --report-needless-disables

resources/codemirror.less
  60:3  ✖  Needless disable for "declaration-no-important"  --report-needless-disables
  66:4  ✖  Needless disable for "declaration-no-important"  --report-needless-disables
  71:4  ✖  Needless disable for "declaration-no-important"  --report-needless-disables

resources/ve-cm/ve.ui.CodeMirror.v6.less
   11:3   ✖  Needless disable for "declaration-no-important"  --report-needless-disables
   38:36  ✖  Needless disable for "declaration-no-important"  --report-needless-disables
   90:3   ✖  Needless disable for "declaration-no-important"  --report-needless-disables
  123:35  ✖  Needless disable for "declaration-no-important"  --report-needless-disables

resources/legacy/modules/ve-cm/ve.ui.CodeMirror.less
   41:30  ✖  Needless disable for "declaration-no-important"  --report-needless-disables
   79:3   ✖  Needless disable for "declaration-no-important"  --report-needless-disables
  104:35  ✖  Needless disable for "declaration-no-important"  --report-needless-disables

✖ 11 problems (11 errors, 0 warnings)
--- stdout ---

> test
> npm run test:lint && npm run test:unit && npm run check-built-assets


> test:lint
> npm run test:lint:styles && npm run test:lint:js && npm run test:lint:i18n


> test:lint:styles
> stylelint "resources/**/*.less"


--- end ---
Traceback (most recent call last):
  File "/venv/lib/python3.11/site-packages/runner-0.1.0-py3.11.egg/runner/__init__.py", line 325, in npm_test
    self.check_call(["npm", "test"])
  File "/venv/lib/python3.11/site-packages/runner-0.1.0-py3.11.egg/runner/shell2.py", line 59, in check_call
    res.check_returncode()
  File "/usr/lib/python3.11/subprocess.py", line 502, in check_returncode
    raise CalledProcessError(self.returncode, self.args, self.stdout,
subprocess.CalledProcessError: Command '['/usr/bin/npm', 'test']' returned non-zero exit status 2.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/venv/lib/python3.11/site-packages/runner-0.1.0-py3.11.egg/runner/__init__.py", line 1964, in main
    libup.run(args.repo, args.output, args.branch)
  File "/venv/lib/python3.11/site-packages/runner-0.1.0-py3.11.egg/runner/__init__.py", line 1902, in run
    self.npm_upgrade(plan)
  File "/venv/lib/python3.11/site-packages/runner-0.1.0-py3.11.egg/runner/__init__.py", line 1252, in npm_upgrade
    self.npm_test()
  File "/venv/lib/python3.11/site-packages/runner-0.1.0-py3.11.egg/runner/__init__.py", line 331, in npm_test
    self.check_call(["npm", "test"])
  File "/venv/lib/python3.11/site-packages/runner-0.1.0-py3.11.egg/runner/shell2.py", line 59, in check_call
    res.check_returncode()
  File "/usr/lib/python3.11/subprocess.py", line 502, in check_returncode
    raise CalledProcessError(self.returncode, self.args, self.stdout,
subprocess.CalledProcessError: Command '['/usr/bin/npm', 'test']' returned non-zero exit status 2.
Source code is licensed under the AGPL.