Closed
Description
Planned release date: September 1, 2016. (approx. 45 days from the date of this issue)
New features
- Upgrade to ESLint v3 (http://eslint.org/docs/user-guide/migrating-to-3.0.0) (Use eslint v3 #565)
- BREAKING: Drop support for node < 4 (this was a decision made by the ESLint team)
- Expose ESLint's
--fix
command line flag (Bring --format back #540) (add option/flag to invoke eslint's --fix feature standard-engine#107)- Lightweight, no additional dependencies, fixes dozens of rules automatically
New rules
(Estimated % of affected standard users, based on test suite in parens)
- Enforce placing object properties on separate lines (object-property-newline) (New rule: object-property-newline #524) (2%)
- Require block comments to be balanced (spaced-comment "balanced") (Require block comments to be balanced #572) (2%)
- Disallow constant expressions in conditions (no-constant-condition) (New rule: no-constant-condition #563) (1%)
- Disallow renaming import, export, and destructured assignments to the same name (no-useless-rename) (New rule: no-useless-rename #537) (0%)
- Disallow spacing between rest and spread operators and their expressions (rest-spread-spacing) (New rule: Disallow spacing between rest and spread operators and their expressions (rest-spread-spacing) #567) (0%)
- Disallow the Unicode Byte Order Mark (BOM) (unicode-bom) (New rule: unicode-bom #538) (0%)
- Disallow assignment to native objects/global variables (no-global-assign) (Disallow assignment to native objects or read-only global variables (no-global-assign) #596) (0%)
- Disallow negating the left operand of relational operators (no-unsafe-negation) (disallow negating the left operand of relational operators (no-unsafe-negation) #595) (0%)
- Disallow template literal placeholder syntax in regular strings (no-template-curly-in-string) (Disallow template literal placeholder syntax in regular strings (no-template-curly-in-string) #594) (0%)
- Disallow tabs in file (no-tabs) (Disallow tabs in file (no-tabs) #593) (0%)
Changed rules
-
Enforce use of double quotes in JSX attributes (jsx-quotes) (1%, but likely more in private repos)BREAKING: This rule was changed to reflect the way the vast majority of developers quote HTML attributes (both in plain HTML and in the React community) (Change jsx-quotes to reflect usage in React? eslint-config-standard#27)- This rule was re-evaluated. See Release proposal: standard v8 #564 (comment)
- Relax rule: Allow template literal strings (backtick strings) to avoid escaping (Allow backtick strings to avoid escaping single or double quotes #421)
- Relax rule: Do not enforce spacing around * in generator functions (Release proposal: standard v8 #564 (comment))
- This is a temporary workaround for
babel
users who use async generator functions.
- This is a temporary workaround for
Internal changes
- Migrate to new ESLint rule format for plugins (Migrate to ESLint's new rule format eslint-plugin-standard#11) (bumps deps; use ESLint 3 rule format eslint-community/eslint-plugin-promise#19)
Metadata
Assignees
Type
Projects
Status
Done