March 2021 (version 1.46.0)
Welcome to the new DeepScan updates. We skipped February release due to the long Lunar New Year Holidays. 2021 is the year of ox. The world is growing and recovering slowly. Let's work hard and stay strong like an ox then we will succeed eventually as oxen do.
Thank you for your continual love and support!
New Rules
The following rules are introduced:
- FUTILE_REGEXP_TEST - Do not use
RegExp.prototype.test()
on always matching regular expression - MULTIPLE_RESOLVE_IN_PROMISE_EXECUTOR - Do not call
resolve
orreject
multiple times in aPromise
executor - PROMISE_REJECT_FALL_THROUGH - Do not continue execution after
reject
in aPromise
executor
Analysis Improvements
- Support TypeScript 4.2 abstract constructor signature
- Improve analysis precision of closure variables
- Extend
MISUSED_ITERATOR
to detectlength
property accesses
Bug Fixes
- Analyzer may abnormally terminate when a function declaration is used directly as an
if
body - Analyzer may abnormally terminate when duplicate variables exist inside a function declared at
case
body - Analyzer may abnormally terminate when ESLint
no-multiple-empty-lines
is enabled and lines containing just spaces exist at the end of a file - Syntax errors are not reported for non-declrations following TypeScript
export declare