Skip to content

Commit c3f23be

Browse files
committed
feat: support ESLint 8.x
1 parent d9a116f commit c3f23be

File tree

8 files changed

+1259
-1364
lines changed

8 files changed

+1259
-1364
lines changed

.github/workflows/check.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,21 +12,21 @@ jobs:
1212

1313
strategy:
1414
matrix:
15-
node-version: [15.x]
15+
node: [16]
1616

1717
steps:
1818
- uses: actions/checkout@v2
1919

20-
- uses: actions/setup-node@v1
20+
- uses: actions/setup-node@v2
2121
with:
22-
node-version: "${{ matrix.node-version }}"
22+
node-version: ${{ matrix.node }}
2323

2424
- name: Cache node_modules
2525
id: cache-node_modules
2626
uses: actions/cache@v2
2727
with:
2828
path: node_modules
29-
key: node_modules-${{ matrix.node-version }}-${{ hashFiles('package-lock.json') }}
29+
key: node_modules-${{ matrix.node }}-${{ hashFiles('package-lock.json') }}
3030

3131
- name: npm ci
3232
if: steps.cache-node_modules.outputs.cache-hit != 'true'

.github/workflows/test.yml

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ name: Test
33
on:
44
push:
55
branches:
6-
- "main"
6+
- main
77
pull_request:
88

99
jobs:
@@ -12,25 +12,26 @@ jobs:
1212

1313
strategy:
1414
matrix:
15-
node-version: [10.x, 12.x, 14.x, 15.x]
15+
node: [10, 12, 14, 16]
16+
eslint: [7, 8]
1617

1718
steps:
1819
- uses: actions/checkout@v2
1920

20-
- uses: actions/setup-node@v1
21+
- uses: actions/setup-node@v2
2122
with:
22-
node-version: "${{ matrix.node-version }}"
23+
node-version: ${{ matrix.node }}
2324

2425
- name: Cache node_modules
2526
id: cache-node_modules
2627
uses: actions/cache@v2
2728
with:
2829
path: node_modules
29-
key: node_modules-${{ matrix.node-version }}-${{ hashFiles('package-lock.json') }}
30+
key: node_modules-${{ matrix.node }}-${{ matrix.eslint }}-${{ hashFiles('package-lock.json') }}
3031

3132
- name: npm ci
3233
if: steps.cache-node_modules.outputs.cache-hit != 'true'
33-
run: npm ci
34+
run: npm ci && npm install eslint@${{ matrix.eslint }}
3435

3536
- name: Jest
3637
run: npx --no-install jest --coverage

examples/.eslintrc.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -236,6 +236,7 @@ module.exports = {
236236
// These files are used in README.md.
237237
files: ["readme-*.js"],
238238
parser: "babel-eslint",
239+
// parser: "@babel/eslint-parser",
239240
},
240241
{
241242
// TypeScript.

package-lock.json

Lines changed: 1232 additions & 1346 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -10,16 +10,19 @@
1010
"examples": "eslint --rulesdir src --no-ignore --fix-dry-run --format json --report-unused-disable-directives examples --ext .js,.ts,.vue,.md"
1111
},
1212
"devDependencies": {
13-
"@typescript-eslint/parser": "4.15.2",
13+
"@typescript-eslint/parser": "^5.2.0",
1414
"babel-eslint": "10.1.0",
15-
"doctoc": "2.0.0",
16-
"eslint": "7.21.0",
17-
"eslint-plugin-import": "2.22.1",
18-
"eslint-plugin-jest": "24.1.5",
19-
"eslint-plugin-markdown": "2.0.0",
20-
"eslint-plugin-vue": "7.6.0",
15+
"doctoc": "^2.0.1",
16+
"eslint": "^8.1.0",
17+
"eslint-plugin-import": "^2.25.2",
18+
"eslint-plugin-jest": "^25.2.2",
19+
"eslint-plugin-markdown": "^2.2.1",
20+
"eslint-plugin-vue": "^7.20.0",
2121
"jest": "26.6.3",
2222
"prettier": "2.2.1",
2323
"typescript": "4.2.2"
24+
},
25+
"peerDependencies": {
26+
"eslint": "^7.0.0 || ^8.0.0"
2427
}
2528
}

src/shared.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -752,7 +752,7 @@ function sortSpecifierItems(items) {
752752
compare(itemA.node.local.name, itemB.node.local.name) ||
753753
// Keep the original order if the names are the same. It’s not worth
754754
// trying to compare anything else, `import {a, a} from "mod"` is a syntax
755-
// error anyway (but babel-eslint kind of supports it).
755+
// error anyway (but @babel/eslint-parser kind of supports it).
756756
// istanbul ignore next
757757
itemA.index - itemB.index
758758
);

test/exports.test.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1109,6 +1109,8 @@ const javascriptRuleTester = new RuleTester({
11091109

11101110
const flowRuleTester = new RuleTester({
11111111
parser: require.resolve("babel-eslint"),
1112+
// parser: require.resolve("@babel/eslint-parser"),
1113+
// parserOptions: { requireConfigFile: false },
11121114
});
11131115

11141116
const typescriptRuleTester = new RuleTester({

test/imports.test.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1943,6 +1943,8 @@ const javascriptRuleTester = new RuleTester({
19431943

19441944
const flowRuleTester = new RuleTester({
19451945
parser: require.resolve("babel-eslint"),
1946+
// parser: require.resolve("@babel/eslint-parser"),
1947+
// parserOptions: { requireConfigFile: false },
19461948
});
19471949

19481950
const typescriptRuleTester = new RuleTester({

0 commit comments

Comments
 (0)