Skip to content

Commit a6fc1ab

Browse files
committed
project: bump ESLint toolchain to v10 and TypeScript to v6
Upgrade ESLint from v9 to v10 along with all ESLint plugins and TypeScript from v5 to v6. Replace eslint-plugin-import with eslint-plugin-import-x which has native ESLint 10 and flat config support. Migrate eslint config to use native flat configs for import-x and security plugins instead of compat wrappers. Fix new unicorn/no-useless-collection-argument lint error in use-active-turns by removing redundant `?? []` fallback.
1 parent e116215 commit a6fc1ab

File tree

4 files changed

+1556
-2835
lines changed

4 files changed

+1556
-2835
lines changed

eslint.config.js

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import { fixupConfigRules, fixupPluginRules } from '@eslint/compat';
22
import typescriptEslint from '@typescript-eslint/eslint-plugin';
33
import security from 'eslint-plugin-security';
44
import jsdoc from 'eslint-plugin-jsdoc';
5-
import _import from 'eslint-plugin-import';
5+
import importX from 'eslint-plugin-import-x';
66
import simpleImportSort from 'eslint-plugin-simple-import-sort';
77
import unicorn from 'eslint-plugin-unicorn';
88
import globals from 'globals';
@@ -24,6 +24,8 @@ const compat = new FlatCompat({
2424
export default [
2525
unicorn.configs.recommended,
2626
jsdoc.configs['flat/recommended-typescript'],
27+
importX.flatConfigs.recommended,
28+
security.configs.recommended,
2729
{
2830
ignores: [
2931
'demo/**',
@@ -50,16 +52,12 @@ export default [
5052
'plugin:@typescript-eslint/recommended-type-checked',
5153
'plugin:@typescript-eslint/strict-type-checked',
5254
'plugin:@typescript-eslint/stylistic-type-checked',
53-
'plugin:security/recommended-legacy',
54-
'plugin:import/recommended',
5555
),
5656
),
5757
{
5858
plugins: {
5959
'@typescript-eslint': fixupPluginRules(typescriptEslint),
60-
security: fixupPluginRules(security),
6160
jsdoc,
62-
import: fixupPluginRules(_import),
6361
'simple-import-sort': simpleImportSort,
6462
'prefer-arrow-functions': fixupPluginRules(preferArrowFunctions),
6563
},
@@ -150,7 +148,7 @@ export default [
150148

151149
rules: {
152150
'@typescript-eslint/no-unused-vars': ['error'],
153-
'import/no-unresolved': 'off',
151+
'import-x/no-unresolved': 'off',
154152
'no-undef': 'off',
155153
'no-dupe-class-members': 'off',
156154
'require-await': 'off',
@@ -168,7 +166,7 @@ export default [
168166
},
169167
],
170168

171-
'import/extensions': [
169+
'import-x/extensions': [
172170
'error',
173171
'always',
174172
{

0 commit comments

Comments
 (0)