Releases: import-js/eslint-plugin-import
one-oh!
Update, verified to work with ESLint 2.0.
"Breaking" changes from 0.13.0:
-
no longer needs/refers to
import/parser
orimport/parse-options
. instead, ESLint provided the configured parser + options to the rules, and they use that to parse dependencies.Shouldn't hurt to leave it there, and I suspect 99.999% of installs have
import/parser
===parser
.This also means the plugin uses
espree
instead ofbabylon
if no parser is configured. Wouldn't expect this to hurt in general, but it is a potentially breaking difference. -
eslint-config-import
is no longer supported. Instead, use the shared configs directly exported by the plugin. See the README for details.
Nothing groundbreaking, but import/parser
has been a thorny issue for the whole life of the plugin, and I'm glad to finally be rid of it. 😅
Webpack resolver: nested aliases
#166: allow aliases to contain separators. (thanks @nosnickid!)
no-old-and-busted
no-commonjs
and no-amd
rules added. (thanks @xjamundx for donating code to get these going)
semver-fail
Unpublished and re-released as 0.13.0. See #170.
docs
ignores on ignores
- Ignore
import/ignore
if exports are actually found in the parsed module.
Does this to support use ofjsnext:main
innode_modules
without the pain of managing a whitelist or a nuanced blacklist. May be removed pending how surprising/helpful it ends up being.
webpack resolver: v0.1.4
- support for absolute config paths (thanks @nosnickid! via #136)
- support for eslint-loader, by resolving relative paths. (thanks @xjamundx! via #138)
- support for array
resolve.root
, where TILbower_components
should live (not inmoduleDirectories
)
custom resolvers!
Resolver plugins: now the linter can read Webpack config, properly follow aliases and ignore externals, dismisses inline loaders, etc. etc.!
correctness
- cache correctness: should properly re-load changed files even in a long lived process (like a webpack dev server)
- fixed issue where inferring JSX parsing from
ecmaFeatures.jsx
was broken when ESLint froze thecontext
andsettings
. My own fault... not very hygienic to mutate shared state in the first place.
errors abound
Breaking: removed no-errors
rule. Instead, each individual rule will report parse errors in the target imported file, if encountered.
#90: Added {commonjs: [bool], amd: [bool]}
option object to no-unresolved
. If set true
, will attempt to resolve module paths for CommonJS require
and AMD define
+ require
in a limited set of cases. Not nearly so smart as Webpack, but smart enough to be useful. (hopefully.) Thanks @mctep for changing my mind on this. 😁
#94: Dependency parser will infer 'jsx' plugin if using default Babylon and jsx
is asserted in the ecmaFeatures
. Thanks @jameslnewell for bringing this up.
#88: un-smarted no-require
. It will now report on all require
statements, everywhere, regardless of target.