* Update LKG
* Update version
* Update LKG
* Skip overloads with too-short function parameters
If the parameter of an overload is a function and the argument is also a
function, skip the overload if the parameter has fewer arguments than
the argument does. That overload cannot possibly apply, and should not
participate in, for example, contextual typing.
Example:
```ts
interface I {
(a: number): void;
(b: string, c): void;
}
declare function f(i: I): void;
f((x, y) => {});
```
This code now skips the first overload instead of considering.
This was a longstanding bug but was only uncovered now that more
functions expressions are context sensitive.
* Test skip overloads w/too-short function params
1. Update changed baseline.
2. Add a new test with baseline.
* Minor style improvements
* Ignore optionality when skipping overloads
* Do not use contextual signatures with too few parameters
* isAritySmaller runs later: getNonGenericSignature
* rewrite void-returning statements in constructors that capture result of super call (#11868)
* rewrite void-returning statements in constructors that capture result of super call
* linter
* Update LKG
* Fix emit inferred type which is a generic type-alias both fully and partially fill type parameters
* Add tests and baselines
* Skip trying to use alias if there is target type
* Update baselines
* Add diagnostics to remind adding tsconfig file for certain external project (#11932)
* Add diagnostics for certain external project
* Show tsconfig suggestion
* fix lint error
* Address pr
* fix comment
* Update error message
* Flag for not overwrite js files by default without generating errors (#11980)
* WIP
* Properly naming things
* refactor
* apply the option to all files and check out options
* Fix typo
* Update LKG
* lockLinter
* use local registry to check if typings package exist (#12014) (#12032)
use local registry to check if typings package exist
* Add test for https://github.com/Microsoft/TypeScript/pull/11980 (#12027)
* add test for the fix for overwrite emitting error
* cr feedback
* enable sending telemetry events to tsserver client (#12034) (#12051)
enable sending telemetry events
* Update LKG
* Reuse subtree transform flags for incrementally parsed nodes (#12088)
* Update LKG
* Update version
* Update LKG
* Do not emit "use strict" when targeting es6 or higher or module kind is es2015 and the file is external module
* Add tests and baselines
* [Release 2.1] fix11754 global augmentation (#12133)
* Exclude global augmentation from module resolution logic
* Address PR: check using string literal instead of NodeFlags.globalAugmentation
* Remove comment
* add es2017.string.d.ts for String.prototype.{padStart,padEnd}
* append es2017.string.d.ts into es2017.d.ts
* add es2017.string into commandLineParser
* append es2017.string into error message for unit tests of commandLineParser
* append es2017.string into Gulpfile
* append es2017.string into Jakefile
Previously array destructuring inside an object destructuring with an
object rest would downlevel the array destructuring to ES5. This breaks
if the code that targets ES2015 is using iterators instead of arrays
since iterators don't support [0] or .slice that the ES5 emit uses.