$ date
--- stdout ---
Wed Jan 29 00:49:09 UTC 2025
--- end ---
$ git clone file:///srv/git/mediawiki-extensions-ContentTranslation.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 ---
900bf5080d2926b46c431ad8de7b7d654550ff37 refs/heads/master
--- end ---
$ /usr/bin/npm audit --json
--- stdout ---
{
"auditReportVersion": 2,
"vulnerabilities": {
"@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.41.0",
"nodes": [
"node_modules/@wdio/cli"
],
"fixAvailable": {
"name": "@wdio/cli",
"version": "9.7.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.6.3",
"isSemVerMajor": true
}
},
"@wdio/local-runner": {
"name": "@wdio/local-runner",
"severity": "high",
"isDirect": true,
"via": [
"@wdio/cli",
"@wdio/runner"
],
"effects": [],
"range": "6.0.4 - 8.41.0",
"nodes": [
"node_modules/@wdio/local-runner"
],
"fixAvailable": {
"name": "@wdio/local-runner",
"version": "9.7.1",
"isSemVerMajor": true
}
},
"@wdio/mocha-framework": {
"name": "@wdio/mocha-framework",
"severity": "moderate",
"isDirect": true,
"via": [
"mocha"
],
"effects": [],
"range": "7.7.4 - 7.19.5",
"nodes": [
"node_modules/@wdio/mocha-framework"
],
"fixAvailable": {
"name": "@wdio/mocha-framework",
"version": "7.40.0",
"isSemVerMajor": false
}
},
"@wdio/runner": {
"name": "@wdio/runner",
"severity": "high",
"isDirect": false,
"via": [
"webdriverio"
],
"effects": [
"@wdio/local-runner"
],
"range": "7.16.5 - 8.41.0",
"nodes": [
"node_modules/@wdio/runner"
],
"fixAvailable": {
"name": "@wdio/local-runner",
"version": "9.7.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.6.3",
"isSemVerMajor": true
}
},
"braces": {
"name": "braces",
"severity": "high",
"isDirect": false,
"via": [
{
"source": 1098094,
"name": "braces",
"dependency": "braces",
"title": "Uncontrolled resource consumption in braces",
"url": "https://github.com/advisories/GHSA-grv7-fg5c-xmjg",
"severity": "high",
"cwe": [
"CWE-400",
"CWE-1050"
],
"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": "<3.0.3"
}
],
"effects": [],
"range": "<3.0.3",
"nodes": [
"node_modules/braces"
],
"fixAvailable": 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"
},
{
"source": 1100563,
"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": ">=7.0.0 <7.0.5"
}
],
"effects": [
"pre-commit",
"yarn-install"
],
"range": "<6.0.6 || >=7.0.0 <7.0.5",
"nodes": [
"node_modules/cross-spawn",
"node_modules/pre-commit/node_modules/cross-spawn",
"node_modules/yarn-install/node_modules/cross-spawn"
],
"fixAvailable": {
"name": "pre-commit",
"version": "1.0.10",
"isSemVerMajor": true
}
},
"devtools": {
"name": "devtools",
"severity": "high",
"isDirect": false,
"via": [
"puppeteer-core"
],
"effects": [],
"range": ">=7.16.5",
"nodes": [
"node_modules/@wdio/cli/node_modules/devtools",
"node_modules/@wdio/runner/node_modules/devtools",
"node_modules/devtools"
],
"fixAvailable": true
},
"micromatch": {
"name": "micromatch",
"severity": "moderate",
"isDirect": false,
"via": [
{
"source": 1098681,
"name": "micromatch",
"dependency": "micromatch",
"title": "Regular Expression Denial of Service (ReDoS) in micromatch",
"url": "https://github.com/advisories/GHSA-952p-6rrq-rcjv",
"severity": "moderate",
"cwe": [
"CWE-1333"
],
"cvss": {
"score": 5.3,
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L"
},
"range": "<4.0.8"
}
],
"effects": [],
"range": "<4.0.8",
"nodes": [
"node_modules/micromatch"
],
"fixAvailable": true
},
"mocha": {
"name": "mocha",
"severity": "moderate",
"isDirect": false,
"via": [
"nanoid"
],
"effects": [
"@wdio/mocha-framework"
],
"range": "8.2.0 - 10.2.0",
"nodes": [
"node_modules/mocha"
],
"fixAvailable": {
"name": "@wdio/mocha-framework",
"version": "7.40.0",
"isSemVerMajor": false
}
},
"mwbot": {
"name": "mwbot",
"severity": "moderate",
"isDirect": false,
"via": [
"request"
],
"effects": [
"wdio-mediawiki"
],
"range": ">=0.1.6",
"nodes": [
"node_modules/mwbot"
],
"fixAvailable": false
},
"nanoid": {
"name": "nanoid",
"severity": "moderate",
"isDirect": false,
"via": [
{
"source": 1101163,
"name": "nanoid",
"dependency": "nanoid",
"title": "Predictable results in nanoid generation when given non-integer values",
"url": "https://github.com/advisories/GHSA-mwcw-c2x4-8c55",
"severity": "moderate",
"cwe": [
"CWE-835"
],
"cvss": {
"score": 4.3,
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N"
},
"range": "<3.3.8"
}
],
"effects": [
"mocha"
],
"range": "<3.3.8",
"nodes": [
"node_modules/nanoid",
"node_modules/postcss/node_modules/nanoid"
],
"fixAvailable": {
"name": "@wdio/mocha-framework",
"version": "7.40.0",
"isSemVerMajor": false
}
},
"pre-commit": {
"name": "pre-commit",
"severity": "high",
"isDirect": true,
"via": [
"cross-spawn"
],
"effects": [],
"range": ">=1.1.0",
"nodes": [
"node_modules/pre-commit"
],
"fixAvailable": {
"name": "pre-commit",
"version": "1.0.10",
"isSemVerMajor": true
}
},
"puppeteer-core": {
"name": "puppeteer-core",
"severity": "high",
"isDirect": false,
"via": [
"ws"
],
"effects": [
"devtools",
"webdriverio"
],
"range": "11.0.0 - 22.11.1",
"nodes": [
"node_modules/@wdio/cli/node_modules/devtools/node_modules/puppeteer-core",
"node_modules/@wdio/cli/node_modules/puppeteer-core",
"node_modules/@wdio/runner/node_modules/devtools/node_modules/puppeteer-core",
"node_modules/@wdio/runner/node_modules/puppeteer-core",
"node_modules/devtools/node_modules/puppeteer-core",
"node_modules/puppeteer-core"
],
"fixAvailable": {
"name": "@wdio/cli",
"version": "9.7.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/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.41.0",
"nodes": [
"node_modules/@wdio/cli/node_modules/webdriverio",
"node_modules/@wdio/runner/node_modules/webdriverio",
"node_modules/webdriverio"
],
"fixAvailable": {
"name": "@wdio/cli",
"version": "9.7.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/@wdio/cli/node_modules/devtools/node_modules/ws",
"node_modules/@wdio/cli/node_modules/ws",
"node_modules/@wdio/runner/node_modules/devtools/node_modules/ws",
"node_modules/@wdio/runner/node_modules/ws",
"node_modules/ws"
],
"fixAvailable": {
"name": "@wdio/cli",
"version": "9.7.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.7.1",
"isSemVerMajor": true
}
}
},
"metadata": {
"vulnerabilities": {
"info": 0,
"low": 0,
"moderate": 8,
"high": 13,
"critical": 0,
"total": 21
},
"dependencies": {
"prod": 1,
"dev": 1058,
"optional": 42,
"peer": 199,
"peerOptional": 0,
"total": 1058
}
}
}
--- 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: 40 installs, 0 updates, 0 removals
- Locking composer/installers (v2.3.0)
- 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 firebase/php-jwt (v6.11.0)
- Locking mediawiki/mediawiki-codesniffer (v45.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.0.0)
- Locking psr/container (2.0.2)
- Locking psr/log (3.0.2)
- Locking sabre/event (5.1.7)
- Locking squizlabs/php_codesniffer (3.10.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: 40 installs, 0 updates, 0 removals
0 [>---------------------------] 0 [->--------------------------]
- Installing composer/installers (v2.3.0): Extracting archive
- Installing squizlabs/php_codesniffer (3.10.3): Extracting archive
- Installing dealerdirect/phpcodesniffer-composer-installer (v1.0.0): Extracting archive
- Installing composer/pcre (3.3.2): Extracting archive
- Installing firebase/php-jwt (v6.11.0): Extracting archive
- Installing symfony/polyfill-php80 (v1.31.0): Extracting archive
- Installing phpcsstandards/phpcsutils (1.0.12): Extracting archive
- Installing phpcsstandards/phpcsextra (1.2.1): Extracting archive
- Installing symfony/polyfill-mbstring (v1.31.0): Extracting archive
- Installing composer/spdx-licenses (1.5.8): Extracting archive
- Installing composer/semver (3.4.3): Extracting archive
- Installing mediawiki/mediawiki-codesniffer (v45.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.0.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/37 [>---------------------------] 0%
20/37 [===============>------------] 54%
33/37 [========================>---] 89%
37/37 [============================] 100%
2 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:stylelint-config-wikimedia from 0.17.2 -> 0.18.0
$ /usr/bin/npm install
--- stderr ---
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
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
--- stdout ---
added 1062 packages, and audited 1063 packages in 27s
204 packages are looking for funding
run `npm fund` for details
19 vulnerabilities (7 moderate, 12 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 modules/ui/styles/mw.cx.ui.TranslationView.less modules/entrypoints/styles/ext.cx.entrypoints.mffrequentlanguages.less modules/ui/styles/widgets/mw.cx.ui.TranslationToolWidget.less app/src/components/SXContentComparator/NewSectionPlaceholder.vue modules/entrypoints/ext.cx.entrypoints.newbytranslation/NewByTranslationPopup.vue app/src/components/SXPublisher/SXPublisherCaptchaDialog.vue app/src/components/SXSentenceSelector/RetryMtCard.vue modules/ui/styles/mw.cx.ui.SourceColumn.less app/src/lib/mediawiki.ui/components/MWDivider/MWDivider.vue app/src/components/SXSentenceSelector/SXBlockTemplateStatusDialog.vue app/src/lib/mediawiki.ui/components/MWExpandableContent/MWExpandableContent.vue app/src/components/SXTranslationConfirmer/SXTranslationConfirmerArticleInformation.vue modules/ui/styles/mw.cx.common.less modules/ui/styles/widgets/mw.cx.ui.PageTitleWidget.less modules/dashboard/styles/mw.cx.TranslationList.less modules/ve-cx/ce/styles/ve.ce.CXReferenceNode.less app/src/components/SXContentComparator/SXContentComparatorContentHeader.vue app/src/components/MWLanguageSelector/MWLanguageSelector.vue app/src/lib/mediawiki.ui/components/MWSelect/MWSelect.vue app/src/components/CXDashboard/SXConfirmTranslationStartDialog.vue app/src/components/CXDashboard/CXTranslationWorkPublished.vue app/src/components/SXSectionSelector/SXSectionSelector.vue modules/ui/styles/grid/agora-grid.less modules/ui/styles/mw.cx.ui.LanguageFilter.less modules/ui/styles/mw.cx.ui.TranslationHeader.less app/src/views/SXTranslationConfirmer.vue app/src/components/CXDashboard/CXStatsPanel.vue app/src/components/CXDashboard/CXTranslationWorkDraft.vue modules/ui/styles/mw.cx.ui.Header.less app/dist/style.css app/src/lib/mediawiki.ui/components/MWLayout/MWCol.vue modules/ui/styles/mw.cx.ui.CaptchaDialog.less modules/entrypoints/styles/ext.cx.entrypoints.contributionsmenu.less app/src/components/SXContentComparator/SXContentComparatorHeaderNavigation.vue modules/ui/styles/widgets/mw.cx.ui.CategoryTagItemWidget.monobook.less modules/widgets/callout/ext.cx.callout.vector.less modules/ve-cx/ui/styles/ve.ui.CXSurface.less app/src/components/SXEditor/SXEditor.vue app/src/components/SXTranslationConfirmer/UnreviewedTranslationDialog.vue modules/ve-cx/ui/styles/ve.ui.CXDesktopContext.less modules/entrypoints/styles/ext.cx.contributions.vector.less modules/ui/styles/mw.cx.init.Translation.less app/src/components/SXArticleSearch/SXSearchArticleSuggestion.vue minT/styles/mint.less modules/ui/styles/widgets/mw.cx.ui.FeatureDiscoveryWidget.less minT/src/ExploreLanguagesPage.vue app/src/views/SXEditor.vue app/src/components/SXPublisher/SXPublisherReviewInfo.vue app/src/components/SXSentenceSelector/TranslatedSegmentCardActionButtons.vue app/src/plugins/ve/components/VisualEditor.vue minT/entrypoints/ArticleFooterEntrypointCard.vue app/src/components/SXSentenceSelector/SXConfirmBackNavigationDialog.vue app/src/components/CXDashboard/MWBottomNavigation.vue app/src/components/SXSentenceSelector/ProposedTranslationHeader.vue app/src/lib/mediawiki.ui/components/MWDialog/MWDialog.vue modules/source/styles/mw.cx.SelectedSourcePage.less app/src/components/SXTranslationConfirmer/SXTranslationConfirmerActionPanel.vue app/src/components/CXDashboard/SXSuggestionsFiltersDialog.vue app/src/components/SXSentenceSelector/SXSentenceSelectorContentHeader.vue app/src/components/CXDashboard/CXTranslationSuggestion.vue modules/ui/styles/mw.cx.ui.TargetColumn.less modules/ve-cx/ce/mixins/ve.ce.CXPendingNode.less modules/ve-cx/ui/tools/ve.ui.CXSaveMTPreferenceTool.less modules/stats/styles/ext.cx.stats.less modules/entrypoints/styles/ext.cx.entrypoints.newbytranslation.less app/src/views/SXSectionSelector.vue app/src/components/CXDashboard/CustomInfoChip.vue app/src/components/SXArticleLanguageSelector.vue app/src/lib/mediawiki.ui/components/MWButton/buttons.less app/src/components/SXSentenceSelector/SubSection.vue modules/ve-cx/ce/styles/ve.ce.CXLinkAnnotation.less modules/ui/styles/widgets/mw.cx.ui.CategoryTagItemWidget.less app/src/views/SXSentenceSelector.vue app/src/lib/mediawiki.ui/components/MWCircularProgressBar/MWCircleProgressBar.vue app/src/components/SXPublisher/SXPublisherHeader.vue modules/dashboard/styles/ext.cx.dashboard.monobook.less app/src/App.vue app/src/lib/mediawiki.ui/components/MWButton/MWButton.vue modules/dashboard/styles/ext.cx.dashboard.less app/src/lib/mediawiki.ui/components/MWMessage/MWMessage.vue app/src/components/CXDashboard/CXSuggestionList.vue app/src/components/CXDashboard/CXTranslationWork.vue minT/src/ConfirmTopicPage.vue app/src/components/SXSentenceSelector/SXSentenceSelector.vue app/src/components/CXDashboard/CXSuggestionListFilters.vue app/src/components/CXDashboard/CXTranslationList.vue modules/ve-cx/ce/styles/ve.ce.CXSentenceSegmentAnnotation.less modules/tools/styles/mw.cx.tools.InstructionsTool.less app/src/components/CXDashboard/CXHelpPanel.vue app/src/components/SXSectionSelector/SXSectionSelectorHeader.vue app/src/views/SXContentComparator.vue app/src/components/SXArticleSearch/SXArticleSearch.vue app/src/components/SXArticleSearch/SearchResultsCard.vue app/src/components/CXDashboard/SXTranslationListLanguageSelector.vue app/src/components/SXSentenceSelector/BlockTemplateStatusIndicator.vue app/src/components/SXArticleSearch/ArticleSuggestionsCard.vue modules/ve-cx/ui/styles/ve.ui.CXTranslationToolbar.less modules/ui/styles/mw.cx.variables.less app/src/lib/mediawiki.ui/components/MWInput/MWInput.vue minT/src/ViewTranslationPage.vue app/src/components/SXTranslationConfirmer/SXTranslationConfirmer.vue modules/ui/styles/widgets/mw.cx.ui.TitleOptionWidget.less app/src/components/SXContentComparator/SXContentComparatorHeaderMappedSection.vue app/src/components/SXQuickTutorial/SXQuickTutorial.vue modules/ve-cx/ce/styles/ve.ce.CXLintableNode.less modules/entrypoints/styles/ext.cx.entrypoints.recenttranslation.less app/src/components/SXEditor/EditCompleteFeedback.vue app/src/lib/mediawiki.ui/components/MWLayout/MWGrid.vue modules/ui/styles/mw.cx.highlight.less modules/ui/styles/mw.cx.ui.Infobar.less app/src/lib/mediawiki.ui/components/MWLayout/MWRow.vue minT/src/MWLanguageSelector.vue app/src/views/SXQuickTutorial.vue app/src/lib/mediawiki.ui/components/MWCard/MWCard.vue modules/entrypoints/styles/ext.cx.entrypoints.uls.relevantlanguages.less modules/ve-cx/ui/tools/ve.ui.CXResetSectionTool.less app/src/components/SXPublisher/SXPublishOptionSelector.vue app/src/components/SXSentenceSelector/TranslatedSegmentCard.vue app/src/styles/page.less app/src/lib/mediawiki.ui/components/MWSpinner/MWSpinner.vue app/src/lib/mediawiki.ui/components/MWLayout/animations.less app/src/lib/mediawiki.ui/components/MWButtonGroup/MWButtonGroup.vue app/src/components/SXEditor/SXEditorOriginalContent.vue app/src/components/SXSectionSelector/SXSectionSelectorSectionListPresent.vue app/src/lib/mediawiki.ui/components/MWIcon/MWIcon.vue modules/entrypoints/styles/ext.cx.contributions.less app/src/lib/mediawiki.ui/components/MWLayout/grid-story.less app/src/lib/mediawiki.ui/components/MWRadioGroup/MWRadioGroup.vue app/src/components/SXContentComparator/SourceVsTargetSelector.vue modules/entrypoints/styles/ext.cx.interlanguagelink.less modules/entrypoints/ext.cx.entrypoints.uls.relevantlanguages/CxUlsEntrypoint.vue modules/dashboard/styles/ext.cx.lists.common.less modules/widgets/spinner/ext.cx.spinner.less modules/widgets/feedback/styles/ext.cx.feedback.less app/src/lib/mediawiki.ui/components/MWRadioGroup/MWRadio.vue app/src/components/SXSentenceSelector/BlockTemplateAdaptationCard.vue minT/src/MwSpinner.vue modules/ve-cx/ui/styles/ve.ui.CXLinkContextItem.less modules/ui/styles/widgets/mw.cx.ui.CategoryMultiselectWidget.less modules/tools/styles/mw.cx.tools.IssueTrackingTool.less modules/entrypoints/ext.cx.entrypoints.recentedit/RecentEditEntrypointInvitation.vue modules/ui/styles/mw.cx.ui.Categories.less modules/ve-cx/ce/styles/ve.ce.CXPlaceholderNode.less modules/ui/styles/mw.cx.ui.Columns.less skin/styles/menu.less modules/widgets/progressbar/ext.cx.progressbar.less minT/src/SearchTopicPage.vue app/src/components/CXDashboard/CXDashboard.vue app/src/components/SXSectionSelector/SXSectionSelectorSectionList.vue app/src/views/SXArticleSearch.vue app/src/lib/mediawiki.ui/styles/common.less modules/ui/styles/grid/grid-responsive.less modules/entrypoints/ext.cx.entrypoints.publishingfollowup/PublishFeedback.vue modules/ui/styles/widgets/mw.cx.ui.MessageWidget.less modules/ui/styles/mw.cx.ui.ToolsColumn.less app/src/components/CXDashboard/CXFavoriteList.vue modules/widgets/translator/ext.cx.translator.less modules/source/styles/mw.cx.SourcePageSelector.less modules/widgets/callout/ext.cx.callout.less modules/entrypoints/ext.cx.entrypoints.recenttranslation/RecentTranslationEntrypointDialog.vue modules/ui/styles/mw.cx.mixins.less minT/src/SkeletonLoader.vue minT/src/ViewTranslationPageOptions.vue app/src/components/SXPublisher/SXPublisherAnimationDialog.vue app/src/views/SXPublisher.vue app/src/views/Dashboard.vue modules/dashboard/styles/mw.cx.SuggestionList.less modules/tools/styles/mw.cx.tools.SearchTool.less minT/src/SearchResultItem.vue app/src/lib/mediawiki.ui/components/MWProgressBar/MWProgressBar.vue app/src/components/SXSentenceSelector/ProposedTranslationCard.vue app/src/components/CXDashboard/SXConfirmTranslationDeletionDialog.vue modules/entrypoints/ext.cx.entrypoints.languagesearcher/LanguageSearcherCardContainer.vue app/src/components/SXSentenceSelector/TranslatedSegmentCardHeader.vue skin/styles/skin.less modules/ve-cx/ce/styles/ve.ce.CXSectionNode.less modules/entrypoints/styles/ext.cx.entrypoints.newbytranslation.mobile.less app/src/components/SXSectionSelector/SXSectionSelectorSectionListMissing.vue app/src/components/SXSectionSelector/SXSectionSelectorViewArticleItem.vue app/src/components/SXSentenceSelector/SXTranslationSelector.vue modules/ui/styles/grid/grid-settings.less app/src/components/SXSentenceSelector/ProposedTranslationActionButtons.vue modules/entrypoints/styles/ext.cx.entrypoints.newarticle.less app/src/components/SXContentComparator/SXContentComparator.vue app/src/components/SXContentComparator/SXContentComparatorHeader.vue modules/ui/styles/widgets/mw.cx.ui.TranslationIssueWidget.less app/src/components/SXPublisher/SXPublisher.vue modules/entrypoints/styles/ext.cx.entrypoints.languagesearcher.less app/src/lib/mediawiki.ui/components/MWThumbnail/MWThumbnail.vue modules/ve-cx/ui/styles/ve.ui.CXPublishSettingsDialog.less modules/ui/styles/grid/grid-core.less app/src/components/SXLoginDialog.vue --fix
--- stderr ---
modules/entrypoints/ext.cx.entrypoints.newbytranslation/NewByTranslationPopup.vue
218:7 ✖ Expected ".cdx-thumbnail__image" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
246:7 ✖ Expected ".cdx-icon" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
minT/src/ExploreLanguagesPage.vue
284:1 ✖ Expected ".explore-languages" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
293:5 ✖ Expected ".explore-languages-title" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
300:5 ✖ Expected ".cdx-icon" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
373:7 ✖ Expected ".cdx-icon" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
minT/src/ConfirmTopicPage.vue
314:1 ✖ Expected ".confirm-topic-header" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
317:3 ✖ Expected ".cdx-icon" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
322:1 ✖ Expected ".confirm-topic-preview" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
337:9 ✖ Expected ".cdx-icon" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
368:7 ✖ Expected ".cdx-icon" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
378:1 ✖ Expected ".confirm-topic-language-selector" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
381:3 ✖ Expected ".cdx-icon" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
386:1 ✖ Expected ".confirm-topic-go-back-link-container" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
391:1 ✖ Expected ".confirm-topic-original-target-article-container" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
399:5 ✖ Expected ".confirm-topic-original-target-article" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
402:5 ✖ Expected ".cdx-menu-item" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
412:9 ✖ Expected ".cdx-icon" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
minT/src/ViewTranslationPage.vue
409:1 ✖ Expected ".translation-viewer" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
428:5 ✖ Expected ".cdx-icon" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
440:36 ✖ Expected ".firstHeading" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
440:76 ✖ Expected ".section-heading" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
442:37 ✖ Unexpected !important declaration-no-important
451:6 ✖ Expected ".translation-viewer__source-page-link" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
452:7 ✖ Expected ".cdx-icon" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
468:7 ✖ Expected ".cdx-icon" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
488:5 ✖ Expected ".cdx-icon" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
502:15 ✖ Unexpected value "none" for property "border" declaration-property-value-disallowed-list
520:1 ✖ Expected ".infobox-skeleton-loader" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
523:3 ✖ Expected ".skeleton" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
minT/src/MWLanguageSelector.vue
308:5 ✖ Expected ".cdx-text-input__input" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
333:3 ✖ Expected ".no-results" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
333:17 ✖ Expected ".results" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
340:3 ✖ Expected ".results-languages" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
340:24 ✖ Expected ".results-languages--suggestions" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
343:5 ✖ Expected ".language" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
352:6 ✖ Expected ".few-results" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
355:6 ✖ Expected ".some-results" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
358:6 ✖ Expected ".many-results" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
362:3 ✖ Expected ".results-languages--suggestions" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
372:5 ✖ Expected ".results-languages" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
373:8 ✖ Expected ".few-results" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
373:26 ✖ Expected ".some-results" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
373:45 ✖ Expected ".many-results" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
379:5 ✖ Expected ".results-languages--suggestions" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
382:5 ✖ Expected ".col-break" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
387:3 ✖ Expected ".language" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
modules/entrypoints/ext.cx.entrypoints.uls.relevantlanguages/CxUlsEntrypoint.vue
129:2 ✖ Expected ".row" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
136:2 ✖ Expected ".col" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
142:2 ✖ Expected ".shrink" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
143:16 ✖ Unexpected !important declaration-no-important
144:18 ✖ Unexpected !important declaration-no-important
166:11 ✖ Unexpected value "none" for property "border" declaration-property-value-disallowed-list
192:12 ✖ Unexpected value "none" for property "border" declaration-property-value-disallowed-list
modules/entrypoints/ext.cx.entrypoints.recentedit/RecentEditEntrypointInvitation.vue
186:2 ✖ Expected ".row" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
193:2 ✖ Expected ".col" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
199:2 ✖ Expected ".pa-4" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
203:2 ✖ Expected ".shrink" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
204:16 ✖ Unexpected !important declaration-no-important
205:18 ✖ Unexpected !important declaration-no-important
minT/src/SearchTopicPage.vue
189:1 ✖ Expected ".search-topic-header" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
193:3 ✖ Expected ".cdx-icon" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
197:1 ✖ Expected ".search-topic-input" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
201:1 ✖ Expected ".search-language-tabs" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
205:1 ✖ Expected ".search-language-result-empty-state" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
210:1 ✖ Expected ".search-language-result" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
modules/entrypoints/ext.cx.entrypoints.publishingfollowup/PublishFeedback.vue
182:15 ✖ Unexpected named color "white" color-named
184:3 ✖ Expected ".row" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
190:3 ✖ Expected ".col" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
195:3 ✖ Expected ".pa-4" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
198:3 ✖ Expected ".shrink" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
199:18 ✖ Unexpected !important declaration-no-important
200:20 ✖ Unexpected !important declaration-no-important
modules/entrypoints/ext.cx.entrypoints.recenttranslation/RecentTranslationEntrypointDialog.vue
213:2 ✖ Expected ".row" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
220:2 ✖ Expected ".col" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
226:2 ✖ Expected ".shrink" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
227:16 ✖ Unexpected !important declaration-no-important
228:18 ✖ Unexpected !important declaration-no-important
277:11 ✖ Unexpected value "none" for property "border" declaration-property-value-disallowed-list
351:18 ✖ Expected ".cdx-button" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
372:51 ✖ Expected ".cdx-button__icon" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
minT/src/ViewTranslationPageOptions.vue
195:1 ✖ Expected ".translation-viewer__options-overlay" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
222:9 ✖ Expected ".cdx-icon" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
minT/src/SearchResultItem.vue
102:5 ✖ Expected ".thumbnail-placeholder" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)" selector-class-pattern
✖ 84 problems (84 errors, 0 warnings)
--- stdout ---
--- end ---
$ ./node_modules/.bin/stylelint modules/ui/styles/mw.cx.ui.TranslationView.less modules/entrypoints/styles/ext.cx.entrypoints.mffrequentlanguages.less modules/ui/styles/widgets/mw.cx.ui.TranslationToolWidget.less app/src/components/SXContentComparator/NewSectionPlaceholder.vue modules/entrypoints/ext.cx.entrypoints.newbytranslation/NewByTranslationPopup.vue app/src/components/SXPublisher/SXPublisherCaptchaDialog.vue app/src/components/SXSentenceSelector/RetryMtCard.vue modules/ui/styles/mw.cx.ui.SourceColumn.less app/src/lib/mediawiki.ui/components/MWDivider/MWDivider.vue app/src/components/SXSentenceSelector/SXBlockTemplateStatusDialog.vue app/src/lib/mediawiki.ui/components/MWExpandableContent/MWExpandableContent.vue app/src/components/SXTranslationConfirmer/SXTranslationConfirmerArticleInformation.vue modules/ui/styles/mw.cx.common.less modules/ui/styles/widgets/mw.cx.ui.PageTitleWidget.less modules/dashboard/styles/mw.cx.TranslationList.less modules/ve-cx/ce/styles/ve.ce.CXReferenceNode.less app/src/components/SXContentComparator/SXContentComparatorContentHeader.vue app/src/components/MWLanguageSelector/MWLanguageSelector.vue app/src/lib/mediawiki.ui/components/MWSelect/MWSelect.vue app/src/components/CXDashboard/SXConfirmTranslationStartDialog.vue app/src/components/CXDashboard/CXTranslationWorkPublished.vue app/src/components/SXSectionSelector/SXSectionSelector.vue modules/ui/styles/grid/agora-grid.less modules/ui/styles/mw.cx.ui.LanguageFilter.less modules/ui/styles/mw.cx.ui.TranslationHeader.less app/src/views/SXTranslationConfirmer.vue app/src/components/CXDashboard/CXStatsPanel.vue app/src/components/CXDashboard/CXTranslationWorkDraft.vue modules/ui/styles/mw.cx.ui.Header.less app/dist/style.css app/src/lib/mediawiki.ui/components/MWLayout/MWCol.vue modules/ui/styles/mw.cx.ui.CaptchaDialog.less modules/entrypoints/styles/ext.cx.entrypoints.contributionsmenu.less app/src/components/SXContentComparator/SXContentComparatorHeaderNavigation.vue modules/ui/styles/widgets/mw.cx.ui.CategoryTagItemWidget.monobook.less modules/widgets/callout/ext.cx.callout.vector.less modules/ve-cx/ui/styles/ve.ui.CXSurface.less app/src/components/SXEditor/SXEditor.vue app/src/components/SXTranslationConfirmer/UnreviewedTranslationDialog.vue modules/ve-cx/ui/styles/ve.ui.CXDesktopContext.less modules/entrypoints/styles/ext.cx.contributions.vector.less modules/ui/styles/mw.cx.init.Translation.less app/src/components/SXArticleSearch/SXSearchArticleSuggestion.vue minT/styles/mint.less modules/ui/styles/widgets/mw.cx.ui.FeatureDiscoveryWidget.less minT/src/ExploreLanguagesPage.vue app/src/views/SXEditor.vue app/src/components/SXPublisher/SXPublisherReviewInfo.vue app/src/components/SXSentenceSelector/TranslatedSegmentCardActionButtons.vue app/src/plugins/ve/components/VisualEditor.vue minT/entrypoints/ArticleFooterEntrypointCard.vue app/src/components/SXSentenceSelector/SXConfirmBackNavigationDialog.vue app/src/components/CXDashboard/MWBottomNavigation.vue app/src/components/SXSentenceSelector/ProposedTranslationHeader.vue app/src/lib/mediawiki.ui/components/MWDialog/MWDialog.vue modules/source/styles/mw.cx.SelectedSourcePage.less app/src/components/SXTranslationConfirmer/SXTranslationConfirmerActionPanel.vue app/src/components/CXDashboard/SXSuggestionsFiltersDialog.vue app/src/components/SXSentenceSelector/SXSentenceSelectorContentHeader.vue app/src/components/CXDashboard/CXTranslationSuggestion.vue modules/ui/styles/mw.cx.ui.TargetColumn.less modules/ve-cx/ce/mixins/ve.ce.CXPendingNode.less modules/ve-cx/ui/tools/ve.ui.CXSaveMTPreferenceTool.less modules/stats/styles/ext.cx.stats.less modules/entrypoints/styles/ext.cx.entrypoints.newbytranslation.less app/src/views/SXSectionSelector.vue app/src/components/CXDashboard/CustomInfoChip.vue app/src/components/SXArticleLanguageSelector.vue app/src/lib/mediawiki.ui/components/MWButton/buttons.less app/src/components/SXSentenceSelector/SubSection.vue modules/ve-cx/ce/styles/ve.ce.CXLinkAnnotation.less modules/ui/styles/widgets/mw.cx.ui.CategoryTagItemWidget.less app/src/views/SXSentenceSelector.vue app/src/lib/mediawiki.ui/components/MWCircularProgressBar/MWCircleProgressBar.vue app/src/components/SXPublisher/SXPublisherHeader.vue modules/dashboard/styles/ext.cx.dashboard.monobook.less app/src/App.vue app/src/lib/mediawiki.ui/components/MWButton/MWButton.vue modules/dashboard/styles/ext.cx.dashboard.less app/src/lib/mediawiki.ui/components/MWMessage/MWMessage.vue app/src/components/CXDashboard/CXSuggestionList.vue app/src/components/CXDashboard/CXTranslationWork.vue minT/src/ConfirmTopicPage.vue app/src/components/SXSentenceSelector/SXSentenceSelector.vue app/src/components/CXDashboard/CXSuggestionListFilters.vue app/src/components/CXDashboard/CXTranslationList.vue modules/ve-cx/ce/styles/ve.ce.CXSentenceSegmentAnnotation.less modules/tools/styles/mw.cx.tools.InstructionsTool.less app/src/components/CXDashboard/CXHelpPanel.vue app/src/components/SXSectionSelector/SXSectionSelectorHeader.vue app/src/views/SXContentComparator.vue app/src/components/SXArticleSearch/SXArticleSearch.vue app/src/components/SXArticleSearch/SearchResultsCard.vue app/src/components/CXDashboard/SXTranslationListLanguageSelector.vue app/src/components/SXSentenceSelector/BlockTemplateStatusIndicator.vue app/src/components/SXArticleSearch/ArticleSuggestionsCard.vue modules/ve-cx/ui/styles/ve.ui.CXTranslationToolbar.less modules/ui/styles/mw.cx.variables.less app/src/lib/mediawiki.ui/components/MWInput/MWInput.vue minT/src/ViewTranslationPage.vue app/src/components/SXTranslationConfirmer/SXTranslationConfirmer.vue modules/ui/styles/widgets/mw.cx.ui.TitleOptionWidget.less app/src/components/SXContentComparator/SXContentComparatorHeaderMappedSection.vue app/src/components/SXQuickTutorial/SXQuickTutorial.vue modules/ve-cx/ce/styles/ve.ce.CXLintableNode.less modules/entrypoints/styles/ext.cx.entrypoints.recenttranslation.less app/src/components/SXEditor/EditCompleteFeedback.vue app/src/lib/mediawiki.ui/components/MWLayout/MWGrid.vue modules/ui/styles/mw.cx.highlight.less modules/ui/styles/mw.cx.ui.Infobar.less app/src/lib/mediawiki.ui/components/MWLayout/MWRow.vue minT/src/MWLanguageSelector.vue app/src/views/SXQuickTutorial.vue app/src/lib/mediawiki.ui/components/MWCard/MWCard.vue modules/entrypoints/styles/ext.cx.entrypoints.uls.relevantlanguages.less modules/ve-cx/ui/tools/ve.ui.CXResetSectionTool.less app/src/components/SXPublisher/SXPublishOptionSelector.vue app/src/components/SXSentenceSelector/TranslatedSegmentCard.vue app/src/styles/page.less app/src/lib/mediawiki.ui/components/MWSpinner/MWSpinner.vue app/src/lib/mediawiki.ui/components/MWLayout/animations.less app/src/lib/mediawiki.ui/components/MWButtonGroup/MWButtonGroup.vue app/src/components/SXEditor/SXEditorOriginalContent.vue app/src/components/SXSectionSelector/SXSectionSelectorSectionListPresent.vue app/src/lib/mediawiki.ui/components/MWIcon/MWIcon.vue modules/entrypoints/styles/ext.cx.contributions.less app/src/lib/mediawiki.ui/components/MWLayout/grid-story.less app/src/lib/mediawiki.ui/components/MWRadioGroup/MWRadioGroup.vue app/src/components/SXContentComparator/SourceVsTargetSelector.vue modules/entrypoints/styles/ext.cx.interlanguagelink.less modules/entrypoints/ext.cx.entrypoints.uls.relevantlanguages/CxUlsEntrypoint.vue modules/dashboard/styles/ext.cx.lists.common.less modules/widgets/spinner/ext.cx.spinner.less modules/widgets/feedback/styles/ext.cx.feedback.less app/src/lib/mediawiki.ui/components/MWRadioGroup/MWRadio.vue app/src/components/SXSentenceSelector/BlockTemplateAdaptationCard.vue minT/src/MwSpinner.vue modules/ve-cx/ui/styles/ve.ui.CXLinkContextItem.less modules/ui/styles/widgets/mw.cx.ui.CategoryMultiselectWidget.less modules/tools/styles/mw.cx.tools.IssueTrackingTool.less modules/entrypoints/ext.cx.entrypoints.recentedit/RecentEditEntrypointInvitation.vue modules/ui/styles/mw.cx.ui.Categories.less modules/ve-cx/ce/styles/ve.ce.CXPlaceholderNode.less modules/ui/styles/mw.cx.ui.Columns.less skin/styles/menu.less modules/widgets/progressbar/ext.cx.progressbar.less minT/src/SearchTopicPage.vue app/src/components/CXDashboard/CXDashboard.vue app/src/components/SXSectionSelector/SXSectionSelectorSectionList.vue app/src/views/SXArticleSearch.vue app/src/lib/mediawiki.ui/styles/common.less modules/ui/styles/grid/grid-responsive.less modules/entrypoints/ext.cx.entrypoints.publishingfollowup/PublishFeedback.vue modules/ui/styles/widgets/mw.cx.ui.MessageWidget.less modules/ui/styles/mw.cx.ui.ToolsColumn.less app/src/components/CXDashboard/CXFavoriteList.vue modules/widgets/translator/ext.cx.translator.less modules/source/styles/mw.cx.SourcePageSelector.less modules/widgets/callout/ext.cx.callout.less modules/entrypoints/ext.cx.entrypoints.recenttranslation/RecentTranslationEntrypointDialog.vue modules/ui/styles/mw.cx.mixins.less minT/src/SkeletonLoader.vue minT/src/ViewTranslationPageOptions.vue app/src/components/SXPublisher/SXPublisherAnimationDialog.vue app/src/views/SXPublisher.vue app/src/views/Dashboard.vue modules/dashboard/styles/mw.cx.SuggestionList.less modules/tools/styles/mw.cx.tools.SearchTool.less minT/src/SearchResultItem.vue app/src/lib/mediawiki.ui/components/MWProgressBar/MWProgressBar.vue app/src/components/SXSentenceSelector/ProposedTranslationCard.vue app/src/components/CXDashboard/SXConfirmTranslationDeletionDialog.vue modules/entrypoints/ext.cx.entrypoints.languagesearcher/LanguageSearcherCardContainer.vue app/src/components/SXSentenceSelector/TranslatedSegmentCardHeader.vue skin/styles/skin.less modules/ve-cx/ce/styles/ve.ce.CXSectionNode.less modules/entrypoints/styles/ext.cx.entrypoints.newbytranslation.mobile.less app/src/components/SXSectionSelector/SXSectionSelectorSectionListMissing.vue app/src/components/SXSectionSelector/SXSectionSelectorViewArticleItem.vue app/src/components/SXSentenceSelector/SXTranslationSelector.vue modules/ui/styles/grid/grid-settings.less app/src/components/SXSentenceSelector/ProposedTranslationActionButtons.vue modules/entrypoints/styles/ext.cx.entrypoints.newarticle.less app/src/components/SXContentComparator/SXContentComparator.vue app/src/components/SXContentComparator/SXContentComparatorHeader.vue modules/ui/styles/widgets/mw.cx.ui.TranslationIssueWidget.less app/src/components/SXPublisher/SXPublisher.vue modules/entrypoints/styles/ext.cx.entrypoints.languagesearcher.less app/src/lib/mediawiki.ui/components/MWThumbnail/MWThumbnail.vue modules/ve-cx/ui/styles/ve.ui.CXPublishSettingsDialog.less modules/ui/styles/grid/grid-core.less app/src/components/SXLoginDialog.vue -f json
--- stdout ---
[{"source":"/src/repo/modules/ui/styles/mw.cx.ui.TranslationView.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/entrypoints/styles/ext.cx.entrypoints.mffrequentlanguages.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/widgets/mw.cx.ui.TranslationToolWidget.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/entrypoints/ext.cx.entrypoints.newbytranslation/NewByTranslationPopup.vue","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":true,"warnings":[{"line":239,"column":22,"endLine":239,"endColumn":23,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 2 tabs (@stylistic/indentation)"},{"line":218,"column":4,"endLine":218,"endColumn":25,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-thumbnail__image\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":247,"column":4,"endLine":247,"endColumn":13,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-icon\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"}]},{"source":"/src/repo/modules/ui/styles/mw.cx.ui.SourceColumn.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/mw.cx.common.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/widgets/mw.cx.ui.PageTitleWidget.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/dashboard/styles/mw.cx.TranslationList.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ve-cx/ce/styles/ve.ce.CXReferenceNode.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/grid/agora-grid.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/mw.cx.ui.LanguageFilter.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/mw.cx.ui.TranslationHeader.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/mw.cx.ui.Header.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/mw.cx.ui.CaptchaDialog.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/entrypoints/styles/ext.cx.entrypoints.contributionsmenu.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/widgets/mw.cx.ui.CategoryTagItemWidget.monobook.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/widgets/callout/ext.cx.callout.vector.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ve-cx/ui/styles/ve.ui.CXSurface.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ve-cx/ui/styles/ve.ui.CXDesktopContext.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/entrypoints/styles/ext.cx.contributions.vector.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/mw.cx.init.Translation.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/minT/styles/mint.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/widgets/mw.cx.ui.FeatureDiscoveryWidget.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/minT/src/ExploreLanguagesPage.vue","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":true,"warnings":[{"line":284,"column":1,"endLine":284,"endColumn":19,"rule":"selector-class-pattern","severity":"error","text":"Expected \".explore-languages\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":293,"column":3,"endLine":293,"endColumn":27,"rule":"selector-class-pattern","severity":"error","text":"Expected \".explore-languages-title\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":300,"column":3,"endLine":300,"endColumn":12,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-icon\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":375,"column":4,"endLine":375,"endColumn":13,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-icon\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"}]},{"source":"/src/repo/minT/entrypoints/ArticleFooterEntrypointCard.vue","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/source/styles/mw.cx.SelectedSourcePage.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/mw.cx.ui.TargetColumn.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ve-cx/ce/mixins/ve.ce.CXPendingNode.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ve-cx/ui/tools/ve.ui.CXSaveMTPreferenceTool.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/stats/styles/ext.cx.stats.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/entrypoints/styles/ext.cx.entrypoints.newbytranslation.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ve-cx/ce/styles/ve.ce.CXLinkAnnotation.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/widgets/mw.cx.ui.CategoryTagItemWidget.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/dashboard/styles/ext.cx.dashboard.monobook.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/dashboard/styles/ext.cx.dashboard.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/minT/src/ConfirmTopicPage.vue","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":true,"warnings":[{"line":314,"column":1,"endLine":314,"endColumn":22,"rule":"selector-class-pattern","severity":"error","text":"Expected \".confirm-topic-header\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":318,"column":2,"endLine":318,"endColumn":11,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-icon\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":323,"column":1,"endLine":323,"endColumn":23,"rule":"selector-class-pattern","severity":"error","text":"Expected \".confirm-topic-preview\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":339,"column":5,"endLine":339,"endColumn":14,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-icon\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":374,"column":4,"endLine":374,"endColumn":13,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-icon\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":384,"column":1,"endLine":384,"endColumn":33,"rule":"selector-class-pattern","severity":"error","text":"Expected \".confirm-topic-language-selector\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":388,"column":2,"endLine":388,"endColumn":11,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-icon\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":393,"column":1,"endLine":393,"endColumn":38,"rule":"selector-class-pattern","severity":"error","text":"Expected \".confirm-topic-go-back-link-container\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":398,"column":1,"endLine":398,"endColumn":49,"rule":"selector-class-pattern","severity":"error","text":"Expected \".confirm-topic-original-target-article-container\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":408,"column":4,"endLine":408,"endColumn":42,"rule":"selector-class-pattern","severity":"error","text":"Expected \".confirm-topic-original-target-article\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":412,"column":3,"endLine":412,"endColumn":17,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-menu-item\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":423,"column":6,"endLine":423,"endColumn":15,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-icon\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"}]},{"source":"/src/repo/modules/ve-cx/ce/styles/ve.ce.CXSentenceSegmentAnnotation.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/tools/styles/mw.cx.tools.InstructionsTool.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ve-cx/ui/styles/ve.ui.CXTranslationToolbar.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/mw.cx.variables.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/minT/src/ViewTranslationPage.vue","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":true,"warnings":[{"line":471,"column":16,"endLine":471,"endColumn":17,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 3 tabs (@stylistic/indentation)"},{"line":442,"column":35,"endLine":442,"endColumn":45,"rule":"declaration-no-important","severity":"error","text":"Unexpected !important (declaration-no-important)"},{"line":509,"column":12,"endLine":509,"endColumn":16,"rule":"declaration-property-value-disallowed-list","severity":"error","text":"Unexpected value \"none\" for property \"border\" (declaration-property-value-disallowed-list)"},{"line":409,"column":1,"endLine":409,"endColumn":20,"rule":"selector-class-pattern","severity":"error","text":"Expected \".translation-viewer\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":428,"column":3,"endLine":428,"endColumn":12,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-icon\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":440,"column":35,"endLine":440,"endColumn":48,"rule":"selector-class-pattern","severity":"error","text":"Expected \".firstHeading\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":440,"column":75,"endLine":440,"endColumn":91,"rule":"selector-class-pattern","severity":"error","text":"Expected \".section-heading\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":452,"column":4,"endLine":452,"endColumn":41,"rule":"selector-class-pattern","severity":"error","text":"Expected \".translation-viewer__source-page-link\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":453,"column":4,"endLine":453,"endColumn":13,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-icon\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":471,"column":4,"endLine":471,"endColumn":13,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-icon\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":493,"column":3,"endLine":493,"endColumn":12,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-icon\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":529,"column":1,"endLine":529,"endColumn":25,"rule":"selector-class-pattern","severity":"error","text":"Expected \".infobox-skeleton-loader\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":532,"column":2,"endLine":532,"endColumn":11,"rule":"selector-class-pattern","severity":"error","text":"Expected \".skeleton\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"}]},{"source":"/src/repo/modules/ui/styles/widgets/mw.cx.ui.TitleOptionWidget.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ve-cx/ce/styles/ve.ce.CXLintableNode.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/entrypoints/styles/ext.cx.entrypoints.recenttranslation.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/mw.cx.highlight.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/mw.cx.ui.Infobar.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/minT/src/MWLanguageSelector.vue","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":true,"warnings":[{"line":311,"column":3,"endLine":311,"endColumn":25,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-text-input__input\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":338,"column":2,"endLine":338,"endColumn":13,"rule":"selector-class-pattern","severity":"error","text":"Expected \".no-results\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":338,"column":16,"endLine":338,"endColumn":24,"rule":"selector-class-pattern","severity":"error","text":"Expected \".results\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":345,"column":2,"endLine":345,"endColumn":20,"rule":"selector-class-pattern","severity":"error","text":"Expected \".results-languages\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":345,"column":23,"endLine":345,"endColumn":54,"rule":"selector-class-pattern","severity":"error","text":"Expected \".results-languages--suggestions\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":349,"column":3,"endLine":349,"endColumn":12,"rule":"selector-class-pattern","severity":"error","text":"Expected \".language\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":360,"column":4,"endLine":360,"endColumn":16,"rule":"selector-class-pattern","severity":"error","text":"Expected \".few-results\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":364,"column":4,"endLine":364,"endColumn":17,"rule":"selector-class-pattern","severity":"error","text":"Expected \".some-results\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":368,"column":4,"endLine":368,"endColumn":17,"rule":"selector-class-pattern","severity":"error","text":"Expected \".many-results\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":373,"column":2,"endLine":373,"endColumn":33,"rule":"selector-class-pattern","severity":"error","text":"Expected \".results-languages--suggestions\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":383,"column":3,"endLine":383,"endColumn":21,"rule":"selector-class-pattern","severity":"error","text":"Expected \".results-languages\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":384,"column":5,"endLine":384,"endColumn":17,"rule":"selector-class-pattern","severity":"error","text":"Expected \".few-results\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":384,"column":23,"endLine":384,"endColumn":36,"rule":"selector-class-pattern","severity":"error","text":"Expected \".some-results\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":384,"column":42,"endLine":384,"endColumn":55,"rule":"selector-class-pattern","severity":"error","text":"Expected \".many-results\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":391,"column":3,"endLine":391,"endColumn":34,"rule":"selector-class-pattern","severity":"error","text":"Expected \".results-languages--suggestions\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":395,"column":3,"endLine":395,"endColumn":13,"rule":"selector-class-pattern","severity":"error","text":"Expected \".col-break\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":400,"column":2,"endLine":400,"endColumn":11,"rule":"selector-class-pattern","severity":"error","text":"Expected \".language\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"}]},{"source":"/src/repo/modules/entrypoints/styles/ext.cx.entrypoints.uls.relevantlanguages.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ve-cx/ui/tools/ve.ui.CXResetSectionTool.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/entrypoints/styles/ext.cx.contributions.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/entrypoints/styles/ext.cx.interlanguagelink.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/entrypoints/ext.cx.entrypoints.uls.relevantlanguages/CxUlsEntrypoint.vue","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":true,"warnings":[{"line":143,"column":16,"endLine":143,"endColumn":26,"rule":"declaration-no-important","severity":"error","text":"Unexpected !important (declaration-no-important)"},{"line":144,"column":18,"endLine":144,"endColumn":28,"rule":"declaration-no-important","severity":"error","text":"Unexpected !important (declaration-no-important)"},{"line":166,"column":11,"endLine":166,"endColumn":15,"rule":"declaration-property-value-disallowed-list","severity":"error","text":"Unexpected value \"none\" for property \"border\" (declaration-property-value-disallowed-list)"},{"line":192,"column":12,"endLine":192,"endColumn":16,"rule":"declaration-property-value-disallowed-list","severity":"error","text":"Unexpected value \"none\" for property \"border\" (declaration-property-value-disallowed-list)"},{"line":129,"column":2,"endLine":129,"endColumn":6,"rule":"selector-class-pattern","severity":"error","text":"Expected \".row\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":136,"column":2,"endLine":136,"endColumn":6,"rule":"selector-class-pattern","severity":"error","text":"Expected \".col\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":142,"column":2,"endLine":142,"endColumn":9,"rule":"selector-class-pattern","severity":"error","text":"Expected \".shrink\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"}]},{"source":"/src/repo/modules/dashboard/styles/ext.cx.lists.common.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/widgets/spinner/ext.cx.spinner.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/widgets/feedback/styles/ext.cx.feedback.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/minT/src/MwSpinner.vue","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ve-cx/ui/styles/ve.ui.CXLinkContextItem.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/widgets/mw.cx.ui.CategoryMultiselectWidget.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/tools/styles/mw.cx.tools.IssueTrackingTool.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/entrypoints/ext.cx.entrypoints.recentedit/RecentEditEntrypointInvitation.vue","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":true,"warnings":[{"line":204,"column":16,"endLine":204,"endColumn":26,"rule":"declaration-no-important","severity":"error","text":"Unexpected !important (declaration-no-important)"},{"line":205,"column":18,"endLine":205,"endColumn":28,"rule":"declaration-no-important","severity":"error","text":"Unexpected !important (declaration-no-important)"},{"line":186,"column":2,"endLine":186,"endColumn":6,"rule":"selector-class-pattern","severity":"error","text":"Expected \".row\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":193,"column":2,"endLine":193,"endColumn":6,"rule":"selector-class-pattern","severity":"error","text":"Expected \".col\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":199,"column":2,"endLine":199,"endColumn":7,"rule":"selector-class-pattern","severity":"error","text":"Expected \".pa-4\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":203,"column":2,"endLine":203,"endColumn":9,"rule":"selector-class-pattern","severity":"error","text":"Expected \".shrink\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"}]},{"source":"/src/repo/modules/ui/styles/mw.cx.ui.Categories.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ve-cx/ce/styles/ve.ce.CXPlaceholderNode.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/mw.cx.ui.Columns.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/skin/styles/menu.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/widgets/progressbar/ext.cx.progressbar.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/minT/src/SearchTopicPage.vue","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":true,"warnings":[{"line":189,"column":1,"endLine":189,"endColumn":21,"rule":"selector-class-pattern","severity":"error","text":"Expected \".search-topic-header\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":194,"column":2,"endLine":194,"endColumn":11,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-icon\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":199,"column":1,"endLine":199,"endColumn":20,"rule":"selector-class-pattern","severity":"error","text":"Expected \".search-topic-input\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":203,"column":1,"endLine":203,"endColumn":22,"rule":"selector-class-pattern","severity":"error","text":"Expected \".search-language-tabs\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":207,"column":1,"endLine":207,"endColumn":36,"rule":"selector-class-pattern","severity":"error","text":"Expected \".search-language-result-empty-state\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":212,"column":1,"endLine":212,"endColumn":24,"rule":"selector-class-pattern","severity":"error","text":"Expected \".search-language-result\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"}]},{"source":"/src/repo/modules/ui/styles/grid/grid-responsive.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/entrypoints/ext.cx.entrypoints.publishingfollowup/PublishFeedback.vue","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":true,"warnings":[{"line":182,"column":14,"endLine":182,"endColumn":19,"rule":"color-named","severity":"error","text":"Unexpected named color \"white\" (color-named)"},{"line":203,"column":16,"endLine":203,"endColumn":26,"rule":"declaration-no-important","severity":"error","text":"Unexpected !important (declaration-no-important)"},{"line":204,"column":18,"endLine":204,"endColumn":28,"rule":"declaration-no-important","severity":"error","text":"Unexpected !important (declaration-no-important)"},{"line":185,"column":2,"endLine":185,"endColumn":6,"rule":"selector-class-pattern","severity":"error","text":"Expected \".row\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":192,"column":2,"endLine":192,"endColumn":6,"rule":"selector-class-pattern","severity":"error","text":"Expected \".col\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":198,"column":2,"endLine":198,"endColumn":7,"rule":"selector-class-pattern","severity":"error","text":"Expected \".pa-4\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":202,"column":2,"endLine":202,"endColumn":9,"rule":"selector-class-pattern","severity":"error","text":"Expected \".shrink\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"}]},{"source":"/src/repo/modules/ui/styles/widgets/mw.cx.ui.MessageWidget.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/mw.cx.ui.ToolsColumn.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/widgets/translator/ext.cx.translator.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/source/styles/mw.cx.SourcePageSelector.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/widgets/callout/ext.cx.callout.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/entrypoints/ext.cx.entrypoints.recenttranslation/RecentTranslationEntrypointDialog.vue","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":true,"warnings":[{"line":227,"column":16,"endLine":227,"endColumn":26,"rule":"declaration-no-important","severity":"error","text":"Unexpected !important (declaration-no-important)"},{"line":228,"column":18,"endLine":228,"endColumn":28,"rule":"declaration-no-important","severity":"error","text":"Unexpected !important (declaration-no-important)"},{"line":277,"column":11,"endLine":277,"endColumn":15,"rule":"declaration-property-value-disallowed-list","severity":"error","text":"Unexpected value \"none\" for property \"border\" (declaration-property-value-disallowed-list)"},{"line":213,"column":2,"endLine":213,"endColumn":6,"rule":"selector-class-pattern","severity":"error","text":"Expected \".row\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":220,"column":2,"endLine":220,"endColumn":6,"rule":"selector-class-pattern","severity":"error","text":"Expected \".col\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":226,"column":2,"endLine":226,"endColumn":9,"rule":"selector-class-pattern","severity":"error","text":"Expected \".shrink\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":351,"column":18,"endLine":351,"endColumn":29,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-button\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":372,"column":51,"endLine":372,"endColumn":68,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-button__icon\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"}]},{"source":"/src/repo/modules/ui/styles/mw.cx.mixins.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/minT/src/SkeletonLoader.vue","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/minT/src/ViewTranslationPageOptions.vue","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":true,"warnings":[{"line":196,"column":1,"endLine":196,"endColumn":37,"rule":"selector-class-pattern","severity":"error","text":"Expected \".translation-viewer__options-overlay\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":224,"column":4,"endLine":224,"endColumn":13,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-icon\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"}]},{"source":"/src/repo/modules/dashboard/styles/mw.cx.SuggestionList.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/tools/styles/mw.cx.tools.SearchTool.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/minT/src/SearchResultItem.vue","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":true,"warnings":[{"line":103,"column":3,"endLine":103,"endColumn":25,"rule":"selector-class-pattern","severity":"error","text":"Expected \".thumbnail-placeholder\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"}]},{"source":"/src/repo/modules/entrypoints/ext.cx.entrypoints.languagesearcher/LanguageSearcherCardContainer.vue","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/skin/styles/skin.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ve-cx/ce/styles/ve.ce.CXSectionNode.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/entrypoints/styles/ext.cx.entrypoints.newbytranslation.mobile.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/grid/grid-settings.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/entrypoints/styles/ext.cx.entrypoints.newarticle.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/widgets/mw.cx.ui.TranslationIssueWidget.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/entrypoints/styles/ext.cx.entrypoints.languagesearcher.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ve-cx/ui/styles/ve.ui.CXPublishSettingsDialog.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/grid/grid-core.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]}]
--- end ---
$ /usr/bin/npm ci
--- stderr ---
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
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
--- stdout ---
added 1062 packages, and audited 1063 packages in 27s
204 packages are looking for funding
run `npm fund` for details
19 vulnerabilities (7 moderate, 12 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 ---
minT/styles/mint.less
3:1 ✖ Needless disable for "selector-class-pattern" --report-needless-disables
5:2 ✖ Needless disable for "selector-class-pattern" --report-needless-disables
10:2 ✖ Needless disable for "selector-class-pattern" --report-needless-disables
modules/dashboard/styles/mw.cx.SuggestionList.less
70:30 ✖ Needless disable for "declaration-no-important" --report-needless-disables
74:38 ✖ Needless disable for "declaration-no-important" --report-needless-disables
191:31 ✖ Needless disable for "declaration-no-important" --report-needless-disables
194:26 ✖ Needless disable for "declaration-no-important" --report-needless-disables
modules/entrypoints/styles/ext.cx.entrypoints.contributionsmenu.less
1:1 ✖ Needless disable for "selector-class-pattern" --report-needless-disables
modules/entrypoints/styles/ext.cx.interlanguagelink.less
5:3 ✖ Needless disable for "declaration-no-important" --report-needless-disables
29:4 ✖ Needless disable for "declaration-no-important" --report-needless-disables
modules/source/styles/mw.cx.SourcePageSelector.less
88:31 ✖ Needless disable for "all" --report-needless-disables
modules/ui/styles/mw.cx.mixins.less
49:1 ✖ Needless disable for "selector-class-pattern" --report-needless-disables
modules/ui/styles/mw.cx.ui.LanguageFilter.less
37:25 ✖ Needless disable for "declaration-no-important" --report-needless-disables
46:31 ✖ Needless disable for "declaration-no-important" --report-needless-disables
58:30 ✖ Needless disable for "declaration-no-important" --report-needless-disables
modules/ui/styles/mw.cx.ui.TranslationHeader.less
31:25 ✖ Needless disable for "declaration-no-important" --report-needless-disables
modules/ui/styles/mw.cx.ui.TranslationView.less
90:31 ✖ Needless disable for "declaration-no-important" --report-needless-disables
91:38 ✖ Needless disable for "declaration-no-important" --report-needless-disables
modules/ui/styles/widgets/mw.cx.ui.CategoryTagItemWidget.less
6:31 ✖ Needless disable for "declaration-no-important" --report-needless-disables
10:31 ✖ Needless disable for "declaration-no-important" --report-needless-disables
15:40 ✖ Needless disable for "declaration-no-important" --report-needless-disables
19:34 ✖ Needless disable for "declaration-no-important" --report-needless-disables
modules/ui/styles/widgets/mw.cx.ui.FeatureDiscoveryWidget.less
14:4 ✖ Needless disable for "declaration-no-important" --report-needless-disables
✖ 23 problems (23 errors, 0 warnings)
--- stdout ---
> test
> npm run test:cx2 && npm run test:cx3
> test:cx2
> npm -s run lint
Checked 1 message directory.
/src/repo/minT/src/SearchTopicPage.vue
157:1 warning The type 'PageSearchResult' is undefined jsdoc/no-undefined-types
/src/repo/minT/src/useEventLogging.js
12:1 warning This line has a length of 208. Maximum allowed is 100 max-len
/src/repo/minT/src/useUrlHelper.js
20:1 warning The type 'PageSearchResult' is undefined jsdoc/no-undefined-types
✖ 3 problems (0 errors, 3 warnings)
--- end ---
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 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.