UNPKG

41.3 kBMarkdownView Raw
1# Change Log
2All notable changes to this project will be documented in this file.
3This project adheres to [Semantic Versioning](http://semver.org/).
4This change log adheres to standards from [Keep a CHANGELOG](http://keepachangelog.com).
5
6## [Unreleased]
7
8
9## [2.16.0] - 2019-01-29
10### Added
11- `typescript` config ([#1257], thanks [@kirill-konshin])
12
13### Fixed
14- Memory leak of `SourceCode` objects for all parsed dependencies, resolved. (issue [#1266], thanks [@asapach] and [@sergei-startsev] for digging in)
15
16## [2.15.0] - 2019-01-22
17### Added
18- new rule: [`no-named-export`] ([#1157], thanks [@fsmaia])
19
20### Fixed
21- [`no-extraneous-dependencies`]: `packageDir` option with array value was clobbering package deps instead of merging them ([#1175]/[#1176], thanks [@aravindet] & [@pzhine])
22- [`dynamic-import-chunkname`]: Add proper webpack comment parsing ([#1163], thanks [@st-sloth])
23- [`named`]: fix destructuring assignment ([#1232], thanks [@ljqx])
24
25
26## [2.14.0] - 2018-08-13
27* 69e0187 (HEAD -> master, source/master, origin/master, origin/HEAD) Merge pull request #1151 from jf248/jsx
28|\
29| * e30a757 (source/pr/1151, fork/jsx) Add JSX check to namespace rule
30|/
31* 8252344 (source/pr/1148) Add error to output when module loaded as resolver has invalid API
32### Added
33- [`no-useless-path-segments`]: add commonJS (CJS) support ([#1128], thanks [@1pete])
34- [`namespace`]: add JSX check ([#1151], thanks [@jf248])
35
36### Fixed
37- [`no-cycle`]: ignore Flow imports ([#1126], thanks [@gajus])
38- fix Flow type imports ([#1106], thanks [@syymza])
39- [`no-relative-parent-imports`]: resolve paths ([#1135], thanks [@chrislloyd])
40- [`import/order`]: fix autofixer when using typescript-eslint-parser ([#1137], thanks [@justinanastos])
41- repeat fix from [#797] for [#717], in another place (thanks [@ljharb])
42
43### Refactors
44- add explicit support for RestElement alongside ExperimentalRestProperty (thanks [@ljharb])
45
46## [2.13.0] - 2018-06-24
47### Added
48- Add ESLint 5 support ([#1122], thanks [@ai] and [@ljharb])
49- Add [`no-relative-parent-imports`] rule: disallow relative imports from parent directories ([#1093], thanks [@chrislloyd])
50
51### Fixed
52- `namespace` rule: ensure it works in eslint 5/ecmaVersion 2018 (thanks [@ljharb])
53
54## [2.12.0] - 2018-05-17
55### Added
56- Ignore type imports for [`named`] rule ([#931], thanks [@mattijsbliek])
57- Add documentation for [`no-useless-path-segments`] rule ([#1068], thanks [@manovotny])
58- `packageDir` option for [`no-extraneous-dependencies`] can be array-valued ([#1085], thanks [@hulkish])
59
60## [2.11.0] - 2018-04-09
61### Added
62- Fixer for [`first`] ([#1046], thanks [@fengkfengk])
63- `allow-require` option for [`no-commonjs`] rule ([#880], thanks [@futpib])
64
65### Fixed
66- memory/CPU regression where ASTs were held in memory ([#1058], thanks [@klimashkin]/[@lukeapage])
67
68## [2.10.0] - 2018-03-29
69### Added
70- Autofixer for [`order`] rule ([#908], thanks [@tihonove])
71- Add [`no-cycle`] rule: reports import cycles.
72
73## [2.9.0] - 2018-02-21
74### Added
75- Add [`group-exports`] rule: style-guide rule to report use of multiple named exports ([#721], thanks [@robertrossmann])
76- Add [`no-self-import`] rule: forbids a module from importing itself. ([#727], [#449], [#447], thanks [@giodamelio]).
77- Add [`no-default-export`] rule ([#889], thanks [@isiahmeadows])
78- Add [`no-useless-path-segments`] rule ([#912], thanks [@graingert] and [@danny-andrews])
79- ... and more! check the commits for v[2.9.0]
80
81## [2.8.0] - 2017-10-18
82### Added
83- [`exports-last`] rule ([#620] + [#632], thanks [@k15a])
84
85### Changed
86- Case-sensitivity checking ignores working directory and ancestors. ([#720] + [#858], thanks [@laysent])
87
88### Fixed
89- support scoped modules containing hyphens ([#744], thanks [@rosswarren])
90- core-modules now resolves files inside declared modules ([#886] / [#891], thanks [@mplewis])
91- TypeError for missing AST fields from TypeScript ([#842] / [#944], thanks [@alexgorbatchev])
92
93## [2.7.0] - 2017-07-06
94### Changed
95- [`no-absolute-path`] picks up speed boost, optional AMD support ([#843], thanks [@jseminck])
96
97## [2.6.1] - 2017-06-29
98### Fixed
99- update bundled node resolver dependency to latest version
100
101## [2.6.0] - 2017-06-23
102### Changed
103- update tests / peerDeps for ESLint 4.0 compatibility ([#871], thanks [@mastilver])
104- [`memo-parser`] updated to require `filePath` on parser options as it melts
105 down if it's not there, now that this plugin always provides it. (see [#863])
106
107## [2.5.0] - 2017-06-22
108
109Re-releasing v[2.4.0] after discovering that the memory leak is isolated to the [`memo-parser`],
110which is more or less experimental anyway.
111
112### Added
113- Autofixer for newline-after-import. ([#686] + [#696], thanks [@eelyafi])
114
115## [2.4.0] - 2017-06-02 [YANKED]
116
117Yanked due to critical issue in eslint-module-utils with cache key resulting from [#839].
118
119### Added
120- Add `filePath` into `parserOptions` passed to `parser` ([#839], thanks [@sompylasar])
121- Add `allow` option to [`no-unassigned-import`] to allow for files that match the globs ([#671], [#737], thanks [@kevin940726]).
122
123## [2.3.0] - 2017-05-18
124### Added
125- [`no-anonymous-default-export`] rule: report anonymous default exports ([#712], thanks [@duncanbeevers]).
126- Add new value to [`order`]'s `newlines-between` option to allow newlines inside import groups ([#627], [#628], thanks [@giodamelio])
127- Add `count` option to the [`newline-after-import`] rule to allow configuration of number of newlines expected ([#742], thanks [@ntdb])
128
129### Changed
130- [`no-extraneous-dependencies`]: use `read-pkg-up` to simplify finding + loading `package.json` ([#680], thanks [@wtgtybhertgeghgtwtg])
131- Add support to specify the package.json [`no-extraneous-dependencies`] ([#685], thanks [@ramasilveyra])
132
133### Fixed
134- attempt to fix crash in [`no-mutable-exports`]. ([#660])
135- "default is a reserved keyword" in no-maned-default tests by locking down babylon to 6.15.0 (#756, thanks @gmathieu)
136- support scoped modules containing non word characters
137
138
139## [2.2.0] - 2016-11-07
140### Fixed
141- Corrected a few gaffs in the auto-ignore logic to fix major performance issues
142 with projects that did not explicitly ignore `node_modules`. ([#654])
143- [`import/ignore` setting] was only being respected if the ignored module didn't start with
144 an `import` or `export` JS statement
145- [`prefer-default-export`]: fixed crash on export extensions ([#653])
146
147## [2.1.0] - 2016-11-02
148### Added
149- Add [`no-named-default`] rule: style-guide rule to report use of unnecessarily named default imports ([#596], thanks [@ntdb])
150- [`no-extraneous-dependencies`]: check globs against CWD + absolute path ([#602] + [#630], thanks [@ljharb])
151
152### Fixed
153- [`prefer-default-export`] handles flow `export type` ([#484] + [#639], thanks [@jakubsta])
154- [`prefer-default-export`] handles re-exported default exports ([#609])
155- Fix crash when using [`newline-after-import`] with decorators ([#592])
156- Properly report [`newline-after-import`] when next line is a decorator
157- Fixed documentation for the default values for the [`order`] rule ([#601])
158
159## [2.0.1] - 2016-10-06
160### Fixed
161- Fixed code that relied on removed dependencies. ([#604])
162
163## [2.0.0]! - 2016-09-30
164### Added
165- [`unambiguous`] rule: report modules that are not unambiguously ES modules.
166- `recommended` shared config. Roughly `errors` and `warnings` mixed together,
167 with some `parserOptions` in the mix. ([#402])
168- `react` shared config: added `jsx: true` to `parserOptions.ecmaFeatures`.
169- Added [`no-webpack-loader-syntax`] rule: forbid custom Webpack loader syntax in imports. ([#586], thanks [@fson]!)
170- Add option `newlines-between: "ignore"` to [`order`] ([#519])
171- Added [`no-unassigned-import`] rule ([#529])
172
173### Breaking
174- [`import/extensions` setting] defaults to `['.js']`. ([#306])
175- [`import/ignore` setting] defaults to nothing, and ambiguous modules are ignored natively. This means importing from CommonJS modules will no longer be reported by [`default`], [`named`], or [`namespace`], regardless of `import/ignore`. ([#270])
176- [`newline-after-import`]: Removed need for an empty line after an inline `require` call ([#570])
177- [`order`]: Default value for `newlines-between` option is now `ignore` ([#519])
178
179### Changed
180- `imports-first` is renamed to [`first`]. `imports-first` alias will continue to
181 exist, but may be removed in a future major release.
182- Case-sensitivity: now specifically (and optionally) reported by [`no-unresolved`].
183 Other rules will ignore case-mismatches on paths on case-insensitive filesystems. ([#311])
184
185### Fixed
186- [`no-internal-modules`]: support `@`-scoped packages ([#577]+[#578], thanks [@spalger])
187
188## [1.16.0] - 2016-09-22
189### Added
190- Added [`no-dynamic-require`] rule: forbid `require()` calls with expressions. ([#567], [#568])
191- Added [`no-internal-modules`] rule: restrict deep package imports to specific folders. ([#485], thanks [@spalger]!)
192- [`extensions`]: allow override of a chosen default with options object ([#555], thanks [@ljharb]!)
193
194### Fixed
195- [`no-named-as-default`] no longer false-positives on `export default from '...'` ([#566], thanks [@preco21])
196- [`default`]: allow re-export of values from ignored files as default ([#545], thanks [@skyrpex])
197
198## [1.15.0] - 2016-09-12
199### Added
200- Added an `allow` option to [`no-nodejs-modules`] to allow exceptions ([#452], [#509]).
201- Added [`no-absolute-path`] rule ([#530], [#538])
202- [`max-dependencies`] for specifying the maximum number of dependencies (both `import` and `require`) a module can have. (see [#489], thanks [@tizmagik])
203- Added glob option to config for [`no-extraneous-dependencies`], after much bikeshedding. Thanks, [@knpwrs]! ([#527])
204
205### Fixed
206- [`no-named-as-default-member`] Allow default import to have a property named "default" ([#507], [#508], thanks [@jquense] for both!)
207
208## [1.14.0] - 2016-08-22
209### Added
210- [`import/parsers` setting]: parse some dependencies (i.e. TypeScript!) with a different parser than the ESLint-configured parser. ([#503])
211
212### Fixed
213- [`namespace`] exception for get property from `namespace` import, which are re-export from commonjs module ([#499] fixes [#416], thanks [@wKich])
214
215## [1.13.0] - 2016-08-11
216### Added
217- `allowComputed` option for [`namespace`] rule. If set to `true`, won't report
218 computed member references to namespaces. (see [#456])
219
220### Changed
221- Modified [`no-nodejs-modules`] error message to include the module's name ([#453], [#461])
222
223### Fixed
224- [`import/extensions` setting] is respected in spite of the appearance of imports
225 in an imported file. (fixes [#478], thanks [@rhys-vdw])
226
227## [1.12.0] - 2016-07-26
228### Added
229- [`import/external-module-folders` setting]: a possibility to configure folders for "external" modules ([#444], thanks [@zloirock])
230
231## [1.11.1] - 2016-07-20
232### Fixed
233- [`newline-after-import`] exception for `switch` branches with `require`s iff parsed as `sourceType:'module'`.
234 (still [#441], thanks again [@ljharb])
235
236## [1.11.0] - 2016-07-17
237### Added
238- Added an `peerDependencies` option to [`no-extraneous-dependencies`] to allow/forbid peer dependencies ([#423], [#428], thanks [@jfmengels]!).
239
240### Fixed
241- [`newline-after-import`] exception for multiple `require`s in an arrow
242 function expression (e.g. `() => require('a') || require('b')`). ([#441], thanks [@ljharb])
243
244## [1.10.3] - 2016-07-08
245### Fixed
246- removing `Symbol` dependencies (i.e. `for-of` loops) due to Node 0.10 polyfill
247 issue (see [#415]). Should not make any discernible semantic difference.
248
249## [1.10.2] - 2016-07-04
250### Fixed
251- Something horrible happened during `npm prepublish` of 1.10.1.
252 Several `rm -rf node_modules && npm i` and `gulp clean && npm prepublish`s later, it is rebuilt and republished as 1.10.2. Thanks [@rhettlivingston] for noticing and reporting!
253
254## [1.10.1] - 2016-07-02 [YANKED]
255### Added
256- Officially support ESLint 3.x. (peerDependencies updated to `2.x - 3.x`)
257
258## [1.10.0] - 2016-06-30
259### Added
260- Added new rule [`no-restricted-paths`]. ([#155]/[#371], thanks [@lo1tuma])
261- [`import/core-modules` setting]: allow configuration of additional module names,
262 to be treated as builtin modules (a la `path`, etc. in Node). ([#275] + [#365], thanks [@sindresorhus] for driving)
263- React Native shared config (based on comment from [#283])
264
265### Fixed
266- Fixed crash with `newline-after-import` related to the use of switch cases. (fixes [#386], thanks [@ljharb] for reporting) ([#395])
267
268## [1.9.2] - 2016-06-21
269### Fixed
270- Issues with ignored/CJS files in [`export`] and [`no-deprecated`] rules. ([#348], [#370])
271
272## [1.9.1] - 2016-06-16
273### Fixed
274- Reordered precedence for loading resolvers. ([#373])
275
276## [1.9.0] - 2016-06-10
277### Added
278- Added support TomDoc comments to [`no-deprecated`]. ([#321], thanks [@josh])
279- Added support for loading custom resolvers ([#314], thanks [@le0nik])
280
281### Fixed
282- [`prefer-default-export`] handles `export function` and `export const` in same file ([#359], thanks [@scottnonnenberg])
283
284## [1.8.1] - 2016-05-23
285### Fixed
286- `export * from 'foo'` now properly ignores a `default` export from `foo`, if any. ([#328]/[#332], thanks [@jkimbo])
287 This impacts all static analysis of imported names. ([`default`], [`named`], [`namespace`], [`export`])
288- Make [`order`]'s `newline-between` option handle multiline import statements ([#313], thanks [@singles])
289- Make [`order`]'s `newline-between` option handle not assigned import statements ([#313], thanks [@singles])
290- Make [`order`]'s `newline-between` option ignore `require` statements inside object literals ([#313], thanks [@singles])
291- [`prefer-default-export`] properly handles deep destructuring, `export * from ...`, and files with no exports. ([#342]+[#343], thanks [@scottnonnenberg])
292
293## [1.8.0] - 2016-05-11
294### Added
295- [`prefer-default-export`], new rule. ([#308], thanks [@gavriguy])
296
297### Fixed
298- Ignore namespace / ES7 re-exports in [`no-mutable-exports`]. ([#317], fixed by [#322]. thanks [@borisyankov] + [@jfmengels])
299- Make [`no-extraneous-dependencies`] handle scoped packages ([#316], thanks [@jfmengels])
300
301## [1.7.0] - 2016-05-06
302### Added
303- [`newline-after-import`], new rule. ([#245], thanks [@singles])
304- Added an `optionalDependencies` option to [`no-extraneous-dependencies`] to allow/forbid optional dependencies ([#266], thanks [@jfmengels]).
305- Added `newlines-between` option to [`order`] rule ([#298], thanks [@singles])
306- add [`no-mutable-exports`] rule ([#290], thanks [@josh])
307- [`import/extensions` setting]: a list of file extensions to parse as modules
308 and search for `export`s. If unspecified, all extensions are considered valid (for now).
309 In v2, this will likely default to `['.js', MODULE_EXT]`. ([#297], to fix [#267])
310
311### Fixed
312- [`extensions`]: fallback to source path for extension enforcement if imported
313 module is not resolved. Also, never report for builtins (i.e. `path`). ([#296])
314
315## [1.6.1] - 2016-04-28
316### Fixed
317- [`no-named-as-default-member`]: don't crash on rest props. ([#281], thanks [@SimenB])
318- support for Node 6: don't pass `null` to `path` functions.
319 Thanks to [@strawbrary] for bringing this up ([#272]) and adding OSX support to the Travis
320 config ([#288]).
321
322## [1.6.0] - 2016-04-25
323### Added
324- add [`no-named-as-default-member`] to `warnings` canned config
325- add [`no-extraneous-dependencies`] rule ([#241], thanks [@jfmengels])
326- add [`extensions`] rule ([#250], thanks [@lo1tuma])
327- add [`no-nodejs-modules`] rule ([#261], thanks [@jfmengels])
328- add [`order`] rule ([#247], thanks [@jfmengels])
329- consider `resolve.fallback` config option in the webpack resolver ([#254])
330
331### Changed
332- [`imports-first`] now allows directives (i.e. `'use strict'`) strictly before
333 any imports ([#256], thanks [@lemonmade])
334
335### Fixed
336- [`named`] now properly ignores the source module if a name is re-exported from
337 an ignored file (i.e. `node_modules`). Also improved the reported error. (thanks to [@jimbolla] for reporting)
338- [`no-named-as-default-member`] had a crash on destructuring in loops (thanks for heads up from [@lemonmade])
339
340## [1.5.0] - 2016-04-18
341### Added
342- report resolver errors at the top of the linted file
343- add [`no-namespace`] rule ([#239], thanks [@singles])
344- add [`no-named-as-default-member`] rule ([#243], thanks [@dmnd])
345
346### Changed
347- Rearranged rule groups in README in preparation for more style guide rules
348
349### Removed
350- support for Node 0.10, via `es6-*` ponyfills. Using native Map/Set/Symbol.
351
352## [1.4.0] - 2016-03-25
353### Added
354- Resolver plugin interface v2: more explicit response format that more clearly covers the found-but-core-module case, where there is no path.
355 Still backwards-compatible with the original version of the resolver spec.
356- [Resolver documentation](./resolvers/README.md)
357
358### Changed
359- using `package.json/files` instead of `.npmignore` for package file inclusion ([#228], thanks [@mathieudutour])
360- using `es6-*` ponyfills instead of `babel-runtime`
361
362## [1.3.0] - 2016-03-20
363Major perf improvements. Between parsing only once and ignoring gigantic, non-module `node_modules`,
364there is very little added time.
365
366My test project takes 17s to lint completely, down from 55s, when using the
367memoizing parser, and takes only 27s with naked `babel-eslint` (thus, reparsing local modules).
368
369### Added
370- This change log ([#216])
371- Experimental memoizing [parser](./memo-parser/README.md)
372
373### Fixed
374- Huge reduction in execution time by _only_ ignoring [`import/ignore` setting] if
375 something that looks like an `export` is detected in the module content.
376
377## [1.2.0] - 2016-03-19
378Thanks @lencioni for identifying a huge amount of rework in resolve and kicking
379off a bunch of memoization.
380
381I'm seeing 62% improvement over my normal test codebase when executing only
382[`no-unresolved`] in isolation, and ~35% total reduction in lint time.
383
384### Changed
385- added caching to core/resolve via [#214], configured via [`import/cache` setting]
386
387## [1.1.0] - 2016-03-15
388### Added
389- Added an [`ignore`](./docs/rules/no-unresolved.md#ignore) option to [`no-unresolved`] for those pesky files that no
390resolver can find. (still prefer enhancing the Webpack and Node resolvers to
391using it, though). See [#89] for details.
392
393## [1.0.4] - 2016-03-11
394### Changed
395- respect hoisting for deep namespaces ([`namespace`]/[`no-deprecated`]) ([#211])
396
397### Fixed
398- don't crash on self references ([#210])
399- correct cache behavior in `eslint_d` for deep namespaces ([#200])
400
401## [1.0.3] - 2016-02-26
402### Changed
403- no-deprecated follows deep namespaces ([#191])
404
405### Fixed
406- [`namespace`] no longer flags modules with only a default export as having no
407names. (ns.default is valid ES6)
408
409## [1.0.2] - 2016-02-26
410### Fixed
411- don't parse imports with no specifiers ([#192])
412
413## [1.0.1] - 2016-02-25
414### Fixed
415- export `stage-0` shared config
416- documented [`no-deprecated`]
417- deep namespaces are traversed regardless of how they get imported ([#189])
418
419## [1.0.0] - 2016-02-24
420### Added
421- [`no-deprecated`]: WIP rule to let you know at lint time if you're using
422deprecated functions, constants, classes, or modules.
423
424### Changed
425- [`namespace`]: support deep namespaces ([#119] via [#157])
426
427## [1.0.0-beta.0] - 2016-02-13
428### Changed
429- support for (only) ESLint 2.x
430- no longer needs/refers to `import/parser` or `import/parse-options`. Instead,
431ESLint provides the configured parser + options to the rules, and they use that
432to parse dependencies.
433
434### Removed
435- `babylon` as default import parser (see Breaking)
436
437## [0.13.0] - 2016-02-08
438### Added
439- [`no-commonjs`] rule
440- [`no-amd`] rule
441
442### Removed
443- Removed vestigial `no-require` rule. [`no-commonjs`] is more complete.
444
445## [0.12.2] - 2016-02-06 [YANKED]
446Unpublished from npm and re-released as 0.13.0. See [#170].
447
448## [0.12.1] - 2015-12-17
449### Changed
450- Broke docs for rules out into individual files.
451
452## [0.12.0] - 2015-12-14
453### Changed
454- Ignore [`import/ignore` setting] if exports are actually found in the parsed module. Does
455this to support use of `jsnext:main` in `node_modules` without the pain of
456managing an allow list or a nuanced deny list.
457
458## [0.11.0] - 2015-11-27
459### Added
460- Resolver plugins. Now the linter can read Webpack config, properly follow
461aliases and ignore externals, dismisses inline loaders, etc. etc.!
462
463## Earlier releases (0.10.1 and younger)
464See [GitHub release notes](https://github.com/benmosher/eslint-plugin-import/releases?after=v0.11.0)
465for info on changes for earlier releases.
466
467
468[`import/cache` setting]: ./README.md#importcache
469[`import/ignore` setting]: ./README.md#importignore
470[`import/extensions` setting]: ./README.md#importextensions
471[`import/parsers` setting]: ./README.md#importparsers
472[`import/core-modules` setting]: ./README.md#importcore-modules
473[`import/external-module-folders` setting]: ./README.md#importexternal-module-folders
474
475[`no-unresolved`]: ./docs/rules/no-unresolved.md
476[`no-deprecated`]: ./docs/rules/no-deprecated.md
477[`no-commonjs`]: ./docs/rules/no-commonjs.md
478[`no-amd`]: ./docs/rules/no-amd.md
479[`namespace`]: ./docs/rules/namespace.md
480[`no-namespace`]: ./docs/rules/no-namespace.md
481[`no-named-default`]: ./docs/rules/no-named-default.md
482[`no-named-as-default`]: ./docs/rules/no-named-as-default.md
483[`no-named-as-default-member`]: ./docs/rules/no-named-as-default-member.md
484[`no-extraneous-dependencies`]: ./docs/rules/no-extraneous-dependencies.md
485[`extensions`]: ./docs/rules/extensions.md
486[`first`]: ./docs/rules/first.md
487[`imports-first`]: ./docs/rules/first.md
488[`no-nodejs-modules`]: ./docs/rules/no-nodejs-modules.md
489[`order`]: ./docs/rules/order.md
490[`named`]: ./docs/rules/named.md
491[`default`]: ./docs/rules/default.md
492[`export`]: ./docs/rules/export.md
493[`newline-after-import`]: ./docs/rules/newline-after-import.md
494[`no-mutable-exports`]: ./docs/rules/no-mutable-exports.md
495[`prefer-default-export`]: ./docs/rules/prefer-default-export.md
496[`no-restricted-paths`]: ./docs/rules/no-restricted-paths.md
497[`no-absolute-path`]: ./docs/rules/no-absolute-path.md
498[`max-dependencies`]: ./docs/rules/max-dependencies.md
499[`no-internal-modules`]: ./docs/rules/no-internal-modules.md
500[`no-dynamic-require`]: ./docs/rules/no-dynamic-require.md
501[`no-webpack-loader-syntax`]: ./docs/rules/no-webpack-loader-syntax.md
502[`no-unassigned-import`]: ./docs/rules/no-unassigned-import.md
503[`unambiguous`]: ./docs/rules/unambiguous.md
504[`no-anonymous-default-export`]: ./docs/rules/no-anonymous-default-export.md
505[`exports-last`]: ./docs/rules/exports-last.md
506[`group-exports`]: ./docs/rules/group-exports.md
507[`no-self-import`]: ./docs/rules/no-self-import.md
508[`no-default-export`]: ./docs/rules/no-default-export.md
509[`no-useless-path-segments`]: ./docs/rules/no-useless-path-segments.md
510[`no-cycle`]: ./docs/rules/no-cycle.md
511[`dynamic-import-chunkname`]: ./docs/rules/dynamic-import-chunkname.md
512[`no-named-export`]: ./docs/rules/no-named-export.md
513
514[`memo-parser`]: ./memo-parser/README.md
515
516[#1257]: https://github.com/benmosher/eslint-plugin-import/pull/1257
517[#1232]: https://github.com/benmosher/eslint-plugin-import/pull/1232
518[#1176]: https://github.com/benmosher/eslint-plugin-import/pull/1176
519[#1163]: https://github.com/benmosher/eslint-plugin-import/pull/1163
520[#1157]: https://github.com/benmosher/eslint-plugin-import/pull/1157
521[#1151]: https://github.com/benmosher/eslint-plugin-import/pull/1151
522[#1137]: https://github.com/benmosher/eslint-plugin-import/pull/1137
523[#1135]: https://github.com/benmosher/eslint-plugin-import/pull/1135
524[#1128]: https://github.com/benmosher/eslint-plugin-import/pull/1128
525[#1126]: https://github.com/benmosher/eslint-plugin-import/pull/1126
526[#1122]: https://github.com/benmosher/eslint-plugin-import/pull/1122
527[#1106]: https://github.com/benmosher/eslint-plugin-import/pull/1106
528[#1093]: https://github.com/benmosher/eslint-plugin-import/pull/1093
529[#1085]: https://github.com/benmosher/eslint-plugin-import/pull/1085
530[#1068]: https://github.com/benmosher/eslint-plugin-import/pull/1068
531[#1046]: https://github.com/benmosher/eslint-plugin-import/pull/1046
532[#944]: https://github.com/benmosher/eslint-plugin-import/pull/944
533[#908]: https://github.com/benmosher/eslint-plugin-import/pull/908
534[#891]: https://github.com/benmosher/eslint-plugin-import/pull/891
535[#889]: https://github.com/benmosher/eslint-plugin-import/pull/889
536[#880]: https://github.com/benmosher/eslint-plugin-import/pull/880
537[#858]: https://github.com/benmosher/eslint-plugin-import/pull/858
538[#843]: https://github.com/benmosher/eslint-plugin-import/pull/843
539[#871]: https://github.com/benmosher/eslint-plugin-import/pull/871
540[#797]: https://github.com/benmosher/eslint-plugin-import/pull/797
541[#744]: https://github.com/benmosher/eslint-plugin-import/pull/744
542[#742]: https://github.com/benmosher/eslint-plugin-import/pull/742
543[#737]: https://github.com/benmosher/eslint-plugin-import/pull/737
544[#727]: https://github.com/benmosher/eslint-plugin-import/pull/727
545[#721]: https://github.com/benmosher/eslint-plugin-import/pull/721
546[#712]: https://github.com/benmosher/eslint-plugin-import/pull/712
547[#696]: https://github.com/benmosher/eslint-plugin-import/pull/696
548[#685]: https://github.com/benmosher/eslint-plugin-import/pull/685
549[#680]: https://github.com/benmosher/eslint-plugin-import/pull/680
550[#654]: https://github.com/benmosher/eslint-plugin-import/pull/654
551[#639]: https://github.com/benmosher/eslint-plugin-import/pull/639
552[#632]: https://github.com/benmosher/eslint-plugin-import/pull/632
553[#630]: https://github.com/benmosher/eslint-plugin-import/pull/630
554[#628]: https://github.com/benmosher/eslint-plugin-import/pull/628
555[#596]: https://github.com/benmosher/eslint-plugin-import/pull/596
556[#586]: https://github.com/benmosher/eslint-plugin-import/pull/586
557[#578]: https://github.com/benmosher/eslint-plugin-import/pull/578
558[#568]: https://github.com/benmosher/eslint-plugin-import/pull/568
559[#555]: https://github.com/benmosher/eslint-plugin-import/pull/555
560[#538]: https://github.com/benmosher/eslint-plugin-import/pull/538
561[#527]: https://github.com/benmosher/eslint-plugin-import/pull/527
562[#509]: https://github.com/benmosher/eslint-plugin-import/pull/509
563[#508]: https://github.com/benmosher/eslint-plugin-import/pull/508
564[#503]: https://github.com/benmosher/eslint-plugin-import/pull/503
565[#499]: https://github.com/benmosher/eslint-plugin-import/pull/499
566[#489]: https://github.com/benmosher/eslint-plugin-import/pull/489
567[#485]: https://github.com/benmosher/eslint-plugin-import/pull/485
568[#461]: https://github.com/benmosher/eslint-plugin-import/pull/461
569[#449]: https://github.com/benmosher/eslint-plugin-import/pull/449
570[#444]: https://github.com/benmosher/eslint-plugin-import/pull/444
571[#428]: https://github.com/benmosher/eslint-plugin-import/pull/428
572[#395]: https://github.com/benmosher/eslint-plugin-import/pull/395
573[#371]: https://github.com/benmosher/eslint-plugin-import/pull/371
574[#365]: https://github.com/benmosher/eslint-plugin-import/pull/365
575[#359]: https://github.com/benmosher/eslint-plugin-import/pull/359
576[#343]: https://github.com/benmosher/eslint-plugin-import/pull/343
577[#332]: https://github.com/benmosher/eslint-plugin-import/pull/332
578[#322]: https://github.com/benmosher/eslint-plugin-import/pull/322
579[#321]: https://github.com/benmosher/eslint-plugin-import/pull/321
580[#316]: https://github.com/benmosher/eslint-plugin-import/pull/316
581[#308]: https://github.com/benmosher/eslint-plugin-import/pull/308
582[#298]: https://github.com/benmosher/eslint-plugin-import/pull/298
583[#297]: https://github.com/benmosher/eslint-plugin-import/pull/297
584[#296]: https://github.com/benmosher/eslint-plugin-import/pull/296
585[#290]: https://github.com/benmosher/eslint-plugin-import/pull/290
586[#289]: https://github.com/benmosher/eslint-plugin-import/pull/289
587[#288]: https://github.com/benmosher/eslint-plugin-import/pull/288
588[#287]: https://github.com/benmosher/eslint-plugin-import/pull/287
589[#278]: https://github.com/benmosher/eslint-plugin-import/pull/278
590[#261]: https://github.com/benmosher/eslint-plugin-import/pull/261
591[#256]: https://github.com/benmosher/eslint-plugin-import/pull/256
592[#254]: https://github.com/benmosher/eslint-plugin-import/pull/254
593[#250]: https://github.com/benmosher/eslint-plugin-import/pull/250
594[#247]: https://github.com/benmosher/eslint-plugin-import/pull/247
595[#245]: https://github.com/benmosher/eslint-plugin-import/pull/245
596[#243]: https://github.com/benmosher/eslint-plugin-import/pull/243
597[#241]: https://github.com/benmosher/eslint-plugin-import/pull/241
598[#239]: https://github.com/benmosher/eslint-plugin-import/pull/239
599[#228]: https://github.com/benmosher/eslint-plugin-import/pull/228
600[#211]: https://github.com/benmosher/eslint-plugin-import/pull/211
601[#164]: https://github.com/benmosher/eslint-plugin-import/pull/164
602[#157]: https://github.com/benmosher/eslint-plugin-import/pull/157
603[#314]: https://github.com/benmosher/eslint-plugin-import/pull/314
604[#912]: https://github.com/benmosher/eslint-plugin-import/pull/912
605
606[#1266]: https://github.com/benmosher/eslint-plugin-import/issues/1266
607[#1175]: https://github.com/benmosher/eslint-plugin-import/issues/1175
608[#1058]: https://github.com/benmosher/eslint-plugin-import/issues/1058
609[#931]: https://github.com/benmosher/eslint-plugin-import/issues/931
610[#886]: https://github.com/benmosher/eslint-plugin-import/issues/886
611[#863]: https://github.com/benmosher/eslint-plugin-import/issues/863
612[#842]: https://github.com/benmosher/eslint-plugin-import/issues/842
613[#839]: https://github.com/benmosher/eslint-plugin-import/issues/839
614[#720]: https://github.com/benmosher/eslint-plugin-import/issues/720
615[#717]: https://github.com/benmosher/eslint-plugin-import/issues/717
616[#686]: https://github.com/benmosher/eslint-plugin-import/issues/686
617[#671]: https://github.com/benmosher/eslint-plugin-import/issues/671
618[#660]: https://github.com/benmosher/eslint-plugin-import/issues/660
619[#653]: https://github.com/benmosher/eslint-plugin-import/issues/653
620[#627]: https://github.com/benmosher/eslint-plugin-import/issues/627
621[#620]: https://github.com/benmosher/eslint-plugin-import/issues/620
622[#609]: https://github.com/benmosher/eslint-plugin-import/issues/609
623[#604]: https://github.com/benmosher/eslint-plugin-import/issues/604
624[#602]: https://github.com/benmosher/eslint-plugin-import/issues/602
625[#601]: https://github.com/benmosher/eslint-plugin-import/issues/601
626[#592]: https://github.com/benmosher/eslint-plugin-import/issues/592
627[#577]: https://github.com/benmosher/eslint-plugin-import/issues/577
628[#570]: https://github.com/benmosher/eslint-plugin-import/issues/570
629[#567]: https://github.com/benmosher/eslint-plugin-import/issues/567
630[#566]: https://github.com/benmosher/eslint-plugin-import/issues/566
631[#545]: https://github.com/benmosher/eslint-plugin-import/issues/545
632[#530]: https://github.com/benmosher/eslint-plugin-import/issues/530
633[#529]: https://github.com/benmosher/eslint-plugin-import/issues/529
634[#519]: https://github.com/benmosher/eslint-plugin-import/issues/519
635[#507]: https://github.com/benmosher/eslint-plugin-import/issues/507
636[#484]: https://github.com/benmosher/eslint-plugin-import/issues/484
637[#478]: https://github.com/benmosher/eslint-plugin-import/issues/478
638[#456]: https://github.com/benmosher/eslint-plugin-import/issues/456
639[#453]: https://github.com/benmosher/eslint-plugin-import/issues/453
640[#452]: https://github.com/benmosher/eslint-plugin-import/issues/452
641[#447]: https://github.com/benmosher/eslint-plugin-import/issues/447
642[#441]: https://github.com/benmosher/eslint-plugin-import/issues/441
643[#423]: https://github.com/benmosher/eslint-plugin-import/issues/423
644[#416]: https://github.com/benmosher/eslint-plugin-import/issues/416
645[#415]: https://github.com/benmosher/eslint-plugin-import/issues/415
646[#402]: https://github.com/benmosher/eslint-plugin-import/issues/402
647[#386]: https://github.com/benmosher/eslint-plugin-import/issues/386
648[#373]: https://github.com/benmosher/eslint-plugin-import/issues/373
649[#370]: https://github.com/benmosher/eslint-plugin-import/issues/370
650[#348]: https://github.com/benmosher/eslint-plugin-import/issues/348
651[#342]: https://github.com/benmosher/eslint-plugin-import/issues/342
652[#328]: https://github.com/benmosher/eslint-plugin-import/issues/328
653[#317]: https://github.com/benmosher/eslint-plugin-import/issues/317
654[#313]: https://github.com/benmosher/eslint-plugin-import/issues/313
655[#311]: https://github.com/benmosher/eslint-plugin-import/issues/311
656[#306]: https://github.com/benmosher/eslint-plugin-import/issues/306
657[#286]: https://github.com/benmosher/eslint-plugin-import/issues/286
658[#283]: https://github.com/benmosher/eslint-plugin-import/issues/283
659[#281]: https://github.com/benmosher/eslint-plugin-import/issues/281
660[#275]: https://github.com/benmosher/eslint-plugin-import/issues/275
661[#272]: https://github.com/benmosher/eslint-plugin-import/issues/272
662[#270]: https://github.com/benmosher/eslint-plugin-import/issues/270
663[#267]: https://github.com/benmosher/eslint-plugin-import/issues/267
664[#266]: https://github.com/benmosher/eslint-plugin-import/issues/266
665[#216]: https://github.com/benmosher/eslint-plugin-import/issues/216
666[#214]: https://github.com/benmosher/eslint-plugin-import/issues/214
667[#210]: https://github.com/benmosher/eslint-plugin-import/issues/210
668[#200]: https://github.com/benmosher/eslint-plugin-import/issues/200
669[#192]: https://github.com/benmosher/eslint-plugin-import/issues/192
670[#191]: https://github.com/benmosher/eslint-plugin-import/issues/191
671[#189]: https://github.com/benmosher/eslint-plugin-import/issues/189
672[#170]: https://github.com/benmosher/eslint-plugin-import/issues/170
673[#155]: https://github.com/benmosher/eslint-plugin-import/issues/155
674[#119]: https://github.com/benmosher/eslint-plugin-import/issues/119
675[#89]: https://github.com/benmosher/eslint-plugin-import/issues/89
676
677[Unreleased]: https://github.com/benmosher/eslint-plugin-import/compare/v2.16.0...HEAD
678[2.16.0]: https://github.com/benmosher/eslint-plugin-import/compare/v2.15.0...v2.16.0
679[2.15.0]: https://github.com/benmosher/eslint-plugin-import/compare/v2.14.0...v2.15.0
680[2.14.0]: https://github.com/benmosher/eslint-plugin-import/compare/v2.13.0...v2.14.0
681[2.13.0]: https://github.com/benmosher/eslint-plugin-import/compare/v2.12.0...v2.13.0
682[2.12.0]: https://github.com/benmosher/eslint-plugin-import/compare/v2.11.0...v2.12.0
683[2.11.0]: https://github.com/benmosher/eslint-plugin-import/compare/v2.10.0...v2.11.0
684[2.10.0]: https://github.com/benmosher/eslint-plugin-import/compare/v2.9.0...v2.10.0
685[2.9.0]: https://github.com/benmosher/eslint-plugin-import/compare/v2.8.0...v2.9.0
686[2.8.0]: https://github.com/benmosher/eslint-plugin-import/compare/v2.7.0...v2.8.0
687[2.7.0]: https://github.com/benmosher/eslint-plugin-import/compare/v2.6.1...v2.7.0
688[2.6.1]: https://github.com/benmosher/eslint-plugin-import/compare/v2.6.0...v2.6.1
689[2.6.0]: https://github.com/benmosher/eslint-plugin-import/compare/v2.5.0...v2.6.0
690[2.5.0]: https://github.com/benmosher/eslint-plugin-import/compare/v2.4.0...v2.5.0
691[2.4.0]: https://github.com/benmosher/eslint-plugin-import/compare/v2.3.0...v2.4.0
692[2.3.0]: https://github.com/benmosher/eslint-plugin-import/compare/v2.2.0...v2.3.0
693[2.2.0]: https://github.com/benmosher/eslint-plugin-import/compare/v2.1.0...v2.2.0
694[2.1.0]: https://github.com/benmosher/eslint-plugin-import/compare/v2.0.1...v2.1.0
695[2.0.1]: https://github.com/benmosher/eslint-plugin-import/compare/v2.0.0...v2.0.1
696[2.0.0]: https://github.com/benmosher/eslint-plugin-import/compare/v1.16.0...v2.0.0
697[1.16.0]: https://github.com/benmosher/eslint-plugin-import/compare/v1.15.0...v1.16.0
698[1.15.0]: https://github.com/benmosher/eslint-plugin-import/compare/v1.14.0...v1.15.0
699[1.14.0]: https://github.com/benmosher/eslint-plugin-import/compare/v1.13.0...v1.14.0
700[1.13.0]: https://github.com/benmosher/eslint-plugin-import/compare/v1.12.0...v1.13.0
701[1.12.0]: https://github.com/benmosher/eslint-plugin-import/compare/v1.11.1...v1.12.0
702[1.11.1]: https://github.com/benmosher/eslint-plugin-import/compare/v1.11.0...v1.11.1
703[1.11.0]: https://github.com/benmosher/eslint-plugin-import/compare/v1.10.3...v1.11.0
704[1.10.3]: https://github.com/benmosher/eslint-plugin-import/compare/v1.10.2...v1.10.3
705[1.10.2]: https://github.com/benmosher/eslint-plugin-import/compare/v1.10.1...v1.10.2
706[1.10.1]: https://github.com/benmosher/eslint-plugin-import/compare/v1.10.0...v1.10.1
707[1.10.0]: https://github.com/benmosher/eslint-plugin-import/compare/v1.9.2...v1.10.0
708[1.9.2]: https://github.com/benmosher/eslint-plugin-import/compare/v1.9.1...v1.9.2
709[1.9.1]: https://github.com/benmosher/eslint-plugin-import/compare/v1.9.0...v1.9.1
710[1.9.0]: https://github.com/benmosher/eslint-plugin-import/compare/v1.8.1...v1.9.0
711[1.8.1]: https://github.com/benmosher/eslint-plugin-import/compare/v1.8.0...v1.8.1
712[1.8.0]: https://github.com/benmosher/eslint-plugin-import/compare/v1.7.0...v1.8.0
713[1.7.0]: https://github.com/benmosher/eslint-plugin-import/compare/v1.6.1...v1.7.0
714[1.6.1]: https://github.com/benmosher/eslint-plugin-import/compare/v1.6.0...v1.6.1
715[1.6.0]: https://github.com/benmosher/eslint-plugin-import/compare/v1.5.0...1.6.0
716[1.5.0]: https://github.com/benmosher/eslint-plugin-import/compare/v1.4.0...v1.5.0
717[1.4.0]: https://github.com/benmosher/eslint-plugin-import/compare/v1.3.0...v1.4.0
718[1.3.0]: https://github.com/benmosher/eslint-plugin-import/compare/v1.2.0...v1.3.0
719[1.2.0]: https://github.com/benmosher/eslint-plugin-import/compare/v1.1.0...v1.2.0
720[1.1.0]: https://github.com/benmosher/eslint-plugin-import/compare/v1.0.4...v1.1.0
721[1.0.4]: https://github.com/benmosher/eslint-plugin-import/compare/v1.0.3...v1.0.4
722[1.0.3]: https://github.com/benmosher/eslint-plugin-import/compare/v1.0.2...v1.0.3
723[1.0.2]: https://github.com/benmosher/eslint-plugin-import/compare/v1.0.1...v1.0.2
724[1.0.1]: https://github.com/benmosher/eslint-plugin-import/compare/v1.0.0...v1.0.1
725[1.0.0]: https://github.com/benmosher/eslint-plugin-import/compare/v1.0.0-beta.0...v1.0.0
726[1.0.0-beta.0]: https://github.com/benmosher/eslint-plugin-import/compare/v0.13.0...v1.0.0-beta.0
727[0.13.0]: https://github.com/benmosher/eslint-plugin-import/compare/v0.12.1...v0.13.0
728[0.12.2]: https://github.com/benmosher/eslint-plugin-import/compare/v0.12.1...v0.12.2
729[0.12.1]: https://github.com/benmosher/eslint-plugin-import/compare/v0.12.0...v0.12.1
730[0.12.0]: https://github.com/benmosher/eslint-plugin-import/compare/v0.11.0...v0.12.0
731[0.11.0]: https://github.com/benmosher/eslint-plugin-import/compare/v0.10.1...v0.11.0
732
733[@mathieudutour]: https://github.com/mathieudutour
734[@gausie]: https://github.com/gausie
735[@singles]: https://github.com/singles
736[@jfmengels]: https://github.com/jfmengels
737[@lo1tuma]: https://github.com/lo1tuma
738[@dmnd]: https://github.com/dmnd
739[@lemonmade]: https://github.com/lemonmade
740[@jimbolla]: https://github.com/jimbolla
741[@jquense]: https://github.com/jquense
742[@jonboiser]: https://github.com/jonboiser
743[@taion]: https://github.com/taion
744[@strawbrary]: https://github.com/strawbrary
745[@SimenB]: https://github.com/SimenB
746[@josh]: https://github.com/josh
747[@borisyankov]: https://github.com/borisyankov
748[@gavriguy]: https://github.com/gavriguy
749[@jkimbo]: https://github.com/jkimbo
750[@le0nik]: https://github.com/le0nik
751[@scottnonnenberg]: https://github.com/scottnonnenberg
752[@sindresorhus]: https://github.com/sindresorhus
753[@ljharb]: https://github.com/ljharb
754[@rhettlivingston]: https://github.com/rhettlivingston
755[@zloirock]: https://github.com/zloirock
756[@rhys-vdw]: https://github.com/rhys-vdw
757[@wKich]: https://github.com/wKich
758[@tizmagik]: https://github.com/tizmagik
759[@knpwrs]: https://github.com/knpwrs
760[@spalger]: https://github.com/spalger
761[@preco21]: https://github.com/preco21
762[@skyrpex]: https://github.com/skyrpex
763[@fson]: https://github.com/fson
764[@ntdb]: https://github.com/ntdb
765[@jakubsta]: https://github.com/jakubsta
766[@wtgtybhertgeghgtwtg]: https://github.com/wtgtybhertgeghgtwtg
767[@duncanbeevers]: https://github.com/duncanbeevers
768[@giodamelio]: https://github.com/giodamelio
769[@ntdb]: https://github.com/ntdb
770[@ramasilveyra]: https://github.com/ramasilveyra
771[@sompylasar]: https://github.com/sompylasar
772[@kevin940726]: https://github.com/kevin940726
773[@eelyafi]: https://github.com/eelyafi
774[@mastilver]: https://github.com/mastilver
775[@jseminck]: https://github.com/jseminck
776[@laysent]: https://github.com/laysent
777[@k15a]: https://github.com/k15a
778[@mplewis]: https://github.com/mplewis
779[@rosswarren]: https://github.com/rosswarren
780[@alexgorbatchev]: https://github.com/alexgorbatchev
781[@tihonove]: https://github.com/tihonove
782[@robertrossmann]: https://github.com/robertrossmann
783[@isiahmeadows]: https://github.com/isiahmeadows
784[@graingert]: https://github.com/graingert
785[@danny-andrews]: https://github.com/dany-andrews
786[@fengkfengk]: https://github.com/fengkfengk
787[@futpib]: https://github.com/futpib
788[@klimashkin]: https://github.com/klimashkin
789[@lukeapage]: https://github.com/lukeapage
790[@manovotny]: https://github.com/manovotny
791[@mattijsbliek]: https://github.com/mattijsbliek
792[@hulkish]: https://github.com/hulkish
793[@chrislloyd]: https://github.com/chrislloyd
794[@ai]: https://github.com/ai
795[@syymza]: https://github.com/syymza
796[@justinanastos]: https://github.com/justinanastos
797[@1pete]: https://github.com/1pete
798[@gajus]: https://github.com/gajus
799[@jf248]: https://github.com/jf248
800[@aravindet]: https://github.com/aravindet
801[@pzhine]: https://github.com/pzhine
802[@st-sloth]: https://github.com/st-sloth
803[@ljqx]: https://github.com/ljqx
804[@kirill-konshin]: https://github.com/kirill-konshin
805[@asapach]: https://github.com/asapach
806[@sergei-startsev]: https://github.com/sergei-startsev