HIGHLIGHTS SUPPORT FOR IMPORT ATTRIBUTES We have updated ESLint to fully support the ECMAScript 2025 Import Attributes syntax. This syntax allows module import statements and dynamic imports t...
HIGHLIGHTS The predefined array of config objects used by ESLint can be now accessed programmatically as ESLint.defaultConfig . To speed up loading, the ESLint CLI will automatically enable V8ā...
Four years ago, while doing a code review at work, I was surprised that Flow had not warned about an unnecessary null check. Last month, TypeScript 5.6 released with validation rules that disal...
https://eslint.org/blog/2024/10/code-review-nit-to-ecosystem-improvements/
HIGHLIGHTS EXPERIMENTAL CONFIGURATION FILE RESOLUTION One of the big changes in ESLint v9.0.0 was the new config system which switched from looking for config files relative to the file being l...
Back in July we announced our plan for ESLint going forward. Part of that announcement discussed transitioning ESLint to be a more general-purpose linter that is capable of linting any language....
https://eslint.org/blog/2024/10/eslint-json-markdown-support/
HIGHLIGHTS Several type packages have been added as dependencies to fix compilation errors when ESLint is used in TypeScript code. BUG FIXES 20fd916 fix: add @eslint/core, @types/estree, &...
HIGHLIGHTS The no-useless-constructor rule now provides suggestions for some of the problems reported by this rule. FEATURES ec30c73 feat: add āeslint/universalā to export Linter (#1...
HIGHLIGHTS Notable bug fixes related to the new config system (eslint.config.js): Config name property can now also be used with global ignores. --no-ignore no longer applies to non-global ignor...
For ESLintās entire 11 year existence, weāve only maintained one major release line at a time. This was both for practical reasons (limited team bandwidth) and technical reasons (our infrastr...
https://eslint.org/blog/2024/09/eslint-v8-eol-version-support/
HIGHLIGHTS TYPES NOW INCLUDED Weāve been receiving complaints about the @types/eslint package not being updated after the v9 release. While we did do an initial update to the package for v9,...
We are happy to share that Trunk has become an ESLint gold sponsor, donating $1,000 each month for the ongoing maintenance and development of ESLint! Trunk is a suite of tools aimed at making de...
HIGHLIGHTS The lintText() method will now respect the fixTypes option when it is specified. BUG FIXES 9bde90c fix: add logic to handle fixTypes in lintText() (#18736 ) (Amaresh S M) DOCU...
HIGHLIGHTS Here are some of the key changes in this release. EXPERIMENTAL TYPESCRIPT CONFIGURATION FILES Arya Emami landed experimental support for TypeScript configuration files. Specifical...
HIGHLIGHTS Ignoring the directory where ESLint runs is no longer possible. Previously, a global ignores pattern like "/" would ignore the entire base directory. The feature flags specification ...
HIGHLIGHTS ESLint v9.7.0 supports ECMAScript 2025 duplicate capturing groups in regular expressions in its core rules. The no-restricted-imports rule has a new option regex to specify modules...
When we released ESLint v9.0.0 in April, it was the first major release in 30 months and formally introduced the new configuration system . ESLint v9.0.0 also made some rule API changes to pr...
https://eslint.org/blog/2024/07/whats-coming-next-for-eslint/
HIGHLIGHTS ESLintās default parser espree now supports RegExp duplicate named capturing groups ES2025 syntax when languageOptions.ecmaVersion is set to 2025 or "latest" (default). Please not...
HIGHLIGHTS The @eslint/compat package now provides utility for including .gitignore files or any other files with gitignore-style patterns in your eslint.config.js file. Messages about ignored...
Weāve heard you: One of the biggest reasons ESLint users havenāt upgraded to ESLint v9.x is migrating a configuration file seems difficult and complicated. Some plugins support flat config an...
https://eslint.org/blog/2024/05/eslint-configuration-migrator/
HIGHLIGHTS The no-loop-func rule no longer reports on IIFEās. The --inspect-config CLI flag will now launch the latest version of the ESLint Config Inspector . The no-constructor-return ru...
HIGHLIGHTS ESLint v9.3.0 adds new options to some rules: func-style has the new option overrides.namedExports no-extra-boolean-cast has the new option enforceForInnerExpressions superseding th...
The release of ESLint v9.0.0 brought with it the rollout of the new configuration system , but also a series of changes to the rules API . These changes are necessary in order to prepare ESLint f...
https://eslint.org/blog/2024/05/eslint-compatibility-utilities/
HIGHLIGHTS The no-case-declarations rule now provides suggestions for some of the problems reported by this rule. FEATURES 8485d76 feat: no-case-declarations add suggestions (#18388 ) (...
HIGHLIGHTS Fixed an issue that would sometimes cause an outdated version of @eslint/create-config to be used when running npx eslint --init. BUG FIXES a26b402 fix: use @eslint/create-confi...
HIGHLIGHTS This is the first minor release of ESLint following the major release of ESLint v9.0.0 earlier this month. Intl is now recognized as a built-in global unless languageOptions.ecmaVersi...
As of ESLint v9,0.0, the new configuration system has reached general availability, bringing with it many benefits. Configuration files are now easier to manage and more transparent to compose. ...
HIGHLIGHTS This is a summary of the significant changes, both breaking and non-breaking, you need to know about when upgrading from ESLint v8.x to ESLint v9.0.0. INSTALLING Because this is a ...
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. INSTALLING Since this is a pre-release version, you will not automatically be upgraded by ...
https://eslint.org/blog/2024/03/eslint-v9.0.0-rc.0-released/
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. INSTALLING Since this is a pre-release version, you will not automatically be upgraded by ...
https://eslint.org/blog/2024/03/eslint-v9.0.0-beta.2-released/
HIGHLIGHTS This release backports from v9.x to v8.x two new features and several bug fixes related to the flat config system to help plugins, integrations and users migrate to flat config ahead ...
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. INSTALLING Since this is a pre-release version, you will not automatically be upgraded by ...
https://eslint.org/blog/2024/02/eslint-v9.0.0-beta.1-released/
The plan for 2023 centered around our first major release since 2021 , ESLint v9.0.0. Most of the year was spent preparing for the release, building out the new configuration system (flat config)...
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. INSTALLING Since this is a pre-release version, you will not automatically be upgraded by ...
https://eslint.org/blog/2024/02/eslint-v9.0.0-beta.0-released/
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. INSTALLING Since this is a pre-release version, you will not automatically be upgraded by ...
https://eslint.org/blog/2024/01/eslint-v9.0.0-alpha.2-released/
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. INSTALLING Since this is a pre-release version, you will not automatically be upgraded by ...
https://eslint.org/blog/2024/01/eslint-v9.0.0-alpha.1-released/
HIGHLIGHTS This version of ESLint is not ready for production use and is provided to gather feedback from the community before releasing the final version. Please let us know if you having any p...
https://eslint.org/blog/2023/12/eslint-v9.0.0-alpha.0-released/
HIGHLIGHTS NEW FEATURES FOR REPORTING UNUSED DISABLE DIRECTIVES The ESLint CLI has a new option --report-unused-disable-directives-severity . This option is available in both eslintrc and flat...
HIGHLIGHTS The no-restricted-imports rule has a new option importNamePattern. FEATURES 8c9e6c1 feat: importNamePattern option in no-restricted-imports (#17721 ) (Tanuj Kanti) DOCUMENTA...
HIGHLIGHTS The no-console rule now provides suggestions for some of the problems reported by this rule. FEATURES a7a883b feat: for-direction rule add check for condition in reverse orde...
Last month, the Technical Steering Committee (TSC) met to finalize the features for ESLint v9.0.0. This post outlines our plans for v9.0.0. You can keep up to date everything that is planned for ...
https://eslint.org/blog/2023/11/whats-coming-in-eslint-9.0.0/
HIGHLIGHTS Core formatting rules have been deprecated. Please see Deprecation of formatting rules blog post for more details. FEATURES 528e1c0 feat: Deprecate formatting rules (#17696 ) (N...
In ESLint v8.53.0, scheduled to be released on Friday, November 3, 2023, we will formally deprecate our formatting rules. Formatting rules are those rules that simply enforce code conventions aro...
https://eslint.org/blog/2023/10/deprecating-formatting-rules/
HIGHLIGHTS UNUSED ESLINT-ENABLE DIRECTIVES The CLI option --report-unused-disable-directives and the config option reportUnusedDisableDirectives:true now also report and autofix unused eslint...
It may seem hard to believe, but the RFC for ESLintās new configuration system , nicknamed flat config, was first written in 2019. It took until 2022 (v8.21.0 ) for us to release an experimenta...
HIGHLIGHTS NEW CLI OPTION --NO-WARN-IGNORED This release includes a new CLI option --no-warn-ignored that, when on, suppresses warnings about ignored files that were explicitly passed in the ...
When ESLint v9.0.0 is released, it will ship with several breaking changes for rule authors. These changes are necessary as part of the work to implement language plugins , which gives ESLint fir...
https://eslint.org/blog/2023/09/preparing-custom-rules-eslint-v9/
HIGHLIGHTS The no-new-object rule has been deprecated in favor of the new no-object-constructor rule. The array-callback-return rule has a new option allowVoid. FEATURES 27d5a9e feat: a...
HIGHLIGHTS Code path analysis now provides two new events that can be used in rules: onUnreachableCodePathSegmentStart and onUnreachableCodePathSegmentEnd. CodePath#currentSegments property ha...
HIGHLIGHTS The no-promise-executor-return rule has a new option allowVoid. FEATURES 1fbb3b0 feat: correct update direction in for-direction (#17483 ) (Francesco Trotta) d73fbf2 feat: ru...
FEATURES 53d7508 feat: update regex for methods with thisArg (#17439 ) (Francesco Trotta) BUG FIXES 631648e fix: do not report on shadowed constructors in no-new-wrappers (#17447 ) (Fran...
HIGHLIGHTS SUPPORT FOR REGULAR EXPRESSIONS V FLAG We have updated ESLint to fully support the ECMAScript 2024 regular expression v flag . This flag allows more complex operations such as differ...
HIGHLIGHTS Here are some of the important changes in this release. EXPORTING OF NEW LEGACYESLINT CLASS As we continue our transition to the flat config system, weāve been working with integ...
HIGHLIGHTS The no-extra-parens rule has a new option ternaryOperandBinaryExpressions. eslint.config.js configuration files can now also export a promise that resolves to the configuration arr...
HIGHLIGHTS The no-irregular-whitespace rule has a new option skipJSXText. The ESLint documentation site now provides a Custom Rule Tutorial with step-by-step instructions on how to create and...
FEATURES b8448ff feat: correct no-useless-return behaviour in try statements (#16996 ) (Nitin Kumar) BUG FIXES a589636 fix: Config with ignores and without files should not always apply ...
HIGHLIGHTS Integrations can now use the new function shouldUseFlatConfig() to determine whether to use the FlatESLint class instead of the ESLint class. The performance of the indent rule has b...
HIGHLIGHTS Rules can now use properties context.sourceCode, context.cwd, context.filename, and context.physicalFilename instead of methods context.getSourceCode(), context.getCwd(), context.get...
HIGHLIGHTS Performance of SourceCode methods that search for comments has been improved following recommendations from a blog post by Marvin Hagemeister . For example, our tests showed that th...
HIGHLIGHTS Rules can now use SourceCode#getDeclaredVariables(node) and SourceCode#getAncestors(node) methods. These methods work the same as context.getDeclaredVariables(node) and context.getAn...
HIGHLIGHTS Rules can now use SourceCode#getScope(node) to get the scope of the given node. The node argument is mandatory. This method works the same as context.getScope() but isnāt limited...
In our 2022 year in review , we briefly mentioned a couple of project kickoffs, and weāre excited to now announce the official eslint-community GitHub organization . The strength of ESLint is...
https://eslint.org/blog/2023/03/announcing-eslint-community-org/
HIGHLIGHTS The multiline-comment-style rule has a new option checkJSDoc. This option can only be used when the string option is set to "separate-lines". FEATURES c89a485 feat: Add checkJS...
HIGHLIGHTS ESLintās predefined recommended and all configs are now exported from a new @eslint/js package. Those using "eslint:recommended" or "eslint:all" as strings in the new flat config f...
HIGHLIGHTS The array-callback-return rule now supports Array.prototype.toSorted . FEATURES 9b2fcf7 feat: array-callback-return supports Array.prototype.toSorted (#16845 ) (SUZUKI Sosuke)...
HIGHLIGHTS The no-restricted-exports rule gained a new restrictDefaultExports option to control where the default export can be used. This release continues our ongoing documentation update p...
HIGHLIGHTS The prefer-regex-literals rule now provides suggestions for some of the problems it reports. This release reorganizes documentation as part of our ongoing documentation update proj...
In February 2022, we shared our plan for 2022 , including how the ESLint project as a whole would be spending its sponsorship money for the betterment of the project. In this post, Iāll share w...
HIGHLIGHTS The no-underscore-dangle rule gained two new options: allowInArrayDestructuring and allowInObjectDestructuring. Both of these default to true to allow dangling underscores in array a...
HIGHLIGHTS The no-return-await rule now provides suggestions for some of the problems reported by this rule. FEATURES 075ef2c feat: add suggestion for no-return-await (#16637 ) (Daniel ...
HIGHLIGHTS The no-extra-parens rule has a new option allowParensAfterCommentPattern. The prefer-named-capture-group rule now provides suggestions for some of the problems reported by this ru...
HIGHLIGHTS The no-magic-numbers rule has a new option ignoreClassFieldInitialValues. FEATURES 63bce44 feat: add ignoreClassFieldInitialValues option to no-magic-numbers (#16539 ) (Milos ...
HIGHLIGHTS The new no-new-native-nonconstructor rule protects against newing BigInts and Symbols, which would throw an error. The existing no-new-symbol rule only checks for new Symbol. no-new...
HIGHLIGHTS The no-implicit-globals rule now supports /* exported */ directive comments. ESLINT_USE_FLAT_CONFIG environment variable can now be used for more control over switching between th...
BACKGROUND CesiumJS is an open source JavaScript library for 3D geospatial visualization. Cesiumās roots are in aerospace with our first use case being accurate visualization of satellites an...
HIGHLIGHTS Formatters now have access to the --max-warnings threshold when it is exceeded. See Working with Custom Formatters - The context Argument for details. The new config system no long...
HIGHLIGHTS One new rule has been added: logical-assignment-operators FEATURES 1729f9e feat: account for sourceType: "commonjs" in the strict rule (#16308 ) (Milos Djermanovic) b0d72c9 f...
HIGHLIGHTS This release includes a significant performance improvement in the indent rule as well as some bug fixes for the new eslint.config.js config system . BUG FIXES b719893 fix: Upgr...
HIGHLIGHTS The new config system is now incorporated into the CLI, along with the existing config system. To opt-in to the new config system, place a eslint.config.js file in the root of your ...
HIGHLIGHTS The new config system preview now supports caching. To learn more, check out the three-part series on our blog! (1 , 2 , 3 ) FEATURES 2b97607 feat: Implement caching for FlatESL...
Hi! My nameās Hayden. Iām a designer and developer and, until recently, I ran a little agency called Jellypepper . We were fortunate enough to work with the ESLint team on their new brand a...
In my previous post , I explained the fundamental concepts of using the new āflatā config system. The new config system isnāt yet tied into the CLI while we do more internal testing, but we...
In my previous post , I talked about how the eslintrc config system had grown to be more complex than necessary through a series of small, incremental changes. The flat config system, on the othe...
When ESLint was first released in 2013, the config system was fairly simple. You could define the rules you wanted to enable or disable in a .eslintrc file. When a file was linted, ESLint would f...
HIGHLIGHTS ESLint will now print deprecation warnings for two changes that are coming in ESLint v9: First, rules with options must specify schemas. Second, rules must be defined using the objec...
HIGHLIGHTS ESLint now catches exceptions thrown by preprocessors and reports them as lint errors. This matches how ESLint already handled parser errors. Previously, exceptions thrown by preproc...
In ESLint v8.14.0 I contributed a new core rule called no-constant-binary-expression which has surprised me with the wide variety of subtle and interesting bugs it has been able to detect. In...
https://eslint.org/blog/2022/07/interesting-bugs-caught-by-no-constant-binary-expression/
HIGHLIGHTS The no-restricted-imports rule now supports the importNames option for more granular control of imports when matching modules with patterns. FEATURES 7023628 feat: add importNam...
HIGHLIGHTS Per-rule performance report now includes time spent in create() of rules. This time is added to the time spent in the listeners. FEATURES a6273b8 feat: account for rule creatio...
HIGHLIGHTS The no-use-before-define rule has a new option allowNamedExports. FEATURES 55319e1 feat: fix indent bug with semicolon-first style (#15951 ) (Milos Djermanovic) f6d7920 feat: ...
HIGHLIGHTS The no-misleading-character-class rule now provides suggestions for some of the problems reported by this rule. FEATURES cab0c22 feat: add Unicode flag suggestion in no-mislea...
HIGHLIGHTS The no-underscore-dangle rule has a new option enforceInClassFields. FEATURES ab37d3b feat: add enforceInClassFields option to no-underscore-dangle (#15818 ) (Roberto Cestari) ...
HIGHLIGHTS One new rule has been added: no-constant-binary-expression FEATURES ab6363d feat: Add rule no-constant-binary-expression (#15296 ) (Jordan Eldredge) BUG FIXES 35fa1dd fix...
FEATURES 274acbd feat: fix no-eval logic for this in arrow functions (#15755 ) (Milos Djermanovic) BUG FIXES 97b57ae fix: invalid operator in operator-assignment messages (#15759 ) (Mil...
FEATURES 685a67a feat: fix logic for top-level this in no-invalid-this and no-eval (#15712 ) (Milos Djermanovic) CHORES 18f5e05 chore: padding-line-between-statements remove useless ad...
HIGHLIGHTS The no-unused-vars rule has a new destructuredArrayIgnorePattern option. FEATURES 800bd25 feat: add destructuredArrayIgnorePattern option in no-unused-vars (#15649 ) (Nitin K...
HIGHLIGHTS The no-shadow rule has a new ignoreOnInitialization option. The no-confusing-arrow rule has a new onlyOneSimpleParam option. FEATURES 6e2c325 feat: Add ignoreOnInitialization ...
In our last update on paying contributors , we noted some of the successes and challenges we had as a team. At that time, we were still trying to figure out ESLintās model for sustainability. H...
https://eslint.org/blog/2022/02/paying-contributors-sponsoring-projects/
HIGHLIGHTS New es2022 environment has been added. When enabled, it adds all ECMAScript 2022 globals (which are currently the same as ECMAScript 2021 globals) and automatically sets the ecmaVer...
HIGHLIGHTS SUPPRESSED MESSAGES Suppressed messages are lint messages (errors and warnings) that were suppressed by eslint-disable, eslint-disable-line and eslint-disable-next-line comments. E...
HIGHLIGHTS The functionality behind eslint --init has been pulled into a standalone @eslint/create-config package. Now, you can initialize ESLint in a new project with npm init @eslint/config,...
HIGHLIGHTS ESLint v8.6.0 allows rule lists or descriptions in eslint-disable-next-line comments to wrap lines: /*Ā eslint-disable-next-lineĀ no-consoleĀ -- Ā *Ā Here'sĀ aĀ veryĀ longĀ descrip...
HIGHLIGHTS One new rule has been added: prefer-object-has-own . The prefer-regex-literals rule now provides suggestions . FEATURES 94e77a6 feat: Suggestions support for prefer-regex-liter...
BUG FIXES 234e3d9 fix: revert changes to reported locations in max-lines-per-function (#15397 ) (Milos Djermanovic) DOCUMENTATION fa4d483 docs: fix typo in example for sort-keys rule (#...
HIGHLIGHTS NEW PARSER OPTION The default parser has a new option allowReserved (boolean, default false). When set to true, reserved words can be used as identifiers. This option can only be u...
We are happy to share that Contra has become an ESLint gold sponsor, donating $1,000 each month for the ongoing maintenance and development of ESLint! Contra is a professional network built arou...
HIGHLIGHTS This release supports ES2022 class static blocks in rules, the default parser, and scope analysis. classĀ CĀ { Ā Ā Ā Ā staticĀ xĀ =Ā ...; Ā Ā Ā Ā staticĀ y; Ā Ā Ā Ā staticĀ z; Ā Ā Ā...
If youāre like me, you probably use a lot of open source tools every day without thinking about how they got started. Few projects share the āwhyā of their creation: the actual problem they...
FEATURES c9fefd2 feat: report class evaluation TDZ errors in no-use-before-define (#15134 ) (Milos Djermanovic) DOCUMENTATION c415c04 docs: Use string rule severity in CLI examples (#152...
HIGHLIGHTS One new rule has been added: no-unused-private-class-members . This rule reports unused class private fields, methods and accessors. RuleTester now allows name property in test case...
This release contains a workaround that will allow Jest to work with ESLint v8. DOCUMENTATION ff5fcd4 Docs: add 13 as allowed ecma version (fixes #15159 ) (#15162 ) (åÆē¶) DEPENDENCY UP...
HIGHLIGHTS There are several breaking changes in v8.0.0. Weāve created a migration guide to explain the breaking changes and describe how to upgrade. In addition, there are several new featur...
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. This version of ESLint is provided to gather feedback from the community before releasing t...
https://eslint.org/blog/2021/09/eslint-v8.0.0-rc.0-released/
HIGHLIGHTS The use of reserved words as identifiers in ES3 is now disallowed . This change only affects users with default parser configured with { "ecmaVersion": 3 } in parser options. All cor...
https://eslint.org/blog/2021/09/eslint-v8.0.0-beta.2-released/
HIGHLIGHTS Beta testing revealed that the impact of the breaking change to allow line comment directives for all directives that previously required block comments outweighs the benefits of th...
https://eslint.org/blog/2021/08/eslint-v8.0.0-beta.1-released/
HIGHLIGHTS Most of the highlights of this release are breaking changes, and are discussed further in the migration guide . In addition, there are some new features: The default parser now suppor...
https://eslint.org/blog/2021/08/eslint-v8.0.0-beta.0-released/
HIGHLIGHTS The new --exit-on-fatal-error option will treat parsing errors as fatal and return exit code 2. By default, parsing errors return exit code 1 like rule violations. FEATURES 1bfbe...
ENHANCEMENTS a96b05f Update: add end location to report in consistent-return (refs #12334 ) (#14798 ) (Nitin Kumar) ddffa8a Update: Indicating the operator in question (#14764 ) (Paul Smith)...
HIGHLIGHTS You can now set "ecmaVersion" to "latest" under parserOptions in your configuration file: { Ā Ā Ā Ā "parserOptions":Ā { Ā Ā Ā Ā Ā Ā Ā Ā "ecmaVersion":Ā "latest" Ā Ā Ā Ā } } "ecmaV...
HIGHLIGHTS The ESLint class has a new getRulesMetaForResults() method that returns meta information for rules in lint results. ESLint integrations should migrate to ESLint#getRulesMetaForResult...
Last week, the Technical Steering Committee (TSC) met to finalize the features for ESLint v8.0.0. This feature set had not yet been locked down even as v8.0.0 work began and so this represented a...
https://eslint.org/blog/2021/06/whats-coming-in-eslint-8.0.0/
HIGHLIGHTS CONTEXT.GETPHYSICALFILENAME() Rules can now use the new method getPhysicalFilename() on the context object to get the full path of the file on disk without any code block information...
HIGHLIGHTS The no-restricted-imports rule now allows specifying custom error messages for patterns. ENHANCEMENTS 9e9b5e0 Update: no-unused-vars false negative with comma operator (fixes #...
FEATURES 0b6a3f3 New: Include XO style guide in eslint --init (#14193 ) (Federico Brigante) ENHANCEMENTS f071d1e Update: Add automated suggestion to radix rule for parsing decimals (#142...
ENHANCEMENTS 5df5e4a Update: highlight last write reference for no-unused-vars (fixes #14324 ) (#14335 ) (Nitin Kumar) 41b3570 Update: lint code block with same extension but different conte...
HIGHLIGHTS The no-implicit-coercion rule has a new disallowTemplateShorthand option. The no-multi-assign rule has a new ignoreNonDeclaration option. ENHANCEMENTS f06ecdf Update: Add disa...
HIGHLIGHTS The no-sequences rule has a new option allowInParentheses. ENHANCEMENTS 687ccae Update: add option āallowInParenthesesā to no-sequences (fixes #14197 ) (#14199 ) (Daniel Re...
ENHANCEMENTS f62ec8d Update: throw error when fix range is invalid (#14142 ) (Jacob Bandes-Storch) 5ad91aa Update: report es2021 globals in no-extend-native (refs #13602 ) (#14177 ) (Milos D...
HIGHLIGHTS The new --cache-strategy CLI option can improve how ESlint detects changed files by looking at either file metadata or contents. FEATURES 08ae31e New: Implement cacheStrategy (r...
We are happy to share that Nx has become an ESLint gold sponsor, donating $1,000 each month for the ongoing maintenance and development of ESLint! Nx is a front-end focused set of tools for work...
HIGHLIGHTS The no-unused-expressions rule has a new option enforceForJSX to flag unused JSX elements. The following selectors have been updated to support JSX and custom parsers: :first-child,...
HIGHLIGHTS With this release, weāre excited to publish our revamped configuration guide . Technical writer Khawar Latif Khan spent the last several months since our Google Season of Docs proj...
ENHANCEMENTS f17c3c3 Update: check logical assignment operators in the complexity rule (#13979 ) (Milos Djermanovic) BUG FIXES 179a910 Fix: --init crash on question to upgrade/downgrade ...
We are happy to share that Google Chrome has become an ESLint gold sponsor sponsor, donating $1,000 each month for the ongoing maintenance and development of ESLint! The Chrome team is well know...
HIGHLIGHTS The multiline-ternary rule is now auto-fixable. ENHANCEMENTS e128e77 Update: check logical assignment in no-constant-condition (#13946 ) (Milos Djermanovic) 535fe47 Update: us...
ENHANCEMENTS a62ad6f Update: fix false negative of no-extra-parens with NewExpression (#13930 ) (Milos Djermanovic) BUG FIXES f85b4c7 Fix: require-atomic-updates false positive across a...
We are happy to share that Automattic has become ESLintās first platinum sponsor, donating $2,000 each month for the ongoing maintenance and development of ESLint! Automattic is the company be...
https://eslint.org/blog/2020/12/automattic-platinum-sponsor-eslint/
HIGHLIGHTS The new no-unsafe-optional-chaining rule catches cases where short-circuiting ?. in an expression can cause a TypeError. FEATURES 683ad00 New: no-unsafe-optional-chaining rule ...
HIGHLIGHTS The no-nonoctal-decimal-escape rule has been added. This rule disallows the use of legacy escape sequences 8 and 9 in string literals. FEATURES 98c00c4 New: Add no-nonoctal-deci...
HIGHLIGHTS Per-rule performance metrics can now show more than ten rules. Set the TIMING environment variable to the desired list size or all to display all rules. $Ā TIMING=50Ā eslintĀ lib ...
BUG FIXES aeef485 Fix: Pass internal config paths in FileEnumerator default (fixes #13789 ) (#13792 ) (Brandon Mills) DEPENDENCY UPGRADES 08f33e8 Upgrade: @eslint/eslintrc to fix rule sch...
ENHANCEMENTS cbf3585 Update: skip keyword check for fns in space-before-blocks (fixes #13553 ) (#13712 ) (Milos Djermanovic) bfddced Update: remove suggestion if it didnāt provide a fix (f...
ENHANCEMENTS da78fa1 Update: support async arrow fn in function-paren-newline (fixes #13728 ) (#13729 ) (Michal Dziekonski) BUG FIXES fa9429a Fix: donāt count line after EOF in max-lin...
It was in February of 2019 that we announced the launch of the ESLint Collective to fund ESLintās ongoing development. One of the primary reasons for seeking funding was due to the increasing ...
https://eslint.org/blog/2020/10/year-paying-contributors-review/
HIGHLIGHTS New option ignorePattern in the no-inline-comments rule. ENHANCEMENTS 07d9bea Update: Add ignorePattern to no-inline-comments (#13029 ) (Edie Lemoine) BUG FIXES cb44e93 Fi...
When ESLint first started accepting donations, it was with the explicit goal of creating a sustainable future for the project. In the short term, that meant ensuring we could compensate those who...
https://eslint.org/blog/2020/09/supporting-eslint-dependencies/
ENHANCEMENTS 6f87db7 Update: fix id-length false negatives on Object.prototype property names (#13670 ) (Milos Djermanovic) BUG FIXES 3ca2700 Fix: Corrected notice for invalid (:) plugin...
BUG FIXES f542b5d Fix: Update broken @eslint/eslintrc version (fixes #13641 ) (#13647 ) (Nicholas C. Zakas)
HIGHLIGHTS Support for logical assignment operators and numeric separators has landed in ESLint! To enable linting this syntax, please set ecmaVersion to 2021: { Ā Ā Ā Ā "parserOptions":Ā { ...
When ESLint first started accepting donations , we listed several ways that the project intended to spend the money donated: PAYING TEAM MEMBERS FOR MAINTENANCE AND DEVELOPMENT. We hired our firs...
This year, ESLint was accepted into the Google Season of Docs (GSoD) program for the first time (thanks, in large part, to our sponsors ). The ESLint team has always placed a high value on qualit...
https://eslint.org/blog/2020/08/eslint-google-season-of-docs-project-writer/
HIGHLIGHTS In ESLint v7.3.0 , we released a change to the comma-dangle rule that disallowed having multiple options in the ruleās configuration . Our semantic versioning policy allows for chan...
We are happy to share that Microsoft has donated $10,000 to the ESLint project as part of their FOSS Fund . Similar to the Indeed FOSS Contributor Fund and Salesforce FOSS Contributor Fund , th...
https://eslint.org/blog/2020/08/microsoft-donates-10000-to-eslint/
From its beginning, the ESLint project has sought to be a place that is welcoming and inclusive of everyone. We adopted a code of conduct before doing so was common (even before we joined the jQu...
https://eslint.org/blog/2020/08/making-eslint-more-inclusive/
We are happy to share that Salesforce has donated $10,000 to the ESLint project as part of their FOSS Contributor Fund . The FOSS Contributor Fund donates $10,000 to qualifying open source proje...
https://eslint.org/blog/2020/08/salesforce-donates-10000-to-eslint/
HIGHLIGHTS RULETESTER REQUIRES META.FIXABLE FOR FIXABLE RULES Fixable rules are required to have a meta.fixable property. A bug in the RuleTester class (which is intended to help plugin author...
HIGHLIGHTS OPTIONAL CHAINING SUPPORT Support for optional chaining has landed in ESLint! constĀ maybePropĀ =Ā obj.first?.second; The default parser and built-in rules will support this synt...
HIGHLIGHTS Shortly after the v7.3.0 release, we received an issue that eslint-config-airbnb was breaking because it used Infinity in a rule config. Infinity should have been forbidden by the r...
The v7.3.0 release included a fix for an unrelated issue that caused a configuration issue in eslint-config-airbnb that had previously gone unnoticed to start failing. ESLint expects configuratio...
HIGHLIGHTS The new no-promise-executor-return rule prevents returning unreadable values from inside new Promise(...) executors. The new no-unreachable-loop rule catches loops that are guarant...
HIGHLIGHTS ECMAScript 2020 syntax support has landed in ESLint! This release adds support for the following language features in the default parser and core rules: Nullish coalescing operator e...
When ESLint was first created, the idea was to have a small set of 20-30 core rules that could get everyone started, and then to let the community build out its own rules to fill in any remaining...
FEATURES c636d57 New: no-loss-of-precision (fixes #11279 ) (#12747 ) (jmoore914) ENHANCEMENTS df01af1 Update: padded-blocks loc position changes (refs #12334 ) (#13328 ) (Anix) 25462b2 ...
HIGHLIGHTS There are several breaking changes in 7.0.0. Weāve created a migration guide to explain the breaking changes and describe how to upgrade. DROPPING SUPPORT FOR NODE.JS V8 Node.js...
HIGHLIGHTS This release includes a new asynchronous ESLint API for use in Node.js environments. This will allow for the support of ES Module configuration files and plugins and is a prerequisi...
https://eslint.org/blog/2020/04/eslint-v7.0.0-rc.0-released/
HIGHLIGHTS This release contains the following breaking changes: Making RuleTester checks stricter . Plugins are now loaded relative to the configs that reference them . Use the current working ...
https://eslint.org/blog/2020/03/eslint-v7.0.0-alpha.3-released/
HIGHLIGHTS This release contains the following breaking changes: Updating default configuration options in core rules. Updating the rules recommended in eslint:recommended . Making RuleTester c...
https://eslint.org/blog/2020/02/eslint-v7.0.0-alpha.2-released/
Last week, the Technical Steering Committee (TSC) met to finalize the features for ESLint v7.0.0. This feature set had not yet been locked down even as v7.0.0 work began and so this represented a...
https://eslint.org/blog/2020/02/whats-coming-in-eslint-7.0.0/
HIGHLIGHTS Most of the highlights of this release are breaking changes, and are discussed further in the migration guide . INSTALLING Since this is a pre-release version, you will not automat...
https://eslint.org/blog/2020/02/eslint-v7.0.0-alpha.1-released/
HIGHLIGHTS Most of the highlights of this release are breaking changes, and are discussed further in the migration guide . In addition to the breaking changes, we have three new rules: default...
https://eslint.org/blog/2020/01/eslint-v7.0.0-alpha.0-released/
HIGHLIGHTS The new --no-error-on-unmatched-pattern CLI flag prevents errors when a quoted glob pattern or --ext is not matched. ESLint now looks for .eslintrc.cjs config files to allow Common...
BUG FIXES bc435a9 Fix: isSpaceBetweenTokens() recognizes spaces in JSXText (fixes #12614 ) (#12616 ) (Toru Nagashima) 4928d51 Fix: donāt ignore the entry directory (fixes #12604 ) (#12607 )...
BUG FIXES dd1e9f4 Fix: revert changes to key-spacing due to regression (#12598 ) (Kai Cataldo) DOCUMENTATION c644b54 Docs: Update README team and sponsors (ESLint Jenkins)
HIGHLIGHTS SUGGESTIONS API This release contains a new Suggestions API for rule authors and integrations. You can read more about this exciting new feature here . IGNOREPATTERNS IN CONFIG FI...
Back in February, we announced the creation of the ESLint Collective to raise funds for the ongoing maintenance and development of ESLint. Our goal was to raise $20,000 each month to support th...
HIGHLIGHTS Rules can now access context.getCwd() to get the current working directory The use-isnan rule has a new enforceForIndexOf option The no-param-reassign rule has a new ignoreProperty...
BUG FIXES 447ac87 Fix: no-useless-rename handles ExperimentalRestProperty (fixes #12335 ) (#12339 ) (Kai Cataldo) DOCUMENTATION 0d3d7d9 Docs: fix typo in no-magic-numbers (#12345 ) (Jos...
HIGHLIGHTS We have added a new --env-info CLI option, which provides a lot of information that is useful for GitHub issues. The use-isnan rule supports a new option, enforceForSwitchCase. The ...
HIGHLIGHTS Three new rules: no-import-assign , prefer-regex-literals , default-param-last accessor-pairs and computed-property-spacing rules has been updated with a new option enforceForClas...
We are happy to share that Indeed has donated $10,000 to the ESLint project as part of their FOSS Contributor Fund . The FOSS Contributor Fund is a unique idea, where all Indeed employees may no...
https://eslint.org/blog/2019/09/indeed-donates-10000-to-eslint/
HIGHLIGHTS eslint --init can automatically configure TypeScript support for ESLint in a new project. The new reportUnusedDisableDirectives config option mirrors the existing --report-unused-di...
DOCUMENTATION b809e72 Docs: Update README team and sponsors (ESLint Jenkins) DEPENDENCY UPGRADES 0e0b784 Upgrade: espree@^6.1.1 (#12158 ) (Kevin Partington)
This release includes a security fix in the eslint-utils package, which is a dependency of ESLint. The security issue affects users that run ESLint on untrusted source code (e.g. servers that li...
HIGHLIGHTS This release adds support for ES2020 syntax, which includes support for Dynamic Imports and BigInt. This can be enabled using ecmaVersion: 2020 in your configuration file. A new rule...
ENHANCEMENTS b974fcb Update: Check computed property keys in no-extra-parens (#11952 ) (Milos Djermanovic) 222d27c Update: Add for-in and for-of checks for props in no-param-reassign (#1194...
BUG FIXES b5bde06 Fix: --rulesdir option didnāt work (fixes #11888 ) (#11890 ) (Toru Nagashima) 13f0418 Fix: improve error message on --print-config (fixes #11874 ) (#11885 ) (Toru Nagashim...
HIGHLIGHTS There are several breaking changes in 6.0.0. Weāve created a migration guide to explain the breaking changes and describe how to upgrade. Configuration using glob patterns now sup...
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. BigInt and dynamic import are at stage 4 (aside from some TC39 formalities), so we have begun...
https://eslint.org/blog/2019/06/eslint-v6.0.0-rc.0-released/
HIGHLIGHTS Configuration using glob patterns now supports extends and nested overrides Using multiple processors is now supported INSTALLING Since this is a pre-release version, you will not...
https://eslint.org/blog/2019/05/eslint-v6.0.0-alpha.2-released/
HIGHLIGHTS Most of the highlights of this release are breaking changes, and are discussed further in the migration guide . New breaking changes in this prerelease include: Some config-loading ...
https://eslint.org/blog/2019/05/eslint-v6.0.0-alpha.1-released/
Back in February, we announced the creation of the ESLint Collective to raise funds for the ongoing maintenance and development of ESLint. At the time, we were grateful to have both Facebook Op...
HIGHLIGHTS Most of the highlights of this release are breaking changes, and are discussed further in the migration guide . Non-breaking highlights: The function-paren-newline rule has a new m...
https://eslint.org/blog/2019/04/eslint-v6.0.0-alpha.0-released/
HIGHLIGHTS Formatters can now use rule metadata in their output! This enhancement was originally described and designed using our RFC process . More information can be found here . A new built...
BUG FIXES 71adc66 Fix: avoid moving comments in implicit-arrow-linebreak (fixes #11521 ) (#11522 ) (Teddy Katz) CHORES 1f715a2 Chore: make test-case-property-ordering reasonable (#11511 ...
BUG FIXES 29dbca7 Fix: implicit-arrow-linebreak adds extra characters (fixes #11268 ) (#11407 ) (Mark de Dios) a5dae7c Fix: Empty glob pattern incorrectly expands to ā/**ā (#11476 ) (Ben...
BUG FIXES 458053b Fix: avoid creating invalid regex in no-warning-comments (fixes #11471 ) (#11472 ) (Teddy Katz) BUILD RELATED fe1a892 Build: bundle espree (fixes eslint/eslint.github.i...
HIGHLIGHTS The prefer-named-capture-group rule has been added. This rule encourages the use of named capture groups over numbered capture groups. FEATURES ec59ec0 New: add rule āprefer-...
BUG FIXES 1d6e639 Fix: sort-keys throws Error at SpreadElement (fixes #11402 ) (#11403 ) (Krist Wongsuphasawat)
HIGHLIGHTS For clarity configuration of global variables has been enhanced with two additional values readonly and writable. All previous values are still valid. The prefer-destructuring rule ...
June 2019 will mark six years since ESLint was first released. What began as a side project for a very narrow use case has grown into the most popular JavaScript linter in the world, with over 6....
HIGHLIGHTS Configuration of globals has been improved with three new options: āoffā, āreadableā, and āwriteableā. āoffā: Completely disables a global variable that was previously...
BUG FIXES aa56247 Fix: avoid loading core rules dynamically from FS in Linter (#11278 ) (Peter Metz) c403445 Fix: warn constant on RHS of || in no-constant-condition (fixes #11181 ) (#11253 ...
A couple of weeks ago, the TypeScript team shared their roadmap in which they described formally adopting ESLint in their repo and working to improve TypeScript compatibility for ESLint: >Ā LI...
HIGHLIGHTS The sort-imports rule has a new ignoreDeclarationSort option. ENHANCEMENTS 0d91e7d Update: Add sort-imports ignoreDeclarationSort (fixes #11019 ) (#11040 ) (Remco Haszing) B...
BUG FIXES de79f10 Fix: handle optional catch bindings in no-useless-catch (#11205 ) (Colin Ihrig)
HIGHLIGHTS One new rule has been added: no-useless-catch The indent rule now supports a VariableDeclarator: "first" option. FEATURES b4395f6 New: add option first for VariableDeclarator ...
HIGHLIGHTS The padding-line-between-statements rule has new statement types: multiline-const, multiline-let, multiline-var, singleline-const, singleline-let, and singleline-var. The require-js...
Over the past few years, the ESLint project has grown in size and scope. What originally consisted of a single executable package has grown into a project with multiple packages including several...
HIGHLIGHTS The following are the most important changes in this release. THE --FIX-TYPE OPTION This version introduces a new --fix-type option for the command line interface . This option all...
HIGHLIGHTS The Linter API now has a static version property, for consistency with the CLIEngine.version property. (Previously, the version property was only present on instances of Linter rathe...
HIGHLIGHTS Three rules gained new options in this release: padding-line-between-statements has a new iife node type to specifically target immediately-invoked function expression invocations as...
BUG FIXES 9b26bdb Fix: avoid exponential require-atomic-updates traversal (fixes #10893 ) (#10894 ) (Teddy Katz) 9432b10 Fix: make separateRequires work in consecutive mode (fixes #10784 ) (...
ENHANCEMENTS c5b688e Update: Added generators option to func-names (fixes #9511 ) (#10697 ) (Oscar Barrett) BUG FIXES 7da36d5 Fix: respect generator function expressions in no-constant-c...
ENHANCEMENTS b61d2cd Update: max-params to only highlight function header (#10815 ) (Ian Obermiller) BUG FIXES 6e110e6 Fix: camelcase duplicate warning bug (fixes #10801 ) (#10802 ) (Ju...
ENHANCEMENTS f3d8454 Update: Improve no-extra-parens error message (#10748 ) (Timo Tijhof) BUG FIXES 034690f Fix: no-invalid-meta crashes for non Object values (fixes #10750 ) (#10753 ) ...
HIGHLIGHTS Four new rules have been added: no-misleading-character-class reports multi-code-point characters in regular expression character classes. Using these characters in character classes...
HIGHLIGHTS When using the --cache flag, the results for files with linting errors are now saved to the cache. This should result in improved performance when using --cache on a codebase with ex...
SUMMARY On July 12th, 2018, an attacker compromised the npm account of an ESLint maintainer and published malicious versions of the eslint-scope and eslint-config-eslint packages to the npm re...
https://eslint.org/blog/2018/07/postmortem-for-malicious-package-publishes/
HIGHLIGHTS The no-catch-shadow rule has been deprecated in favor of no-shadow . ENHANCEMENTS 143890a46 Update: Adjust grammar of error/warnings fixable (#10546 ) (Matt Mischuk) b7addf6fe ...
BUG FIXES 196c102 Fix: valid-jsdoc should allow optional returns for async (fixes #10386 ) (#10480 ) (Mark Banner) DOCUMENTATION 4c823bd Docs: Fix max-lines-per-function correct codeā...
HIGHLIGHTS There are several breaking changes in 5.0.0. Weāve created a migration guide to explain the breaking changes and describe how to upgrade. Three new rules have been added: prefer-o...
Note: This version of ESLint is not ready for production use and is provided to gather feedback from the community before releasing the final version. Please let us know if you having any problem...
https://eslint.org/blog/2018/06/eslint-v5.0.0-rc.0-released/
Note: This version of ESLint is not ready for production use and is provided to gather feedback from the community before releasing the final version. Please let us know if you having any problem...
https://eslint.org/blog/2018/05/eslint-v5.0.0-alpha.4-released/
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. Two new rules have been added: prefer-object-spread and max-classes-per-file The CLIEngine ...
https://eslint.org/blog/2018/05/eslint-v5.0.0-alpha.3-released/
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. INSTALLING Since this is a pre-release version, you will not automatically be upgraded by ...
https://eslint.org/blog/2018/04/eslint-v5.0.0-alpha.2-released/
Note: This version of ESLint is not ready for production use and is provided to gather feedback from the community before releasing the final version. Please let us know if you having any problem...
https://eslint.org/blog/2018/04/eslint-v5.0.0-alpha.1-released/
Note: This version of ESLint is not ready for production use and is provided to gather feedback from the community before releasing the final version. Please let us know if you having any problem...
https://eslint.org/blog/2018/03/eslint-v5.0.0-alpha.0-released/
BUG FIXES 3ff5d11 Fix: no-invalid-regexp not understand variable for flags (fixes #10112 ) (#10113 ) (čå®č°ēē«) abc765c Fix: object-curly-newline minProperties w/default export (fixe...
The one-var rule now has a consecutive option. Core rules have been updated to support the new RegExp features introduced in ES2018 (when using the appropriate parser options). ENHANCEMENTS ...
BUG FIXES 6b71fd0 Fix: table@4.0.2, because 4.0.3 needs āajvā: ā^6.0.1ā (#10022 ) (Mathieu Seiler) f6901d0 Fix: remove catastrophic backtracking vulnerability (fixes #10002 ) (#10019 ...
BUG FIXES f417506 Fix: ensure no-await-in-loop reports the correct node (fixes #9992 ) (#9993 ) (Teddy Katz) DOCUMENTATION 3e99363 Docs: Fixed typo in key-spacing rule doc (#9987 ) (Jai...
ENHANCEMENTS 0e4ae22 Update: fix indent bug with binary operators/ignoredNodes (fixes #9882 ) (#9951 ) (Teddy Katz) 47ac478 Update: add named imports and exports for object-curly-newline (#...
HIGHLIGHTS A new multiline option has been added to the padding-line-between-statements rule. ENHANCEMENTS 1da1ada Update: Add āmultilineā type to padding-line-between-statements (#8...
HIGHLIGHTS The comma-style rule now supports a NewExpression option. The valid-jsdoc rule can now be autofixed in some cases, and its error locations are more precise. The allowMultipleProper...
HIGHLIGHTS NEW APIS CLIEngine now has a getRules() method . This is useful for integrations that need to look at rulesā metadata programmatically without knowing what rules might have been de...
HIGHLIGHTS Parsers can now provide custom scope analysis hooks to ESLint, which should allow for easier integration when parsing non-standard syntax. For more information see our documentation ....
BUG FIXES b72dc83 Fix: eol-last allow empty-string to always pass (refs #9534 ) (#9696 ) (Kevin Partington) d80aa7c Fix: camelcase destructure leading/trailing underscore (fixes #9700 ) (#9...
HIGHLIGHTS This release updates camelcase rule to handle destructuring by default, which might result in more user-visible errors. ENHANCEMENTS 256481b Update: update handling of destructu...
BUG FIXES 1e362a0 Revert āFix: Use XML 1.1 on XML formatters (fixes #9607 ) (#9608 )ā (#9667 ) (Kevin Partington)
HIGHLIGHTS NEW RULES Weāve added 1 new rule with this release: implicit-arrow-linebreak AUTOFIXABLE RULES Weāve added autofix capabilities to one rule: sort-vars . At present, it will o...
HIGHLIGHTS npm installed formatters can now be specified with or without the package nameās eslint-formatter- prefix. Example: npmĀ installĀ eslint-formatter-pretty eslintĀ -fĀ prettyĀ file...
ENHANCEMENTS ebb530d Update: Donāt ignore comments (no-trailing-spaces ) (#9416 ) (Chris van Marle) BUG FIXES bb6e60a Fix: Improve the doc for no-restricted-modules rule (fixes #9437 )...
HIGHLIGHTS Weāve added 2 new rules with this release: multiline-comment-style lines-between-class-members We also added new CLI option --fix-dry-run . This option will allow you to apply f...
HIGHLIGHTS āREPORT-UNUSED-DISABLE-DIRECTIVES This release includes a new CLI option that, when on, reports unused eslint-disable directives! Running this periodically will ensure that all esl...
BUG FIXES 4f87732 Fix: Revert setting node.parent early (fixes #9331 ) (#9336 ) (Teddy Katz)
BUG FIXES 08656db Fix: Handle nested disable directive correctly (fixes #9318 ) (#9322 ) (Gyandeep Singh)
HIGHLIGHTS newline-per-chained-call supports autofix. Processor plugins can now autofix code. To support autofix in processor plugins, developers can signal support by setting supportsAutofix:...
BUG FIXES cb74b87 Fix: avoid adding globals when an env is used with false (fixes #9202 ) (#9203 ) (Teddy Katz) DOCUMENTATION f9b7544 Docs: Correct a typo in generator-star-spacing docum...
HIGHLIGHTS One new rule has been added: function-paren-newline The generator-star-spacing rule is now configurable by function type. FEATURES 0e09973 New: function-paren-newline rule (f...
HIGHLIGHTS The indent rule can now be configured to ignore the indentation of specific types of syntax, using the ignoredNodes option. This can be useful if you disagree with some of the inden...
BUG FIXES ec93614 Fix: no-multi-spaces to avoid reporting consecutive tabs (fixes #9079 ) (#9087 ) (Teddy Katz)
HIGHLIGHTS INITIAL SUPPORT FOR ECMASCRIPT 2018 Because ECMAScript 2018 is still under development, we are implementing features as they are finalized. This release includes the following: Inval...
ENHANCEMENTS 91dccdf Update: support more options in prefer-destructuring (#8796 ) (Victor Hom) 3bebcfd Update: Support generator yields in no constant condition (#8762 ) (Victor Hom) e63935...
HIGHLIGHTS linter.verifyAndFix can now accept a filter function for fixes When using the Node.js API to autofix code, itās sometimes undesirable to autofix every problem at once. For example...
BUG FIXES f307aa0 Fix: ensure configs from a plugin are cached separately (fixes #8792 ) (#8798 ) (Teddy Katz) 0d041e7 Fix: avoid crashing when using baseConfig with extends (fixes #8791 ) (#...
HIGHLIGHTS GLOB-BASED CONFIGURATION Previously, it was not possible to use different ESLint configurations for two different files in the same directory. For example, projects that place test f...
HIGHLIGHTS There are several breaking changes in 4.0.0. Weāve created a migration guide to explain the breaking changes and describe how to upgrade. Seven new rules have been added: array-el...
Note: This version of ESLint is not ready for production use and is provided to gather feedback from the community before releasing the final version. Please let us know if you having any problem...
https://eslint.org/blog/2017/06/eslint-v4.0.0-rc.0-released/
Note: This version of ESLint is not ready for production use and is provided to gather feedback from the community before releasing the final version. Please let us know if you having any problem...
https://eslint.org/blog/2017/05/eslint-v4.0.0-beta.0-released/
Note: This version of ESLint is not ready for production use and is provided to gather feedback from the community before releasing the final version. Please let us know if you having any problem...
https://eslint.org/blog/2017/05/eslint-v4.0.0-alpha.2-released/
Note: This version of ESLint is not ready for production use and is provided to gather feedback from the community before releasing the final version. Please let us know if you having any problem...
https://eslint.org/blog/2017/04/eslint-v4.0.0-alpha.1-released/
Note: This version of ESLint is not ready for production use and is provided to gather feedback from the community before releasing the final version. Please let us know if you having any problem...
https://eslint.org/blog/2017/04/eslint-v4.0.0-alpha.0-released/
HIGHLIGHTS Building on the release of AST selectors in v3.18.0 , no-restricted-syntax now supports custom error messages: { Ā Ā Ā Ā "rules":Ā { Ā Ā Ā Ā Ā Ā Ā Ā "no-restricted-syntax":Ā ", Ā ...
HIGHLIGHTS This release adds support for AST selectors . AST selectors can describe syntax patterns very precisely, using a similar syntax to CSS selectors. Selectors can be used to: simplify th...
BUG FIXES f713f11 Fix: nonblock-statement-body-position multiline error (fixes #8202 ) (#8203 ) (Teddy Katz) 41e3d9c Fix: operator-assignment with parenthesized expression (fixes #8190 ) (#...
HIGHLIGHTS Two new rules were added: no-compare-neg-zero nonblock-statement-body-position Two new methods were added to the SourceCode API for rules: getLocFromIndex and getIndexFromLoc T...
BUG FIXES ff8a80c Fix: duplicated autofix output for inverted fix ranges (fixes #8116 ) (#8117 ) (Teddy Katz) DOCUMENTATION a421897 Docs: fix typo in arrow-parens .md (#8132 ) (Will Chen)...
HIGHLIGHTS This is a summary of some of the notable changes in this version of ESLint. UPDATED TOKEN ITERATOR METHODS This release includes an exciting update for rule authors! Many of the to...
HIGHLIGHTS This is a summary of some of the notable changes in this version of ESLint. NEW RULES One new rule was added: template-tag-spacing FEATURES 09546a4 New: template-tag-spacing ...
BUG FIXES 791f32b Fix: brace-style false positive for keyword method names (fixes #7974 ) (#7980 ) (Teddy Katz) 72d41f0 Fix: no-var autofix syntax error in single-line statements (fixes #79...
HIGHLIGHTS This is a summary of some of the notable changes in this version of ESLint. NEW RULES Two new rules were added: no-multi-assign prefer-promise-reject-errors AUTOFIXING Autofix...
BUG FIXES 3fc4e3f Fix: prefer-destructuring reporting compound assignments (fixes #7881 ) (#7882 ) (Teddy Katz) f90462e Fix: no-extra-label autofix should not remove labels used elsewhere (...
HIGHLIGHTS This is a summary of some of the notable changes in this version of ESLint. NEW RULES One new rule was added: prefer-destructuring AUTOFIXING Autofix support was added to the f...
BUG FIXES dec3ec6 Fix: indent bug with AssignmentExpressions (fixes #7747 ) (#7750 ) (Teddy Katz) DOCUMENTATION 639b798 Docs: Use Object.prototype in examples (#7755 ) (Alex Reardon) B...
BUG FIXES 0ad4d33 Fix: indent regression with function calls (fixes #7732 , fixes #7733 ) (#7734 ) (Teddy Katz) DOCUMENTATION ab246dd Docs: Rules restricting globals/properties/syntax ar...
HIGHLIGHTS This is a summary of some of the notable changes in this version of ESLint. ADDITIONAL APIS This version includes the addition of three new API methods: getRules to linter version ...
BUG FIXES be739d0 Fix: capitalized-comments fatal error fixed (fixes #7663 ) (#7664 ) (Rich Trott) DOCUMENTATION cc4cedc Docs: Fix a typo in array-bracket-spacing documentation (#7667 ) (...
HIGHLIGHTS This is a summary of some of the notable changes in this version of ESLint. NEW RULES Two new rules were added: capitalized-comments require-await MORE AUTOFIXING Autofix supp...
BUG FIXES 0643bfe Fix: correctly handle commented code in indent autofixer (fixes #7604 ) (#7606 ) (Teddy Katz) bd0514c Fix: syntax error after key-spacing autofix with comment (fixes #7603 )...
BUG FIXES 8a0e92a Fix: handle try/catch correctly in no-return-await (fixes #7581 ) (#7582 ) (Teddy Katz) c4dd015 Fix: no-useless-return stack overflow on unreachable loops (fixes #7583 ) (#7...
HIGHLIGHTS This is a summary of some of the notable changes in this version of ESLint. One new rule, no-return-await , was added. no-extra-boolean-cast gained auto-fix functionality. Certain ca...
BUG FIXES 2012258 Fix: incorrect indent check for array property access (fixes #7484 ) (#7485 ) (Teddy Katz) 8a71d4a Fix: no-useless-return false positive on conditionals (fixes #7477 ) (#748...
HIGHLIGHTS This release includes some exciting new features, including a new results formatter and the ability for ESLint to support enhanced parsers! NEW FORMATTER As part of our continuing ...
BUG FIXES 681c78a Fix: comma-dangle was confused by type annotations (fixes #7370 ) (#7372 ) (Toru Nagashima) 7525042 Fix: Allow useless escapes in tagged template literals (fixes #7383 ) (#7...
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. ADDITIONAL PROPERTY ON LINTING RESULTS If youāre using the ESLint Node.js API or writin...
BUG FIXES 3dcae13 Fix: Use the correct location for comma-dangle errors (fixes #7291 ) (#7292 ) (Teddy Katz) cb7ba6d Fix: no-implicit-coercion should not fix ~. (fixes #7272 ) (#7289 ) (Eli W...
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. Though itās a smaller release, it does include the ability to autofix a number of rules! ...
DOCUMENTATION 87625fa Docs: Improve eol-last examples in docs (#7227 ) (Chainarong Tangsurakit) de8eaa4 Docs: class-methods-use-this: fix option name (#7224 ) (Jordan Harband) 2355f8d Docs: ...
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. SUPPORT FOR ES2017 With this release, we support ES2017 syntax natively. To activate ES201...
From the beginning of the project, ESLint has always required issues for every pull request containing code. There were a number of reasons for that, mostly related to how we were triaging and ha...
https://eslint.org/blog/2016/09/changes-to-issues-and-pr-policies/
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. NEW RULES The following new rules were added in this release: prefer-numeric-literals no-...
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. FIX FOR CONFIGURING SCOPED PLUGIN RULES We discovered a significant bug (#6362 ) when usin...
BUG FIXES b9b3446 Fix: sort-keys ignores destructuring patterns (fixes #6896 ) (#6899 ) (Kai Cataldo) DOCUMENTATION 02a00d6 Docs: clarify rule details for no-template-curly-in-string (#69...
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. DEPRECATED RULES In continuing our work towards JSCS compatibility and reviewing the curre...
BUG FIXES 4ca809e Fix: Normalizes messages so all end with a period (fixes #6762 ) (#6807 ) (Patrick McElhaney) c7488ac Fix: Make MemberExpression option opt-in (fixes #6797 ) (#6798 ) (Rich ...
BUG FIXES 46b14cd Fix: ignore MemberExpression in VariableDeclarators (fixes #6795 ) (#6815 ) (Nicholas C. Zakas) DEPENDENCY UPGRADES 510ce4b Upgrade: file-entry-cache@^1.3.1 (fixes #6816...
FEATURES b22eb5c New: no-tabs rule (fixes #6079 ) (#6772 ) (Gyandeep Singh) ENHANCEMENTS 26c85dd Update: merge warnings of consecutive unreachable nodes (fixes #6583 ) (#6729 ) (Toru Naga...
BUG FIXES 565e584 Fix: eslint:all causes regression in 3.1.0 (fixes #6687 ) (#6696 ) (alberto) cb90359 Fix: Allow named recursive functions (fixes #6616 ) (#6667 ) (alberto) 3f206dd Fix: bal...
FEATURES 720686b New: endLine and endColumn of the lint result. (refs #3307 ) (#6640 ) (Toru Nagashima) 8a263ae New: multiline-ternary rule (fixes #6066 ) (#6590 ) (Kai Cataldo) ENHANCEMENT...
When we announced that JSCS was joining ESLint , it was with a stated support period for JSCS of three months. Those three months have now passed and JSCS is now considered fully deprecated. WH...
BUG FIXES 27700cf Fix: no-unused-vars false positive around callback (fixes #6576 ) (#6579 ) (Toru Nagashima) a2cfa1b Fix: Make outerIIFEBody work correctly (fixes #6585 ) (#6596 ) (Nicholas ...
When ESLint began three years ago, it was a much smaller project with a much smaller user base. The project has grown a lot since that time and, in order to help the project scale, weāve invest...
As breaking changes can cause problems for some users, weāve created a migration guide describing the changes in great detail along with the steps you should take to address them. Not all ESLi...
BUG FIXES 434de7f Fix: wrong baseDir (fixes #6450 ) (#6457 ) (Toru Nagashima) 3c9ce09 Fix: Keep indentation when fixing padded-blocks āneverā (fixes #6454 ) (#6456 ) (Ed Lee) 1e185b9 Fix...
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. LAST 2.X RELEASE This is the last planned 2.x release. The next scheduled release is 3.0.0...
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. JSCS COMPATIBILITY We are continuing to work on compatibility with JSCS, and in this relea...
BUG FIXES 03beb27 Fix: no-useless-rename false positives (fixes #6266 ) (#6267 ) (alberto) 113c1a8 Fix: max-statements-per-line false positive at exports (fixes #6264 ) (#6268 ) (Toru Nagashi...
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. JSCS COMPATIBILITY Weāve started our JSCS compatibility work by continuing to add new ru...
BUG FIXES bda5de5 Fix: Remove default parser from CLIEngine options (fixes #6182 ) (#6183 ) (alberto) DOCUMENTATION e59e5a0 Docs: Describe options in rules under Possible Errors part 3 (#...
HIGHLIGHTS This release fixes an issue when using parser other than default one. And a few other minor issue found after the last release. BUG FIXES 9397135 Fix: valid-jsdoc false positive ...
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. NEW RULES This version introduces one new rule: object-property-newline NEW RULE OPTION...
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. IMPROVED AUTOFIX This release features a new version of autofix. Now, when you use the --f...
Iāve believed for a while that once an open source project reaches a certain level of ubiquity, the maintainers have a responsibility to ensure its survival for the good of the community. Over ...
https://eslint.org/blog/2016/04/eslint-joins-the-jquery-foundation/
ENHANCEMENTS 76913b6 Update: Add metadata to existing rules - Batch 3 (refs #5417 ) (Vitor Balocco) fb3c2eb Update: allow template literals (fixes #5234 ) (Jonathan Haines) 5a4a935 Update: A...
ESLint and JSCS started out at roughly the same time, just three weeks apart in 2013. Both teams had a similar idea: leverage the ecosystem of ESTree-compatible tools such as Esprima to create t...
BUG FIXES 161ddac Fix: remove console.dir (fixes #5770 ) (Toru Nagashima) 0c33f6a Fix: indent rule uses wrong node for class indent level (fixes #5764 ) (Paul OāShannessy) DOCUMENTATION ...
ENHANCEMENTS 7aacba7 Update: Deprecate option maximum in favor of max (fixes #5685 ) (Vitor Balocco) 9b73ffd Update: destructuring option of prefer-const rule (fixes #5594 ) (Toru Nagashima) ...
Rules have been at the core of ESLint since the very first release. Weāve gone through several development cycles of rules, first trying to replicate JSHint rules, creating ECMAScript 6 rules a...
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. ROLLING BACK OF BUNDLED DEPENDENCIES In v2.5.0, we started bundling dependencies with ESLi...
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. NODE.JS WITHOUT OPENSSL COMPATIBILITY Previously, the --cache feature was using the Node.j...
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. BABEL-ESLINT COMPATIBILITY FIX The v2.3.0 release introduced a change that broke compatibi...
HIGHLIGHTS Here are some highlights of changes in this release. SUPPORT FOR STRING SEVERITY IN CONFIGS v2.3.0 introduces ability to use strings as severity level in configuration files. Befor...
FEATURES 59e9c5b New: eslint-disable-next-line (fixes #5206 ) (Kai Cataldo) BUG FIXES 2977248 Fix: Do not cache .eslintrc.js (fixes #5067 ) (Nick) 211eb8f Fix: no-multi-spaces conflicts ...
ENHANCEMENTS 0d6850e Update: Allow var declaration at end of block (fixes #5246 ) (alberto) BUG FIXES c9c34ea Fix: Skip computed members in newline-per-chained-call (fixes #5245 ) (Burak ...
In this announcement, we are including all changes from each of the release candidates to make it easier to see what changed from the release candidates to now. As there are a lot of changes, w...
NOTE: This version of ESLint is not ready for production use and is provided to gather feedback from the community before releasing the final version. Please let us know if you having any problem...
https://eslint.org/blog/2016/02/eslint-v2.0.0-rc.1-released/
NOTE: This version of ESLint is not ready for production use and is provided to gather feedback from the community before releasing the final version. Please let us know if you having any problem...
https://eslint.org/blog/2016/02/eslint-v2.0.0-rc.0-released/
NOTE: This version of ESLint is not ready for production use and is provided to gather feedback from the community before releasing the final version. Please let us know if you having any problem...
https://eslint.org/blog/2016/01/eslint-v2.0.0-beta.3-released/
NOTE: This version of ESLint is not ready for production use and is provided to gather feedback from the community before releasing the final version. Please let us know if you having any problem...
https://eslint.org/blog/2016/01/eslint-v2.0.0-beta.2-released/
NOTE: This version of ESLint is not ready for production use and is provided to gather feedback from the community before releasing the final version. Please let us know if you having any problem...
https://eslint.org/blog/2016/01/eslint-v2.0.0-beta.1-released/
NOTE: This version of ESLint is not ready for production use and is provided to gather feedback from the community before releasing the final version. Please let us know if you having any problem...
https://eslint.org/blog/2015/12/eslint-v2.0.0-alpha-2-released/
NOTE: This version of ESLint is not ready for production use and is provided to gather feedback from the community before releasing the final version. Please let us know if you having any problem...
https://eslint.org/blog/2015/12/eslint-v2.0.0-alpha-1-released/
INSTALLATION Since Espree v3.0.0 is a prerelease version, youāll need to install it using the @next tag: $Ā npmĀ installĀ espree@next The @latest tag is still on the latest v2.x version of ...
BUG FIXES Fix: Add for-of to curly rule (fixes #4571 ) (Kai Cataldo) Fix: Ignore space before function in array start (fixes #4569 ) (alberto) DOCUMENTATION Docs: Update strict rule docs (f...
INSTALLATION Since Espree v3.0.0 is a prerelease version, youāll need to install it using the @next tag: $Ā npmĀ installĀ espree@next The @latest tag is still on the latest v2.x version of ...
BUG FIXES Fix: lines-around-comment with multiple comments (fixes #3509 ) (alberto) Fix: Bugfix for eqeqeq autofix (fixes #4540 ) (Kevin Partington) Fix: Add for-in to curly rule (fixes #4436 )...
NOTE: This is the last scheduled release prior to v2.0.0. In the coming weeks, we will be focusing specifically on v2.0.0 and will be regularly releasing alpha versions for testing. These alpha v...
BUG FIXES Fix: Revert freezing context object (refs #4495 ) (Nicholas C. Zakas)
HIGHLIGHTS Here are some highlights of changes in this release. NEW RULES no-case-declarations BETTER NPM 3 SUPPORT Due to the changes in dependency management in npm 3, some users were ...
HIGHLIGHTS Here are some highlights of changes in this release. NEW RULES no-arrow-condition arrow-body-style AUTOFIXING The following rules have been updated to include autofixing: com...
BUG FIXES Fix: Support comma-first style in key-spacing (fixes #3877 ) (Brandon Mills) Fix: no-magic-numbers: variable declarations (fixes #4192 ) (Ilya Panasenko) Fix: Support ES6 shorthand in...
BUG FIXES Fix: comma-dangle confused by parens (fixes #4195 ) (Nicholas C. Zakas) Fix: no-mixed-spaces-and-tabs (fixes #4189 , fixes #4190 ) (alberto) Fix: no-extend-native disallow using Objec...
HIGHLIGHTS Here are some highlights of changes in this release. NEW RULES no-empty-pattern no-magic-numbers EXTENDING JAVASCRIPT CONFIGS Youāve always been able to use npm packages in...
BUG FIXES Fix: id-match schema (fixes #4155 ) (Nicholas C. Zakas) Fix: no-magic-numbers should ignore parseInt (fixes #4167 ) (Nicholas C. Zakas) Fix: indent param function fix (fixes #4165 , f...
HIGHLIGHTS Here are some highlights of changes in this release. AUTOFIXING OF MORE RULES ESLint v1.6.0 introduces several more autofixing rules to use with the --fix command line argument. In...
BUG FIXES Fix: valid-jsdoc fix for param with properties (fixes #3476 ) (Gyandeep Singh) Fix: valid-jsdoc error with square braces (fixes #2270 ) (Gyandeep Singh) Fix: space-before-keywords had...
HIGHLIGHTS Here are some highlights of changes in this release. AUTOFIXING OF MORE RULES ESLint v1.5.0 introduces several more autofixing rules to use with the --fix command line argument. In...
BUG FIXES Fix: Ensure **/node_modules works in ignore files (fixes #3788 ) (Nicholas C. Zakas) Fix: Ensure ./ works correctly with CLI (fixes #3792 ) (Nicholas C. Zakas)
BUG FIXES Fix: Directory ignoring should work (fixes #3812 ) (Nicholas C. Zakas) Fix: jsx-quotes exception for attributes without value (fixes #3793 ) (Mathias Schreck)
BUG FIXES Fix: CLIEngine default cache parameter name (fixes #3755 ) (Daniel G. Taylor) Fix: Glob pattern from .eslintignore not applied (fixes #3750 ) (Burak Yigit Kaya) Fix: Skip JSDoc from N...
HIGHLIGHTS This release contains some exciting new features! AUTOFIXING OF SOME RULES ESLint v1.4.0 introduces the --fix command line argument to automatically fix some rules. In this first r...
BUG FIXES Fix: indent to not crash on empty files (fixes #3570 ) (Gyandeep Singh) Fix: Remove unused config file (fixes #2227 ) (Gyandeep Singh)
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. USING ASTS WITH THE NODE.JS API A long-requested feature was finally added for those using...
BUG FIXES Fix: ākey-spacingā crashes eslint on object literal shorthand properties (fixes #3463 ) (Burak Yigit Kaya) Fix: object-curly-spacing shows the incorrect column for opening brace (...
FEATURES New: block-spacing rule (fixes #3303 ) (Toru Nagashima) New: no-dupe-class-members rule (fixes #3294 ) (Toru Nagashima) New: prefer-arrow-callback rule (fixes #3140 ) (Toru Nagashima) ...
FEATURES New: Added grep-style formatter (fixes #2991 ) (Nobody Really) New: Jest environment (fixes #3212 ) (Darshak Parikh) ENHANCEMENTS Update: add new multi-or-nest option for the curly...
In this announcement, we are including all changes from each of the release candidates to make it easier to see what changed from the release candidates to now. As there are a lot of changes, w...
NOTE: This version of ESLint is not ready for production use and is provided to gather feedback from the community before releasing the final version. Please let us know if you having any problem...
NOTE: This version of ESLint is not ready for production use and is provided to gather feedback from the community before releasing the final version. Please let us know if you having any problem...
NOTE: This version of ESLint is not ready for production use and is provided to gather feedback from the community before releasing the final version. Please let us know if you having any problem...
BUG FIXES Fix: no-redeclare checks module scopes (fixes #2903 ) (Toru Nagashima) Fix: add destructuring support to comma-dangle rule (fixes #2911 ) (Mathias Schreck) Fix: Added missing export s...
CREATION OF 0.X BRANCH The 0.x branch on the public repo is a record of the last release of the 0.x version tree. The master branch will be the work for 1.0.0. If bug fixes or other changes are ...
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. 1.0.0 WORK BEGINNING 0.24.0 is the last planned release prior to 1.0.0. We focused mostly ...
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. CONFIGURATION VALIDATION The biggest feature of this release is addition of rules configur...
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. NEW RULES We added 3 new rules to ESLint this release: lines-around-comment - Enforces emp...
BUILD-RELATED Build: Remove release notes auto-publish (refs #2640 ) (Ilya Volodin)
BUG FIXES Fix: one-var exception for ForStatement.init (fixes #2505 ) (Brandon Mills) Fix: Donāt throw spurious shadow errors for classes (fixes #2545 ) (Jimmy Jia) Fix: valid-jsdoc rule to s...
BUG FIXES Fix: --init indent setting (fixes #2493 ) (Nicholas C. Zakas) Fix: Allow comment before comma for comma-spacing rule (fixes #2408 ) (Gyandeep Singh) Fix: dot-location should use corre...
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. CONFIG INITIALIZATION Setting up a configuration file for the first time can be difficult,...
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. UPDATING RULES FOR ECMASCRIPT 6 Weāre still getting a fair number of bug reports related...
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. MORE ECMASCRIPT 6 FIXES This release addresses the root cause of several issues related to...
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. MORE CHANGES TO JSX/REACT HANDLING Following up on the removal of React semantics in 0.17....
BUG FIXES Fix: block-scoped-var to work with classes (fixes #2048 ) (Nicholas C. Zakas) Fix: block-scoped-var to work with destructuring (fixes #2059 ) (Nicholas C. Zakas) Fix: Exempt from no-o...
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. CHANGES TO JSX/REACT HANDLING In this release, we made the decision to stop supporting Rea...
BUG FIXES Fix: Donāt warn about parens around yield (fixes #1981 ) (Nicholas C. Zakas) Fix: Ensure globalReturn isnāt on when node:false (fixes #1995 ) (Nicholas C. Zakas) Fix: Global block...
BUG FIXES Fix: Ensure all export nodes are traversable (fixes #1965 ) (Nicholas C. Zakas) Fix: Ensure class names are marked as used (fixes #1967 ) (Nicholas C. Zakas) Fix: Node.js scoping in b...
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. COMPLETE ECMASCRIPT 6 SUPPORT 0.16.0 adds more language options for parsing JavaScript, in...
BUG FIXES Fix: Allow globalReturn in consistent-return (fixes #1868 ) (Brandon Mills) Fix: check all semicolons in no-space-before-semi (fixes #1885 ) (Mathias Schreck) Fix: Refactor comma-spac...
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. MORE LANGUAGE OPTIONS 0.15.0 adds more language options for parsing JavaScript, including:...
BUG FIXES Fix: Exit code should be 1 for any number of errors (fixes #1795 ) (Nicholas C. Zakas) Fix: Check indentation of first line (fixes #1796 ) (Nicholas C. Zakas) Fix: strict rules should...
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. MORE LANGUAGE OPTIONS 0.14.0 adds more language options for parsing JavaScript, including:...
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. MORE ECMASCRIPT 6 SUPPORT 0.13.0 adds more support for several ECMAScript 6, including: Te...
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. PARTIAL ECMASCRIPT 6 SUPPORT 0.12.0 introduces support for several ECMAScript 6 features, ...
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. NEW PARSER 0.11.0 is the first version of ESLint to run on our own parser, Espree . Espree...
Since ESLintās very first release, weāve built on top of the open source Esprima parser. Doing so allowed us to get a drop-in, production-ready parser on which we could built the linter of o...
BUG FIXES Fix: detect forā¦in in no-loop-func (fixes #1573 ) (Greg Cochard) Fix: operator-assignment addition is non-commutative (fixes#1556 ) (Brandon Mills) ENHANCEMENTS Update: simplify...
BUG FIXES Fix: comma-spacing and comma-style to work with array literals (fixes #1492 ) (Nicholas C. Zakas) Fix: comma-spacing has false positives when parenthesis are used (fixes #1457 ) (Jamu...
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. COMMAND LINE INTERFACE The CLI for ESLint has been updated, including some breaking change...
Weāve been working on #1291 for a while to see how we could add support for ECMAScript 6 and JSX into ESLint. While we were investigating adding ES6 support, we were also getting a fair amount...
BUG FIXES Fix: ! negates .eslintignore patterns (fixes #1093 ) (Brandon Mills) Fix: ā.mdā to ā.htmlā with anchors (fixes #1415 ) (Nate-Wilkins) Fix: add severity flag for ignored file w...
BUG FIXES Fix: plugins without rulesConfig causes crash (fixes #1388 ) (Mathias Schreck) DOCUMENTATION Docs: fix link on governance model (azu)
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. PLUGINS Plugins can now be shipped with a default configuration specified. For more inform...
BUG FIXES Fix: load .eslintrc from HOME (fixes #1262 ) (Beau Gunderson) Fix: Load .eslintrc in directory with $HOME as an ancestor (fixes #1266 ) (Beau Gunderson) Fix: strict should check funct...
BUG FIXES Fix: Ensure exit code is 1 when thereās a syntax error (fixes #1239 ) (Nicholas C. Zakas) Fix: vars-on-top directive support (fixes #1235 ) (Michael Ficarra) Fix: Avoid mutating nod...
HIGHLIGHTS This is a summary of the major changes you need to know about for this version of ESLint. PLUGINS This is the first version of ESLint that formally supports shareable plugins. Curr...
BUG FIXES Fix: Transform envs option to object in Config (Fixes #1064) (jrajav) DOCUMENTATION Docs: Fix ālintingingā typo and ref links (Tom Vincent)
BUG FIXES Update: Address code review comment for strict rule (refs #1011 ) (Nicholas C. Zakas) Fix: Avoid double warnings for strict rule (fixes #1011 ) (Nicholas C. Zakas) Fix: Check envs for...
BUG FIXES Fix: no-mixed-spaces-and-tabs incorrectly flagging multiline comments (fixes #1055 ) (Nicholas C. Zakas) Fix: new-cap error that throws on non-string member (fixes #1053 ) (Nicholas C...
Due to npmās security restrictions, we arenāt allowed to push a new 0.7.0 to the npm registry, which is why this version is 0.7.1. HIGHLIGHTS This is a summary of the major changes you nee...
WHATāS CHANGING Up until this point, formatters were passed a config object that contained the calculated severity for each rule (error or warning) so that this information could be output. Wi...
DEPRECATION NOTICES REMINDER: The 0.6.x ESLint will be the last to support the deprecated JSON format for .eslintignore. This was deprecated in 0.5.1 and will be removed in 0.7.0. Please change...
DEPRECATION NOTICES The 0.6.x ESLint will be the last to support the deprecated JSON format for .eslintignore. This was deprecated in 0.5.1 and will be removed in 0.7.0. Please change your .esl...
DEPRECATION NOTICES REMINDER: The 0.6.x ESLint will be the last to support the deprecated JSON format for .eslintignore. This was deprecated in 0.5.1 and will be removed in 0.7.0. Please change...
DEPRECATION NOTICES With this release, we are deprecating the JSON format for .eslintignore in favor of a plain-text format. The change was made in a backwards-compatible way, but JSON support ...
Special thanks to Brandon Mills and George Zahariev for their working on making the CLI even more awesome, and Michael Ficarra for his help and advice on improving runtime performance. BREAKING...
BREAKING CHANGES There are no breaking changes in this release. COMPLETE CHANGELOG The following is the complete list of changes in this version: Build: Add perf check into Travis build to be...
BREAKING CHANGES There are no breaking changes in this release. COMPLETE CHANGELOG The following is the complete list of changes in this version: Fix no-used-vars to report FunctionExpression...
BREAKING CHANGES There are no breaking changes in this release. COMPLETE CHANGELOG The following is the complete list of changes in this version: fixes #682 : rewrite no-constant-condition ru...
BREAKING CHANGES There are no breaking changes in this release. COMPLETE CHANGELOG The following is the complete list of changes in this version: fixes #651 : disable no-catch-shadow rule in ...
CONFIGURATION FILES Configuration files can now be written in YAML. This includes .eslintrc files. All configuration files can be in either JSON or YAML format, no special indicator of the form...
In previous versions of ESLint, it was possible to use JavaScript files as configuration files on the command line, such as: eslintĀ -cĀ config.jsĀ file-to-lint.js Configuration files written ...
https://eslint.org/blog/2014/01/breaking-change-config-file/
CONFIGURATION FILES BREAKING CHANGE: Removed the ability to use JavaScript as a configuration file format (more info ) Added the ability to use JavaScript-style comments in configuration files....
Up until this point, the default formatter was the ācompactā formatter, which outputs data such as: foo.js:Ā lineĀ 5,Ā colĀ 10,Ā ErrorĀ -Ā UnexpectedĀ foo.Ā (foo) foo.js:Ā lineĀ 6,Ā colĀ 11...