Skip to content

Commit ce18a37

Browse files
renovate[bot]ota-meshi
andauthoredJan 15, 2024
fix(deps): update dependency eslint-compat-utils to ^0.2.0 (#293)
* fix(deps): update dependency eslint-compat-utils to ^0.2.0 * Create afraid-points-impress.md * update * fix * fix * fix * fix --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Yosuke Ota <otameshiyo23@gmail.com>
1 parent 5142303 commit ce18a37

38 files changed

+172
-109
lines changed
 

‎.changeset/afraid-points-impress.md

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"eslint-plugin-yml": minor
3+
---
4+
5+
fix(deps): update dependency eslint-compat-utils to ^0.2.0

‎.github/workflows/NodeCI.yml

+12
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,18 @@ jobs:
4545
npm install --legacy-peer-deps
4646
- name: Test
4747
run: npm test
48+
test-with-eslint9:
49+
runs-on: ubuntu-latest
50+
steps:
51+
- uses: actions/checkout@v4
52+
- uses: actions/setup-node@v4
53+
- name: Install Target Packages
54+
run: |+
55+
npm i -D eslint@^9.0.0-0 --legacy-peer-deps
56+
npx rimraf node_modules
57+
npm install --legacy-peer-deps
58+
- name: Test
59+
run: npm test
4860
test-with-eslint7:
4961
runs-on: ubuntu-latest
5062
steps:

‎package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@
5757
"homepage": "https://ota-meshi.github.io/eslint-plugin-yml/",
5858
"dependencies": {
5959
"debug": "^4.3.2",
60-
"eslint-compat-utils": "^0.1.1",
60+
"eslint-compat-utils": "^0.2.1",
6161
"lodash": "^4.17.21",
6262
"natural-compare": "^1.4.0",
6363
"yaml-eslint-parser": "^1.2.1"
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
{
2-
"parserOptions": {
3-
"defaultYAMLVersion": "1.1"
2+
"languageOptions": {
3+
"parserOptions": {
4+
"defaultYAMLVersion": "1.1"
5+
}
46
}
57
}
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
{
2-
"parserOptions": {
3-
"defaultYAMLVersion": "1.1"
2+
"languageOptions": {
3+
"parserOptions": {
4+
"defaultYAMLVersion": "1.1"
5+
}
46
}
57
}

‎tests/src/eslint-plugin.ts

+3-5
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,8 @@
11
import path from "path";
22
import assert from "assert";
3-
import { getESLint } from "eslint-compat-utils";
43
import plugin from "../../src/index";
4+
import { LegacyESLint } from "../utils/eslint-compat";
55

6-
// eslint-disable-next-line @typescript-eslint/naming-convention -- Class name
7-
const ESLint = getESLint();
86
// -----------------------------------------------------------------------------
97
// Tests
108
// -----------------------------------------------------------------------------
@@ -13,7 +11,7 @@ const TEST_CWD = path.join(__dirname, "../fixtures/integrations/eslint-plugin");
1311

1412
describe("Integration with eslint-plugin-yml", () => {
1513
it("should lint without errors", async () => {
16-
const engine = new ESLint({
14+
const engine = new LegacyESLint({
1715
cwd: TEST_CWD,
1816
extensions: [".js", ".yml"],
1917
plugins: { "eslint-plugin-yml": plugin as any },
@@ -28,7 +26,7 @@ describe("Integration with eslint-plugin-yml", () => {
2826

2927
// https://github.com/ota-meshi/eslint-plugin-yml/issues/89
3028
it("should lint without error when use the 'no-multi-spaces' rule and block node together.", async () => {
31-
const engine = new ESLint({
29+
const engine = new LegacyESLint({
3230
cwd: TEST_CWD,
3331
extensions: [".yml"],
3432
plugins: { "eslint-plugin-yml": plugin as any },

‎tests/src/rules/block-mapping-colon-indicator-newline.ts

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1-
import { RuleTester } from "eslint";
1+
import { RuleTester } from "../../utils/eslint-compat";
22
import rule from "../../../src/rules/block-mapping-colon-indicator-newline";
33
import { loadTestCases } from "../../utils/utils";
44

55
const tester = new RuleTester({
6-
parser: require.resolve("yaml-eslint-parser"),
7-
parserOptions: {
6+
languageOptions: {
7+
// eslint-disable-next-line @typescript-eslint/no-require-imports -- ignore
8+
parser: require("yaml-eslint-parser"),
89
ecmaVersion: 2020,
910
},
1011
});

‎tests/src/rules/block-mapping-question-indicator-newline.ts

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1-
import { RuleTester } from "eslint";
1+
import { RuleTester } from "../../utils/eslint-compat";
22
import rule from "../../../src/rules/block-mapping-question-indicator-newline";
33
import { loadTestCases } from "../../utils/utils";
44

55
const tester = new RuleTester({
6-
parser: require.resolve("yaml-eslint-parser"),
7-
parserOptions: {
6+
languageOptions: {
7+
// eslint-disable-next-line @typescript-eslint/no-require-imports -- ignore
8+
parser: require("yaml-eslint-parser"),
89
ecmaVersion: 2020,
910
},
1011
});

‎tests/src/rules/block-mapping.ts

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1-
import { RuleTester } from "eslint";
1+
import { RuleTester } from "../../utils/eslint-compat";
22
import rule from "../../../src/rules/block-mapping";
33
import { loadTestCases } from "../../utils/utils";
44

55
const tester = new RuleTester({
6-
parser: require.resolve("yaml-eslint-parser"),
7-
parserOptions: {
6+
languageOptions: {
7+
// eslint-disable-next-line @typescript-eslint/no-require-imports -- ignore
8+
parser: require("yaml-eslint-parser"),
89
ecmaVersion: 2020,
910
},
1011
});

‎tests/src/rules/block-sequence-hyphen-indicator-newline.ts

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1-
import { RuleTester } from "eslint";
1+
import { RuleTester } from "../../utils/eslint-compat";
22
import rule from "../../../src/rules/block-sequence-hyphen-indicator-newline";
33
import { loadTestCases } from "../../utils/utils";
44

55
const tester = new RuleTester({
6-
parser: require.resolve("yaml-eslint-parser"),
7-
parserOptions: {
6+
languageOptions: {
7+
// eslint-disable-next-line @typescript-eslint/no-require-imports -- ignore
8+
parser: require("yaml-eslint-parser"),
89
ecmaVersion: 2020,
910
},
1011
});

‎tests/src/rules/block-sequence.ts

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1-
import { RuleTester } from "eslint";
1+
import { RuleTester } from "../../utils/eslint-compat";
22
import rule from "../../../src/rules/block-sequence";
33
import { loadTestCases } from "../../utils/utils";
44

55
const tester = new RuleTester({
6-
parser: require.resolve("yaml-eslint-parser"),
7-
parserOptions: {
6+
languageOptions: {
7+
// eslint-disable-next-line @typescript-eslint/no-require-imports -- ignore
8+
parser: require("yaml-eslint-parser"),
89
ecmaVersion: 2020,
910
},
1011
});

‎tests/src/rules/file-extension.ts

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
1-
import { RuleTester } from "eslint";
1+
import { RuleTester } from "../../utils/eslint-compat";
22
import rule from "../../../src/rules/file-extension";
33

44
const tester = new RuleTester({
5-
parser: require.resolve("yaml-eslint-parser"),
6-
parserOptions: {
5+
languageOptions: {
6+
// eslint-disable-next-line @typescript-eslint/no-require-imports -- ignore
7+
parser: require("yaml-eslint-parser"),
78
ecmaVersion: 2020,
89
},
910
});

‎tests/src/rules/flow-mapping-curly-newline.ts

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1-
import { RuleTester } from "eslint";
1+
import { RuleTester } from "../../utils/eslint-compat";
22
import rule from "../../../src/rules/flow-mapping-curly-newline";
33
import { loadTestCases } from "../../utils/utils";
44

55
const tester = new RuleTester({
6-
parser: require.resolve("yaml-eslint-parser"),
7-
parserOptions: {
6+
languageOptions: {
7+
// eslint-disable-next-line @typescript-eslint/no-require-imports -- ignore
8+
parser: require("yaml-eslint-parser"),
89
ecmaVersion: 2020,
910
},
1011
});

‎tests/src/rules/flow-mapping-curly-spacing.ts

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1-
import { RuleTester } from "eslint";
1+
import { RuleTester } from "../../utils/eslint-compat";
22
import rule from "../../../src/rules/flow-mapping-curly-spacing";
33
import { loadTestCases } from "../../utils/utils";
44

55
const tester = new RuleTester({
6-
parser: require.resolve("yaml-eslint-parser"),
7-
parserOptions: {
6+
languageOptions: {
7+
// eslint-disable-next-line @typescript-eslint/no-require-imports -- ignore
8+
parser: require("yaml-eslint-parser"),
89
ecmaVersion: 2020,
910
},
1011
});

‎tests/src/rules/flow-sequence-bracket-newline.ts

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1-
import { RuleTester } from "eslint";
1+
import { RuleTester } from "../../utils/eslint-compat";
22
import rule from "../../../src/rules/flow-sequence-bracket-newline";
33
import { loadTestCases } from "../../utils/utils";
44

55
const tester = new RuleTester({
6-
parser: require.resolve("yaml-eslint-parser"),
7-
parserOptions: {
6+
languageOptions: {
7+
// eslint-disable-next-line @typescript-eslint/no-require-imports -- ignore
8+
parser: require("yaml-eslint-parser"),
89
ecmaVersion: 2020,
910
},
1011
});

‎tests/src/rules/flow-sequence-bracket-spacing.ts

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1-
import { RuleTester } from "eslint";
1+
import { RuleTester } from "../../utils/eslint-compat";
22
import rule from "../../../src/rules/flow-sequence-bracket-spacing";
33
import { loadTestCases } from "../../utils/utils";
44

55
const tester = new RuleTester({
6-
parser: require.resolve("yaml-eslint-parser"),
7-
parserOptions: {
6+
languageOptions: {
7+
// eslint-disable-next-line @typescript-eslint/no-require-imports -- ignore
8+
parser: require("yaml-eslint-parser"),
89
ecmaVersion: 2020,
910
},
1011
});

‎tests/src/rules/indent.ts

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1-
import { RuleTester } from "eslint";
1+
import { RuleTester } from "../../utils/eslint-compat";
22
import rule from "../../../src/rules/indent";
33
import { loadTestCases } from "../../utils/utils";
44

55
const tester = new RuleTester({
6-
parser: require.resolve("yaml-eslint-parser"),
7-
parserOptions: {
6+
languageOptions: {
7+
// eslint-disable-next-line @typescript-eslint/no-require-imports -- ignore
8+
parser: require("yaml-eslint-parser"),
89
ecmaVersion: 2020,
910
},
1011
});

‎tests/src/rules/key-name-casing.ts

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
1-
import { RuleTester } from "eslint";
1+
import { RuleTester } from "../../utils/eslint-compat";
22
import rule from "../../../src/rules/key-name-casing";
33

44
const tester = new RuleTester({
5-
parser: require.resolve("yaml-eslint-parser"),
6-
parserOptions: {
5+
languageOptions: {
6+
// eslint-disable-next-line @typescript-eslint/no-require-imports -- ignore
7+
parser: require("yaml-eslint-parser"),
78
ecmaVersion: 2020,
89
},
910
});

‎tests/src/rules/key-spacing.ts

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1-
import { RuleTester } from "eslint";
1+
import { RuleTester } from "../../utils/eslint-compat";
22
import rule from "../../../src/rules/key-spacing";
33
import { loadTestCases } from "../../utils/utils";
44

55
const tester = new RuleTester({
6-
parser: require.resolve("yaml-eslint-parser"),
7-
parserOptions: {
6+
languageOptions: {
7+
// eslint-disable-next-line @typescript-eslint/no-require-imports -- ignore
8+
parser: require("yaml-eslint-parser"),
89
ecmaVersion: 2020,
910
},
1011
});

‎tests/src/rules/no-empty-document.ts

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1-
import { RuleTester } from "eslint";
1+
import { RuleTester } from "../../utils/eslint-compat";
22
import rule from "../../../src/rules/no-empty-document";
33
import { loadTestCases } from "../../utils/utils";
44

55
const tester = new RuleTester({
6-
parser: require.resolve("yaml-eslint-parser"),
7-
parserOptions: {
6+
languageOptions: {
7+
// eslint-disable-next-line @typescript-eslint/no-require-imports -- ignore
8+
parser: require("yaml-eslint-parser"),
89
ecmaVersion: 2020,
910
},
1011
});

‎tests/src/rules/no-empty-key.ts

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1-
import { RuleTester } from "eslint";
1+
import { RuleTester } from "../../utils/eslint-compat";
22
import rule from "../../../src/rules/no-empty-key";
33
import { loadTestCases } from "../../utils/utils";
44

55
const tester = new RuleTester({
6-
parser: require.resolve("yaml-eslint-parser"),
7-
parserOptions: {
6+
languageOptions: {
7+
// eslint-disable-next-line @typescript-eslint/no-require-imports -- ignore
8+
parser: require("yaml-eslint-parser"),
89
ecmaVersion: 2020,
910
},
1011
});

‎tests/src/rules/no-empty-mapping-value.ts

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1-
import { RuleTester } from "eslint";
1+
import { RuleTester } from "../../utils/eslint-compat";
22
import rule from "../../../src/rules/no-empty-mapping-value";
33
import { loadTestCases } from "../../utils/utils";
4+
import * as yamlESLintParser from "yaml-eslint-parser";
45

56
const tester = new RuleTester({
6-
parser: require.resolve("yaml-eslint-parser"),
7-
parserOptions: {
7+
languageOptions: {
8+
parser: yamlESLintParser,
89
ecmaVersion: 2020,
910
},
1011
});

‎tests/src/rules/no-empty-sequence-entry.ts

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1-
import { RuleTester } from "eslint";
1+
import { RuleTester } from "../../utils/eslint-compat";
22
import rule from "../../../src/rules/no-empty-sequence-entry";
33
import { loadTestCases } from "../../utils/utils";
44

55
const tester = new RuleTester({
6-
parser: require.resolve("yaml-eslint-parser"),
7-
parserOptions: {
6+
languageOptions: {
7+
// eslint-disable-next-line @typescript-eslint/no-require-imports -- ignore
8+
parser: require("yaml-eslint-parser"),
89
ecmaVersion: 2020,
910
},
1011
});

‎tests/src/rules/no-irregular-whitespace.ts

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1-
import { RuleTester } from "eslint";
1+
import { RuleTester } from "../../utils/eslint-compat";
22
import rule from "../../../src/rules/no-irregular-whitespace";
33
import { loadTestCases } from "../../utils/utils";
44

55
const tester = new RuleTester({
6-
parser: require.resolve("yaml-eslint-parser"),
7-
parserOptions: {
6+
languageOptions: {
7+
// eslint-disable-next-line @typescript-eslint/no-require-imports -- ignore
8+
parser: require("yaml-eslint-parser"),
89
ecmaVersion: 2020,
910
},
1011
});

‎tests/src/rules/no-multiple-empty-lines.ts

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1-
import { RuleTester } from "eslint";
1+
import { RuleTester } from "../../utils/eslint-compat";
22
import rule from "../../../src/rules/no-multiple-empty-lines";
33
import { loadTestCases } from "../../utils/utils";
44

55
const tester = new RuleTester({
6-
parser: require.resolve("yaml-eslint-parser"),
7-
parserOptions: {
6+
languageOptions: {
7+
// eslint-disable-next-line @typescript-eslint/no-require-imports -- ignore
8+
parser: require("yaml-eslint-parser"),
89
ecmaVersion: 2020,
910
},
1011
});

‎tests/src/rules/no-tab-indent.ts

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1-
import { RuleTester } from "eslint";
1+
import { RuleTester } from "../../utils/eslint-compat";
22
import rule from "../../../src/rules/no-tab-indent";
33
import { loadTestCases } from "../../utils/utils";
44

55
const tester = new RuleTester({
6-
parser: require.resolve("yaml-eslint-parser"),
7-
parserOptions: {
6+
languageOptions: {
7+
// eslint-disable-next-line @typescript-eslint/no-require-imports -- ignore
8+
parser: require("yaml-eslint-parser"),
89
ecmaVersion: 2020,
910
},
1011
});

‎tests/src/rules/no-trailing-zeros.ts

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1-
import { RuleTester } from "eslint";
1+
import { RuleTester } from "../../utils/eslint-compat";
22
import rule from "../../../src/rules/no-trailing-zeros";
33
import { loadTestCases } from "../../utils/utils";
44

55
const tester = new RuleTester({
6-
parser: require.resolve("yaml-eslint-parser"),
7-
parserOptions: {
6+
languageOptions: {
7+
// eslint-disable-next-line @typescript-eslint/no-require-imports -- ignore
8+
parser: require("yaml-eslint-parser"),
89
ecmaVersion: 2020,
910
},
1011
});

‎tests/src/rules/plain-scalar.ts

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1-
import { RuleTester } from "eslint";
1+
import { RuleTester } from "../../utils/eslint-compat";
22
import rule from "../../../src/rules/plain-scalar";
33
import { loadTestCases } from "../../utils/utils";
44

55
const tester = new RuleTester({
6-
parser: require.resolve("yaml-eslint-parser"),
7-
parserOptions: {
6+
languageOptions: {
7+
// eslint-disable-next-line @typescript-eslint/no-require-imports -- ignore
8+
parser: require("yaml-eslint-parser"),
89
ecmaVersion: 2020,
910
},
1011
});

‎tests/src/rules/quotes.ts

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1-
import { RuleTester } from "eslint";
1+
import { RuleTester } from "../../utils/eslint-compat";
22
import rule from "../../../src/rules/quotes";
33
import { loadTestCases } from "../../utils/utils";
44

55
const tester = new RuleTester({
6-
parser: require.resolve("yaml-eslint-parser"),
7-
parserOptions: {
6+
languageOptions: {
7+
// eslint-disable-next-line @typescript-eslint/no-require-imports -- ignore
8+
parser: require("yaml-eslint-parser"),
89
ecmaVersion: 2020,
910
},
1011
});

‎tests/src/rules/require-string-key.ts

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1-
import { RuleTester } from "eslint";
1+
import { RuleTester } from "../../utils/eslint-compat";
22
import rule from "../../../src/rules/require-string-key";
33
import { loadTestCases } from "../../utils/utils";
44

55
const tester = new RuleTester({
6-
parser: require.resolve("yaml-eslint-parser"),
7-
parserOptions: {
6+
languageOptions: {
7+
// eslint-disable-next-line @typescript-eslint/no-require-imports -- ignore
8+
parser: require("yaml-eslint-parser"),
89
ecmaVersion: 2020,
910
},
1011
});

‎tests/src/rules/sort-keys.ts

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
import fs from "fs";
2-
import { RuleTester } from "eslint";
2+
import { RuleTester } from "../../utils/eslint-compat";
33
import rule from "../../../src/rules/sort-keys";
44
import { loadTestCases } from "../../utils/utils";
55

66
const tester = new RuleTester({
7-
parser: require.resolve("yaml-eslint-parser"),
8-
parserOptions: {
7+
languageOptions: {
8+
// eslint-disable-next-line @typescript-eslint/no-require-imports -- ignore
9+
parser: require("yaml-eslint-parser"),
910
ecmaVersion: 2020,
1011
},
1112
});

‎tests/src/rules/sort-sequence-values.ts

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1-
import { RuleTester } from "eslint";
1+
import { RuleTester } from "../../utils/eslint-compat";
22
import rule from "../../../src/rules/sort-sequence-values";
33
import { loadTestCases } from "../../utils/utils";
44

55
const tester = new RuleTester({
6-
parser: require.resolve("yaml-eslint-parser"),
7-
parserOptions: {
6+
languageOptions: {
7+
// eslint-disable-next-line @typescript-eslint/no-require-imports -- ignore
8+
parser: require("yaml-eslint-parser"),
89
ecmaVersion: 2020,
910
},
1011
});

‎tests/src/rules/spaced-comment.ts

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1-
import { RuleTester } from "eslint";
1+
import { RuleTester } from "../../utils/eslint-compat";
22
import rule from "../../../src/rules/spaced-comment";
33
import { loadTestCases } from "../../utils/utils";
44

55
const tester = new RuleTester({
6-
parser: require.resolve("yaml-eslint-parser"),
7-
parserOptions: {
6+
languageOptions: {
7+
// eslint-disable-next-line @typescript-eslint/no-require-imports -- ignore
8+
parser: require("yaml-eslint-parser"),
89
ecmaVersion: 2020,
910
},
1011
});

‎tests/src/rules/vue-custom-block/no-parsing-error.ts

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1-
import { RuleTester } from "eslint";
1+
import { RuleTester } from "../../../utils/eslint-compat";
22
import rule from "../../../../src/rules/vue-custom-block/no-parsing-error";
33
import { loadTestCases } from "../../../utils/utils";
44

55
const tester = new RuleTester({
6-
parser: require.resolve("yaml-eslint-parser"),
7-
parserOptions: {
6+
languageOptions: {
7+
// eslint-disable-next-line @typescript-eslint/no-require-imports -- ignore
8+
parser: require("yaml-eslint-parser"),
89
ecmaVersion: 2020,
910
},
1011
});

‎tests/utils/eslint-compat.ts

+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
import { getRuleTester } from "eslint-compat-utils/rule-tester";
2+
import { getLegacyESLint } from "eslint-compat-utils/eslint";
3+
4+
// eslint-disable-next-line @typescript-eslint/naming-convention -- class name
5+
export const RuleTester = getRuleTester();
6+
7+
// eslint-disable-next-line @typescript-eslint/naming-convention -- class name
8+
export const LegacyESLint = getLegacyESLint();

‎tests/utils/utils.ts

+13-7
Original file line numberDiff line numberDiff line change
@@ -227,9 +227,11 @@ export function makeSuiteTests(
227227
rules: {
228228
[ruleName]: ["error", ...options],
229229
},
230-
parser: isYaml(inputFile)
231-
? "yaml-eslint-parser"
232-
: "vue-eslint-parser",
230+
...({
231+
languageOptions: {
232+
parser: isYaml(inputFile) ? yamlESLintParser : vueESLintParser,
233+
},
234+
} as any),
233235
settings: {
234236
yml: { indent: 8 },
235237
},
@@ -300,8 +302,12 @@ function writeFixtures(
300302
rules: {
301303
[ruleName]: ["error", ...(config.options || [])],
302304
},
303-
parser: isYaml(inputFile) ? "yaml-eslint-parser" : "vue-eslint-parser",
304-
parserOptions: config?.parserOptions,
305+
...({
306+
languageOptions: {
307+
parser: isYaml(inputFile) ? yamlESLintParser : vueESLintParser,
308+
...config?.languageOptions,
309+
},
310+
} as any),
305311
settings: {
306312
yml: ymlSettings,
307313
},
@@ -384,7 +390,7 @@ function getConfig(ruleName: string, inputFile: string) {
384390
? `# ${filename}\n${code0}`
385391
: `<!--${filename}-->\n${code0}`;
386392
return Object.assign(
387-
isVue(inputFile) ? { parser: require.resolve("vue-eslint-parser") } : {},
393+
isVue(inputFile) ? { languageOptions: { parser: vueESLintParser } } : {},
388394
config,
389395
overrideConfig,
390396
{ code, filename },
@@ -409,7 +415,7 @@ function getConfig(ruleName: string, inputFile: string) {
409415
}
410416

411417
return Object.assign(
412-
isVue(inputFile) ? { parser: require.resolve("vue-eslint-parser") } : {},
418+
isVue(inputFile) ? { languageOptions: { parser: vueESLintParser } } : {},
413419
config,
414420
{ code, filename },
415421
);

‎tools/new-rule.ts

+8-7
Original file line numberDiff line numberDiff line change
@@ -68,16 +68,17 @@ export default createRule("${ruleId}", {
6868
);
6969
fs.writeFileSync(
7070
testFile,
71-
`import { RuleTester } from "eslint"
71+
`import { RuleTester } from "../../utils/eslint-compat";
7272
import rule from "../../../src/rules/${ruleId}"
73-
import { loadTestCases, makeSuiteTests } from "../../utils/utils"
73+
import { loadTestCases } from "../../utils/utils";
74+
import * as yamlESLintParser from "yaml-eslint-parser";
7475
7576
const tester = new RuleTester({
76-
parser: require.resolve("yaml-eslint-parser"),
77-
parserOptions: {
78-
ecmaVersion: 2020,
79-
},
80-
})
77+
languageOptions: {
78+
parser: yamlESLintParser,
79+
ecmaVersion: 2020,
80+
},
81+
});
8182
8283
// TODO Delete when it are done.
8384
makeSuiteTests("${ruleId}", {

‎tsconfig.json

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
{
22
"compilerOptions": {
33
"target": "es2017",
4-
"module": "commonjs",
4+
"module": "node16",
5+
"moduleResolution": "node16",
56
"lib": ["es2020"],
67
"allowJs": true,
78
"checkJs": true,

0 commit comments

Comments
 (0)
Please sign in to comment.