Skip to content

Commit 1c872bb

Browse files
committed
refactor(eslint): use rushstack patch to remove need to install peer-deps
1 parent 5c77a87 commit 1c872bb

File tree

4 files changed

+686
-552
lines changed

4 files changed

+686
-552
lines changed

.eslintrc.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
// This is a patch so that eslint will load the plugins as dependencies. Otherwise we can to install EVERYTHING in th root project
2+
require("@rushstack/eslint-patch/modern-module-resolution");
3+
14
module.exports = {
25
parser: "@typescript-eslint/parser",
36
parserOptions: {

README.md

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,12 +8,10 @@ This assumes you are using `pnpm`.
88
1. Install package + peer dependencies:
99

1010
```sh
11-
pnpm dlx install-peerdeps -P --dev @squonk/eslint-config
11+
pnpm add -D eslint @squonk/eslint-config
1212
```
1313

14-
This uses `pnpm` (`-P`) to install the peer dependencies from this package as dev dependencies.
15-
16-
2. Create (or modify) a `.eslintrc.js` (or `.eslintrc.js` if your `package.json` is to `"type": "module"`) file with the following:
14+
2. Create (or modify) a `.eslintrc.js` (or `.eslintrc.cjs` if your `package.json` is to `"type": "module"`) file with the following:
1715

1816
```js
1917
module.exports = {

package.json

Lines changed: 20 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@squonk/eslint-config",
3-
"version": "0.4.2",
3+
"version": "0.5.0",
44
"description": "ESLint config used by Squonk front-end apps",
55
"main": "index.js",
66
"repository": {
@@ -18,31 +18,30 @@
1818
"lint": "eslint .",
1919
"lint:fix": "eslint --fix"
2020
},
21-
"devDependencies": {
21+
"peerDependencies": {
22+
"eslint": ">=8",
23+
"prettier": ">=2.7",
24+
"typescript": ">=4.7"
25+
},
26+
"dependencies": {
2227
"@types/node": "^16.11.12",
2328
"@typescript-eslint/eslint-plugin": "^5.6.0",
2429
"@typescript-eslint/parser": "^5.6.0",
25-
"eslint": "^8.4.1",
26-
"eslint-config-prettier": "^8.3.0",
30+
"eslint": "^8.31.0",
31+
"eslint-config-prettier": "^8.6.0",
2732
"eslint-plugin-import": "^2.26.0",
28-
"eslint-plugin-prettier": "^4.0.0",
29-
"eslint-plugin-react": "^7.27.1",
30-
"eslint-plugin-react-hooks": "^4.3.0",
31-
"eslint-plugin-simple-import-sort": "^7.0.0",
33+
"eslint-plugin-prettier": "^4.2.1",
34+
"eslint-plugin-react": "^7.31.11",
35+
"eslint-plugin-react-hooks": "^4.6.0",
36+
"eslint-plugin-simple-import-sort": "^8.0.0",
3237
"eslint-plugin-unused-imports": "^2.0.0",
33-
"prettier": "^2.5.1",
34-
"typescript": "^4.5.3"
38+
"prettier": "^2.8.1",
39+
"typescript": "^4.9.4",
40+
"@rushstack/eslint-patch": "^1.2.0"
3541
},
36-
"peerDependencies": {
37-
"@typescript-eslint/eslint-plugin": "^5.6.0",
38-
"@typescript-eslint/parser": "^5.6.0",
39-
"eslint": "^8.4.1",
40-
"eslint-config-prettier": "^8.3.0",
41-
"eslint-plugin-prettier": "^4.0.0",
42-
"eslint-plugin-react": "^7.27.1",
43-
"eslint-plugin-react-hooks": "^4.3.0",
44-
"eslint-plugin-simple-import-sort": "^7.0.0",
45-
"eslint-plugin-unused-imports": "^2.0.0",
46-
"prettier": "^2.5.1"
42+
"eslintConfig": {
43+
"extends": [
44+
"./.eslintrc.js"
45+
]
4746
}
4847
}

0 commit comments

Comments
 (0)