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