CHANGELOG.md 38.5 KB

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.14.0] - 2018-08-13

  • 69e0187 (HEAD -> master, source/master, origin/master, origin/HEAD) Merge pull request #1151 from jf248/jsx |\
    | * e30a757 (source/pr/1151, fork/jsx) Add JSX check to namespace rule |/
  • 8252344 (source/pr/1148) Add error to output when module loaded as resolver has invalid API ### Added
  • <code>no-useless-path-segments</code>: add commonJS (CJS) support (#1128, thanks @1pete)
  • <code>namespace</code>: add JSX check (#1151, thanks @jf248)

Fixed

Refactors

  • add explicit support for RestElement alongside ExperimentalRestProperty (thanks @ljharb)

2.13.0 - 2018-06-24

Added

  • Add ESLint 5 support (#1122, thanks @ai and @ljharb)
  • Add [no-relative-parent-imports] rule: disallow relative imports from parent directories (#1093, thanks @chrislloyd)

Fixed

  • namespace rule: ensure it works in eslint 5/ecmaVersion 2018 (thanks @ljharb)

2.12.0 - 2018-05-17

Added

2.11.0 - 2018-04-09

Added

Fixed

2.10.0 - 2018-03-29

Added

2.9.0 - 2018-02-21

Added

2.8.0 - 2017-10-18

Added

Changed

  • Case-sensitivity checking ignores working directory and ancestors. (#720 + #858, thanks @laysent)

Fixed

2.7.0 - 2017-07-06

Changed

2.6.1 - 2017-06-29

Fixed

  • update bundled node resolver dependency to latest version

2.6.0 - 2017-06-23

Changed

  • update tests / peerDeps for ESLint 4.0 compatibility (#871, thanks @mastilver)
  • <code>memo-parser</code> updated to require filePath on parser options as it melts down if it's not there, now that this plugin always provides it. (see #863)

2.5.0 - 2017-06-22

Re-releasing v2.4.0 after discovering that the memory leak is isolated to the <code>memo-parser</code>, which is more or less experimental anyway.

Added

2.4.0 - 2017-06-02 [YANKED]

Yanked due to critical issue in eslint-module-utils with cache key resulting from #839.

Added

2.3.0 - 2017-05-18

Added

Changed

Fixed

  • attempt to fix crash in <code>no-mutable-exports</code>. (#660)
  • "default is a reserved keyword" in no-maned-default tests by locking down babylon to 6.15.0 (#756, thanks @gmathieu)
  • support scoped modules containing non word characters

2.2.0 - 2016-11-07

Fixed

2.1.0 - 2016-11-02

Added

Fixed

2.0.1 - 2016-10-06

Fixed

  • Fixed code that relied on removed dependencies. (#604)

2.0.0! - 2016-09-30

Added

Breaking

Changed

  • imports-first is renamed to <code>first</code>. imports-first alias will continue to exist, but may be removed in a future major release.
  • Case-sensitivity: now specifically (and optionally) reported by <code>no-unresolved</code>. Other rules will ignore case-mismatches on paths on case-insensitive filesystems. (#311)

Fixed

1.16.0 - 2016-09-22

Added

Fixed

1.15.0 - 2016-09-12

Added

Fixed

1.14.0 - 2016-08-22

Added

Fixed

1.13.0 - 2016-08-11

Added

  • allowComputed option for <code>namespace</code> rule. If set to true, won't report computed member references to namespaces. (see #456)

Changed

Fixed

1.12.0 - 2016-07-26

Added

1.11.1 - 2016-07-20

Fixed

1.11.0 - 2016-07-17

Added

Fixed

1.10.3 - 2016-07-08

Fixed

  • removing Symbol dependencies (i.e. for-of loops) due to Node 0.10 polyfill issue (see #415). Should not make any discernible semantic difference.

1.10.2 - 2016-07-04

Fixed

  • Something horrible happened during npm prepublish of 1.10.1. Several rm -rf node_modules && npm i and gulp clean && npm prepublishs later, it is rebuilt and republished as 1.10.2. Thanks @rhettlivingston for noticing and reporting!

1.10.1 - 2016-07-02 [YANKED]

Added

  • Officially support ESLint 3.x. (peerDependencies updated to 2.x - 3.x)

1.10.0 - 2016-06-30

Added

Fixed

  • Fixed crash with newline-after-import related to the use of switch cases. (fixes #386, thanks @ljharb for reporting) (#395)

1.9.2 - 2016-06-21

Fixed

1.9.1 - 2016-06-16

Fixed

  • Reordered precedence for loading resolvers. (#373)

1.9.0 - 2016-06-10

Added

Fixed

1.8.1 - 2016-05-23

Fixed

1.8.0 - 2016-05-11

Added

Fixed

1.7.0 - 2016-05-06

Added

Fixed

  • <code>extensions</code>: fallback to source path for extension enforcement if imported module is not resolved. Also, never report for builtins (i.e. path). (#296)

1.6.1 - 2016-04-28

Fixed

1.6.0 - 2016-04-25

Added

Changed

Fixed

1.5.0 - 2016-04-18

Added

Changed

  • Rearranged rule groups in README in preparation for more style guide rules

Removed

  • support for Node 0.10, via es6-* ponyfills. Using native Map/Set/Symbol.

1.4.0 - 2016-03-25

Added

  • Resolver plugin interface v2: more explicit response format that more clearly covers the found-but-core-module case, where there is no path. Still backwards-compatible with the original version of the resolver spec.
  • Resolver documentation

Changed

  • using package.json/files instead of .npmignore for package file inclusion (#228, thanks @mathieudutour)
  • using es6-* ponyfills instead of babel-runtime

1.3.0 - 2016-03-20

Major perf improvements. Between parsing only once and ignoring gigantic, non-module node_modules, there is very little added time.

My test project takes 17s to lint completely, down from 55s, when using the memoizing parser, and takes only 27s with naked babel-eslint (thus, reparsing local modules).

Added

  • This change log (#216)
  • Experimental memoizing parser

Fixed

1.2.0 - 2016-03-19

Thanks @lencioni for identifying a huge amount of rework in resolve and kicking off a bunch of memoization.

I'm seeing 62% improvement over my normal test codebase when executing only <code>no-unresolved</code> in isolation, and ~35% total reduction in lint time.

Changed

1.1.0 - 2016-03-15

Added

1.0.4 - 2016-03-11

Changed

Fixed

  • don't crash on self references (#210)
  • correct cache behavior in eslint_d for deep namespaces (#200)

1.0.3 - 2016-02-26

Changed

  • no-deprecated follows deep namespaces (#191)

Fixed

  • <code>namespace</code> no longer flags modules with only a default export as having no names. (ns.default is valid ES6)

1.0.2 - 2016-02-26

Fixed

  • don't parse imports with no specifiers (#192)

1.0.1 - 2016-02-25

Fixed

1.0.0 - 2016-02-24

Added

  • <code>no-deprecated</code>: WIP rule to let you know at lint time if you're using deprecated functions, constants, classes, or modules.

Changed

1.0.0-beta.0 - 2016-02-13

Changed

  • support for (only) ESLint 2.x
  • no longer needs/refers to import/parser or import/parse-options. Instead, ESLint provides the configured parser + options to the rules, and they use that to parse dependencies.

Removed

  • babylon as default import parser (see Breaking)

0.13.0 - 2016-02-08

Added

Removed

0.12.2 - 2016-02-06 [YANKED]

Unpublished from npm and re-released as 0.13.0. See #170.

0.12.1 - 2015-12-17

Changed

  • Broke docs for rules out into individual files.

0.12.0 - 2015-12-14

Changed

  • Ignore <code>import/ignore</code> setting if exports are actually found in the parsed module. Does this to support use of jsnext:main in node_modules without the pain of managing an allow list or a nuanced deny list.

0.11.0 - 2015-11-27

Added

  • Resolver plugins. Now the linter can read Webpack config, properly follow aliases and ignore externals, dismisses inline loaders, etc. etc.!

Earlier releases (0.10.1 and younger)

See GitHub release notes for info on changes for earlier releases.