-
-
Notifications
You must be signed in to change notification settings - Fork 57
Open
Description
-
Drop Node.js 18 supportsWe will keep Node.js 18 supports, but the plugin will go ESM-onlyThis allowseslint-plugin-import-xto become ESM-onlyIf we only target Node.js 20+, thenrequire(ESM)will be available ineslint.config.cjs.- On Node.js 20+ you can still use
require('eslint-plugin-import-x')w/o changes - On Node.js 18 you will have to use
importandeslint.config.mjs, but the rest of your app can remain CommonJS only.
- Make import resolver interface v3 default for
import-x/resolver- Resolvers using the v1 and v2 interface can be wrapped within our built-in compat utility, or be configured using the
import-x/resolver-legacyoptions (which will be removed in v6 I guess?). - With the v3 interface, it is way easier for custom resolvers to share instances across invocations, significantly improving the performance, see feat: implement custom resolver interface v3 #192
- Resolvers using the v1 and v2 interface can be wrapped within our built-in compat utility, or be configured using the
- Drop
eslint-import-resolver-nodewith our built-in Replacing the built-in default import resolver that supportsexportsandimportsfrompackage.json#208 feat: implement a resolver that supportsexports#209- Technically, this is not a breaking change since the resolve behavior will not change. But we support
importsandexportsmaps. This is because ljharb refuses to implement such features ineslint-import-resolver-nodeand even locks the related issue.
- Technically, this is not a breaking change since the resolve behavior will not change. But we support
- enable
fixoption by defaultextensionsrule, related feat(extensions): supportpathGroupOverridesandfixoptions #327 and feat: add suggestions support forextensionsunexpectedcase #329
kirillgroshkov, lishaduck and oceandrama
Metadata
Metadata
Assignees
Labels
No labels