December 2018 (version 1.20.0)
1.20.0 Update
Hi!
This was quite a year. We like to appreciate everyone who has visited and used us these far.
Wishing you a happy and exciting new year! Thank you.
We will keep up the hard work as to provide top notch services for JavaScript.
Please kindly go ahead with the highlights for the latest release.
Release Summary
This version includes a number of updates that we hope you've found some of them helpful.
The key highlights are:
- New rules - New rules for common pitfalls.
- Improved rules - Rules have been improved for more coverage and some false alarms are fixed.
- Extended language support - We've added support for useful language features in ESNext and Flow.
New Rules
New rules introduced in this release:
- USELESS_CATCH - Do not just rethrow the caught exception in the
catch
clause
Improved Rules
The following rules have been improved:
- Extend REACT_STATIC_PROPERTY_IN_INSTANCE coverage for
defaultProps
anddisplayName
properties - Extend UNDEFINED_IMPORT coverage for namespace imports
Extended Language Support
We have added support for useful language features currently in ESNext and Flow.
- Support private instance methods and private static fields
- Support Flow inexact object type syntax
Miscellaneous
- Support for React v16.6 like
memo()
andlazy()
- Disallow using
_
as Flow type identifier because it is reserved for implicit instantiation (SYNTAX_ERROR)
Bug Fixes
- A false alarm for REACT_EVENT_HANDLER_INVALID_THIS occurs when autobind decorators are used
- A false alarm for STRICT_MODE_ASSIGN_TO_READONLY_VAR occurs when ES6 import and TypeScript namespace has the same name
- A false alarm for STRICT_MODE_INVALID_THIS may occur at
bind()
calls - A false alarm for SYNTAX_ERROR occurs for the optional or rest element of TypeScript tuple type
- A false alarm for SYNTAX_ERROR occurs when destructuring is used in function type
- Alarm message is reversed between getter/setter for GETTER_SETTER_RECURSION