@oxlint/migrate 1.11.2 → 1.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- const version = "1.11.2";
1
+ const version = "1.13.0";
2
2
  const packageJson = {
3
3
  version
4
4
  };
@@ -39,9 +39,23 @@ const pedanticRules = [
39
39
  "react-hooks/rules-of-hooks",
40
40
  "@typescript-eslint/ban-ts-comment",
41
41
  "@typescript-eslint/ban-types",
42
+ "@typescript-eslint/no-misused-promises",
43
+ "@typescript-eslint/no-mixed-enums",
44
+ "@typescript-eslint/no-unsafe-argument",
45
+ "@typescript-eslint/no-unsafe-assignment",
46
+ "@typescript-eslint/no-unsafe-call",
42
47
  "@typescript-eslint/no-unsafe-function-type",
48
+ "@typescript-eslint/no-unsafe-member-access",
49
+ "@typescript-eslint/no-unsafe-return",
50
+ "@typescript-eslint/only-throw-error",
43
51
  "@typescript-eslint/prefer-enum-initializers",
52
+ "@typescript-eslint/prefer-promise-reject-errors",
44
53
  "@typescript-eslint/prefer-ts-expect-error",
54
+ "@typescript-eslint/related-getter-setter-pairs",
55
+ "@typescript-eslint/require-await",
56
+ "@typescript-eslint/restrict-plus-operands",
57
+ "@typescript-eslint/return-await",
58
+ "@typescript-eslint/switch-exhaustiveness-check",
45
59
  "unicorn/consistent-assert",
46
60
  "unicorn/consistent-empty-array-spread",
47
61
  "unicorn/escape-case",
@@ -116,6 +130,7 @@ const styleRules = [
116
130
  "no-template-curly-in-string",
117
131
  "no-ternary",
118
132
  "operator-assignment",
133
+ "prefer-template",
119
134
  "prefer-destructuring",
120
135
  "prefer-promise-reject-errors",
121
136
  "prefer-exponentiation-operator",
@@ -157,6 +172,7 @@ const styleRules = [
157
172
  "jest/no-test-prefixes",
158
173
  "jest/no-test-return-statement",
159
174
  "jest/no-untyped-mock-factory",
175
+ "jest/padding-around-test-blocks",
160
176
  "jest/prefer-each",
161
177
  "jest/prefer-called-with",
162
178
  "jest/prefer-comparison-matcher",
@@ -183,8 +199,10 @@ const styleRules = [
183
199
  "promise/prefer-catch",
184
200
  "promise/prefer-await-to-callbacks",
185
201
  "promise/prefer-await-to-then",
202
+ "react/jsx-fragments",
186
203
  "react/jsx-boolean-value",
187
204
  "react/jsx-curly-brace-presence",
205
+ "react/jsx-handler-names",
188
206
  "react/no-set-state",
189
207
  "react/prefer-es6-class",
190
208
  "react/self-closing-comp",
@@ -200,6 +218,8 @@ const styleRules = [
200
218
  "@typescript-eslint/prefer-for-of",
201
219
  "@typescript-eslint/prefer-function-type",
202
220
  "@typescript-eslint/prefer-namespace-keyword",
221
+ "@typescript-eslint/prefer-reduce-type-parameter",
222
+ "@typescript-eslint/prefer-return-this-type",
203
223
  "unicorn/catch-error-name",
204
224
  "unicorn/consistent-date-clone",
205
225
  "unicorn/consistent-existence-index-check",
@@ -292,6 +312,7 @@ const suspiciousRules = [
292
312
  "import/no-named-as-default-member",
293
313
  "import/no-self-import",
294
314
  "jest/no-commented-out-tests",
315
+ "promise/always-return",
295
316
  "promise/no-promise-in-callback",
296
317
  "react/iframe-missing-sandbox",
297
318
  "react/jsx-no-comment-textnodes",
@@ -299,11 +320,15 @@ const suspiciousRules = [
299
320
  "react/no-namespace",
300
321
  "react/react-in-jsx-scope",
301
322
  "react/style-prop-object",
302
- "@typescript-eslint/no-misused-promises",
303
- "@typescript-eslint/no-floating-promises",
304
323
  "@typescript-eslint/no-confusing-non-null-assertion",
305
324
  "@typescript-eslint/no-extraneous-class",
325
+ "@typescript-eslint/no-unnecessary-boolean-literal-compare",
326
+ "@typescript-eslint/no-unnecessary-template-expression",
327
+ "@typescript-eslint/no-unnecessary-type-arguments",
328
+ "@typescript-eslint/no-unnecessary-type-assertion",
306
329
  "@typescript-eslint/no-unnecessary-type-constraint",
330
+ "@typescript-eslint/no-unsafe-enum-comparison",
331
+ "@typescript-eslint/no-unsafe-type-assertion",
307
332
  "unicorn/consistent-function-scoping",
308
333
  "unicorn/no-instanceof-builtins",
309
334
  "unicorn/no-accessor-recursion",
@@ -368,7 +393,10 @@ const restrictionRules = [
368
393
  "@typescript-eslint/no-non-null-assertion",
369
394
  "@typescript-eslint/no-require-imports",
370
395
  "@typescript-eslint/no-var-requires",
396
+ "@typescript-eslint/non-nullable-type-assertion-style",
371
397
  "@typescript-eslint/prefer-literal-enum-member",
398
+ "@typescript-eslint/promise-function-async",
399
+ "@typescript-eslint/use-unknown-in-catch-callback-variable",
372
400
  "unicorn/no-abusive-eslint-disable",
373
401
  "unicorn/no-anonymous-default-export",
374
402
  "unicorn/no-array-for-each",
@@ -532,17 +560,32 @@ const correctnessRules = [
532
560
  "react/no-render-return-value",
533
561
  "react/no-string-refs",
534
562
  "react/void-dom-elements-no-children",
563
+ "@typescript-eslint/await-thenable",
564
+ "@typescript-eslint/no-floating-promises",
565
+ "@typescript-eslint/no-array-delete",
566
+ "@typescript-eslint/no-base-to-string",
567
+ "@typescript-eslint/no-confusing-void-expression",
535
568
  "@typescript-eslint/no-duplicate-enum-values",
569
+ "@typescript-eslint/no-duplicate-type-constituents",
536
570
  "@typescript-eslint/no-extra-non-null-assertion",
571
+ "@typescript-eslint/no-for-in-array",
572
+ "@typescript-eslint/no-implied-eval",
573
+ "@typescript-eslint/no-meaningless-void-operator",
537
574
  "@typescript-eslint/no-misused-new",
575
+ "@typescript-eslint/no-misused-spread",
538
576
  "@typescript-eslint/no-non-null-asserted-optional-chain",
577
+ "@typescript-eslint/no-redundant-type-constituents",
539
578
  "@typescript-eslint/no-this-alias",
540
579
  "@typescript-eslint/no-unnecessary-parameter-property-assignment",
541
580
  "@typescript-eslint/no-unsafe-declaration-merging",
581
+ "@typescript-eslint/no-unsafe-unary-minus",
542
582
  "@typescript-eslint/no-useless-empty-export",
543
583
  "@typescript-eslint/no-wrapper-object-types",
544
584
  "@typescript-eslint/prefer-as-const",
585
+ "@typescript-eslint/require-array-sort-compare",
586
+ "@typescript-eslint/restrict-template-expressions",
545
587
  "@typescript-eslint/triple-slash-reference",
588
+ "@typescript-eslint/unbound-method",
546
589
  "unicorn/no-invalid-fetch-options",
547
590
  "unicorn/no-await-in-promise-methods",
548
591
  "unicorn/no-empty-file",
@@ -3,6 +3,7 @@ import { cleanUpOxlintConfig } from "./cleanup.mjs";
3
3
  import { transformIgnorePatterns } from "./ignorePatterns.mjs";
4
4
  import { transformRuleEntry, detectNeededRulesPlugins } from "./plugins_rules.mjs";
5
5
  import { detectSameOverride } from "./overrides.mjs";
6
+ import fixForJsPlugins from "./js_plugin_fixes.mjs";
6
7
  const buildConfig = (configs, oxlintConfig, options) => {
7
8
  if (oxlintConfig === void 0) {
8
9
  if (options?.merge) {
@@ -70,8 +71,9 @@ const buildConfig = (configs, oxlintConfig, options) => {
70
71
  return oxlintConfig;
71
72
  };
72
73
  const main = async (configs, oxlintConfig, options) => {
73
- const resolved = await Promise.resolve(configs);
74
- return Array.isArray(resolved) ? buildConfig(resolved, oxlintConfig, options) : buildConfig([resolved], oxlintConfig, options);
74
+ const resolved = await Promise.resolve(fixForJsPlugins(configs));
75
+ const resolvedConfigs = Array.isArray(resolved) ? resolved : [resolved];
76
+ return buildConfig(resolvedConfigs, oxlintConfig, options);
75
77
  };
76
78
  export {
77
79
  main as default
@@ -0,0 +1,4 @@
1
+ import { Linter } from 'eslint';
2
+ type PossibleConfigs = Linter.Config | Linter.Config[] | Promise<Linter.Config> | Promise<Linter.Config[]>;
3
+ export default function fixForJsPlugins(configs: PossibleConfigs): PossibleConfigs;
4
+ export {};
@@ -0,0 +1,16 @@
1
+ const fixForAntfuEslintConfig = (config) => {
2
+ if ("renamePlugins" in config && typeof config.renamePlugins === "function") {
3
+ return config.renamePlugins({
4
+ ts: "@typescript-eslint",
5
+ test: "vitest",
6
+ next: "@next/next"
7
+ });
8
+ }
9
+ return config;
10
+ };
11
+ function fixForJsPlugins(configs) {
12
+ return fixForAntfuEslintConfig(configs);
13
+ }
14
+ export {
15
+ fixForJsPlugins as default
16
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oxlint/migrate",
3
- "version": "1.11.2",
3
+ "version": "1.13.0",
4
4
  "description": "Generates a `.oxlintrc.json` from a existing eslint flat config",
5
5
  "type": "module",
6
6
  "bin": {
@@ -54,7 +54,7 @@
54
54
  "eslint-plugin-header": "^3.1.1",
55
55
  "eslint-plugin-import": "^2.32.0",
56
56
  "eslint-plugin-import-x": "^4.16.0",
57
- "eslint-plugin-jsdoc": "^52.0.0",
57
+ "eslint-plugin-jsdoc": "^54.0.0",
58
58
  "eslint-plugin-local": "^6.0.0",
59
59
  "eslint-plugin-oxlint": "^1.3.0",
60
60
  "eslint-plugin-react": "^7.37.5",
@@ -65,7 +65,7 @@
65
65
  "husky": "^9.1.7",
66
66
  "jiti": "^2.4.2",
67
67
  "lint-staged": "^16.1.2",
68
- "oxlint": "^1.11.2",
68
+ "oxlint": "^1.13.0",
69
69
  "prettier": "^3.6.1",
70
70
  "typescript": "^5.8.3",
71
71
  "typescript-eslint": "^8.35.0",
@@ -78,12 +78,12 @@
78
78
  },
79
79
  "dependencies": {
80
80
  "commander": "^14.0.0",
81
- "oxc-parser": "^0.81.0",
81
+ "oxc-parser": "^0.82.0",
82
82
  "tinyglobby": "^0.2.14"
83
83
  },
84
84
  "peerDependencies": {
85
85
  "globals": "^14.0.0 || ^15.0.0 || ^16.0.0",
86
86
  "jiti": "*"
87
87
  },
88
- "packageManager": "pnpm@10.14.0"
88
+ "packageManager": "pnpm@10.15.0"
89
89
  }