cli: switch out eslint and ts-checker plugins
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
This commit is contained in:
@@ -10,9 +10,11 @@
|
||||
"@module-federation/enhanced": "^0.9.0",
|
||||
"@pmmmwh/react-refresh-webpack-plugin": "^0.5.7",
|
||||
"esbuild-loader": "^4.0.0",
|
||||
"eslint-webpack-plugin": "^4.2.0",
|
||||
"fork-ts-checker-webpack-plugin": "^9.0.0",
|
||||
"mini-css-extract-plugin": "^2.4.2",
|
||||
"terser-webpack-plugin": "^5.1.3",
|
||||
"webpack": "^5.94.0",
|
||||
"webpack": "^5.96.0",
|
||||
"webpack-dev-server": "^5.0.0"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -58,6 +58,7 @@
|
||||
"@backstage/release-manifests": "workspace:^",
|
||||
"@backstage/types": "workspace:^",
|
||||
"@manypkg/get-packages": "^1.1.3",
|
||||
"@module-federation/enhanced": "^0.9.0",
|
||||
"@octokit/graphql": "^5.0.0",
|
||||
"@octokit/graphql-schema": "^13.7.0",
|
||||
"@octokit/oauth-app": "^4.2.0",
|
||||
@@ -101,9 +102,8 @@
|
||||
"eslint-plugin-react": "^7.37.2",
|
||||
"eslint-plugin-react-hooks": "^5.0.0",
|
||||
"eslint-plugin-unused-imports": "^4.1.4",
|
||||
"eslint-webpack-plugin": "^4.2.0",
|
||||
"eslint-rspack-plugin": "^4.2.1",
|
||||
"express": "^4.17.1",
|
||||
"fork-ts-checker-webpack-plugin": "^9.0.0",
|
||||
"fs-extra": "^11.2.0",
|
||||
"git-url-parse": "^15.0.0",
|
||||
"glob": "^7.1.7",
|
||||
@@ -142,6 +142,7 @@
|
||||
"sucrase": "^3.20.2",
|
||||
"swc-loader": "^0.2.3",
|
||||
"tar": "^6.1.12",
|
||||
"ts-checker-rspack-plugin": "^1.1.5",
|
||||
"ts-morph": "^24.0.0",
|
||||
"undici": "^7.2.3",
|
||||
"util": "^0.12.3",
|
||||
@@ -169,7 +170,6 @@
|
||||
"@backstage/plugin-scaffolder-node-test-utils": "workspace:^",
|
||||
"@backstage/test-utils": "workspace:^",
|
||||
"@backstage/theme": "workspace:^",
|
||||
"@module-federation/enhanced": "^0.9.0",
|
||||
"@pmmmwh/react-refresh-webpack-plugin": "^0.5.7",
|
||||
"@types/cross-spawn": "^6.0.2",
|
||||
"@types/ejs": "^3.1.3",
|
||||
@@ -189,6 +189,8 @@
|
||||
"@types/yarnpkg__lockfile": "^1.1.4",
|
||||
"del": "^8.0.0",
|
||||
"esbuild-loader": "^4.0.0",
|
||||
"eslint-webpack-plugin": "^4.2.0",
|
||||
"fork-ts-checker-webpack-plugin": "^9.0.0",
|
||||
"mini-css-extract-plugin": "^2.4.2",
|
||||
"msw": "^1.0.0",
|
||||
"nodemon": "^3.0.1",
|
||||
@@ -200,6 +202,8 @@
|
||||
"@module-federation/enhanced": "^0.9.0",
|
||||
"@pmmmwh/react-refresh-webpack-plugin": "^0.5.7",
|
||||
"esbuild-loader": "^4.0.0",
|
||||
"eslint-webpack-plugin": "^4.2.0",
|
||||
"fork-ts-checker-webpack-plugin": "^9.0.0",
|
||||
"mini-css-extract-plugin": "^2.4.2",
|
||||
"terser-webpack-plugin": "^5.1.3",
|
||||
"webpack": "~5.96.0",
|
||||
@@ -215,6 +219,12 @@
|
||||
"esbuild-loader": {
|
||||
"optional": true
|
||||
},
|
||||
"eslint-webpack-plugin": {
|
||||
"optional": true
|
||||
},
|
||||
"fork-ts-checker-webpack-plugin": {
|
||||
"optional": true
|
||||
},
|
||||
"mini-css-extract-plugin": {
|
||||
"optional": true
|
||||
},
|
||||
|
||||
@@ -20,8 +20,8 @@ import { rspack, Configuration } from '@rspack/core';
|
||||
|
||||
import { BundlingPaths } from './paths';
|
||||
import { Config } from '@backstage/config';
|
||||
import ESLintPlugin from 'eslint-webpack-plugin';
|
||||
import ForkTsCheckerWebpackPlugin from 'fork-ts-checker-webpack-plugin';
|
||||
import ESLintRspackPlugin from 'eslint-rspack-plugin';
|
||||
import { TsCheckerRspackPlugin } from 'ts-checker-rspack-plugin';
|
||||
import HtmlWebpackPlugin from 'html-webpack-plugin';
|
||||
import ModuleScopePlugin from 'react-dev-utils/ModuleScopePlugin';
|
||||
import { ModuleFederationPlugin } from '@module-federation/enhanced/rspack';
|
||||
@@ -156,11 +156,18 @@ export async function createConfig(
|
||||
}
|
||||
|
||||
if (checksEnabled) {
|
||||
const TsCheckerPlugin = webpack
|
||||
? (require('fork-ts-checker-webpack-plugin') as typeof import('fork-ts-checker-webpack-plugin'))
|
||||
: TsCheckerRspackPlugin;
|
||||
const ESLintPlugin = webpack
|
||||
? (require('eslint-webpack-plugin') as typeof import('eslint-webpack-plugin'))
|
||||
: ESLintRspackPlugin;
|
||||
plugins.push(
|
||||
new ForkTsCheckerWebpackPlugin({
|
||||
typescript: { configFile: paths.targetTsConfig, memoryLimit: 4096 },
|
||||
new TsCheckerPlugin({
|
||||
typescript: { configFile: paths.targetTsConfig, memoryLimit: 8192 },
|
||||
}),
|
||||
new ESLintPlugin({
|
||||
cache: false, // Cache seems broken
|
||||
context: paths.targetPath,
|
||||
files: ['**/*.(ts|tsx|mts|cts|js|jsx|mjs|cjs)'],
|
||||
}),
|
||||
|
||||
@@ -1896,14 +1896,14 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.10.4, @babel/code-frame@npm:^7.12.13, @babel/code-frame@npm:^7.16.0, @babel/code-frame@npm:^7.16.7, @babel/code-frame@npm:^7.24.2, @babel/code-frame@npm:^7.25.9, @babel/code-frame@npm:^7.26.0, @babel/code-frame@npm:^7.26.2, @babel/code-frame@npm:^7.8.3":
|
||||
version: 7.26.2
|
||||
resolution: "@babel/code-frame@npm:7.26.2"
|
||||
"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.10.4, @babel/code-frame@npm:^7.12.13, @babel/code-frame@npm:^7.16.0, @babel/code-frame@npm:^7.16.7, @babel/code-frame@npm:^7.24.2, @babel/code-frame@npm:^7.25.9, @babel/code-frame@npm:^7.26.0, @babel/code-frame@npm:^7.26.2, @babel/code-frame@npm:^7.27.1, @babel/code-frame@npm:^7.8.3":
|
||||
version: 7.27.1
|
||||
resolution: "@babel/code-frame@npm:7.27.1"
|
||||
dependencies:
|
||||
"@babel/helper-validator-identifier": "npm:^7.25.9"
|
||||
"@babel/helper-validator-identifier": "npm:^7.27.1"
|
||||
js-tokens: "npm:^4.0.0"
|
||||
picocolors: "npm:^1.0.0"
|
||||
checksum: 10/db2c2122af79d31ca916755331bb4bac96feb2b334cdaca5097a6b467fdd41963b89b14b6836a14f083de7ff887fc78fa1b3c10b14e743d33e12dbfe5ee3d223
|
||||
picocolors: "npm:^1.1.1"
|
||||
checksum: 10/721b8a6e360a1fa0f1c9fe7351ae6c874828e119183688b533c477aa378f1010f37cc9afbfc4722c686d1f5cdd00da02eab4ba7278a0c504fa0d7a321dcd4fdf
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
@@ -3029,6 +3029,7 @@ __metadata:
|
||||
eslint-plugin-react: "npm:^7.37.2"
|
||||
eslint-plugin-react-hooks: "npm:^5.0.0"
|
||||
eslint-plugin-unused-imports: "npm:^4.1.4"
|
||||
eslint-rspack-plugin: "npm:^4.2.1"
|
||||
eslint-webpack-plugin: "npm:^4.2.0"
|
||||
express: "npm:^4.17.1"
|
||||
fork-ts-checker-webpack-plugin: "npm:^9.0.0"
|
||||
@@ -3074,6 +3075,7 @@ __metadata:
|
||||
swc-loader: "npm:^0.2.3"
|
||||
tar: "npm:^6.1.12"
|
||||
terser-webpack-plugin: "npm:^5.1.3"
|
||||
ts-checker-rspack-plugin: "npm:^1.1.5"
|
||||
ts-morph: "npm:^24.0.0"
|
||||
undici: "npm:^7.2.3"
|
||||
util: "npm:^0.12.3"
|
||||
@@ -3089,6 +3091,8 @@ __metadata:
|
||||
"@module-federation/enhanced": ^0.9.0
|
||||
"@pmmmwh/react-refresh-webpack-plugin": ^0.5.7
|
||||
esbuild-loader: ^4.0.0
|
||||
eslint-webpack-plugin: ^4.2.0
|
||||
fork-ts-checker-webpack-plugin: ^9.0.0
|
||||
mini-css-extract-plugin: ^2.4.2
|
||||
terser-webpack-plugin: ^5.1.3
|
||||
webpack: ~5.96.0
|
||||
@@ -3100,6 +3104,10 @@ __metadata:
|
||||
optional: true
|
||||
esbuild-loader:
|
||||
optional: true
|
||||
eslint-webpack-plugin:
|
||||
optional: true
|
||||
fork-ts-checker-webpack-plugin:
|
||||
optional: true
|
||||
mini-css-extract-plugin:
|
||||
optional: true
|
||||
terser-webpack-plugin:
|
||||
@@ -10301,6 +10309,73 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@jsonjoy.com/base64@npm:^1.1.2":
|
||||
version: 1.1.2
|
||||
resolution: "@jsonjoy.com/base64@npm:1.1.2"
|
||||
peerDependencies:
|
||||
tslib: 2
|
||||
checksum: 10/d76bb58eff841c090d9bf69a073611ffa73c40a664ccbcea689f65961f57d7b24051269d06b437e4f6204285d6ba92f50f587c5e95c5f9e4f10b36a2ed4cd0c8
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@jsonjoy.com/buffers@npm:^1.0.0":
|
||||
version: 1.0.0
|
||||
resolution: "@jsonjoy.com/buffers@npm:1.0.0"
|
||||
peerDependencies:
|
||||
tslib: 2
|
||||
checksum: 10/3347a16a555398c19265203877b8e325be5facc1d875c0e85db0cc20b53418302257ed5af15bf53b84ff8337bd024a10be25ff3a02ebc54ae8e643577ca29e63
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@jsonjoy.com/codegen@npm:^1.0.0":
|
||||
version: 1.0.0
|
||||
resolution: "@jsonjoy.com/codegen@npm:1.0.0"
|
||||
peerDependencies:
|
||||
tslib: 2
|
||||
checksum: 10/a0afb03d2af4fbc1377c547e507f5db99a25f515d8c4b6b2cef1ff28145ac59fff12b6e1f41f9734cb62ea5619e7f9be1acd0908305d6f4176898ee534ee9a64
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@jsonjoy.com/json-pack@npm:^1.0.3":
|
||||
version: 1.10.0
|
||||
resolution: "@jsonjoy.com/json-pack@npm:1.10.0"
|
||||
dependencies:
|
||||
"@jsonjoy.com/base64": "npm:^1.1.2"
|
||||
"@jsonjoy.com/buffers": "npm:^1.0.0"
|
||||
"@jsonjoy.com/codegen": "npm:^1.0.0"
|
||||
"@jsonjoy.com/json-pointer": "npm:^1.0.1"
|
||||
"@jsonjoy.com/util": "npm:^1.9.0"
|
||||
hyperdyperid: "npm:^1.2.0"
|
||||
thingies: "npm:^2.5.0"
|
||||
peerDependencies:
|
||||
tslib: 2
|
||||
checksum: 10/5ad1eb008cf5f681dbc1301f5a7c33ca3a101d22773dbd2a9db4b02e5847c2f8b0c5f074c69f4ced5c24b3dc1dd85ddbc1688f0002fee9416869c579c34c4a8e
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@jsonjoy.com/json-pointer@npm:^1.0.1":
|
||||
version: 1.0.1
|
||||
resolution: "@jsonjoy.com/json-pointer@npm:1.0.1"
|
||||
dependencies:
|
||||
"@jsonjoy.com/util": "npm:^1.3.0"
|
||||
peerDependencies:
|
||||
tslib: 2
|
||||
checksum: 10/ff15df95df38677a09fe2155cf4521844c9f0653c77a7090bb6e726d275fb78ab6c3543c4ebdc14aff07e44da08b1545631a63e42e217c18059194957e060ed9
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@jsonjoy.com/util@npm:^1.3.0, @jsonjoy.com/util@npm:^1.9.0":
|
||||
version: 1.9.0
|
||||
resolution: "@jsonjoy.com/util@npm:1.9.0"
|
||||
dependencies:
|
||||
"@jsonjoy.com/buffers": "npm:^1.0.0"
|
||||
"@jsonjoy.com/codegen": "npm:^1.0.0"
|
||||
peerDependencies:
|
||||
tslib: 2
|
||||
checksum: 10/1a6e5301d725a7161b93ff707eb1a954bf4552a2fa96eee9a960d3ae3ed5f993d18b56dcff29e98036341a5968c5d1b2dfe21f76695390e7f0d89b81f24c85e0
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@juggle/resize-observer@npm:^3.3.1":
|
||||
version: 3.3.1
|
||||
resolution: "@juggle/resize-observer@npm:3.3.1"
|
||||
@@ -16870,7 +16945,7 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@rspack/lite-tapable@npm:1.0.1":
|
||||
"@rspack/lite-tapable@npm:1.0.1, @rspack/lite-tapable@npm:^1.0.1":
|
||||
version: 1.0.1
|
||||
resolution: "@rspack/lite-tapable@npm:1.0.1"
|
||||
checksum: 10/240b7832965bca5a52d1f03a8539dab5810958ce24b5a670405b2505d81350f10d668f4055648f5918bc18ac033e637bcb7f92189345f0f2f671b546019c2f9e
|
||||
@@ -29850,6 +29925,21 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"eslint-rspack-plugin@npm:^4.2.1":
|
||||
version: 4.2.1
|
||||
resolution: "eslint-rspack-plugin@npm:4.2.1"
|
||||
dependencies:
|
||||
"@types/eslint": "npm:^8.56.10"
|
||||
jest-worker: "npm:^29.7.0"
|
||||
micromatch: "npm:^4.0.8"
|
||||
normalize-path: "npm:^3.0.0"
|
||||
schema-utils: "npm:^4.2.0"
|
||||
peerDependencies:
|
||||
eslint: ^8.0.0 || ^9.0.0
|
||||
checksum: 10/c45639e660d13af63c58f8f80103a033f607b9d635d9315d7d859408134cc35e2e3f981805f7abdd6061ec9d8207cfc7c0d5a097df9ac8c7ccd707ca5aa14583
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"eslint-scope@npm:5.1.1, eslint-scope@npm:^5.1.1":
|
||||
version: 5.1.1
|
||||
resolution: "eslint-scope@npm:5.1.1"
|
||||
@@ -33249,6 +33339,13 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"hyperdyperid@npm:^1.2.0":
|
||||
version: 1.2.0
|
||||
resolution: "hyperdyperid@npm:1.2.0"
|
||||
checksum: 10/64abb5568ff17aa08ac0175ae55e46e22831c5552be98acdd1692081db0209f36fff58b31432017b4e1772c178962676a2cc3c54e4d5d7f020d7710cec7ad7a6
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"hyphenate-style-name@npm:^1.0.3":
|
||||
version: 1.0.3
|
||||
resolution: "hyphenate-style-name@npm:1.0.3"
|
||||
@@ -37837,12 +37934,15 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"memfs@npm:^4.6.0":
|
||||
version: 4.7.7
|
||||
resolution: "memfs@npm:4.7.7"
|
||||
"memfs@npm:^4.28.0, memfs@npm:^4.6.0":
|
||||
version: 4.36.0
|
||||
resolution: "memfs@npm:4.36.0"
|
||||
dependencies:
|
||||
"@jsonjoy.com/json-pack": "npm:^1.0.3"
|
||||
"@jsonjoy.com/util": "npm:^1.3.0"
|
||||
tree-dump: "npm:^1.0.1"
|
||||
tslib: "npm:^2.0.0"
|
||||
checksum: 10/311633e5857c91f41021b43f00eda8d540fed2c2d9e02c780fe78de720cfb55d15ab2d5b5ce9f2576637589b82e84488f1b9ff503563e817ed65200ad24617fb
|
||||
checksum: 10/4898187c3278bd127340ec3d6c51d1fa77faa50aad71a8a1e4b7c02abbccd8485dccc7f565291b386b0cc96e5ac06902e4645108fad44e458fe8c1dfee3caf42
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
@@ -47369,6 +47469,15 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"thingies@npm:^2.5.0":
|
||||
version: 2.5.0
|
||||
resolution: "thingies@npm:2.5.0"
|
||||
peerDependencies:
|
||||
tslib: ^2
|
||||
checksum: 10/b8b028a474aab798ff12ad5a5648306059976d3e23870327ae4ef640012953314b1d7f208dd5a8e9ebaeee6dd1cdb05503bb829699ee8f36514c37f771f2f035
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"throttle-debounce@npm:^3.0.1":
|
||||
version: 3.0.1
|
||||
resolution: "throttle-debounce@npm:3.0.1"
|
||||
@@ -47668,6 +47777,15 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"tree-dump@npm:^1.0.1":
|
||||
version: 1.0.3
|
||||
resolution: "tree-dump@npm:1.0.3"
|
||||
peerDependencies:
|
||||
tslib: 2
|
||||
checksum: 10/cf382e61cfb5e3ff8f03425b5bc1923e8f0e385b3a02f43d9d0a32d09da9984477e0f2a7698628662263d1d3f1af17e33486c77ff454978f0f9f07fb5d1fe9a2
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"tree-kill@npm:^1.2.2":
|
||||
version: 1.2.2
|
||||
resolution: "tree-kill@npm:1.2.2"
|
||||
@@ -47764,6 +47882,27 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"ts-checker-rspack-plugin@npm:^1.1.5":
|
||||
version: 1.1.5
|
||||
resolution: "ts-checker-rspack-plugin@npm:1.1.5"
|
||||
dependencies:
|
||||
"@babel/code-frame": "npm:^7.27.1"
|
||||
"@rspack/lite-tapable": "npm:^1.0.1"
|
||||
chokidar: "npm:^3.6.0"
|
||||
is-glob: "npm:^4.0.3"
|
||||
memfs: "npm:^4.28.0"
|
||||
minimatch: "npm:^9.0.5"
|
||||
picocolors: "npm:^1.1.1"
|
||||
peerDependencies:
|
||||
"@rspack/core": ^1.0.0
|
||||
typescript: ">=3.8.0"
|
||||
peerDependenciesMeta:
|
||||
"@rspack/core":
|
||||
optional: true
|
||||
checksum: 10/d43f87a5860f3b8f528bf8f43c78c2d958a18fa484d791a204047fc5672134fd689665021ee25b07f9f9d8c807cd291978f58b789bf531b4704a9a4e3ad84735
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"ts-dedent@npm:^2.0.0, ts-dedent@npm:^2.2.0":
|
||||
version: 2.2.0
|
||||
resolution: "ts-dedent@npm:2.2.0"
|
||||
|
||||
Reference in New Issue
Block a user