Releases: un-ts/eslint-plugin-import-x
v3.1.0
Minor Changes
- #116
38aa4cb
Thanks @silverwind! - AddignoreUnusedTypeExports
option tono-unused-modules
Patch Changes
-
#118
0307ff2
Thanks @silverwind! - Reverts #111. The introduction of SCC causes extra overhead that overcomes the early return it introduced.A new
no-cycle-next
rule is being implemented using the graph. It won't be backward compatible with the current ruleno-cycle
. The currentno-cycle
rule will becomeno-cycle-legacy
in the next major version.
New Contributors
- @silverwind made their first contribution in #116
Full Changelog: v3.0.1...v3.1.0
v3.0.1
Patch Changes
-
#109
fe3121a
Thanks @SukkaW! - Makeeslint-plugin-import-x
overall faster by refactoring theExportMap
util -
#111
5cce946
Thanks @SukkaW! - Drastically improveno-cycle
's performance by skipping unnecessary BFSes using Tarjan's SCC.
Full Changelog: v3.0.0...v3.0.1
v3.0.0
Major Changes
-
#106
19f10aa
Thanks @SukkaW! -eslint-plugin-import-x
is a fork ofeslint-plugin-import
that aims to provide a more performant and more lightweight version of the original plugin.Due to the nature of the fork, all
eslint-plugin-import
's git tags and releases have been copied over toeslint-plugin-import-x
. This causes version conflicts when publishing new versions ofeslint-plugin-import-x
.To prevent this, we have decided to publish a new major version of
eslint-plugin-import-x
that will not conflict with the originaleslint-plugin-import
's versions.See also #76
Patch Changes
New Contributors
Full Changelog: v0.5.3...v3.0.0
v0.5.3
Patch Changes
-
#101
c0cea7b
Thanks @SukkaW! - Allow incorrect file path in extraneous deps check -
#100
293fcf4
Thanks @SukkaW! - feat: webpack comment regex supportwebpackFetchPriority
-
#85
ded3e80
Thanks @kosmotema! - add languageOptions to ChildContext -
#100
293fcf4
Thanks @SukkaW! - Allow empty chunk name when webpackMode: 'eager' is set; add suggestions to remove name in eager mode
New Contributors
- @antfu made their first contribution in #59
- @yukukotani made their first contribution in #83
- @unzico made their first contribution in #82
- @SunsetTechuila made their first contribution in #95
- @kosmotema made their first contribution in #85
Full Changelog: v0.3.1...v0.5.3
v0.3.1
Patch Changes
-
#51
f4ca4b5
Thanks @JounQin! - refactor: migrate all remaining rules -
#50
de896f4
Thanks @JounQin! - refactor: migrate several rules
New Contributors
- @danielrentz made their first contribution in #46
Full Changelog: v0.2.0...v0.3.1
v0.2.0
v2.29.1
Change Log
All notable changes to this project will be documented in this file.
This project adheres to Semantic Versioning.
This change log adheres to standards from Keep a CHANGELOG.
[Unreleased]
[2.29.1] - 2023-12-14
Fixed
- [
no-extraneous-dependencies
]: ignoreexport type { ... } from '...'
whenincludeTypes
isfalse
([#2919], thanks [@Pandemic1617]) - [
no-unused-modules
]: support export patterns with array destructuring ([#2930], thanks [@ljharb]) - [Deps] update
tsconfig-paths
([#2447], thanks [@domdomegg])
[2.29.0] - 2023-10-22
Added
- TypeScript config: add .cts and .mts extensions ([#2851], thanks [@Zamiell])
- [
newline-after-import
]: new optionexactCount
and docs update ([#1933], thanks [@anikethsaha] and [@reosarevok]) - [
newline-after-import
]: fixexactCount
withconsiderComments
false positive, when there is a leading comment ([#2884], thanks [@kinland])
[2.28.1] - 2023-08-18
Fixed
- [
order
]: revert breaking change to single nested group ([#2854], thanks [@yndajas])
Changed
- [Docs] remove duplicate fixable notices in docs ([#2850], thanks [@bmish])
[2.28.0] - 2023-07-27
Fixed
- [
no-duplicates
]: remove duplicate identifiers in duplicate imports ([#2577], thanks [@joe-matsec]) - [
consistent-type-specifier-style
]: fix accidental removal of comma in certain cases ([#2754], thanks [@bradzacher]) - [Perf]
ExportMap
: ImproveExportMap.for
performance on larger codebases ([#2756], thanks [@leipert]) - [
no-extraneous-dependencies
]/TypeScript: do not error when importing inline type from dev dependencies ([#1820], thanks [@AndyOGo]) - [
newline-after-import
]/TypeScript: do not error when re-exporting a namespaced import ([#2832], thanks [@laurens-dg]) - [
order
]: partial fix for [#2687] (thanks [@ljharb]) - [
no-duplicates
]: Detect across type and regular imports ([#2835], thanks [@benkrejci]) - [
extensions
]: handle.
and..
properly ([#2778], thanks [@benasher44]) - [
no-unused-modules
]: improve schema (thanks [@ljharb]) - [
no-unused-modules
]: report error on binding instead of parent export ([#2842], thanks [@Chamion])
Changed
- [Docs][
no-duplicates
]: fix example schema ([#2684], thanks [@simmo]) - [Docs][
group-exports
]: fix syntax highlighting ([#2699], thanks [@devinrhode2]) - [Docs][
extensions
]: reference node ESM behavior ([#2748], thanks [@xM8WVqaG]) - [Refactor][
exports-last
]: usearray.prototype.findlastindex
(thanks [@ljharb]) - [Refactor][
no-anonymous-default-export
]: useobject.fromentries
(thanks [@ljharb]) - [Refactor][
no-unused-modules
]: usearray.prototype.flatmap
(thanks [@ljharb])
[2.27.5] - 2023-01-16
Fixed
- [
order]\
: Fix group ranks order when alphabetizing ([#2674], thanks [@Pearce-Ropion])
[2.27.4] - 2023-01-11
Fixed
semver
should be a prod dep ([#2668])
[2.27.3] - 2023-01-11
Fixed
- [
no-empty-named-blocks
]: rewrite rule to only check import declarations ([#2666])
[2.27.2] - 2023-01-11
Fixed
- [
no-duplicates
]: do not unconditionally requiretypescript
([#2665])
[2.27.1] - 2023-01-11
Fixed
array.prototype.flatmap
should be a prod dep ([#2664], thanks [@cristobal])
[2.27.0] - 2023-01-11
Added
- [
newline-after-import
]: addconsiderComments
option ([#2399], thanks [@pri1311]) - [
no-cycle
]: addallowUnsafeDynamicCyclicDependency
option ([#2387], thanks [@GerkinDev]) - [
no-restricted-paths
]: support arrays forfrom
andtarget
options ([#2466], thanks [@AdriAt360]) - [
no-anonymous-default-export
]: addallowNew
option ([#2505], thanks [@DamienCassou]) - [
order
]: AdddistinctGroup
option ([#2395], thanks [@hyperupcall]) - [
no-extraneous-dependencies
]: AddincludeInternal
option ([#2541], thanks [@bdwain]) - [
no-extraneous-dependencies
]: AddincludeTypes
option ([#2543], thanks [@bdwain]) - [
order
]: newalphabetize.orderImportKind
option to sort imports with same path based on their kind (type
,typeof
) ([#2544], thanks [@stropho]) - [
consistent-type-specifier-style
]: add rule ([#2473], thanks [@bradzacher]) - Add [
no-empty-named-blocks
] rule ([#2568], thanks [@guilhermelimak]) - [
prefer-default-export
]: add "target" option ([#2602], thanks [@azyzz228]) - [
no-absolute-path
]: add fixer ([#2613], thanks [@adipascu]) - [
no-duplicates
]: support inline type import withinlineTypeImport
option ([#2475], thanks [@snewcomer])
Fixed
- [
order
]: move nested imports closer to main import entry ([#2396], thanks [@pri1311]) - [
no-restricted-paths
]: fix an error message ([#2466], thanks [@AdriAt360]) - [
no-restricted-paths
]: useMinimatch.match
instead ofminimatch
to comply with Windows Native paths ([#2466], thanks [@AdriAt360]) - [
order
]: require with member expression could not be fixed if alphabetize.order was used ([#2490], thanks [@msvab]) - [
order
]: leave more space in rankings for consecutive path groups ([#2506], thanks [@Pearce-Ropion]) - [
no-cycle
]: add ExportNamedDeclaration statements to dependencies ([#2511], thanks [@BenoitZugmeyer]) - [
dynamic-import-chunkname
]: prevent false report on a valid webpack magic comment ([#2330], thanks [@MhMadHamster]) - [
export
]: do not error on TS export overloads ([#1590], thanks [@ljharb]) - [
no-unresolved
], [extensions
]: ignore type only exports ([#2436], thanks [@Lukas-Kullmann]) ExportMap
: add missing param to function ([#2589], thanks [@Fdawgs])- [
no-unused-modules
]:checkPkgFieldObject
filters boolean fields from checks ([#2598], thanks [@mpint]) - [
no-cycle
]: accept Flowtypeof
imports, just liketype
([#2608], thanks [@gnprice]) - [
no-import-module-exports
]: avoid a false positive for import variables ([#2315], thanks [@BarryThePenguin])
Changed
- [Tests][
named
]: Run all TypeScript test ([#2427], thanks [@ProdigySim]) - [readme] note use of typescript in readme
import/extensions
section ([#2440], thanks [@OutdatedVersion]) - [Docs][
order
]: use correct default value ([#2392], thanks [@hyperupcall]) - [meta] replace git.io link in comments with the original URL ([#2444], thanks [@liby])
- [Docs] remove global install in readme ([#2412], thanks [@aladdin-add])
- [readme] clarify
eslint-import-resolver-typescript
usage ([#2503], thanks [@JounQin]) - [Refactor][
no-cycle
]: Add per-run caching of traversed paths ([#2419], thanks [@Nokel81]) - [Performance]
ExportMap
: add caching after parsing for an ambiguous module ([#2531], thanks [@stenin-nikita]) - [Docs][
no-useless-path-segments
]: fix paths ([#2424], thanks [@s-h-a-d-o-w]) - [Tests][
no-cycle
]: add passing test cases ([#2438], thanks [@georeith]) - [Refactor][
no-extraneous-dependencies
] improve performance using cache ([#2374], thanks [@meowtec]) - [meta]
CONTRIBUTING.md
: mention inactive PRs ([#2546], thanks [@stropho]) - [readme] make json for setting groups multiline ([#2570], thanks [@bertyhell])
- [Tests][
no-restricted-paths
]: Tests forimport type
statements ([#2459], thanks [@golergka]) - [Tests][
no-restricted-paths
]: fix one failingimport type
test case, submitted by [@golergka], thanks [@azyzz228] - [Docs] automate docs with eslint-doc-generator ([#2582], thanks [@bmish])
- [readme] Increase clarity around typescript configuration ([#2588], thanks [@Nfinished])
- [Docs] update
eslint-doc-generator
to v1.0.0 ([#2605], thanks [@bmish]) - [Perf][
no-cycle
], [no-internal-modules
], [no-restricted-paths
]: useanyOf
instead ofoneOf
(thanks [@ljharb], [@remcohaszing])
[2.26.0] - 2022-04-05
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], thanks [@sosukesuzuki]) - [
no-dynamic-require
]: support dynamic import with espree ([#2371], thanks [@sosukesuzuki]) - [
no-relative-packages
]: add fixer ([#2381], thanks [@forivall])
Fixed
- [
default
]:typescript-eslint-parser
: avoid a crash on exporting as namespace (thanks [@ljharb]) - [
export
]/TypeScript: false positive for typescript namespace merging ([#1964], thanks [@magarcia]) - [
no-duplicates
]: ignore duplicate modules in different TypeScript module declarations ([#2378], thanks [@remcohaszing]) - [
no-unused-modules
]: avoid a crash when processing re-exports ([#2388], thanks [@ljharb])
Changed
- [Tests][
no-nodejs-modules
]: add tests for node protocol URL ([#2367], thanks [@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], thanks [@sosukesuzuki]) - [Docs][
no-unresolved
]: Fix RegExp escaping in readme ([#2332], thanks [@stephtr]) - [Refactor][
namespace
]: try to improve performance ([#2340], thanks [@ljharb]) - [Docs] make rule doc titles consistent ([#2393], thanks [@TheJaredWilcurt])
- [Docs][
order
]: TS code examples should use TS code blocks ([#2411], thanks [@MM25Zamanian]) - [Docs][
no-unresolved
]: fix link ([#2417], thanks [@kylemh])
[2.25.4] - 2022-01-02
Fixed
importType
: avoid crashing on a non-string' ([#2305], thanks [@ljharb])- [
first
]: prevent crash when parsing angular templates ([#2210], thanks [@ljharb]) importType
: properly resolve@/*
-aliased imports as internal ([#2334], thanks [@ombene])- [
named
]/ExportMap
: handle named imports from CJS modules that use ...
v2.29.0
Change Log
All notable changes to this project will be documented in this file.
This project adheres to Semantic Versioning.
This change log adheres to standards from Keep a CHANGELOG.
[Unreleased]
[2.29.0] - 2023-10-22
Added
- TypeScript config: add .cts and .mts extensions ([#2851], thanks [@Zamiell])
- [
newline-after-import
]: new optionexactCount
and docs update ([#1933], thanks [@anikethsaha] and [@reosarevok]) - [
newline-after-import
]: fixexactCount
withconsiderComments
false positive, when there is a leading comment ([#2884], thanks [@kinland])
[2.28.1] - 2023-08-18
Fixed
- [
order
]: revert breaking change to single nested group ([#2854], thanks [@yndajas])
Changed
- [Docs] remove duplicate fixable notices in docs ([#2850], thanks [@bmish])
[2.28.0] - 2023-07-27
Fixed
- [
no-duplicates
]: remove duplicate identifiers in duplicate imports ([#2577], thanks [@joe-matsec]) - [
consistent-type-specifier-style
]: fix accidental removal of comma in certain cases ([#2754], thanks [@bradzacher]) - [Perf]
ExportMap
: ImproveExportMap.for
performance on larger codebases ([#2756], thanks [@leipert]) - [
no-extraneous-dependencies
]/TypeScript: do not error when importing inline type from dev dependencies ([#1820], thanks [@AndyOGo]) - [
newline-after-import
]/TypeScript: do not error when re-exporting a namespaced import ([#2832], thanks [@laurens-dg]) - [
order
]: partial fix for [#2687] (thanks [@ljharb]) - [
no-duplicates
]: Detect across type and regular imports ([#2835], thanks [@benkrejci]) - [
extensions
]: handle.
and..
properly ([#2778], thanks [@benasher44]) - [
no-unused-modules
]: improve schema (thanks [@ljharb]) - [
no-unused-modules
]: report error on binding instead of parent export ([#2842], thanks [@Chamion])
Changed
- [Docs][
no-duplicates
]: fix example schema ([#2684], thanks [@simmo]) - [Docs][
group-exports
]: fix syntax highlighting ([#2699], thanks [@devinrhode2]) - [Docs][
extensions
]: reference node ESM behavior ([#2748], thanks [@xM8WVqaG]) - [Refactor][
exports-last
]: usearray.prototype.findlastindex
(thanks [@ljharb]) - [Refactor][
no-anonymous-default-export
]: useobject.fromentries
(thanks [@ljharb]) - [Refactor][
no-unused-modules
]: usearray.prototype.flatmap
(thanks [@ljharb])
[2.27.5] - 2023-01-16
Fixed
- [
order]\
: Fix group ranks order when alphabetizing ([#2674], thanks [@Pearce-Ropion])
[2.27.4] - 2023-01-11
Fixed
semver
should be a prod dep ([#2668])
[2.27.3] - 2023-01-11
Fixed
- [
no-empty-named-blocks
]: rewrite rule to only check import declarations ([#2666])
[2.27.2] - 2023-01-11
Fixed
- [
no-duplicates
]: do not unconditionally requiretypescript
([#2665])
[2.27.1] - 2023-01-11
Fixed
array.prototype.flatmap
should be a prod dep ([#2664], thanks [@cristobal])
[2.27.0] - 2023-01-11
Added
- [
newline-after-import
]: addconsiderComments
option ([#2399], thanks [@pri1311]) - [
no-cycle
]: addallowUnsafeDynamicCyclicDependency
option ([#2387], thanks [@GerkinDev]) - [
no-restricted-paths
]: support arrays forfrom
andtarget
options ([#2466], thanks [@AdriAt360]) - [
no-anonymous-default-export
]: addallowNew
option ([#2505], thanks [@DamienCassou]) - [
order
]: AdddistinctGroup
option ([#2395], thanks [@hyperupcall]) - [
no-extraneous-dependencies
]: AddincludeInternal
option ([#2541], thanks [@bdwain]) - [
no-extraneous-dependencies
]: AddincludeTypes
option ([#2543], thanks [@bdwain]) - [
order
]: newalphabetize.orderImportKind
option to sort imports with same path based on their kind (type
,typeof
) ([#2544], thanks [@stropho]) - [
consistent-type-specifier-style
]: add rule ([#2473], thanks [@bradzacher]) - Add [
no-empty-named-blocks
] rule ([#2568], thanks [@guilhermelimak]) - [
prefer-default-export
]: add "target" option ([#2602], thanks [@azyzz228]) - [
no-absolute-path
]: add fixer ([#2613], thanks [@adipascu]) - [
no-duplicates
]: support inline type import withinlineTypeImport
option ([#2475], thanks [@snewcomer])
Fixed
- [
order
]: move nested imports closer to main import entry ([#2396], thanks [@pri1311]) - [
no-restricted-paths
]: fix an error message ([#2466], thanks [@AdriAt360]) - [
no-restricted-paths
]: useMinimatch.match
instead ofminimatch
to comply with Windows Native paths ([#2466], thanks [@AdriAt360]) - [
order
]: require with member expression could not be fixed if alphabetize.order was used ([#2490], thanks [@msvab]) - [
order
]: leave more space in rankings for consecutive path groups ([#2506], thanks [@Pearce-Ropion]) - [
no-cycle
]: add ExportNamedDeclaration statements to dependencies ([#2511], thanks [@BenoitZugmeyer]) - [
dynamic-import-chunkname
]: prevent false report on a valid webpack magic comment ([#2330], thanks [@MhMadHamster]) - [
export
]: do not error on TS export overloads ([#1590], thanks [@ljharb]) - [
no-unresolved
], [extensions
]: ignore type only exports ([#2436], thanks [@Lukas-Kullmann]) ExportMap
: add missing param to function ([#2589], thanks [@Fdawgs])- [
no-unused-modules
]:checkPkgFieldObject
filters boolean fields from checks ([#2598], thanks [@mpint]) - [
no-cycle
]: accept Flowtypeof
imports, just liketype
([#2608], thanks [@gnprice]) - [
no-import-module-exports
]: avoid a false positive for import variables ([#2315], thanks [@BarryThePenguin])
Changed
- [Tests][
named
]: Run all TypeScript test ([#2427], thanks [@ProdigySim]) - [readme] note use of typescript in readme
import/extensions
section ([#2440], thanks [@OutdatedVersion]) - [Docs][
order
]: use correct default value ([#2392], thanks [@hyperupcall]) - [meta] replace git.io link in comments with the original URL ([#2444], thanks [@liby])
- [Docs] remove global install in readme ([#2412], thanks [@aladdin-add])
- [readme] clarify
eslint-import-resolver-typescript
usage ([#2503], thanks [@JounQin]) - [Refactor][
no-cycle
]: Add per-run caching of traversed paths ([#2419], thanks [@Nokel81]) - [Performance]
ExportMap
: add caching after parsing for an ambiguous module ([#2531], thanks [@stenin-nikita]) - [Docs][
no-useless-path-segments
]: fix paths ([#2424], thanks [@s-h-a-d-o-w]) - [Tests][
no-cycle
]: add passing test cases ([#2438], thanks [@georeith]) - [Refactor][
no-extraneous-dependencies
] improve performance using cache ([#2374], thanks [@meowtec]) - [meta]
CONTRIBUTING.md
: mention inactive PRs ([#2546], thanks [@stropho]) - [readme] make json for setting groups multiline ([#2570], thanks [@bertyhell])
- [Tests][
no-restricted-paths
]: Tests forimport type
statements ([#2459], thanks [@golergka]) - [Tests][
no-restricted-paths
]: fix one failingimport type
test case, submitted by [@golergka], thanks [@azyzz228] - [Docs] automate docs with eslint-doc-generator ([#2582], thanks [@bmish])
- [readme] Increase clarity around typescript configuration ([#2588], thanks [@Nfinished])
- [Docs] update
eslint-doc-generator
to v1.0.0 ([#2605], thanks [@bmish]) - [Perf][
no-cycle
], [no-internal-modules
], [no-restricted-paths
]: useanyOf
instead ofoneOf
(thanks [@ljharb], [@remcohaszing])
[2.26.0] - 2022-04-05
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], thanks [@sosukesuzuki]) - [
no-dynamic-require
]: support dynamic import with espree ([#2371], thanks [@sosukesuzuki]) - [
no-relative-packages
]: add fixer ([#2381], thanks [@forivall])
Fixed
- [
default
]:typescript-eslint-parser
: avoid a crash on exporting as namespace (thanks [@ljharb]) - [
export
]/TypeScript: false positive for typescript namespace merging ([#1964], thanks [@magarcia]) - [
no-duplicates
]: ignore duplicate modules in different TypeScript module declarations ([#2378], thanks [@remcohaszing]) - [
no-unused-modules
]: avoid a crash when processing re-exports ([#2388], thanks [@ljharb])
Changed
- [Tests][
no-nodejs-modules
]: add tests for node protocol URL ([#2367], thanks [@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], thanks [@sosukesuzuki]) - [Docs][
no-unresolved
]: Fix RegExp escaping in readme ([#2332], thanks [@stephtr]) - [Refactor][
namespace
]: try to improve performance ([#2340], thanks [@ljharb]) - [Docs] make rule doc titles consistent ([#2393], thanks [@TheJaredWilcurt])
- [Docs][
order
]: TS code examples should use TS code blocks ([#2411], thanks [@MM25Zamanian]) - [Docs][
no-unresolved
]: fix link ([#2417], thanks [@kylemh])
[2.25.4] - 2022-01-02
Fixed
importType
: avoid crashing on a non-string' ([#2305], thanks [@ljharb])- [
first
]: prevent crash when parsing angular templates ([#2210], thanks [@ljharb]) importType
: properly resolve@/*
-aliased imports as internal ([#2334], thanks [@ombene])- [
named
]/ExportMap
: handle named imports from CJS modules that use dynamic import ([#2341], thanks [@ludofischer])
Changed
- [
no-default-import
]: report on the token "default" instead of the entire node ([#2299], thanks [@pmcelhaney]) - [Docs][
order
]: Remove duplicate mention of default ([#2280], thanks [@johnthagen]) - [Deps] update
eslint-module-utils
[2.25.3] - 2021-11-09
Fixed
- [`ext...
v2.28.1
Change Log
All notable changes to this project will be documented in this file.
This project adheres to Semantic Versioning.
This change log adheres to standards from Keep a CHANGELOG.
[Unreleased]
Added
- TypeScript config: add .cts and .mts extensions ([#2851], thanks [@Zamiell])
[2.28.1] - 2023-08-18
Fixed
- [
order
]: revert breaking change to single nested group ([#2854], thanks [@yndajas])
Changed
- [Docs] remove duplicate fixable notices in docs ([#2850], thanks [@bmish])
[2.28.0] - 2023-07-27
Fixed
- [
no-duplicates
]: remove duplicate identifiers in duplicate imports ([#2577], thanks [@joe-matsec]) - [
consistent-type-specifier-style
]: fix accidental removal of comma in certain cases ([#2754], thanks [@bradzacher]) - [Perf]
ExportMap
: ImproveExportMap.for
performance on larger codebases ([#2756], thanks [@leipert]) - [
no-extraneous-dependencies
]/TypeScript: do not error when importing inline type from dev dependencies ([#1820], thanks [@AndyOGo]) - [
newline-after-import
]/TypeScript: do not error when re-exporting a namespaced import ([#2832], thanks [@laurens-dg]) - [
order
]: partial fix for [#2687] (thanks [@ljharb]) - [
no-duplicates
]: Detect across type and regular imports ([#2835], thanks [@benkrejci]) - [
extensions
]: handle.
and..
properly ([#2778], thanks [@benasher44]) - [
no-unused-modules
]: improve schema (thanks [@ljharb]) - [
no-unused-modules
]: report error on binding instead of parent export ([#2842], thanks [@Chamion])
Changed
- [Docs][
no-duplicates
]: fix example schema ([#2684], thanks [@simmo]) - [Docs][
group-exports
]: fix syntax highlighting ([#2699], thanks [@devinrhode2]) - [Docs][
extensions
]: reference node ESM behavior ([#2748], thanks [@xM8WVqaG]) - [Refactor][
exports-last
]: usearray.prototype.findlastindex
(thanks [@ljharb]) - [Refactor][
no-anonymous-default-export
]: useobject.fromentries
(thanks [@ljharb]) - [Refactor][
no-unused-modules
]: usearray.prototype.flatmap
(thanks [@ljharb])
[2.27.5] - 2023-01-16
Fixed
- [
order]\
: Fix group ranks order when alphabetizing ([#2674], thanks [@Pearce-Ropion])
[2.27.4] - 2023-01-11
Fixed
semver
should be a prod dep ([#2668])
[2.27.3] - 2023-01-11
Fixed
- [
no-empty-named-blocks
]: rewrite rule to only check import declarations ([#2666])
[2.27.2] - 2023-01-11
Fixed
- [
no-duplicates
]: do not unconditionally requiretypescript
([#2665])
[2.27.1] - 2023-01-11
Fixed
array.prototype.flatmap
should be a prod dep ([#2664], thanks [@cristobal])
[2.27.0] - 2023-01-11
Added
- [
newline-after-import
]: addconsiderComments
option ([#2399], thanks [@pri1311]) - [
no-cycle
]: addallowUnsafeDynamicCyclicDependency
option ([#2387], thanks [@GerkinDev]) - [
no-restricted-paths
]: support arrays forfrom
andtarget
options ([#2466], thanks [@AdriAt360]) - [
no-anonymous-default-export
]: addallowNew
option ([#2505], thanks [@DamienCassou]) - [
order
]: AdddistinctGroup
option ([#2395], thanks [@hyperupcall]) - [
no-extraneous-dependencies
]: AddincludeInternal
option ([#2541], thanks [@bdwain]) - [
no-extraneous-dependencies
]: AddincludeTypes
option ([#2543], thanks [@bdwain]) - [
order
]: newalphabetize.orderImportKind
option to sort imports with same path based on their kind (type
,typeof
) ([#2544], thanks [@stropho]) - [
consistent-type-specifier-style
]: add rule ([#2473], thanks [@bradzacher]) - Add [
no-empty-named-blocks
] rule ([#2568], thanks [@guilhermelimak]) - [
prefer-default-export
]: add "target" option ([#2602], thanks [@azyzz228]) - [
no-absolute-path
]: add fixer ([#2613], thanks [@adipascu]) - [
no-duplicates
]: support inline type import withinlineTypeImport
option ([#2475], thanks [@snewcomer])
Fixed
- [
order
]: move nested imports closer to main import entry ([#2396], thanks [@pri1311]) - [
no-restricted-paths
]: fix an error message ([#2466], thanks [@AdriAt360]) - [
no-restricted-paths
]: useMinimatch.match
instead ofminimatch
to comply with Windows Native paths ([#2466], thanks [@AdriAt360]) - [
order
]: require with member expression could not be fixed if alphabetize.order was used ([#2490], thanks [@msvab]) - [
order
]: leave more space in rankings for consecutive path groups ([#2506], thanks [@Pearce-Ropion]) - [
no-cycle
]: add ExportNamedDeclaration statements to dependencies ([#2511], thanks [@BenoitZugmeyer]) - [
dynamic-import-chunkname
]: prevent false report on a valid webpack magic comment ([#2330], thanks [@MhMadHamster]) - [
export
]: do not error on TS export overloads ([#1590], thanks [@ljharb]) - [
no-unresolved
], [extensions
]: ignore type only exports ([#2436], thanks [@Lukas-Kullmann]) ExportMap
: add missing param to function ([#2589], thanks [@Fdawgs])- [
no-unused-modules
]:checkPkgFieldObject
filters boolean fields from checks ([#2598], thanks [@mpint]) - [
no-cycle
]: accept Flowtypeof
imports, just liketype
([#2608], thanks [@gnprice]) - [
no-import-module-exports
]: avoid a false positive for import variables ([#2315], thanks [@BarryThePenguin])
Changed
- [Tests][
named
]: Run all TypeScript test ([#2427], thanks [@ProdigySim]) - [readme] note use of typescript in readme
import/extensions
section ([#2440], thanks [@OutdatedVersion]) - [Docs][
order
]: use correct default value ([#2392], thanks [@hyperupcall]) - [meta] replace git.io link in comments with the original URL ([#2444], thanks [@liby])
- [Docs] remove global install in readme ([#2412], thanks [@aladdin-add])
- [readme] clarify
eslint-import-resolver-typescript
usage ([#2503], thanks [@JounQin]) - [Refactor][
no-cycle
]: Add per-run caching of traversed paths ([#2419], thanks [@Nokel81]) - [Performance]
ExportMap
: add caching after parsing for an ambiguous module ([#2531], thanks [@stenin-nikita]) - [Docs][
no-useless-path-segments
]: fix paths ([#2424], thanks [@s-h-a-d-o-w]) - [Tests][
no-cycle
]: add passing test cases ([#2438], thanks [@georeith]) - [Refactor][
no-extraneous-dependencies
] improve performance using cache ([#2374], thanks [@meowtec]) - [meta]
CONTRIBUTING.md
: mention inactive PRs ([#2546], thanks [@stropho]) - [readme] make json for setting groups multiline ([#2570], thanks [@bertyhell])
- [Tests][
no-restricted-paths
]: Tests forimport type
statements ([#2459], thanks [@golergka]) - [Tests][
no-restricted-paths
]: fix one failingimport type
test case, submitted by [@golergka], thanks [@azyzz228] - [Docs] automate docs with eslint-doc-generator ([#2582], thanks [@bmish])
- [readme] Increase clarity around typescript configuration ([#2588], thanks [@Nfinished])
- [Docs] update
eslint-doc-generator
to v1.0.0 ([#2605], thanks [@bmish]) - [Perf][
no-cycle
], [no-internal-modules
], [no-restricted-paths
]: useanyOf
instead ofoneOf
(thanks [@ljharb], [@remcohaszing])
[2.26.0] - 2022-04-05
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], thanks [@sosukesuzuki]) - [
no-dynamic-require
]: support dynamic import with espree ([#2371], thanks [@sosukesuzuki]) - [
no-relative-packages
]: add fixer ([#2381], thanks [@forivall])
Fixed
- [
default
]:typescript-eslint-parser
: avoid a crash on exporting as namespace (thanks [@ljharb]) - [
export
]/TypeScript: false positive for typescript namespace merging ([#1964], thanks [@magarcia]) - [
no-duplicates
]: ignore duplicate modules in different TypeScript module declarations ([#2378], thanks [@remcohaszing]) - [
no-unused-modules
]: avoid a crash when processing re-exports ([#2388], thanks [@ljharb])
Changed
- [Tests][
no-nodejs-modules
]: add tests for node protocol URL ([#2367], thanks [@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], thanks [@sosukesuzuki]) - [Docs][
no-unresolved
]: Fix RegExp escaping in readme ([#2332], thanks [@stephtr]) - [Refactor][
namespace
]: try to improve performance ([#2340], thanks [@ljharb]) - [Docs] make rule doc titles consistent ([#2393], thanks [@TheJaredWilcurt])
- [Docs][
order
]: TS code examples should use TS code blocks ([#2411], thanks [@MM25Zamanian]) - [Docs][
no-unresolved
]: fix link ([#2417], thanks [@kylemh])
[2.25.4] - 2022-01-02
Fixed
importType
: avoid crashing on a non-string' ([#2305], thanks [@ljharb])- [
first
]: prevent crash when parsing angular templates ([#2210], thanks [@ljharb]) importType
: properly resolve@/*
-aliased imports as internal ([#2334], thanks [@ombene])- [
named
]/ExportMap
: handle named imports from CJS modules that use dynamic import ([#2341], thanks [@ludofischer])
Changed
- [
no-default-import
]: report on the token "default" instead of the entire node ([#2299], thanks [@pmcelhaney]) - [Docs][
order
]: Remove duplicate mention of default ([#2280], thanks [@johnthagen]) - [Deps] update
eslint-module-utils
[2.25.3] - 2021-11-09
Fixed
- [
extensions
]: ignore unresolveable type-only imports ([#2270], [#2271], thanks [@jablko]) importType
: fixisExternalModule
calculation ([#2282], thanks [@mx-bernhard])- [
no-import-module-exports
]: avoid false positives with a shadowedmodule
orexports
([#2297], thanks [@ljharb])
...
v2.28.0
Change Log
All notable changes to this project will be documented in this file.
This project adheres to Semantic Versioning.
This change log adheres to standards from Keep a CHANGELOG.
[Unreleased]
[2.28.0] - 2023-07-27
Fixed
- [
no-duplicates
]: remove duplicate identifiers in duplicate imports ([#2577], thanks [@joe-matsec]) - [
consistent-type-specifier-style
]: fix accidental removal of comma in certain cases ([#2754], thanks [@bradzacher]) - [Perf]
ExportMap
: ImproveExportMap.for
performance on larger codebases ([#2756], thanks [@leipert]) - [
no-extraneous-dependencies
]/TypeScript: do not error when importing inline type from dev dependencies ([#1820], thanks [@AndyOGo]) - [
newline-after-import
]/TypeScript: do not error when re-exporting a namespaced import ([#2832], thanks [@laurens-dg]) - [
order
]: partial fix for [#2687] (thanks [@ljharb]) - [
no-duplicates
]: Detect across type and regular imports ([#2835], thanks [@benkrejci]) - [
extensions
]: handle.
and..
properly ([#2778], thanks [@benasher44]) - [
no-unused-modules
]: improve schema (thanks [@ljharb]) - [
no-unused-modules
]: report error on binding instead of parent export ([#2842], thanks [@Chamion])
Changed
- [Docs][
no-duplicates
]: fix example schema ([#2684], thanks [@simmo]) - [Docs][
group-exports
]: fix syntax highlighting ([#2699], thanks [@devinrhode2]) - [Docs][
extensions
]: reference node ESM behavior ([#2748], thanks [@xM8WVqaG]) - [Refactor][
exports-last
]: usearray.prototype.findlastindex
(thanks [@ljharb]) - [Refactor][
no-anonymous-default-export
]: useobject.fromentries
(thanks [@ljharb]) - [Refactor][
no-unused-modules
]: usearray.prototype.flatmap
(thanks [@ljharb])
[2.27.5] - 2023-01-16
Fixed
- [
order]\
: Fix group ranks order when alphabetizing ([#2674], thanks [@Pearce-Ropion])
[2.27.4] - 2023-01-11
Fixed
semver
should be a prod dep ([#2668])
[2.27.3] - 2023-01-11
Fixed
- [
no-empty-named-blocks
]: rewrite rule to only check import declarations ([#2666])
[2.27.2] - 2023-01-11
Fixed
- [
no-duplicates
]: do not unconditionally requiretypescript
([#2665])
[2.27.1] - 2023-01-11
Fixed
array.prototype.flatmap
should be a prod dep ([#2664], thanks [@cristobal])
[2.27.0] - 2023-01-11
Added
- [
newline-after-import
]: addconsiderComments
option ([#2399], thanks [@pri1311]) - [
no-cycle
]: addallowUnsafeDynamicCyclicDependency
option ([#2387], thanks [@GerkinDev]) - [
no-restricted-paths
]: support arrays forfrom
andtarget
options ([#2466], thanks [@AdriAt360]) - [
no-anonymous-default-export
]: addallowNew
option ([#2505], thanks [@DamienCassou]) - [
order
]: AdddistinctGroup
option ([#2395], thanks [@hyperupcall]) - [
no-extraneous-dependencies
]: AddincludeInternal
option ([#2541], thanks [@bdwain]) - [
no-extraneous-dependencies
]: AddincludeTypes
option ([#2543], thanks [@bdwain]) - [
order
]: newalphabetize.orderImportKind
option to sort imports with same path based on their kind (type
,typeof
) ([#2544], thanks [@stropho]) - [
consistent-type-specifier-style
]: add rule ([#2473], thanks [@bradzacher]) - Add [
no-empty-named-blocks
] rule ([#2568], thanks [@guilhermelimak]) - [
prefer-default-export
]: add "target" option ([#2602], thanks [@azyzz228]) - [
no-absolute-path
]: add fixer ([#2613], thanks [@adipascu]) - [
no-duplicates
]: support inline type import withinlineTypeImport
option ([#2475], thanks [@snewcomer])
Fixed
- [
order
]: move nested imports closer to main import entry ([#2396], thanks [@pri1311]) - [
no-restricted-paths
]: fix an error message ([#2466], thanks [@AdriAt360]) - [
no-restricted-paths
]: useMinimatch.match
instead ofminimatch
to comply with Windows Native paths ([#2466], thanks [@AdriAt360]) - [
order
]: require with member expression could not be fixed if alphabetize.order was used ([#2490], thanks [@msvab]) - [
order
]: leave more space in rankings for consecutive path groups ([#2506], thanks [@Pearce-Ropion]) - [
no-cycle
]: add ExportNamedDeclaration statements to dependencies ([#2511], thanks [@BenoitZugmeyer]) - [
dynamic-import-chunkname
]: prevent false report on a valid webpack magic comment ([#2330], thanks [@MhMadHamster]) - [
export
]: do not error on TS export overloads ([#1590], thanks [@ljharb]) - [
no-unresolved
], [extensions
]: ignore type only exports ([#2436], thanks [@Lukas-Kullmann]) ExportMap
: add missing param to function ([#2589], thanks [@Fdawgs])- [
no-unused-modules
]:checkPkgFieldObject
filters boolean fields from checks ([#2598], thanks [@mpint]) - [
no-cycle
]: accept Flowtypeof
imports, just liketype
([#2608], thanks [@gnprice]) - [
no-import-module-exports
]: avoid a false positive for import variables ([#2315], thanks [@BarryThePenguin])
Changed
- [Tests][
named
]: Run all TypeScript test ([#2427], thanks [@ProdigySim]) - [readme] note use of typescript in readme
import/extensions
section ([#2440], thanks [@OutdatedVersion]) - [Docs][
order
]: use correct default value ([#2392], thanks [@hyperupcall]) - [meta] replace git.io link in comments with the original URL ([#2444], thanks [@liby])
- [Docs] remove global install in readme ([#2412], thanks [@aladdin-add])
- [readme] clarify
eslint-import-resolver-typescript
usage ([#2503], thanks [@JounQin]) - [Refactor][
no-cycle
]: Add per-run caching of traversed paths ([#2419], thanks [@Nokel81]) - [Performance]
ExportMap
: add caching after parsing for an ambiguous module ([#2531], thanks [@stenin-nikita]) - [Docs][
no-useless-path-segments
]: fix paths ([#2424], thanks [@s-h-a-d-o-w]) - [Tests][
no-cycle
]: add passing test cases ([#2438], thanks [@georeith]) - [Refactor][
no-extraneous-dependencies
] improve performance using cache ([#2374], thanks [@meowtec]) - [meta]
CONTRIBUTING.md
: mention inactive PRs ([#2546], thanks [@stropho]) - [readme] make json for setting groups multiline ([#2570], thanks [@bertyhell])
- [Tests][
no-restricted-paths
]: Tests forimport type
statements ([#2459], thanks [@golergka]) - [Tests][
no-restricted-paths
]: fix one failingimport type
test case, submitted by [@golergka], thanks [@azyzz228] - [Docs] automate docs with eslint-doc-generator ([#2582], thanks [@bmish])
- [readme] Increase clarity around typescript configuration ([#2588], thanks [@Nfinished])
- [Docs] update
eslint-doc-generator
to v1.0.0 ([#2605], thanks [@bmish]) - [Perf][
no-cycle
], [no-internal-modules
], [no-restricted-paths
]: useanyOf
instead ofoneOf
(thanks [@ljharb], [@remcohaszing])
[2.26.0] - 2022-04-05
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], thanks [@sosukesuzuki]) - [
no-dynamic-require
]: support dynamic import with espree ([#2371], thanks [@sosukesuzuki]) - [
no-relative-packages
]: add fixer ([#2381], thanks [@forivall])
Fixed
- [
default
]:typescript-eslint-parser
: avoid a crash on exporting as namespace (thanks [@ljharb]) - [
export
]/TypeScript: false positive for typescript namespace merging ([#1964], thanks [@magarcia]) - [
no-duplicates
]: ignore duplicate modules in different TypeScript module declarations ([#2378], thanks [@remcohaszing]) - [
no-unused-modules
]: avoid a crash when processing re-exports ([#2388], thanks [@ljharb])
Changed
- [Tests][
no-nodejs-modules
]: add tests for node protocol URL ([#2367], thanks [@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], thanks [@sosukesuzuki]) - [Docs][
no-unresolved
]: Fix RegExp escaping in readme ([#2332], thanks [@stephtr]) - [Refactor][
namespace
]: try to improve performance ([#2340], thanks [@ljharb]) - [Docs] make rule doc titles consistent ([#2393], thanks [@TheJaredWilcurt])
- [Docs][
order
]: TS code examples should use TS code blocks ([#2411], thanks [@MM25Zamanian]) - [Docs][
no-unresolved
]: fix link ([#2417], thanks [@kylemh])
[2.25.4] - 2022-01-02
Fixed
importType
: avoid crashing on a non-string' ([#2305], thanks [@ljharb])- [
first
]: prevent crash when parsing angular templates ([#2210], thanks [@ljharb]) importType
: properly resolve@/*
-aliased imports as internal ([#2334], thanks [@ombene])- [
named
]/ExportMap
: handle named imports from CJS modules that use dynamic import ([#2341], thanks [@ludofischer])
Changed
- [
no-default-import
]: report on the token "default" instead of the entire node ([#2299], thanks [@pmcelhaney]) - [Docs][
order
]: Remove duplicate mention of default ([#2280], thanks [@johnthagen]) - [Deps] update
eslint-module-utils
[2.25.3] - 2021-11-09
Fixed
- [
extensions
]: ignore unresolveable type-only imports ([#2270], [#2271], thanks [@jablko]) importType
: fixisExternalModule
calculation ([#2282], thanks [@mx-bernhard])- [
no-import-module-exports
]: avoid false positives with a shadowedmodule
orexports
([#2297], thanks [@ljharb])
Changed
- [Docs][
order
]: add type to the default groups ([#2272], thanks [@charpeni]) - [readme] Add note to TypeScript docs to install appropriate resolver ([#2279], thanks [@johnthagen])
- [Refactor]
importType
: combine redundantisScoped
andisScopedModule
(thanks [@ljharb]) - [Docs] HTTP => H...