| 1 | # Change Log
|
|---|
| 2 | All notable changes to this module will be documented in this file.
|
|---|
| 3 | This project adheres to [Semantic Versioning](https://semver.org/).
|
|---|
| 4 | This change log adheres to standards from [Keep a CHANGELOG](https://keepachangelog.com).
|
|---|
| 5 |
|
|---|
| 6 | ## Unreleased
|
|---|
| 7 |
|
|---|
| 8 | ## v2.12.1 - 2025-06-19
|
|---|
| 9 |
|
|---|
| 10 | ### Fixed
|
|---|
| 11 | - `unambiguous`: detect modules exported from minified code ([#3124], thanks [@michaelfaith])
|
|---|
| 12 |
|
|---|
| 13 | ### Changed
|
|---|
| 14 | - [refactor] `parse`: avoid using a regex here (thanks [@ljharb])
|
|---|
| 15 |
|
|---|
| 16 | ## v2.12.0 - 2024-09-26
|
|---|
| 17 |
|
|---|
| 18 | ### Added
|
|---|
| 19 | - `hash`: add support for hashing functions ([#3072], thanks [@michaelfaith])
|
|---|
| 20 |
|
|---|
| 21 | ## v2.11.1 - 2024-09-23
|
|---|
| 22 |
|
|---|
| 23 | ### Fixed
|
|---|
| 24 | - `parse`: remove unneeded extra backticks ([#3057], thanks [@G-Rath])
|
|---|
| 25 | - `parse`: espree parser isn't working with flat config ([#3061], thanks [@michaelfaith])
|
|---|
| 26 | - `parse`: add `ecmaVersion` and `sourceType` to `parserOptions` ([#3061], thanks [@michaelfaith])
|
|---|
| 27 |
|
|---|
| 28 | ## v2.11.0 - 2024-09-05
|
|---|
| 29 |
|
|---|
| 30 | ### New
|
|---|
| 31 | - `declaredScope`: take a `node` for modern eslint versions (thanks [@michaelfaith])
|
|---|
| 32 |
|
|---|
| 33 | ## v2.10.0 - 2024-09-05
|
|---|
| 34 |
|
|---|
| 35 | ### New
|
|---|
| 36 | - add context compatibility helpers ([#3049], thanks [@michaelfaith])
|
|---|
| 37 |
|
|---|
| 38 | ## v2.9.0 - 2024-09-02
|
|---|
| 39 |
|
|---|
| 40 | ### New
|
|---|
| 41 | - add support for Flat Config ([#3018], thanks [@michaelfaith])
|
|---|
| 42 |
|
|---|
| 43 | ## v2.8.2 - 2024-08-25
|
|---|
| 44 |
|
|---|
| 45 | ### Fixed
|
|---|
| 46 | - `parse`: also delete `parserOptions.projectService` ([#3039], thanks [@Mysak0CZ])
|
|---|
| 47 |
|
|---|
| 48 | ### Changed
|
|---|
| 49 | - [types] use shared config (thanks [@ljharb])
|
|---|
| 50 | - [meta] add `exports`, `main`
|
|---|
| 51 | - [meta] add `repository.directory` field
|
|---|
| 52 | - [refactor] avoid hoisting
|
|---|
| 53 |
|
|---|
| 54 | ## v2.8.1 - 2024-02-26
|
|---|
| 55 |
|
|---|
| 56 | ### Fixed
|
|---|
| 57 | - `parse`: also delete `parserOptions.EXPERIMENTAL_useProjectService` ([#2963], thanks [@JoshuaKGoldberg])
|
|---|
| 58 |
|
|---|
| 59 | ### Changed
|
|---|
| 60 | - add types (thanks [@ljharb])
|
|---|
| 61 |
|
|---|
| 62 | ## v2.8.0 - 2023-04-14
|
|---|
| 63 |
|
|---|
| 64 | ### New
|
|---|
| 65 | - `parse`: support flat config ([#2714], thanks [@DMartens])
|
|---|
| 66 |
|
|---|
| 67 | ### Fixed
|
|---|
| 68 | - Improve performance of `fullResolve` for large projects ([#2755], thanks [@leipert])
|
|---|
| 69 |
|
|---|
| 70 | ## v2.7.4 - 2022-08-11
|
|---|
| 71 |
|
|---|
| 72 | ### Fixed
|
|---|
| 73 | - [Fix] Ignore hashbang and BOM while parsing ([#2431], thanks [@silverwind])
|
|---|
| 74 |
|
|---|
| 75 | ### Changed
|
|---|
| 76 | - [patch] mark eslint as an optional peer dep ([#2523], thanks [@wmertens])
|
|---|
| 77 |
|
|---|
| 78 | ## v2.7.3 - 2022-01-26
|
|---|
| 79 |
|
|---|
| 80 | ### Fixed
|
|---|
| 81 | - `parse`: restore compatibility by making the return value `ast` again ([#2350], thanks [@ljharb])
|
|---|
| 82 |
|
|---|
| 83 | ## v2.7.2 - 2022-01-01
|
|---|
| 84 |
|
|---|
| 85 | ### Fixed
|
|---|
| 86 | - [patch] Fix `@babel/eslint-parser` 8 compatibility ([#2343], thanks [@nicolo-ribaudo])
|
|---|
| 87 |
|
|---|
| 88 | ### Changed
|
|---|
| 89 | - [Refactor] inline `pkgDir` implementation; remove `pkg-dir`
|
|---|
| 90 |
|
|---|
| 91 | ## v2.7.1 - 2021-10-13
|
|---|
| 92 |
|
|---|
| 93 | ### Fixed
|
|---|
| 94 | - fixed SyntaxError in node <= 6: Unexpected token ) in parse.js ([#2261], thanks [@VitusFW])
|
|---|
| 95 |
|
|---|
| 96 | ## v2.7.0 - 2021-10-11
|
|---|
| 97 |
|
|---|
| 98 | ### Added
|
|---|
| 99 | - `fileExistsWithCaseSync`: add `strict` argument ([#1262], thanks [@sergei-startsev])
|
|---|
| 100 | - add `visit`, to support dynamic imports ([#1660], [#2212], thanks [@maxkomarychev], [@aladdin-add], [@Hypnosphi])
|
|---|
| 101 | - create internal replacement for `pkg-up` and `read-pkg-up` ([#2047], [@mgwalker])
|
|---|
| 102 |
|
|---|
| 103 | ## v2.6.2 - 2021-08-08
|
|---|
| 104 |
|
|---|
| 105 | ### Fixed
|
|---|
| 106 | - Use `context.getPhysicalFilename()` when available (ESLint 7.28+) ([#2160], thanks [@pmcelhaney])
|
|---|
| 107 |
|
|---|
| 108 | ## v2.6.1 - 2021-05-13
|
|---|
| 109 |
|
|---|
| 110 | ### Fixed
|
|---|
| 111 | - `no-unresolved`: check `import()` ([#2026], thanks [@aladdin-add])
|
|---|
| 112 | - Add fix for Windows Subsystem for Linux ([#1786], thanks [@manuth])
|
|---|
| 113 |
|
|---|
| 114 | ### Changed
|
|---|
| 115 | - [deps] update `debug`
|
|---|
| 116 | - [Refactor] use `Array.isArray` instead of `instanceof Array`
|
|---|
| 117 |
|
|---|
| 118 | ## v2.6.0 - 2020-03-28
|
|---|
| 119 |
|
|---|
| 120 | ### Added
|
|---|
| 121 | - Print more helpful info if parsing fails ([#1671], thanks [@kaiyoma])
|
|---|
| 122 |
|
|---|
| 123 | ## v2.5.2 - 2020-01-12
|
|---|
| 124 |
|
|---|
| 125 | ### Fixed
|
|---|
| 126 | - Makes the loader resolution more tolerant ([#1606], thanks [@arcanis])
|
|---|
| 127 | - Use `createRequire` instead of `createRequireFromPath` if available ([#1602], thanks [@iamnapo])
|
|---|
| 128 |
|
|---|
| 129 | ## v2.5.1 - 2020-01-11
|
|---|
| 130 |
|
|---|
| 131 | ### Fixed
|
|---|
| 132 | - Uses createRequireFromPath to resolve loaders ([#1591], thanks [@arcanis])
|
|---|
| 133 | - report the error stack on a resolution error ([#599], thanks [@sompylasar])
|
|---|
| 134 |
|
|---|
| 135 | ## v2.5.0 - 2019-12-07
|
|---|
| 136 |
|
|---|
| 137 | ### Added
|
|---|
| 138 | - support `parseForESLint` from custom parser ([#1435], thanks [@JounQin])
|
|---|
| 139 |
|
|---|
| 140 | ### Changed
|
|---|
| 141 | - Avoid superfluous calls and code ([#1551], thanks [@brettz9])
|
|---|
| 142 |
|
|---|
| 143 | ## v2.4.1 - 2019-07-19
|
|---|
| 144 |
|
|---|
| 145 | ### Fixed
|
|---|
| 146 | - Improve parse perf when using `@typescript-eslint/parser` ([#1409], thanks [@bradzacher])
|
|---|
| 147 | - Improve support for TypeScript declare structures ([#1356], thanks [@christophercurrie])
|
|---|
| 148 |
|
|---|
| 149 | ## v2.4.0 - 2019-04-13
|
|---|
| 150 |
|
|---|
| 151 | ### Added
|
|---|
| 152 | - no-useless-path-segments: Add noUselessIndex option ([#1290], thanks [@timkraut])
|
|---|
| 153 |
|
|---|
| 154 | ### Fixed
|
|---|
| 155 | - Fix overwriting of dynamic import() CallExpression ([`no-cycle`], [`no-relative-parent-import`], [`no-unresolved`], [`no-useless-path-segments`]) ([#1218], [#1166], [#1035], thanks [@vikr01])
|
|---|
| 156 |
|
|---|
| 157 |
|
|---|
| 158 | ## v2.3.0 - 2019-01-22
|
|---|
| 159 | ### Fixed
|
|---|
| 160 | - use `process.hrtime()` for cache dates ([#1160], thanks [@hulkish])
|
|---|
| 161 |
|
|---|
| 162 | ## v2.2.0 - 2018-03-29
|
|---|
| 163 | ### Changed
|
|---|
| 164 | - `parse`: attach node locations by default.
|
|---|
| 165 | - `moduleVisitor`: visitor now gets the full `import` statement node as a second
|
|---|
| 166 | argument, so rules may report against the full statement / `require` call instead
|
|---|
| 167 | of only the string literal node.
|
|---|
| 168 |
|
|---|
| 169 | ## v2.1.1 - 2017-06-22
|
|---|
| 170 |
|
|---|
| 171 | Re-releasing v2.1.0 after vetting (again) and unable to reproduce issue.
|
|---|
| 172 |
|
|---|
| 173 |
|
|---|
| 174 | ## v2.1.0 - 2017-06-02 [YANKED]
|
|---|
| 175 |
|
|---|
| 176 | Yanked due to critical issue with cache key resulting from #839.
|
|---|
| 177 |
|
|---|
| 178 | ### Added
|
|---|
| 179 | - `parse` now additionally passes `filePath` to `parser` in `parserOptions` like `eslint` core does
|
|---|
| 180 |
|
|---|
| 181 | ## v2.0.0 - 2016-11-07
|
|---|
| 182 | ### Changed
|
|---|
| 183 | - `unambiguous` no longer exposes fast test regex
|
|---|
| 184 |
|
|---|
| 185 | ### Fixed
|
|---|
| 186 | - `unambiguous.test()` regex is now properly in multiline mode
|
|---|
| 187 |
|
|---|
| 188 | [#3124]: https://github.com/import-js/eslint-plugin-import/pull/3124
|
|---|
| 189 | [#3072]: https://github.com/import-js/eslint-plugin-import/pull/3072
|
|---|
| 190 | [#3061]: https://github.com/import-js/eslint-plugin-import/pull/3061
|
|---|
| 191 | [#3057]: https://github.com/import-js/eslint-plugin-import/pull/3057
|
|---|
| 192 | [#3049]: https://github.com/import-js/eslint-plugin-import/pull/3049
|
|---|
| 193 | [#3039]: https://github.com/import-js/eslint-plugin-import/pull/3039
|
|---|
| 194 | [#3018]: https://github.com/import-js/eslint-plugin-import/pull/3018
|
|---|
| 195 | [#2963]: https://github.com/import-js/eslint-plugin-import/pull/2963
|
|---|
| 196 | [#2755]: https://github.com/import-js/eslint-plugin-import/pull/2755
|
|---|
| 197 | [#2714]: https://github.com/import-js/eslint-plugin-import/pull/2714
|
|---|
| 198 | [#2523]: https://github.com/import-js/eslint-plugin-import/pull/2523
|
|---|
| 199 | [#2431]: https://github.com/import-js/eslint-plugin-import/pull/2431
|
|---|
| 200 | [#2350]: https://github.com/import-js/eslint-plugin-import/issues/2350
|
|---|
| 201 | [#2343]: https://github.com/import-js/eslint-plugin-import/pull/2343
|
|---|
| 202 | [#2261]: https://github.com/import-js/eslint-plugin-import/pull/2261
|
|---|
| 203 | [#2212]: https://github.com/import-js/eslint-plugin-import/pull/2212
|
|---|
| 204 | [#2160]: https://github.com/import-js/eslint-plugin-import/pull/2160
|
|---|
| 205 | [#2047]: https://github.com/import-js/eslint-plugin-import/pull/2047
|
|---|
| 206 | [#2026]: https://github.com/import-js/eslint-plugin-import/pull/2026
|
|---|
| 207 | [#1786]: https://github.com/import-js/eslint-plugin-import/pull/1786
|
|---|
| 208 | [#1671]: https://github.com/import-js/eslint-plugin-import/pull/1671
|
|---|
| 209 | [#1660]: https://github.com/import-js/eslint-plugin-import/pull/1660
|
|---|
| 210 | [#1606]: https://github.com/import-js/eslint-plugin-import/pull/1606
|
|---|
| 211 | [#1602]: https://github.com/import-js/eslint-plugin-import/pull/1602
|
|---|
| 212 | [#1591]: https://github.com/import-js/eslint-plugin-import/pull/1591
|
|---|
| 213 | [#1551]: https://github.com/import-js/eslint-plugin-import/pull/1551
|
|---|
| 214 | [#1435]: https://github.com/import-js/eslint-plugin-import/pull/1435
|
|---|
| 215 | [#1409]: https://github.com/import-js/eslint-plugin-import/pull/1409
|
|---|
| 216 | [#1356]: https://github.com/import-js/eslint-plugin-import/pull/1356
|
|---|
| 217 | [#1290]: https://github.com/import-js/eslint-plugin-import/pull/1290
|
|---|
| 218 | [#1262]: https://github.com/import-js/eslint-plugin-import/pull/1262
|
|---|
| 219 | [#1218]: https://github.com/import-js/eslint-plugin-import/pull/1218
|
|---|
| 220 | [#1166]: https://github.com/import-js/eslint-plugin-import/issues/1166
|
|---|
| 221 | [#1160]: https://github.com/import-js/eslint-plugin-import/pull/1160
|
|---|
| 222 | [#1035]: https://github.com/import-js/eslint-plugin-import/issues/1035
|
|---|
| 223 | [#599]: https://github.com/import-js/eslint-plugin-import/pull/599
|
|---|
| 224 |
|
|---|
| 225 | [@aladdin-add]: https://github.com/aladdin-add
|
|---|
| 226 | [@arcanis]: https://github.com/arcanis
|
|---|
| 227 | [@bradzacher]: https://github.com/bradzacher
|
|---|
| 228 | [@brettz9]: https://github.com/brettz9
|
|---|
| 229 | [@christophercurrie]: https://github.com/christophercurrie
|
|---|
| 230 | [@DMartens]: https://github.com/DMartens
|
|---|
| 231 | [@G-Rath]: https://github.com/G-Rath
|
|---|
| 232 | [@hulkish]: https://github.com/hulkish
|
|---|
| 233 | [@Hypnosphi]: https://github.com/Hypnosphi
|
|---|
| 234 | [@iamnapo]: https://github.com/iamnapo
|
|---|
| 235 | [@JoshuaKGoldberg]: https://github.com/JoshuaKGoldberg
|
|---|
| 236 | [@JounQin]: https://github.com/JounQin
|
|---|
| 237 | [@kaiyoma]: https://github.com/kaiyoma
|
|---|
| 238 | [@leipert]: https://github.com/leipert
|
|---|
| 239 | [@ljharb]: https://github.com/ljharb
|
|---|
| 240 | [@manuth]: https://github.com/manuth
|
|---|
| 241 | [@maxkomarychev]: https://github.com/maxkomarychev
|
|---|
| 242 | [@mgwalker]: https://github.com/mgwalker
|
|---|
| 243 | [@michaelfaith]: https://github.com/michaelfaith
|
|---|
| 244 | [@Mysak0CZ]: https://github.com/Mysak0CZ
|
|---|
| 245 | [@nicolo-ribaudo]: https://github.com/nicolo-ribaudo
|
|---|
| 246 | [@pmcelhaney]: https://github.com/pmcelhaney
|
|---|
| 247 | [@sergei-startsev]: https://github.com/sergei-startsev
|
|---|
| 248 | [@silverwind]: https://github.com/silverwind
|
|---|
| 249 | [@sompylasar]: https://github.com/sompylasar
|
|---|
| 250 | [@timkraut]: https://github.com/timkraut
|
|---|
| 251 | [@vikr01]: https://github.com/vikr01
|
|---|
| 252 | [@VitusFW]: https://github.com/VitusFW
|
|---|
| 253 | [@wmertens]: https://github.com/wmertens
|
|---|