import-js/eslint-plugin-import (eslint-plugin-import)
### [`v2.31.0`](https://redirect.github.com/import-js/eslint-plugin-import/blob/HEAD/CHANGELOG.md#2310---2024-10-03)
[Compare Source](https://redirect.github.com/import-js/eslint-plugin-import/compare/v2.30.0...v2.31.0)
##### Added
- support eslint v9 (\[[#2996](https://redirect.github.com/import-js/eslint-plugin-import/issues/2996)], thanks \[[@G-Rath](https://redirect.github.com/G-Rath)] \[[@michaelfaith](https://redirect.github.com/michaelfaith)])
- \[`order`]: allow validating named imports (\[[#3043](https://redirect.github.com/import-js/eslint-plugin-import/issues/3043)], thanks \[[@manuth](https://redirect.github.com/manuth)])
- \[`extensions`]: add the `checkTypeImports` option (\[[#2817](https://redirect.github.com/import-js/eslint-plugin-import/issues/2817)], thanks \[[@phryneas](https://redirect.github.com/phryneas)])
##### Fixed
- `ExportMap` / flat config: include `languageOptions` in context (\[[#3052](https://redirect.github.com/import-js/eslint-plugin-import/issues/3052)], thanks \[[@michaelfaith](https://redirect.github.com/michaelfaith)])
- \[`no-named-as-default`]: Allow using an identifier if the export is both a named and a default export (\[[#3032](https://redirect.github.com/import-js/eslint-plugin-import/issues/3032)], thanks \[[@akwodkiewicz](https://redirect.github.com/akwodkiewicz)])
- \[`export`]: False positive for exported overloaded functions in TS (\[[#3065](https://redirect.github.com/import-js/eslint-plugin-import/issues/3065)], thanks \[[@liuxingbaoyu](https://redirect.github.com/liuxingbaoyu)])
- `exportMap`: export map cache is tainted by unreliable parse results (\[[#3062](https://redirect.github.com/import-js/eslint-plugin-import/issues/3062)], thanks \[[@michaelfaith](https://redirect.github.com/michaelfaith)])
- `exportMap`: improve cacheKey when using flat config (\[[#3072](https://redirect.github.com/import-js/eslint-plugin-import/issues/3072)], thanks \[[@michaelfaith](https://redirect.github.com/michaelfaith)])
- adjust "is source type module" checks for flat config (\[[#2996](https://redirect.github.com/import-js/eslint-plugin-import/issues/2996)], thanks \[[@G-Rath](https://redirect.github.com/G-Rath)])
##### Changed
- \[Docs] \[`no-relative-packages`]: fix typo (\[[#3066](https://redirect.github.com/import-js/eslint-plugin-import/issues/3066)], thanks \[[@joshuaobrien](https://redirect.github.com/joshuaobrien)])
- \[Performance] \[`no-cycle`]: dont scc for each linted file (\[[#3068](https://redirect.github.com/import-js/eslint-plugin-import/issues/3068)], thanks \[[@soryy708](https://redirect.github.com/soryy708)])
- \[Docs] \[`no-cycle`]: add `disableScc` to docs (\[[#3070](https://redirect.github.com/import-js/eslint-plugin-import/issues/3070)], thanks \[[@soryy708](https://redirect.github.com/soryy708)])
- \[Tests] use re-exported `RuleTester` (\[[#3071](https://redirect.github.com/import-js/eslint-plugin-import/issues/3071)], thanks \[[@G-Rath](https://redirect.github.com/G-Rath)])
- \[Docs] \[`no-restricted-paths`]: fix grammar (\[[#3073](https://redirect.github.com/import-js/eslint-plugin-import/issues/3073)], thanks \[[@unbeauvoyage](https://redirect.github.com/unbeauvoyage)])
- \[Tests] \[`no-default-export`], \[`no-named-export`]: add test case (thanks \[[@G-Rath](https://redirect.github.com/G-Rath)])
### [`v2.30.0`](https://redirect.github.com/import-js/eslint-plugin-import/blob/HEAD/CHANGELOG.md#2300---2024-09-02)
[Compare Source](https://redirect.github.com/import-js/eslint-plugin-import/compare/v2.29.1...v2.30.0)
##### Added
- \[`dynamic-import-chunkname`]: add `allowEmpty` option to allow empty leading comments (\[[#2942](https://redirect.github.com/import-js/eslint-plugin-import/issues/2942)], thanks \[[@JiangWeixian](https://redirect.github.com/JiangWeixian)])
- \[`dynamic-import-chunkname`]: Allow empty chunk name when webpackMode: 'eager' is set; add suggestions to remove name in eager mode (\[[#3004](https://redirect.github.com/import-js/eslint-plugin-import/issues/3004)], thanks \[[@amsardesai](https://redirect.github.com/amsardesai)])
- \[`no-unused-modules`]: Add `ignoreUnusedTypeExports` option (\[[#3011](https://redirect.github.com/import-js/eslint-plugin-import/issues/3011)], thanks \[[@silverwind](https://redirect.github.com/silverwind)])
- add support for Flat Config (\[[#3018](https://redirect.github.com/import-js/eslint-plugin-import/issues/3018)], thanks \[[@michaelfaith](https://redirect.github.com/michaelfaith)])
##### Fixed
- \[`no-extraneous-dependencies`]: allow wrong path (\[[#3012](https://redirect.github.com/import-js/eslint-plugin-import/issues/3012)], thanks \[[@chabb](https://redirect.github.com/chabb)])
- \[`no-cycle`]: use scc algorithm to optimize (\[[#2998](https://redirect.github.com/import-js/eslint-plugin-import/issues/2998)], thanks \[[@soryy708](https://redirect.github.com/soryy708)])
- \[`no-duplicates`]: Removing duplicates breaks in TypeScript (\[[#3033](https://redirect.github.com/import-js/eslint-plugin-import/issues/3033)], thanks \[[@yesl-kim](https://redirect.github.com/yesl-kim)])
- \[`newline-after-import`]: fix considerComments option when require (\[[#2952](https://redirect.github.com/import-js/eslint-plugin-import/issues/2952)], thanks \[[@developer-bandi](https://redirect.github.com/developer-bandi)])
- \[`order`]: do not compare first path segment for relative paths (\[[#2682](https://redirect.github.com/import-js/eslint-plugin-import/issues/2682)]) (\[[#2885](https://redirect.github.com/import-js/eslint-plugin-import/issues/2885)], thanks \[[@mihkeleidast](https://redirect.github.com/mihkeleidast)])
##### Changed
- \[Docs] `no-extraneous-dependencies`: Make glob pattern description more explicit (\[[#2944](https://redirect.github.com/import-js/eslint-plugin-import/issues/2944)], thanks \[[@mulztob](https://redirect.github.com/mulztob)])
- \[`no-unused-modules`]: add console message to help debug \[[#2866](https://redirect.github.com/import-js/eslint-plugin-import/issues/2866)]
- \[Refactor] `ExportMap`: make procedures static instead of monkeypatching exportmap (\[[#2982](https://redirect.github.com/import-js/eslint-plugin-import/issues/2982)], thanks \[[@soryy708](https://redirect.github.com/soryy708)])
- \[Refactor] `ExportMap`: separate ExportMap instance from its builder logic (\[[#2985](https://redirect.github.com/import-js/eslint-plugin-import/issues/2985)], thanks \[[@soryy708](https://redirect.github.com/soryy708)])
- \[Docs] `order`: Add a quick note on how unbound imports and --fix (\[[#2640](https://redirect.github.com/import-js/eslint-plugin-import/issues/2640)], thanks \[[@minervabot](https://redirect.github.com/minervabot)])
- \[Tests] appveyor -> GHA (run tests on Windows in both pwsh and WSL + Ubuntu) (\[[#2987](https://redirect.github.com/import-js/eslint-plugin-import/issues/2987)], thanks \[[@joeyguerra](https://redirect.github.com/joeyguerra)])
- \[actions] migrate OSX tests to GHA (\[[ljharb#37](https://redirect.github.com/ljharb/eslint-plugin-import/issues/37)], thanks \[[@aks-](https://redirect.github.com/aks-)])
- \[Refactor] `exportMapBuilder`: avoid hoisting (\[[#2989](https://redirect.github.com/import-js/eslint-plugin-import/issues/2989)], thanks \[[@soryy708](https://redirect.github.com/soryy708)])
- \[Refactor] `ExportMap`: extract "builder" logic to separate files (\[[#2991](https://redirect.github.com/import-js/eslint-plugin-import/issues/2991)], thanks \[[@soryy708](https://redirect.github.com/soryy708)])
- \[Docs] \[`order`]: update the description of the `pathGroupsExcludedImportTypes` option (\[[#3036](https://redirect.github.com/import-js/eslint-plugin-import/issues/3036)], thanks \[[@liby](https://redirect.github.com/liby)])
- \[readme] Clarify how to install the plugin (\[[#2993](https://redirect.github.com/import-js/eslint-plugin-import/issues/2993)], thanks \[[@jwbth](https://redirect.github.com/jwbth)])
Configuration
📅 Schedule: Branch creation - "after 4pm on friday,before 9am on monday,every weekend" in timezone Europe/Paris, Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
â™» Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
[ ] If you want to rebase/retry this PR, check this box
This PR contains the following updates:
2.29.1
->2.31.0
Release Notes
import-js/eslint-plugin-import (eslint-plugin-import)
### [`v2.31.0`](https://redirect.github.com/import-js/eslint-plugin-import/blob/HEAD/CHANGELOG.md#2310---2024-10-03) [Compare Source](https://redirect.github.com/import-js/eslint-plugin-import/compare/v2.30.0...v2.31.0) ##### Added - support eslint v9 (\[[#2996](https://redirect.github.com/import-js/eslint-plugin-import/issues/2996)], thanks \[[@G-Rath](https://redirect.github.com/G-Rath)] \[[@michaelfaith](https://redirect.github.com/michaelfaith)]) - \[`order`]: allow validating named imports (\[[#3043](https://redirect.github.com/import-js/eslint-plugin-import/issues/3043)], thanks \[[@manuth](https://redirect.github.com/manuth)]) - \[`extensions`]: add the `checkTypeImports` option (\[[#2817](https://redirect.github.com/import-js/eslint-plugin-import/issues/2817)], thanks \[[@phryneas](https://redirect.github.com/phryneas)]) ##### Fixed - `ExportMap` / flat config: include `languageOptions` in context (\[[#3052](https://redirect.github.com/import-js/eslint-plugin-import/issues/3052)], thanks \[[@michaelfaith](https://redirect.github.com/michaelfaith)]) - \[`no-named-as-default`]: Allow using an identifier if the export is both a named and a default export (\[[#3032](https://redirect.github.com/import-js/eslint-plugin-import/issues/3032)], thanks \[[@akwodkiewicz](https://redirect.github.com/akwodkiewicz)]) - \[`export`]: False positive for exported overloaded functions in TS (\[[#3065](https://redirect.github.com/import-js/eslint-plugin-import/issues/3065)], thanks \[[@liuxingbaoyu](https://redirect.github.com/liuxingbaoyu)]) - `exportMap`: export map cache is tainted by unreliable parse results (\[[#3062](https://redirect.github.com/import-js/eslint-plugin-import/issues/3062)], thanks \[[@michaelfaith](https://redirect.github.com/michaelfaith)]) - `exportMap`: improve cacheKey when using flat config (\[[#3072](https://redirect.github.com/import-js/eslint-plugin-import/issues/3072)], thanks \[[@michaelfaith](https://redirect.github.com/michaelfaith)]) - adjust "is source type module" checks for flat config (\[[#2996](https://redirect.github.com/import-js/eslint-plugin-import/issues/2996)], thanks \[[@G-Rath](https://redirect.github.com/G-Rath)]) ##### Changed - \[Docs] \[`no-relative-packages`]: fix typo (\[[#3066](https://redirect.github.com/import-js/eslint-plugin-import/issues/3066)], thanks \[[@joshuaobrien](https://redirect.github.com/joshuaobrien)]) - \[Performance] \[`no-cycle`]: dont scc for each linted file (\[[#3068](https://redirect.github.com/import-js/eslint-plugin-import/issues/3068)], thanks \[[@soryy708](https://redirect.github.com/soryy708)]) - \[Docs] \[`no-cycle`]: add `disableScc` to docs (\[[#3070](https://redirect.github.com/import-js/eslint-plugin-import/issues/3070)], thanks \[[@soryy708](https://redirect.github.com/soryy708)]) - \[Tests] use re-exported `RuleTester` (\[[#3071](https://redirect.github.com/import-js/eslint-plugin-import/issues/3071)], thanks \[[@G-Rath](https://redirect.github.com/G-Rath)]) - \[Docs] \[`no-restricted-paths`]: fix grammar (\[[#3073](https://redirect.github.com/import-js/eslint-plugin-import/issues/3073)], thanks \[[@unbeauvoyage](https://redirect.github.com/unbeauvoyage)]) - \[Tests] \[`no-default-export`], \[`no-named-export`]: add test case (thanks \[[@G-Rath](https://redirect.github.com/G-Rath)]) ### [`v2.30.0`](https://redirect.github.com/import-js/eslint-plugin-import/blob/HEAD/CHANGELOG.md#2300---2024-09-02) [Compare Source](https://redirect.github.com/import-js/eslint-plugin-import/compare/v2.29.1...v2.30.0) ##### Added - \[`dynamic-import-chunkname`]: add `allowEmpty` option to allow empty leading comments (\[[#2942](https://redirect.github.com/import-js/eslint-plugin-import/issues/2942)], thanks \[[@JiangWeixian](https://redirect.github.com/JiangWeixian)]) - \[`dynamic-import-chunkname`]: Allow empty chunk name when webpackMode: 'eager' is set; add suggestions to remove name in eager mode (\[[#3004](https://redirect.github.com/import-js/eslint-plugin-import/issues/3004)], thanks \[[@amsardesai](https://redirect.github.com/amsardesai)]) - \[`no-unused-modules`]: Add `ignoreUnusedTypeExports` option (\[[#3011](https://redirect.github.com/import-js/eslint-plugin-import/issues/3011)], thanks \[[@silverwind](https://redirect.github.com/silverwind)]) - add support for Flat Config (\[[#3018](https://redirect.github.com/import-js/eslint-plugin-import/issues/3018)], thanks \[[@michaelfaith](https://redirect.github.com/michaelfaith)]) ##### Fixed - \[`no-extraneous-dependencies`]: allow wrong path (\[[#3012](https://redirect.github.com/import-js/eslint-plugin-import/issues/3012)], thanks \[[@chabb](https://redirect.github.com/chabb)]) - \[`no-cycle`]: use scc algorithm to optimize (\[[#2998](https://redirect.github.com/import-js/eslint-plugin-import/issues/2998)], thanks \[[@soryy708](https://redirect.github.com/soryy708)]) - \[`no-duplicates`]: Removing duplicates breaks in TypeScript (\[[#3033](https://redirect.github.com/import-js/eslint-plugin-import/issues/3033)], thanks \[[@yesl-kim](https://redirect.github.com/yesl-kim)]) - \[`newline-after-import`]: fix considerComments option when require (\[[#2952](https://redirect.github.com/import-js/eslint-plugin-import/issues/2952)], thanks \[[@developer-bandi](https://redirect.github.com/developer-bandi)]) - \[`order`]: do not compare first path segment for relative paths (\[[#2682](https://redirect.github.com/import-js/eslint-plugin-import/issues/2682)]) (\[[#2885](https://redirect.github.com/import-js/eslint-plugin-import/issues/2885)], thanks \[[@mihkeleidast](https://redirect.github.com/mihkeleidast)]) ##### Changed - \[Docs] `no-extraneous-dependencies`: Make glob pattern description more explicit (\[[#2944](https://redirect.github.com/import-js/eslint-plugin-import/issues/2944)], thanks \[[@mulztob](https://redirect.github.com/mulztob)]) - \[`no-unused-modules`]: add console message to help debug \[[#2866](https://redirect.github.com/import-js/eslint-plugin-import/issues/2866)] - \[Refactor] `ExportMap`: make procedures static instead of monkeypatching exportmap (\[[#2982](https://redirect.github.com/import-js/eslint-plugin-import/issues/2982)], thanks \[[@soryy708](https://redirect.github.com/soryy708)]) - \[Refactor] `ExportMap`: separate ExportMap instance from its builder logic (\[[#2985](https://redirect.github.com/import-js/eslint-plugin-import/issues/2985)], thanks \[[@soryy708](https://redirect.github.com/soryy708)]) - \[Docs] `order`: Add a quick note on how unbound imports and --fix (\[[#2640](https://redirect.github.com/import-js/eslint-plugin-import/issues/2640)], thanks \[[@minervabot](https://redirect.github.com/minervabot)]) - \[Tests] appveyor -> GHA (run tests on Windows in both pwsh and WSL + Ubuntu) (\[[#2987](https://redirect.github.com/import-js/eslint-plugin-import/issues/2987)], thanks \[[@joeyguerra](https://redirect.github.com/joeyguerra)]) - \[actions] migrate OSX tests to GHA (\[[ljharb#37](https://redirect.github.com/ljharb/eslint-plugin-import/issues/37)], thanks \[[@aks-](https://redirect.github.com/aks-)]) - \[Refactor] `exportMapBuilder`: avoid hoisting (\[[#2989](https://redirect.github.com/import-js/eslint-plugin-import/issues/2989)], thanks \[[@soryy708](https://redirect.github.com/soryy708)]) - \[Refactor] `ExportMap`: extract "builder" logic to separate files (\[[#2991](https://redirect.github.com/import-js/eslint-plugin-import/issues/2991)], thanks \[[@soryy708](https://redirect.github.com/soryy708)]) - \[Docs] \[`order`]: update the description of the `pathGroupsExcludedImportTypes` option (\[[#3036](https://redirect.github.com/import-js/eslint-plugin-import/issues/3036)], thanks \[[@liby](https://redirect.github.com/liby)]) - \[readme] Clarify how to install the plugin (\[[#2993](https://redirect.github.com/import-js/eslint-plugin-import/issues/2993)], thanks \[[@jwbth](https://redirect.github.com/jwbth)])Configuration
📅 Schedule: Branch creation - "after 4pm on friday,before 9am on monday,every weekend" in timezone Europe/Paris, Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
â™» Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.