Standard v15.0.0 Release Notes
Release Date: 2020-10-21 // over 3 years ago-
We're super excited to announce
standard
15!๐ As with every new major release, there are lots of new rules in 15.0.0 designed ๐ to help catch bugs and make programmer intent more explicit. This release brings ๐ support for ES 2021, the latest version of the ECMAScript specification, as well ๐ as many quality-of-life improvements, including ESLint v7.
โฌ๏ธ When you upgrade, consider running
standard --fix
to automatically format your code to match the newly added rules.๐ โค๏ธ If you enjoy StandardJS and want to support future releases, check out Feross's GitHub Sponsors page.
๐ New features
- ๐ Support ES 2021, the latest version of the ECMAScript specification, which includes support for logical assignment operators and numeric separators #1551
- ๐ Support ES 2020 features such as optional chaining, the nullish coalescing operator,
export * as ns from 'source'
, andimport.meta
. - ๐ Support global variables from ES 2017 (
Atomics
,SharedArrayBuffer
), ES 2020 (BigInt
,BigInt64Array
,BigUint64Array
,globalThis
), and ES 2021 (FinalizationRegistry
,WeakRef
). #1436 #1557 eslint-config-standard/#156 - ๐ The documentation is now available in Indonesian ๐ฎ๐ฉ! #1544
- Thanks to @yoga1234 for the excellent work!
- Other community contributed translations exist in Spanish, French, Italian, Japanese, Korean, Portuguese, Simplified Chinese, and Taiwanese Mandarin.
- More translations are always welcome!
๐ Changed features
- ๐ฅ BREAKING: Node.js 8 is no longer supported
- Node.js 8 is EOL and will no longer be receiving security updates.
- To prevent breaking CI for projects which still support Node 8,
standard
silently passes when run by an unsupported version of Node
- โก๏ธ Update
eslint
from~6.8.0
to~7.11.0
๐ New rules
โ (Estimated % of affected standard users, based on test suite in parens)
- ๐ Require indentation for values of ternary expressions (indent) #927 [4%]
- ๐ Enforce newlines between operands of ternary expressions if the expression spans multiple lines (multiline-ternary) #1558 [3%]
- ๐ Disallow loops with a body that allows only one iteration (no-unreachable-loop) #1556 [0%]
- ๐ Disallow useless backreferences in regular expressions (no-useless-backreference) #1554 [0%]
- ๐ Enforce default clauses in switch statements to be last (default-case-last) #1553 [0%]
- ๐ Disallow Number Literals That Lose Precision (no-loss-of-precision) #1552 [0%]
๐ Changed rules
- ๐ Relax rule: Allow function declarations in nested blocks #1406
- ๐ Relax rule: Removed redundant
no-negated-in-lhs
rule, already enforced byno-unsafe-negation
eslint-config-standard/#160