aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLibravatar Kristóf Marussy <kristof@marussy.com>2022-01-09 12:51:44 +0100
committerLibravatar Kristóf Marussy <kristof@marussy.com>2022-01-09 19:55:15 +0100
commitad193ec612cf3110ed847b7cb2fedb0b1080ef86 (patch)
treecb4931ffb8588a8a2475be881c4af91ed2ffef64
parentUpdate docs (diff)
downloadsophie-ad193ec612cf3110ed847b7cb2fedb0b1080ef86.tar.gz
sophie-ad193ec612cf3110ed847b7cb2fedb0b1080ef86.tar.zst
sophie-ad193ec612cf3110ed847b7cb2fedb0b1080ef86.zip
build: Disable single-run eslint-typescript
See https://github.com/typescript-eslint/typescript-eslint/issues/3851 Also upgrades dependencies and simplifies eslint config (used during debugging this issue to eliminate other possible sources of errors.) Signed-off-by: Kristóf Marussy <kristof@marussy.com>
-rw-r--r--.eslintrc.cjs18
-rw-r--r--.gitlab-ci.yml6
-rw-r--r--package.json8
-rw-r--r--packages/main/package.json6
-rw-r--r--packages/main/tsconfig.json1
-rw-r--r--packages/preload/package.json2
-rw-r--r--packages/preload/tsconfig.json1
-rw-r--r--packages/renderer/.eslinrc.cjs17
-rw-r--r--packages/renderer/package.json2
-rw-r--r--packages/renderer/src/components/BrowserViewPlaceholder.tsx1
-rw-r--r--packages/service-inject/.eslintrc.cjs12
-rw-r--r--packages/service-inject/tsconfig.json1
-rw-r--r--packages/service-preload/tsconfig.json1
-rw-r--r--packages/service-shared/.eslintrc.cjs11
-rw-r--r--packages/service-shared/tsconfig.json1
-rw-r--r--packages/shared/.eslintrc.cjs11
-rw-r--r--packages/shared/tsconfig.json1
-rw-r--r--yarn.lock15
18 files changed, 87 insertions, 28 deletions
diff --git a/.eslintrc.cjs b/.eslintrc.cjs
index 92af738..7b05d5d 100644
--- a/.eslintrc.cjs
+++ b/.eslintrc.cjs
@@ -9,8 +9,9 @@ module.exports = {
9 '@typescript-eslint', 9 '@typescript-eslint',
10 ], 10 ],
11 extends: [ 11 extends: [
12 'airbnb-base', 12 'airbnb',
13 'airbnb-typescript/base', 13 'airbnb-typescript',
14 'airbnb/hooks',
14 'plugin:@typescript-eslint/recommended', 15 'plugin:@typescript-eslint/recommended',
15 'plugin:@typescript-eslint/recommended-requiring-type-checking', 16 'plugin:@typescript-eslint/recommended-requiring-type-checking',
16 ], 17 ],
@@ -22,11 +23,13 @@ module.exports = {
22 }, 23 },
23 parser: '@typescript-eslint/parser', 24 parser: '@typescript-eslint/parser',
24 parserOptions: { 25 parserOptions: {
26 extraFileExtensions: ['.cjs'],
25 sourceType: 'module', 27 sourceType: 'module',
26 project, 28 project,
27 allowAutomaticSingleRunInference: true, 29 allowAutomaticSingleRunInference: false,
28 tsconfigRootDir: __dirname, 30 tsconfigRootDir: __dirname,
29 warnOnUnsupportedTypeScriptVersion: false, 31 warnOnUnsupportedTypeScriptVersion: false,
32 EXPERIMENTAL_useSourceOfProjectReferenceRedirect: false,
30 }, 33 },
31 settings: { 34 settings: {
32 'import/parsers': { 35 'import/parsers': {
@@ -89,10 +92,19 @@ module.exports = {
89 }, 92 },
90 { 93 {
91 files: [ 94 files: [
95 '**/*.cjs',
96 ],
97 parserOptions: {
98 sourceType: 'script',
99 },
100 },
101 {
102 files: [
92 '.electron-builder.config.cjs', 103 '.electron-builder.config.cjs',
93 'config/**/*.{cjs,js}', 104 'config/**/*.{cjs,js}',
94 'jest.config.js', 105 'jest.config.js',
95 'scripts/**/*.js', 106 'scripts/**/*.js',
107 'packages/*/.eslintrc.cjs',
96 'packages/*/*.config.js', 108 'packages/*/*.config.js',
97 ], 109 ],
98 env: { 110 env: {
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index c522036..1e94ade 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -16,7 +16,8 @@ default:
16lint: 16lint:
17 stage: code-quality 17 stage: code-quality
18 script: 18 script:
19 - yarn lint --format gitlab 19 - yarn types
20 - yarn lint:ci
20 artifacts: 21 artifacts:
21 reports: 22 reports:
22 codequality: gl-codequality.json 23 codequality: gl-codequality.json
@@ -24,7 +25,8 @@ lint:
24typecheck: 25typecheck:
25 stage: code-quality 26 stage: code-quality
26 script: 27 script:
27 - yarn typecheck 28 - yarn types
29 - yarn typecheck:ci
28 30
29test: 31test:
30 stage: test 32 stage: test
diff --git a/package.json b/package.json
index f632a8c..1ca72f9 100644
--- a/package.json
+++ b/package.json
@@ -27,8 +27,11 @@
27 "compile:electron-builder": "electron-builder build --config .electron-builder.config.cjs --dir", 27 "compile:electron-builder": "electron-builder build --config .electron-builder.config.cjs --dir",
28 "watch": "node scripts/watch.js", 28 "watch": "node scripts/watch.js",
29 "watch:test": "yarn test --watch", 29 "watch:test": "yarn test --watch",
30 "lint": "yarn types && eslint .", 30 "lint": "yarn types && yarn lint:only",
31 "typecheck": "yarn types && yarn workspaces foreach -vp run typecheck:workspace", 31 "lint:only": "cross-env NODE_OPTIONS=\"--max-old-space-size=16384\" eslint . --ext .cjs,.js,.jsx,.ts,.tsx",
32 "lint:ci": "yarn lint:only --format gitlab",
33 "typecheck": "yarn types && yarn typecheck:ci",
34 "typecheck:ci": "yarn workspaces foreach -vp run typecheck:workspace",
32 "typecheck:workspace": "yarn g:typecheck", 35 "typecheck:workspace": "yarn g:typecheck",
33 "g:typecheck": "cd $INIT_CWD && tsc", 36 "g:typecheck": "cd $INIT_CWD && tsc",
34 "types": "yarn workspaces foreach -vpt run types", 37 "types": "yarn workspaces foreach -vpt run types",
@@ -69,7 +72,6 @@
69 "git-repo-info": "^2.1.1", 72 "git-repo-info": "^2.1.1",
70 "jest": "^27.4.7", 73 "jest": "^27.4.7",
71 "rimraf": "^3.0.2", 74 "rimraf": "^3.0.2",
72 "rollup": "^2.63.0",
73 "typescript": "^4.5.4", 75 "typescript": "^4.5.4",
74 "vite": "^2.7.10" 76 "vite": "^2.7.10"
75 }, 77 },
diff --git a/packages/main/package.json b/packages/main/package.json
index d9abf51..f171448 100644
--- a/packages/main/package.json
+++ b/packages/main/package.json
@@ -23,7 +23,7 @@
23 "os-name": "^5.0.1" 23 "os-name": "^5.0.1"
24 }, 24 },
25 "devDependencies": { 25 "devDependencies": {
26 "@jest/globals": "^27.4.4", 26 "@jest/globals": "^27.4.6",
27 "@types/electron-devtools-installer": "^2.2.1", 27 "@types/electron-devtools-installer": "^2.2.1",
28 "@types/lodash-es": "^4.17.5", 28 "@types/lodash-es": "^4.17.5",
29 "@types/ms": "^0.7.31", 29 "@types/ms": "^0.7.31",
@@ -32,8 +32,6 @@
32 "esbuild": "^0.14.11", 32 "esbuild": "^0.14.11",
33 "git-repo-info": "^2.1.1", 33 "git-repo-info": "^2.1.1",
34 "jest": "^27.4.7", 34 "jest": "^27.4.7",
35 "jest-mock": "^27.4.6", 35 "jest-mock": "^27.4.6"
36 "rimraf": "^3.0.2",
37 "typescript": "^4.5.4"
38 } 36 }
39} 37}
diff --git a/packages/main/tsconfig.json b/packages/main/tsconfig.json
index 00a1985..bdf68f4 100644
--- a/packages/main/tsconfig.json
+++ b/packages/main/tsconfig.json
@@ -18,6 +18,7 @@
18 "include": [ 18 "include": [
19 "src/**/*.ts", 19 "src/**/*.ts",
20 "types/**/*.d.ts", 20 "types/**/*.d.ts",
21 ".eslintrc.cjs",
21 "esbuild.config.js", 22 "esbuild.config.js",
22 "jest.config.js" 23 "jest.config.js"
23 ] 24 ]
diff --git a/packages/preload/package.json b/packages/preload/package.json
index a03d7d9..d531634 100644
--- a/packages/preload/package.json
+++ b/packages/preload/package.json
@@ -16,7 +16,7 @@
16 "mobx-state-tree": "^5.1.0" 16 "mobx-state-tree": "^5.1.0"
17 }, 17 },
18 "devDependencies": { 18 "devDependencies": {
19 "@jest/globals": "^27.4.4", 19 "@jest/globals": "^27.4.6",
20 "@types/jest": "^27.4.0", 20 "@types/jest": "^27.4.0",
21 "jest": "^27.4.7", 21 "jest": "^27.4.7",
22 "jest-mock": "^27.4.6", 22 "jest-mock": "^27.4.6",
diff --git a/packages/preload/tsconfig.json b/packages/preload/tsconfig.json
index ff49538..0cb1390 100644
--- a/packages/preload/tsconfig.json
+++ b/packages/preload/tsconfig.json
@@ -19,6 +19,7 @@
19 "include": [ 19 "include": [
20 "src/**/*.ts", 20 "src/**/*.ts",
21 "types/**/*.d.ts", 21 "types/**/*.d.ts",
22 ".eslintrc.cjs",
22 "esbuild.config.js", 23 "esbuild.config.js",
23 "jest.config.js" 24 "jest.config.js"
24 ] 25 ]
diff --git a/packages/renderer/.eslinrc.cjs b/packages/renderer/.eslinrc.cjs
index 3385ac5..37d27ad 100644
--- a/packages/renderer/.eslinrc.cjs
+++ b/packages/renderer/.eslinrc.cjs
@@ -1,11 +1,18 @@
1module.exports = { 1module.exports = {
2 extends: [
3 'airbnb',
4 'airbnb/hooks',
5 'airbnb-typescript',
6 ],
7 env: { 2 env: {
8 node: false, 3 node: false,
9 browser: true, 4 browser: true,
10 }, 5 },
6 overrides: [
7 {
8 files: [
9 '.eslintrc.cjs',
10 'vite.config.js',
11 ],
12 env: {
13 browser: false,
14 node: true,
15 },
16 },
17 ],
11}; 18};
diff --git a/packages/renderer/package.json b/packages/renderer/package.json
index fde4c28..d6b8b45 100644
--- a/packages/renderer/package.json
+++ b/packages/renderer/package.json
@@ -24,7 +24,7 @@
24 "react-dom": "^17.0.2" 24 "react-dom": "^17.0.2"
25 }, 25 },
26 "devDependencies": { 26 "devDependencies": {
27 "@types/lodash-es": "^4.14.178", 27 "@types/lodash-es": "^4.17.5",
28 "@types/react": "^17.0.38", 28 "@types/react": "^17.0.38",
29 "@types/react-dom": "^17.0.11", 29 "@types/react-dom": "^17.0.11",
30 "@vitejs/plugin-react": "^1.1.4", 30 "@vitejs/plugin-react": "^1.1.4",
diff --git a/packages/renderer/src/components/BrowserViewPlaceholder.tsx b/packages/renderer/src/components/BrowserViewPlaceholder.tsx
index c671983..11c09d6 100644
--- a/packages/renderer/src/components/BrowserViewPlaceholder.tsx
+++ b/packages/renderer/src/components/BrowserViewPlaceholder.tsx
@@ -28,6 +28,7 @@ import { useStore } from './StoreProvider';
28export default observer(() => { 28export default observer(() => {
29 const store = useStore(); 29 const store = useStore();
30 30
31 // eslint-disable-next-line react-hooks/exhaustive-deps -- react-hooks doesn't support `throttle`.
31 const onResize = useCallback(throttle(([entry]: ResizeObserverEntry[]) => { 32 const onResize = useCallback(throttle(([entry]: ResizeObserverEntry[]) => {
32 if (entry) { 33 if (entry) {
33 const { 34 const {
diff --git a/packages/service-inject/.eslintrc.cjs b/packages/service-inject/.eslintrc.cjs
index 6ae3faf..5555f5b 100644
--- a/packages/service-inject/.eslintrc.cjs
+++ b/packages/service-inject/.eslintrc.cjs
@@ -3,4 +3,16 @@ module.exports = {
3 node: false, 3 node: false,
4 browser: true, 4 browser: true,
5 }, 5 },
6 overrides: [
7 {
8 files: [
9 '.eslintrc.cjs',
10 'esbuild.config.js',
11 ],
12 env: {
13 browser: false,
14 node: true,
15 },
16 },
17 ],
6}; 18};
diff --git a/packages/service-inject/tsconfig.json b/packages/service-inject/tsconfig.json
index cc61d63..8f84d98 100644
--- a/packages/service-inject/tsconfig.json
+++ b/packages/service-inject/tsconfig.json
@@ -15,6 +15,7 @@
15 ], 15 ],
16 "include": [ 16 "include": [
17 "src/**/*.ts", 17 "src/**/*.ts",
18 ".eslintrc.cjs",
18 "esbuild.config.js" 19 "esbuild.config.js"
19 ] 20 ]
20} 21}
diff --git a/packages/service-preload/tsconfig.json b/packages/service-preload/tsconfig.json
index 0372dde..768c464 100644
--- a/packages/service-preload/tsconfig.json
+++ b/packages/service-preload/tsconfig.json
@@ -16,6 +16,7 @@
16 "include": [ 16 "include": [
17 "src/**/*.ts", 17 "src/**/*.ts",
18 "types/**/*.ts", 18 "types/**/*.ts",
19 ".eslintrc.cjs",
19 "esbuild.config.js" 20 "esbuild.config.js"
20 ] 21 ]
21} 22}
diff --git a/packages/service-shared/.eslintrc.cjs b/packages/service-shared/.eslintrc.cjs
index 71d6ec4..c19829d 100644
--- a/packages/service-shared/.eslintrc.cjs
+++ b/packages/service-shared/.eslintrc.cjs
@@ -4,4 +4,15 @@ module.exports = {
4 node: false, 4 node: false,
5 browser: false, 5 browser: false,
6 }, 6 },
7 overrides: [
8 {
9 files: [
10 '.eslintrc.cjs',
11 'esbuild.config.js',
12 ],
13 env: {
14 node: true,
15 },
16 },
17 ],
7}; 18};
diff --git a/packages/service-shared/tsconfig.json b/packages/service-shared/tsconfig.json
index 79889d2..3e6c6ff 100644
--- a/packages/service-shared/tsconfig.json
+++ b/packages/service-shared/tsconfig.json
@@ -9,6 +9,7 @@
9 }, 9 },
10 "include": [ 10 "include": [
11 "src/**/*.ts", 11 "src/**/*.ts",
12 ".eslintrc.cjs",
12 "esbuild.config.js" 13 "esbuild.config.js"
13 ] 14 ]
14} 15}
diff --git a/packages/shared/.eslintrc.cjs b/packages/shared/.eslintrc.cjs
index 71d6ec4..c19829d 100644
--- a/packages/shared/.eslintrc.cjs
+++ b/packages/shared/.eslintrc.cjs
@@ -4,4 +4,15 @@ module.exports = {
4 node: false, 4 node: false,
5 browser: false, 5 browser: false,
6 }, 6 },
7 overrides: [
8 {
9 files: [
10 '.eslintrc.cjs',
11 'esbuild.config.js',
12 ],
13 env: {
14 node: true,
15 },
16 },
17 ],
7}; 18};
diff --git a/packages/shared/tsconfig.json b/packages/shared/tsconfig.json
index 79889d2..3e6c6ff 100644
--- a/packages/shared/tsconfig.json
+++ b/packages/shared/tsconfig.json
@@ -9,6 +9,7 @@
9 }, 9 },
10 "include": [ 10 "include": [
11 "src/**/*.ts", 11 "src/**/*.ts",
12 ".eslintrc.cjs",
12 "esbuild.config.js" 13 "esbuild.config.js"
13 ] 14 ]
14} 15}
diff --git a/yarn.lock b/yarn.lock
index 55deb08..85c7823 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -837,7 +837,7 @@ __metadata:
837 languageName: node 837 languageName: node
838 linkType: hard 838 linkType: hard
839 839
840"@jest/globals@npm:^27.4.4, @jest/globals@npm:^27.4.6": 840"@jest/globals@npm:^27.4.6":
841 version: 27.4.6 841 version: 27.4.6
842 resolution: "@jest/globals@npm:27.4.6" 842 resolution: "@jest/globals@npm:27.4.6"
843 dependencies: 843 dependencies:
@@ -1234,7 +1234,7 @@ __metadata:
1234 version: 0.0.0-use.local 1234 version: 0.0.0-use.local
1235 resolution: "@sophie/main@workspace:packages/main" 1235 resolution: "@sophie/main@workspace:packages/main"
1236 dependencies: 1236 dependencies:
1237 "@jest/globals": ^27.4.4 1237 "@jest/globals": ^27.4.6
1238 "@sophie/service-shared": "workspace:*" 1238 "@sophie/service-shared": "workspace:*"
1239 "@sophie/shared": "workspace:*" 1239 "@sophie/shared": "workspace:*"
1240 "@types/electron-devtools-installer": ^2.2.1 1240 "@types/electron-devtools-installer": ^2.2.1
@@ -1257,8 +1257,6 @@ __metadata:
1257 mobx-state-tree: ^5.1.0 1257 mobx-state-tree: ^5.1.0
1258 ms: ^2.1.3 1258 ms: ^2.1.3
1259 os-name: ^5.0.1 1259 os-name: ^5.0.1
1260 rimraf: ^3.0.2
1261 typescript: ^4.5.4
1262 languageName: unknown 1260 languageName: unknown
1263 linkType: soft 1261 linkType: soft
1264 1262
@@ -1266,7 +1264,7 @@ __metadata:
1266 version: 0.0.0-use.local 1264 version: 0.0.0-use.local
1267 resolution: "@sophie/preload@workspace:packages/preload" 1265 resolution: "@sophie/preload@workspace:packages/preload"
1268 dependencies: 1266 dependencies:
1269 "@jest/globals": ^27.4.4 1267 "@jest/globals": ^27.4.6
1270 "@sophie/shared": "workspace:*" 1268 "@sophie/shared": "workspace:*"
1271 "@types/jest": ^27.4.0 1269 "@types/jest": ^27.4.0
1272 electron: 16.0.6 1270 electron: 16.0.6
@@ -1289,7 +1287,7 @@ __metadata:
1289 "@mui/icons-material": ^5.2.5 1287 "@mui/icons-material": ^5.2.5
1290 "@mui/material": ^5.2.7 1288 "@mui/material": ^5.2.7
1291 "@sophie/shared": "workspace:*" 1289 "@sophie/shared": "workspace:*"
1292 "@types/lodash-es": ^4.14.178 1290 "@types/lodash-es": ^4.17.5
1293 "@types/react": ^17.0.38 1291 "@types/react": ^17.0.38
1294 "@types/react-dom": ^17.0.11 1292 "@types/react-dom": ^17.0.11
1295 "@vitejs/plugin-react": ^1.1.4 1293 "@vitejs/plugin-react": ^1.1.4
@@ -1510,7 +1508,7 @@ __metadata:
1510 languageName: node 1508 languageName: node
1511 linkType: hard 1509 linkType: hard
1512 1510
1513"@types/lodash-es@npm:^4.14.178, @types/lodash-es@npm:^4.17.5": 1511"@types/lodash-es@npm:^4.17.5":
1514 version: 4.17.5 1512 version: 4.17.5
1515 resolution: "@types/lodash-es@npm:4.17.5" 1513 resolution: "@types/lodash-es@npm:4.17.5"
1516 dependencies: 1514 dependencies:
@@ -7654,7 +7652,7 @@ __metadata:
7654 languageName: node 7652 languageName: node
7655 linkType: hard 7653 linkType: hard
7656 7654
7657"rollup@npm:^2.59.0, rollup@npm:^2.63.0": 7655"rollup@npm:^2.59.0":
7658 version: 2.63.0 7656 version: 2.63.0
7659 resolution: "rollup@npm:2.63.0" 7657 resolution: "rollup@npm:2.63.0"
7660 dependencies: 7658 dependencies:
@@ -7948,7 +7946,6 @@ __metadata:
7948 jest: ^27.4.7 7946 jest: ^27.4.7
7949 preload: ^0.1.0 7947 preload: ^0.1.0
7950 rimraf: ^3.0.2 7948 rimraf: ^3.0.2
7951 rollup: ^2.63.0
7952 typescript: ^4.5.4 7949 typescript: ^4.5.4
7953 vite: ^2.7.10 7950 vite: ^2.7.10
7954 languageName: unknown 7951 languageName: unknown