Open renovate[bot] opened 3 years ago
This PR contains the following updates:
^2.22.1
^2.31.0
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, 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.
This PR contains the following updates:
^2.22.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)]) ### [`v2.29.1`](https://redirect.github.com/import-js/eslint-plugin-import/blob/HEAD/CHANGELOG.md#2291---2023-12-14) [Compare Source](https://redirect.github.com/import-js/eslint-plugin-import/compare/v2.29.0...v2.29.1) ##### Fixed - \[`no-extraneous-dependencies`]: ignore `export type { ... } from '...'` when `includeTypes` is `false` (\[[#2919](https://redirect.github.com/import-js/eslint-plugin-import/issues/2919)], thanks \[[@Pandemic1617](https://redirect.github.com/Pandemic1617)]) - \[`no-unused-modules`]: support export patterns with array destructuring (\[[#2930](https://redirect.github.com/import-js/eslint-plugin-import/issues/2930)], thanks \[[@ljharb](https://redirect.github.com/ljharb)]) - \[Deps] update `tsconfig-paths` (\[[#2447](https://redirect.github.com/import-js/eslint-plugin-import/issues/2447)], thanks \[[@domdomegg](https://redirect.github.com/domdomegg)]) ### [`v2.29.0`](https://redirect.github.com/import-js/eslint-plugin-import/blob/HEAD/CHANGELOG.md#2290---2023-10-22) [Compare Source](https://redirect.github.com/import-js/eslint-plugin-import/compare/v2.28.1...v2.29.0) ##### Added - TypeScript config: add .cts and .mts extensions (\[[#2851](https://redirect.github.com/import-js/eslint-plugin-import/issues/2851)], thanks \[[@Zamiell](https://redirect.github.com/Zamiell)]) - \[`newline-after-import`]: new option `exactCount` and docs update (\[[#1933](https://redirect.github.com/import-js/eslint-plugin-import/issues/1933)], thanks \[[@anikethsaha](https://redirect.github.com/anikethsaha)] and \[[@reosarevok](https://redirect.github.com/reosarevok)]) - \[`newline-after-import`]: fix `exactCount` with `considerComments` false positive, when there is a leading comment (\[[#2884](https://redirect.github.com/import-js/eslint-plugin-import/issues/2884)], thanks \[[@kinland](https://redirect.github.com/kinland)]) ### [`v2.28.1`](https://redirect.github.com/import-js/eslint-plugin-import/blob/HEAD/CHANGELOG.md#2281---2023-08-18) [Compare Source](https://redirect.github.com/import-js/eslint-plugin-import/compare/v2.28.0...v2.28.1) ##### Fixed - \[`order`]: revert breaking change to single nested group (\[[#2854](https://redirect.github.com/import-js/eslint-plugin-import/issues/2854)], thanks \[[@yndajas](https://redirect.github.com/yndajas)]) ##### Changed - \[Docs] remove duplicate fixable notices in docs (\[[#2850](https://redirect.github.com/import-js/eslint-plugin-import/issues/2850)], thanks \[[@bmish](https://redirect.github.com/bmish)]) ### [`v2.28.0`](https://redirect.github.com/import-js/eslint-plugin-import/blob/HEAD/CHANGELOG.md#2280---2023-07-27) [Compare Source](https://redirect.github.com/import-js/eslint-plugin-import/compare/v2.27.5...v2.28.0) ##### Fixed - \[`no-duplicates`]: remove duplicate identifiers in duplicate imports (\[[#2577](https://redirect.github.com/import-js/eslint-plugin-import/issues/2577)], thanks \[[@joe-matsec](https://redirect.github.com/joe-matsec)]) - \[`consistent-type-specifier-style`]: fix accidental removal of comma in certain cases (\[[#2754](https://redirect.github.com/import-js/eslint-plugin-import/issues/2754)], thanks \[[@bradzacher](https://redirect.github.com/bradzacher)]) - \[Perf] `ExportMap`: Improve `ExportMap.for` performance on larger codebases (\[[#2756](https://redirect.github.com/import-js/eslint-plugin-import/issues/2756)], thanks \[[@leipert](https://redirect.github.com/leipert)]) - \[`no-extraneous-dependencies`]/TypeScript: do not error when importing inline type from dev dependencies (\[[#1820](https://redirect.github.com/import-js/eslint-plugin-import/issues/1820)], thanks \[[@andyogo](https://redirect.github.com/andyogo)]) - \[`newline-after-import`]/TypeScript: do not error when re-exporting a namespaced import (\[[#2832](https://redirect.github.com/import-js/eslint-plugin-import/issues/2832)], thanks \[[@laurens-dg](https://redirect.github.com/laurens-dg)]) - \[`order`]: partial fix for \[[#2687](https://redirect.github.com/import-js/eslint-plugin-import/issues/2687)] (thanks \[[@ljharb](https://redirect.github.com/ljharb)]) - \[`no-duplicates`]: Detect across type and regular imports (\[[#2835](https://redirect.github.com/import-js/eslint-plugin-import/issues/2835)], thanks \[[@benkrejci](https://redirect.github.com/benkrejci)]) - \[`extensions`]: handle `.` and `..` properly (\[[#2778](https://redirect.github.com/import-js/eslint-plugin-import/issues/2778)], thanks \[[@benasher44](https://redirect.github.com/benasher44)]) - \[`no-unused-modules`]: improve schema (thanks \[[@ljharb](https://redirect.github.com/ljharb)]) - \[`no-unused-modules`]: report error on binding instead of parent export (\[[#2842](https://redirect.github.com/import-js/eslint-plugin-import/issues/2842)], thanks \[[@Chamion](https://redirect.github.com/Chamion)]) ##### Changed - \[Docs] \[`no-duplicates`]: fix example schema (\[[#2684](https://redirect.github.com/import-js/eslint-plugin-import/issues/2684)], thanks \[[@simmo](https://redirect.github.com/simmo)]) - \[Docs] \[`group-exports`]: fix syntax highlighting (\[[#2699](https://redirect.github.com/import-js/eslint-plugin-import/issues/2699)], thanks \[[@devinrhode2](https://redirect.github.com/devinrhode2)]) - \[Docs] \[`extensions`]: reference node ESM behavior (\[[#2748](https://redirect.github.com/import-js/eslint-plugin-import/issues/2748)], thanks \[[@xM8WVqaG](https://redirect.github.com/xM8WVqaG)]) - \[Refactor] \[`exports-last`]: use `array.prototype.findlastindex` (thanks \[[@ljharb](https://redirect.github.com/ljharb)]) - \[Refactor] \[`no-anonymous-default-export`]: use `object.fromentries` (thanks \[[@ljharb](https://redirect.github.com/ljharb)]) - \[Refactor] \[`no-unused-modules`]: use `array.prototype.flatmap` (thanks \[[@ljharb](https://redirect.github.com/ljharb)]) ### [`v2.27.5`](https://redirect.github.com/import-js/eslint-plugin-import/blob/HEAD/CHANGELOG.md#2275---2023-01-16) [Compare Source](https://redirect.github.com/import-js/eslint-plugin-import/compare/v2.27.4...v2.27.5) ##### Fixed - \[`order]`: Fix group ranks order when alphabetizing (\[[#2674](https://redirect.github.com/import-js/eslint-plugin-import/issues/2674)], thanks \[[@Pearce-Ropion](https://redirect.github.com/Pearce-Ropion)]) ### [`v2.27.4`](https://redirect.github.com/import-js/eslint-plugin-import/blob/HEAD/CHANGELOG.md#2274---2023-01-11) [Compare Source](https://redirect.github.com/import-js/eslint-plugin-import/compare/v2.27.3...v2.27.4) ##### Fixed - `semver` should be a prod dep (\[[#2668](https://redirect.github.com/import-js/eslint-plugin-import/issues/2668)]) ### [`v2.27.3`](https://redirect.github.com/import-js/eslint-plugin-import/blob/HEAD/CHANGELOG.md#2273---2023-01-11) [Compare Source](https://redirect.github.com/import-js/eslint-plugin-import/compare/v2.27.2...v2.27.3) ##### Fixed - \[`no-empty-named-blocks`]: rewrite rule to only check import declarations (\[[#2666](https://redirect.github.com/import-js/eslint-plugin-import/issues/2666)]) ### [`v2.27.2`](https://redirect.github.com/import-js/eslint-plugin-import/blob/HEAD/CHANGELOG.md#2272---2023-01-11) [Compare Source](https://redirect.github.com/import-js/eslint-plugin-import/compare/v2.27.1...v2.27.2) ##### Fixed - \[`no-duplicates`]: do not unconditionally require `typescript` (\[[#2665](https://redirect.github.com/import-js/eslint-plugin-import/issues/2665)]) ### [`v2.27.1`](https://redirect.github.com/import-js/eslint-plugin-import/blob/HEAD/CHANGELOG.md#2271---2023-01-11) [Compare Source](https://redirect.github.com/import-js/eslint-plugin-import/compare/v2.27.0...v2.27.1) ##### Fixed - `array.prototype.flatmap` should be a prod dep (\[[#2664](https://redirect.github.com/import-js/eslint-plugin-import/issues/2664)], thanks \[[@cristobal](https://redirect.github.com/cristobal)]) ### [`v2.27.0`](https://redirect.github.com/import-js/eslint-plugin-import/blob/HEAD/CHANGELOG.md#2270---2023-01-11) [Compare Source](https://redirect.github.com/import-js/eslint-plugin-import/compare/v2.26.0...v2.27.0) ##### Added - \[`newline-after-import`]: add `considerComments` option (\[[#2399](https://redirect.github.com/import-js/eslint-plugin-import/issues/2399)], thanks \[[@pri1311](https://redirect.github.com/pri1311)]) - \[`no-cycle`]: add `allowUnsafeDynamicCyclicDependency` option (\[[#2387](https://redirect.github.com/import-js/eslint-plugin-import/issues/2387)], thanks \[[@GerkinDev](https://redirect.github.com/GerkinDev)]) - \[`no-restricted-paths`]: support arrays for `from` and `target` options (\[[#2466](https://redirect.github.com/import-js/eslint-plugin-import/issues/2466)], thanks \[[@AdriAt360](https://redirect.github.com/AdriAt360)]) - \[`no-anonymous-default-export`]: add `allowNew` option (\[[#2505](https://redirect.github.com/import-js/eslint-plugin-import/issues/2505)], thanks \[[@DamienCassou](https://redirect.github.com/DamienCassou)]) - \[`order`]: Add `distinctGroup` option (\[[#2395](https://redirect.github.com/import-js/eslint-plugin-import/issues/2395)], thanks \[[@hyperupcall](https://redirect.github.com/hyperupcall)]) - \[`no-extraneous-dependencies`]: Add `includeInternal` option (\[[#2541](https://redirect.github.com/import-js/eslint-plugin-import/issues/2541)], thanks \[[@bdwain](https://redirect.github.com/bdwain)]) - \[`no-extraneous-dependencies`]: Add `includeTypes` option (\[[#2543](https://redirect.github.com/import-js/eslint-plugin-import/issues/2543)], thanks \[[@bdwain](https://redirect.github.com/bdwain)]) - \[`order`]: new `alphabetize.orderImportKind` option to sort imports with same path based on their kind (`type`, `typeof`) (\[[#2544](https://redirect.github.com/import-js/eslint-plugin-import/issues/2544)], thanks \[[@stropho](https://redirect.github.com/stropho)]) - \[`consistent-type-specifier-style`]: add rule (\[[#2473](https://redirect.github.com/import-js/eslint-plugin-import/issues/2473)], thanks \[[@bradzacher](https://redirect.github.com/bradzacher)]) - Add \[`no-empty-named-blocks`] rule (\[[#2568](https://redirect.github.com/import-js/eslint-plugin-import/issues/2568)], thanks \[[@guilhermelimak](https://redirect.github.com/guilhermelimak)]) - \[`prefer-default-export`]: add "target" option (\[[#2602](https://redirect.github.com/import-js/eslint-plugin-import/issues/2602)], thanks \[[@azyzz228](https://redirect.github.com/azyzz228)]) - \[`no-absolute-path`]: add fixer (\[[#2613](https://redirect.github.com/import-js/eslint-plugin-import/issues/2613)], thanks \[[@adipascu](https://redirect.github.com/adipascu)]) - \[`no-duplicates`]: support inline type import with `inlineTypeImport` option (\[[#2475](https://redirect.github.com/import-js/eslint-plugin-import/issues/2475)], thanks \[[@snewcomer](https://redirect.github.com/snewcomer)]) ##### Fixed - \[`order`]: move nested imports closer to main import entry (\[[#2396](https://redirect.github.com/import-js/eslint-plugin-import/issues/2396)], thanks \[[@pri1311](https://redirect.github.com/pri1311)]) - \[`no-restricted-paths`]: fix an error message (\[[#2466](https://redirect.github.com/import-js/eslint-plugin-import/issues/2466)], thanks \[[@AdriAt360](https://redirect.github.com/AdriAt360)]) - \[`no-restricted-paths`]: use `Minimatch.match` instead of `minimatch` to comply with Windows Native paths (\[[#2466](https://redirect.github.com/import-js/eslint-plugin-import/issues/2466)], thanks \[[@AdriAt360](https://redirect.github.com/AdriAt360)]) - \[`order`]: require with member expression could not be fixed if alphabetize.order was used (\[[#2490](https://redirect.github.com/import-js/eslint-plugin-import/issues/2490)], thanks \[[@msvab](https://redirect.github.com/msvab)]) - \[`order`]: leave more space in rankings for consecutive path groups (\[[#2506](https://redirect.github.com/import-js/eslint-plugin-import/issues/2506)], thanks \[[@Pearce-Ropion](https://redirect.github.com/Pearce-Ropion)]) - \[`no-cycle`]: add ExportNamedDeclaration statements to dependencies (\[[#2511](https://redirect.github.com/import-js/eslint-plugin-import/issues/2511)], thanks \[[@BenoitZugmeyer](https://redirect.github.com/BenoitZugmeyer)]) - \[`dynamic-import-chunkname`]: prevent false report on a valid webpack magic comment (\[[#2330](https://redirect.github.com/import-js/eslint-plugin-import/issues/2330)], thanks \[[@mhmadhamster](https://redirect.github.com/mhmadhamster)]) - \[`export`]: do not error on TS export overloads (\[[#1590](https://redirect.github.com/import-js/eslint-plugin-import/issues/1590)], thanks \[[@ljharb](https://redirect.github.com/ljharb)]) - \[`no-unresolved`], \[`extensions`]: ignore type only exports (\[[#2436](https://redirect.github.com/import-js/eslint-plugin-import/issues/2436)], thanks \[[@Lukas-Kullmann](https://redirect.github.com/Lukas-Kullmann)]) - `ExportMap`: add missing param to function (\[[#2589](https://redirect.github.com/import-js/eslint-plugin-import/issues/2589)], thanks \[[@Fdawgs](https://redirect.github.com/Fdawgs)]) - \[`no-unused-modules`]: `checkPkgFieldObject` filters boolean fields from checks (\[[#2598](https://redirect.github.com/import-js/eslint-plugin-import/issues/2598)], thanks \[[@mpint](https://redirect.github.com/mpint)]) - \[`no-cycle`]: accept Flow `typeof` imports, just like `type` (\[[#2608](https://redirect.github.com/import-js/eslint-plugin-import/issues/2608)], thanks \[[@gnprice](https://redirect.github.com/gnprice)]) - \[`no-import-module-exports`]: avoid a false positive for import variables (\[[#2315](https://redirect.github.com/import-js/eslint-plugin-import/issues/2315)], thanks \[[@BarryThePenguin](https://redirect.github.com/BarryThePenguin)]) ##### Changed - \[Tests] \[`named`]: Run all TypeScript test (\[[#2427](https://redirect.github.com/import-js/eslint-plugin-import/issues/2427)], thanks \[[@ProdigySim](https://redirect.github.com/ProdigySim)]) - \[readme] note use of typescript in readme `import/extensions` section (\[[#2440](https://redirect.github.com/import-js/eslint-plugin-import/issues/2440)], thanks \[[@OutdatedVersion](https://redirect.github.com/OutdatedVersion)]) - \[Docs] \[`order`]: use correct default value (\[[#2392](https://redirect.github.com/import-js/eslint-plugin-import/issues/2392)], thanks \[[@hyperupcall](https://redirect.github.com/hyperupcall)]) - \[meta] replace git.io link in comments with the original URL (\[[#2444](https://redirect.github.com/import-js/eslint-plugin-import/issues/2444)], thanks \[[@liby](https://redirect.github.com/liby)]) - \[Docs] remove global install in readme (\[[#2412](https://redirect.github.com/import-js/eslint-plugin-import/issues/2412)], thanks \[[@aladdin-add](https://redirect.github.com/aladdin-add)]) - \[readme] clarify `eslint-import-resolver-typescript` usage (\[[#2503](https://redirect.github.com/import-js/eslint-plugin-import/issues/2503)], thanks \[[@JounQin](https://redirect.github.com/JounQin)]) - \[Refactor] \[`no-cycle`]: Add per-run caching of traversed paths (\[[#2419](https://redirect.github.com/import-js/eslint-plugin-import/issues/2419)], thanks \[[@nokel81](https://redirect.github.com/nokel81)]) - \[Performance] `ExportMap`: add caching after parsing for an ambiguous module (\[[#2531](https://redirect.github.com/import-js/eslint-plugin-import/issues/2531)], thanks \[[@stenin-nikita](https://redirect.github.com/stenin-nikita)]) - \[Docs] \[`no-useless-path-segments`]: fix paths (\[[#2424](https://redirect.github.com/import-js/eslint-plugin-import/issues/2424)], thanks \[[@s-h-a-d-o-w](https://redirect.github.com/s-h-a-d-o-w)]) - \[Tests] \[`no-cycle`]: add passing test cases (\[[#2438](https://redirect.github.com/import-js/eslint-plugin-import/issues/2438)], thanks \[[@georeith](https://redirect.github.com/georeith)]) - \[Refactor] \[`no-extraneous-dependencies`] improve performance using cache (\[[#2374](https://redirect.github.com/import-js/eslint-plugin-import/issues/2374)], thanks \[[@meowtec](https://redirect.github.com/meowtec)]) - \[meta] `CONTRIBUTING.md`: mention inactive PRs (\[[#2546](https://redirect.github.com/import-js/eslint-plugin-import/issues/2546)], thanks \[[@stropho](https://redirect.github.com/stropho)]) - \[readme] make json for setting groups multiline (\[[#2570](https://redirect.github.com/import-js/eslint-plugin-import/issues/2570)], thanks \[[@bertyhell](https://redirect.github.com/bertyhell)]) - \[Tests] \[`no-restricted-paths`]: Tests for `import type` statements (\[[#2459](https://redirect.github.com/import-js/eslint-plugin-import/issues/2459)], thanks \[[@golergka](https://redirect.github.com/golergka)]) - \[Tests] \[`no-restricted-paths`]: fix one failing `import type` test case, submitted by \[[@golergka](https://redirect.github.com/golergka)], thanks \[[@azyzz228](https://redirect.github.com/azyzz228)] - \[Docs] automate docs with eslint-doc-generator (\[[#2582](https://redirect.github.com/import-js/eslint-plugin-import/issues/2582)], thanks \[[@bmish](https://redirect.github.com/bmish)]) - \[readme] Increase clarity around typescript configuration (\[[#2588](https://redirect.github.com/import-js/eslint-plugin-import/issues/2588)], thanks \[[@Nfinished](https://redirect.github.com/Nfinished)]) - \[Docs] update `eslint-doc-generator` to v1.0.0 (\[[#2605](https://redirect.github.com/import-js/eslint-plugin-import/issues/2605)], thanks \[[@bmish](https://redirect.github.com/bmish)]) - \[Perf] \[`no-cycle`], \[`no-internal-modules`], \[`no-restricted-paths`]: use `anyOf` instead of `oneOf` (thanks \[[@ljharb](https://redirect.github.com/ljharb)], \[[@remcohaszing](https://redirect.github.com/remcohaszing)]) ### [`v2.26.0`](https://redirect.github.com/import-js/eslint-plugin-import/blob/HEAD/CHANGELOG.md#2260---2022-04-05) [Compare Source](https://redirect.github.com/import-js/eslint-plugin-import/compare/v2.25.4...v2.26.0) ##### Added - \[`no-named-default`], \[`no-default-export`], \[`prefer-default-export`], \[`no-named-export`], \[`export`], \[`named`], \[`namespace`], \[`no-unused-modules`]: support arbitrary module namespace names (\[[#2358](https://redirect.github.com/import-js/eslint-plugin-import/issues/2358)], thanks \[[@sosukesuzuki](https://redirect.github.com/sosukesuzuki)]) - \[`no-dynamic-require`]: support dynamic import with espree (\[[#2371](https://redirect.github.com/import-js/eslint-plugin-import/issues/2371)], thanks \[[@sosukesuzuki](https://redirect.github.com/sosukesuzuki)]) - \[`no-relative-packages`]: add fixer (\[[#2381](https://redirect.github.com/import-js/eslint-plugin-import/issues/2381)], thanks \[[@forivall](https://redirect.github.com/forivall)]) ##### Fixed - \[`default`]: `typescript-eslint-parser`: avoid a crash on exporting as namespace (thanks \[[@ljharb](https://redirect.github.com/ljharb)]) - \[`export`]/TypeScript: false positive for typescript namespace merging (\[[#1964](https://redirect.github.com/import-js/eslint-plugin-import/issues/1964)], thanks \[[@magarcia](https://redirect.github.com/magarcia)]) - \[`no-duplicates`]: ignore duplicate modules in different TypeScript module declarations (\[[#2378](https://redirect.github.com/import-js/eslint-plugin-import/issues/2378)], thanks \[[@remcohaszing](https://redirect.github.com/remcohaszing)]) - \[`no-unused-modules`]: avoid a crash when processing re-exports (\[[#2388](https://redirect.github.com/import-js/eslint-plugin-import/issues/2388)], thanks \[[@ljharb](https://redirect.github.com/ljharb)]) ##### Changed - \[Tests] \[`no-nodejs-modules`]: add tests for node protocol URL (\[[#2367](https://redirect.github.com/import-js/eslint-plugin-import/issues/2367)], thanks \[[@sosukesuzuki](https://redirect.github.com/sosukesuzuki)]) - \[Tests] \[`default`], \[`no-anonymous-default-export`], \[`no-mutable-exports`], \[`no-named-as-default-member`], \[`no-named-as-default`]: add tests for arbitrary module namespace names (\[[#2358](https://redirect.github.com/import-js/eslint-plugin-import/issues/2358)], thanks \[[@sosukesuzuki](https://redirect.github.com/sosukesuzuki)]) - \[Docs] \[`no-unresolved`]: Fix RegExp escaping in readme (\[[#2332](https://redirect.github.com/import-js/eslint-plugin-import/issues/2332)], thanks \[[@stephtr](https://redirect.github.com/stephtr)]) - \[Refactor] \[`namespace`]: try to improve performance (\[[#2340](https://redirect.github.com/import-js/eslint-plugin-import/issues/2340)], thanks \[[@ljharb](https://redirect.github.com/ljharb)]) - \[Docs] make rule doc titles consistent (\[[#2393](https://redirect.github.com/import-js/eslint-plugin-import/issues/2393)], thanks \[[@TheJaredWilcurt](https://redirect.github.com/TheJaredWilcurt)]) - \[Docs] \[`order`]: TS code examples should use TS code blocks (\[[#2411](https://redirect.github.com/import-js/eslint-plugin-import/issues/2411)], thanks \[[@MM25Zamanian](https://redirect.github.com/MM25Zamanian)]) - \[Docs] \[`no-unresolved`]: fix link (\[[#2417](https://redirect.github.com/import-js/eslint-plugin-import/issues/2417)], thanks \[[@kylemh](https://redirect.github.com/kylemh)]) ### [`v2.25.4`](https://redirect.github.com/import-js/eslint-plugin-import/blob/HEAD/CHANGELOG.md#2254---2022-01-02) [Compare Source](https://redirect.github.com/import-js/eslint-plugin-import/compare/v2.25.3...v2.25.4) ##### Fixed - `importType`: avoid crashing on a non-string' (\[[#2305](https://redirect.github.com/import-js/eslint-plugin-import/issues/2305)], thanks \[[@ljharb](https://redirect.github.com/ljharb)]) - \[`first`]: prevent crash when parsing angular templates (\[[#2210](https://redirect.github.com/import-js/eslint-plugin-import/issues/2210)], thanks \[[@ljharb](https://redirect.github.com/ljharb)]) - `importType`: properly resolve `@/*`-aliased imports as internal (\[[#2334](https://redirect.github.com/import-js/eslint-plugin-import/issues/2334)], thanks \[[@ombene](https://redirect.github.com/ombene)]) - \[`named`]/`ExportMap`: handle named imports from CJS modules that use dynamic import (\[[#2341](https://redirect.github.com/import-js/eslint-plugin-import/issues/2341)], thanks \[[@ludofischer](https://redirect.github.com/ludofischer)]) ##### Changed - \[`no-default-import`]: report on the token "default" instead of the entire node (\[[#2299](https://redirect.github.com/import-js/eslint-plugin-import/issues/2299)], thanks \[[@pmcelhaney](https://redirect.github.com/pmcelhaney)]) - \[Docs] \[`order`]: Remove duplicate mention of default (\[[#2280](https://redirect.github.com/import-js/eslint-plugin-import/issues/2280)], thanks \[[@johnthagen](https://redirect.github.com/johnthagen)]) - \[Deps] update `eslint-module-utils` ### [`v2.25.3`](https://redirect.github.com/import-js/eslint-plugin-import/blob/HEAD/CHANGELOG.md#2253---2021-11-09) [Compare Source](https://redirect.github.com/import-js/eslint-plugin-import/compare/v2.25.2...v2.25.3) ##### Fixed - \[`extensions`]: ignore unresolveable type-only imports (\[[#2270](https://redirect.github.com/import-js/eslint-plugin-import/issues/2270)], \[[#2271](https://redirect.github.com/import-js/eslint-plugin-import/issues/2271)], thanks \[[@jablko](https://redirect.github.com/jablko)]) - `importType`: fix `isExternalModule` calculation (\[[#2282](https://redirect.github.com/import-js/eslint-plugin-import/issues/2282)], thanks \[[@mx-bernhard](https://redirect.github.com/mx-bernhard)]) - \[`no-import-module-exports`]: avoid false positives with a shadowed `module` or `exports` (\[[#2297](https://redirect.github.com/import-js/eslint-plugin-import/issues/2297)], thanks \[[@ljharb](https://redirect.github.com/ljharb)]) ##### Changed - \[Docs] \[`order`]: add type to the default groups (\[[#2272](https://redirect.github.com/import-js/eslint-plugin-import/issues/2272)], thanks \[[@charpeni](https://redirect.github.com/charpeni)]) - \[readme] Add note to TypeScript docs to install appropriate resolver (\[[#2279](https://redirect.github.com/import-js/eslint-plugin-import/issues/2279)], thanks \[[@johnthagen](https://redirect.github.com/johnthagen)]) - \[Refactor] `importType`: combine redundant `isScoped` and `isScopedModule` (thanks \[[@ljharb](https://redirect.github.com/ljharb)]) - \[Docs] HTTP => HTTPS (\[[#2287](https://redirect.github.com/import-js/eslint-plugin-import/issues/2287)], thanks \[[@Schweinepriester](https://redirect.github.com/Schweinepriester)]) ### [`v2.25.2`](https://redirect.github.com/import-js/eslint-plugin-import/blob/HEAD/CHANGELOG.md#2252---2021-10-12) [Compare Source](https://redirect.github.com/import-js/eslint-plugin-import/compare/v2.25.1...v2.25.2) ##### Fixed - \[Deps] update `eslint-module-utils` for real this time (\[[#2255](https://redirect.github.com/import-js/eslint-plugin-import/issues/2255)], thanks \[[@ljharb](https://redirect.github.com/ljharb)]) ### [`v2.25.1`](https://redirect.github.com/import-js/eslint-plugin-import/blob/HEAD/CHANGELOG.md#2251---2021-10-11) [Compare Source](https://redirect.github.com/import-js/eslint-plugin-import/compare/v2.25.0...v2.25.1) ##### Fixed - \[Deps] update `eslint-module-utils` ### [`v2.25.0`](https://redirect.github.com/import-js/eslint-plugin-import/blob/HEAD/CHANGELOG.md#2250---2021-10-11) [Compare Source](https://redirect.github.com/import-js/eslint-plugin-import/compare/v2.24.2...v2.25.0) ##### Added - Support `eslint` v8 (\[[#2191](https://redirect.github.com/import-js/eslint-plugin-import/issues/2191)], thanks \[[@ota-meshi](https://redirect.github.com/ota-meshi)]) - \[`no-unresolved`]: add `caseSensitiveStrict` option (\[[#1262](https://redirect.github.com/import-js/eslint-plugin-import/issues/1262)], thanks \[[@sergei-startsev](https://redirect.github.com/sergei-startsev)]) - \[`no-unused-modules`]: add eslint v8 support (\[[#2194](https://redirect.github.com/import-js/eslint-plugin-import/issues/2194)], thanks \[[@coderaiser](https://redirect.github.com/coderaiser)]) - \[`no-restricted-paths`]: add/restore glob pattern support (\[[#2219](https://redirect.github.com/import-js/eslint-plugin-import/issues/2219)], thanks \[[@stropho](https://redirect.github.com/stropho)]) - \[`no-unused-modules`]: support dynamic imports (\[[#1660](https://redirect.github.com/import-js/eslint-plugin-import/issues/1660)], \[[#2212](https://redirect.github.com/import-js/eslint-plugin-import/issues/2212)], thanks \[[@maxkomarychev](https://redirect.github.com/maxkomarychev)], \[[@aladdin-add](https://redirect.github.com/aladdin-add)], \[[@Hypnosphi](https://redirect.github.com/Hypnosphi)]) ##### Fixed - \[`no-unresolved`]: ignore type-only imports (\[[#2220](https://redirect.github.com/import-js/eslint-plugin-import/issues/2220)], thanks \[[@jablko](https://redirect.github.com/jablko)]) - \[`order`]: fix sorting imports inside TypeScript module declarations (\[[#2226](https://redirect.github.com/import-js/eslint-plugin-import/issues/2226)], thanks \[[@remcohaszing](https://redirect.github.com/remcohaszing)]) - \[`default`], `ExportMap`: Resolve extended TypeScript configuration files (\[[#2240](https://redirect.github.com/import-js/eslint-plugin-import/issues/2240)], thanks \[[@mrmckeb](https://redirect.github.com/mrmckeb)]) ##### Changed - \[Refactor] switch to an internal replacement for `pkg-up` and `read-pkg-up` (\[[#2047](https://redirect.github.com/import-js/eslint-plugin-import/issues/2047)], thanks \[[@mgwalker](https://redirect.github.com/mgwalker)]) - \[patch] TypeScript config: remove `.d.ts` from \[`import/parsers` setting] and \[`import/extensions` setting] (\[[#2220](https://redirect.github.com/import-js/eslint-plugin-import/issues/2220)], thanks \[[@jablko](https://redirect.github.com/jablko)]) - \[Refactor] \[`no-unresolved`], \[`no-extraneous-dependencies`]: moduleVisitor usage (\[[#2233](https://redirect.github.com/import-js/eslint-plugin-import/issues/2233)], thanks \[[@jablko](https://redirect.github.com/jablko)]) ### [`v2.24.2`](https://redirect.github.com/import-js/eslint-plugin-import/blob/HEAD/CHANGELOG.md#2242---2021-08-24) [Compare Source](https://redirect.github.com/import-js/eslint-plugin-import/compare/v2.24.1...v2.24.2) ##### Fixed - \[`named`], \[`namespace`]: properly handle ExportAllDeclarations (\[[#2199](https://redirect.github.com/import-js/eslint-plugin-import/issues/2199)], thanks \[[@ljharb](https://redirect.github.com/ljharb)]) ### [`v2.24.1`](https://redirect.github.com/import-js/eslint-plugin-import/blob/HEAD/CHANGELOG.md#2241---2021-08-19) [Compare Source](https://redirect.github.com/import-js/eslint-plugin-import/compare/v2.24.0...v2.24.1) ##### Fixed - `ExportMap`: Add default export when esModuleInterop is true and anything is exported (\[[#2184](https://redirect.github.com/import-js/eslint-plugin-import/issues/2184)], thanks \[[@Maxim-Mazurok](https://redirect.github.com/Maxim-Mazurok)]) - \[`named`], \[`namespace`]: properly set reexports on `export * as … from` (\[[#1998](https://redirect.github.com/import-js/eslint-plugin-import/issues/1998)], \[[#2161](https://redirect.github.com/import-js/eslint-plugin-import/issues/2161)], thanks \[[@ljharb](https://redirect.github.com/ljharb)]) - \[`no-duplicates`]: correctly handle case of mixed default/named type imports (\[[#2149](https://redirect.github.com/import-js/eslint-plugin-import/issues/2149)], thanks \[[@GoodForOneFare](https://redirect.github.com/GoodForOneFare)], \[[@nwalters512](https://redirect.github.com/nwalters512)]) - \[`no-duplicates`]: avoid crash with empty `import type {}` (\[[#2201](https://redirect.github.com/import-js/eslint-plugin-import/issues/2201)], thanks \[[@ljharb](https://redirect.github.com/ljharb)]) ##### Changed - \[Docs] `max-dependencies`: 📖 Document `ignoreTypeImports` option (\[[#2196](https://redirect.github.com/import-js/eslint-plugin-import/issues/2196)], thanks \[[@himynameisdave](https://redirect.github.com/himynameisdave)]) ### [`v2.24.0`](https://redirect.github.com/import-js/eslint-plugin-import/blob/HEAD/CHANGELOG.md#2240---2021-08-08) [Compare Source](https://redirect.github.com/import-js/eslint-plugin-import/compare/v2.23.4...v2.24.0) ##### Added - \[`no-dynamic-require`]: add option `esmodule` (\[[#1223](https://redirect.github.com/import-js/eslint-plugin-import/issues/1223)], thanks \[[@vikr01](https://redirect.github.com/vikr01)]) - \[`named`]: add `commonjs` option (\[[#1222](https://redirect.github.com/import-js/eslint-plugin-import/issues/1222)], thanks \[[@vikr01](https://redirect.github.com/vikr01)]) - \[`no-namespace`]: Add `ignore` option (\[[#2112](https://redirect.github.com/import-js/eslint-plugin-import/issues/2112)], thanks \[[@aberezkin](https://redirect.github.com/aberezkin)]) - \[`max-dependencies`]: add option `ignoreTypeImports` (\[[#1847](https://redirect.github.com/import-js/eslint-plugin-import/issues/1847)], thanks \[[@rfermann](https://redirect.github.com/rfermann)]) ##### Fixed - \[`no-duplicates`]: ensure autofix avoids excessive newlines (\[[#2028](https://redirect.github.com/import-js/eslint-plugin-import/issues/2028)], thanks \[[@ertrzyiks](https://redirect.github.com/ertrzyiks)]) - \[`extensions`]: avoid crashing on partially typed import/export statements (\[[#2118](https://redirect.github.com/import-js/eslint-plugin-import/issues/2118)], thanks \[[@ljharb](https://redirect.github.com/ljharb)]) - \[`no-extraneous-dependencies`]: add ESM intermediate package.json support (\[[#2121](https://redirect.github.com/import-js/eslint-plugin-import/issues/2121)], thanks \[[@paztis](https://redirect.github.com/paztis)]) - Use `context.getPhysicalFilename()` when available (ESLint 7.28+) (\[[#2160](https://redirect.github.com/import-js/eslint-plugin-import/issues/2160)], thanks \[[@pmcelhaney](https://redirect.github.com/pmcelhaney)]) - \[`extensions`]/`importType`: fix isScoped treating @/abc as scoped module (\[[#2146](https://redirect.github.com/import-js/eslint-plugin-import/issues/2146)], thanks \[[@rperello](https://redirect.github.com/rperello)]) ##### Changed - \[Docs] \[`extensions`]: improved cases for using `@/...` (\[[#2140](https://redirect.github.com/import-js/eslint-plugin-import/issues/2140)], thanks \[[@wenfangdu](https://redirect.github.com/wenfangdu)]) - \[Docs] \[`extensions`]: removed incorrect cases (\[[#2138](https://redirect.github.com/import-js/eslint-plugin-import/issues/2138)], thanks \[[@wenfangdu](https://redirect.github.com/wenfangdu)]) - \[Tests] \[`order`]: add tests for `pathGroupsExcludedImportTypes: ['type']` (\[[#2158](https://redirect.github.com/import-js/eslint-plugin-import/issues/2158)], thanks \[[@atav32](https://redirect.github.com/atav32)]) - \[Docs] \[`order`]: improve the documentation for the `pathGroupsExcludedImportTypes` option (\[[#2156](https://redirect.github.com/import-js/eslint-plugin-import/issues/2156)], thanks \[[@liby](https://redirect.github.com/liby)]) - \[Tests] \[`no-cycle`]: Restructure test files (\[[#1517](https://redirect.github.com/import-js/eslint-plugin-import/issues/1517)], thanks \[[@soryy708](https://redirect.github.com/soryy708)]) - \[Docs] add description how to use plugin with yarn berry (\[[#2179](https://redirect.github.com/import-js/eslint-plugin-import/issues/2179)], thanks \[[@KostyaZgara](https://redirect.github.com/KostyaZgara)]) ### [`v2.23.4`](https://redirect.github.com/import-js/eslint-plugin-import/blob/HEAD/CHANGELOG.md#2234---2021-05-29) [Compare Source](https://redirect.github.com/import-js/eslint-plugin-import/compare/v2.23.3...v2.23.4) ##### Fixed - \[`no-import-module-exports`]: Don't crash if packages have no entrypoint (\[[#2099](https://redirect.github.com/import-js/eslint-plugin-import/issues/2099)], thanks \[[@eps1lon](https://redirect.github.com/eps1lon)]) - \[`no-extraneous-dependencies`]: fix package name algorithm (\[[#2097](https://redirect.github.com/import-js/eslint-plugin-import/issues/2097)], thanks \[[@paztis](https://redirect.github.com/paztis)]) ### [`v2.23.3`](https://redirect.github.com/import-js/eslint-plugin-import/blob/HEAD/CHANGELOG.md#2233---2021-05-21) [Compare Source](https://redirect.github.com/import-js/eslint-plugin-import/compare/v2.23.2...v2.23.3) ##### Fixed - \[`no-restricted-paths`]: fix false positive matches (\[[#2090](https://redirect.github.com/import-js/eslint-plugin-import/issues/2090)], thanks \[[@malykhinvi](https://redirect.github.com/malykhinvi)]) - \[`no-cycle`]: ignore imports where imported file only imports types of importing file (\[[#2083](https://redirect.github.com/import-js/eslint-plugin-import/issues/2083)], thanks \[[@cherryblossom000](https://redirect.github.com/cherryblossom000)]) - \[`no-cycle`]: fix false negative when file imports a type after importing a value in Flow (\[[#2083](https://redirect.github.com/import-js/eslint-plugin-import/issues/2083)], thanks \[[@cherryblossom000](https://redirect.github.com/cherryblossom000)]) - \[`order`]: restore default behavior unless `type` is in groups (\[[#2087](https://redirect.github.com/import-js/eslint-plugin-import/issues/2087)], thanks \[[@grit96](https://redirect.github.com/grit96)]) ##### Changed - \[Docs] Add \[`no-relative-packages`] to list of to the list of rules (\[[#2075](https://redirect.github.com/import-js/eslint-plugin-import/issues/2075)], thanks \[[@arvigeus](https://redirect.github.com/arvigeus)]) ### [`v2.23.2`](https://redirect.github.com/import-js/eslint-plugin-import/blob/HEAD/CHANGELOG.md#2232---2021-05-15) [Compare Source](https://redirect.github.com/import-js/eslint-plugin-import/compare/v2.23.1...v2.23.2) ##### Changed - \[meta] add `safe-publish-latest`; use `prepublishOnly` script for npm 7+ ### [`v2.23.1`](https://redirect.github.com/import-js/eslint-plugin-import/blob/HEAD/CHANGELOG.md#2231---2021-05-14) [Compare Source](https://redirect.github.com/import-js/eslint-plugin-import/compare/v2.23.0...v2.23.1) ##### Fixed - \[`newline-after-import`]: fix crash with `export {}` syntax (\[[#2063](https://redirect.github.com/import-js/eslint-plugin-import/issues/2063)], \[[#2056](https://redirect.github.com/import-js/eslint-plugin-import/issues/2056)], thanks \[[@ljharb](https://redirect.github.com/ljharb)]) - `ExportMap`: do not crash when tsconfig lacks `.compilerOptions` (\[[#2067](https://redirect.github.com/import-js/eslint-plugin-import/issues/2067)], thanks \[[@ljharb](https://redirect.github.com/ljharb)]) - \[`order`]: fix alphabetical sorting (\[[#2071](https://redirect.github.com/import-js/eslint-plugin-import/issues/2071)], thanks \[[@grit96](https://redirect.github.com/grit96)]) ### [`v2.23.0`](https://redirect.github.com/import-js/eslint-plugin-import/blob/HEAD/CHANGELOG.md#2230---2021-05-13) [Compare Source](https://redirect.github.com/import-js/eslint-plugin-import/compare/v2.22.1...v2.23.0) ##### Added - \[`no-commonjs`]: Also detect require calls with expressionless template literals: ``require(`x`)`` (\[[#1958](https://redirect.github.com/import-js/eslint-plugin-import/issues/1958)], thanks \[[@FloEdelmann](https://redirect.github.com/FloEdelmann)]) - \[`no-internal-modules`]: Add `forbid` option (\[[#1846](https://redirect.github.com/import-js/eslint-plugin-import/issues/1846)], thanks \[[@guillaumewuip](https://redirect.github.com/guillaumewuip)]) - add \[`no-relative-packages`] (\[[#1860](https://redirect.github.com/import-js/eslint-plugin-import/issues/1860)], \[[#966](https://redirect.github.com/import-js/eslint-plugin-import/issues/966)], thanks \[[@tapayne88](https://redirect.github.com/tapayne88)] \[[@panrafal](https://redirect.github.com/panrafal)]) - add \[`no-import-module-exports`] rule: report import declarations with CommonJS exports (\[[#804](https://redirect.github.com/import-js/eslint-plugin-import/issues/804)], thanks \[[@kentcdodds](https://redirect.github.com/kentcdodds)] and \[[@ttmarek](https://redirect.github.com/ttmarek)]) - \[`no-unused-modules`]: Support destructuring assignment for `export`. (\[[#1997](https://redirect.github.com/import-js/eslint-plugin-import/issues/1997)], thanks \[[@s-h-a-d-o-w](https://redirect.github.com/s-h-a-d-o-w)]) - \[`order`]: support type imports (\[[#2021](https://redirect.github.com/import-js/eslint-plugin-import/issues/2021)], thanks \[[@grit96](https://redirect.github.com/grit96)]) - \[`order`]: Add `warnOnUnassignedImports` option to enable warnings for out of order unassigned imports (\[[#1990](https://redirect.github.com/import-js/eslint-plugin-import/issues/1990)], thanks \[[@hayes](https://redirect.github.com/hayes)]) ##### Fixed - \[`export`]/TypeScript: properly detect export specifiers as children of a TS module block (\[[#1889](https://redirect.github.com/import-js/eslint-plugin-import/issues/1889)], thanks \[[@andreubotella](https://redirect.github.com/andreubotella)]) - \[`order`]: ignore non-module-level requires (\[[#1940](https://redirect.github.com/import-js/eslint-plugin-import/issues/1940)], thanks \[[@golopot](https://redirect.github.com/golopot)]) - \[`no-webpack-loader-syntax`]/TypeScript: avoid crash on missing name (\[[#1947](https://redirect.github.com/import-js/eslint-plugin-import/issues/1947)], thanks \[[@leonardodino](https://redirect.github.com/leonardodino)]) - \[`no-extraneous-dependencies`]: Add package.json cache (\[[#1948](https://redirect.github.com/import-js/eslint-plugin-import/issues/1948)], thanks \[[@fa93hws](https://redirect.github.com/fa93hws)]) - \[`prefer-default-export`]: handle empty array destructuring (\[[#1965](https://redirect.github.com/import-js/eslint-plugin-import/issues/1965)], thanks \[[@ljharb](https://redirect.github.com/ljharb)]) - \[`no-unused-modules`]: make type imports mark a module as used (fixes [#1924](https://redirect.github.com/import-js/eslint-plugin-import/issues/1924)) (\[[#1974](https://redirect.github.com/import-js/eslint-plugin-import/issues/1974)], thanks \[[@cherryblossom000](https://redirect.github.com/cherryblossom000)]) - \[`no-cycle`]: fix perf regression (\[[#1944](https://redirect.github.com/import-js/eslint-plugin-import/issues/1944)], thanks \[[@Blasz](https://redirect.github.com/Blasz)]) - \[`first`]: fix handling of `import = require` (\[[#1963](https://redirect.github.com/import-js/eslint-plugin-import/issues/1963)], thanks \[[@MatthiasKunnen](https://redirect.github.com/MatthiasKunnen)]) - \[`no-cycle`]/\[`extensions`]: fix isExternalModule usage (\[[#1696](https://redirect.github.com/import-js/eslint-plugin-import/issues/1696)], thanks \[[@paztis](https://redirect.github.com/paztis)]) - \[`extensions`]/\[`no-cycle`]/\[`no-extraneous-dependencies`]: Correct module real path resolution (\[[#1696](https://redirect.github.com/import-js/eslint-plugin-import/issues/1696)], thanks \[[@paztis](https://redirect.github.com/paztis)]) - \[`no-named-default`]: ignore Flow import type and typeof (\[[#1983](https://redirect.github.com/import-js/eslint-plugin-import/issues/1983)], thanks \[[@christianvuerings](https://redirect.github.com/christianvuerings)]) - \[`no-extraneous-dependencies`]: Exclude flow `typeof` imports (\[[#1534](https://redirect.github.com/import-js/eslint-plugin-import/issues/1534)], thanks \[[@devongovett](https://redirect.github.com/devongovett)]) - \[`newline-after-import`]: respect decorator annotations (\[[#1985](https://redirect.github.com/import-js/eslint-plugin-import/issues/1985)], thanks \[[@lilling](https://redirect.github.com/lilling)]) - \[`no-restricted-paths`]: enhance performance for zones with `except` paths (\[[#2022](https://redirect.github.com/import-js/eslint-plugin-import/issues/2022)], thanks \[[@malykhinvi](https://redirect.github.com/malykhinvi)]) - \[`no-unresolved`]: check import() (\[[#2026](https://redirect.github.com/import-js/eslint-plugin-import/issues/2026)], thanks \[[@aladdin-add](https://redirect.github.com/aladdin-add)]) ##### Changed - \[Generic Import Callback] Make callback for all imports once in rules (\[[#1237](https://redirect.github.com/import-js/eslint-plugin-import/issues/1237)], thanks \[[@ljqx](https://redirect.github.com/ljqx)]) - \[Docs] \[`no-named-as-default`]: add semicolon (\[[#1897](https://redirect.github.com/import-js/eslint-plugin-import/issues/1897)], thanks \[[@bicstone](https://redirect.github.com/bicstone)]) - \[Docs] \[`no-extraneous-dependencies`]: correct peerDependencies option default to `true` (\[[#1993](https://redirect.github.com/import-js/eslint-plugin-import/issues/1993)], thanks \[[@dwardu](https://redirect.github.com/dwardu)]) - \[Docs] \[`order`]: Document options required to match ordering example (\[[#1992](https://redirect.github.com/import-js/eslint-plugin-import/issues/1992)], thanks \[[@silviogutierrez](https://redirect.github.com/silviogutierrez)]) - \[Tests] \[`no-unresolved`]: add tests for `import()` (\[[#2012](https://redirect.github.com/import-js/eslint-plugin-import/issues/2012)], thanks \[[@davidbonnet](https://redirect.github.com/davidbonnet)]) - \[Docs] Add import/recommended ruleset to README (\[[#2034](https://redirect.github.com/import-js/eslint-plugin-import/issues/2034)], thanks \[[@edemaine](https://redirect.github.com/edemaine)])Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, 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.