Commit Graph

26317 Commits

Author SHA1 Message Date
Alex T 6101fbca39 fix(40150): use parameter name for a Promise callback function (#40191) 2020-09-08 13:44:38 -07:00
Alex T 15084465b7 fix(40222): fix crash on using destructuring in a catch clause (#40240) 2020-09-08 11:49:45 -07:00
Orta Therox fa89ce6158 Remove assignability cases in getNarrowedType + an isArray improvement for readonly arrays (#39258)
* Explore using a different isArray declaration

* Add tests and the new isArray definition

* Baseline updates

* Upda the isArray type
2020-09-08 14:43:48 -04:00
csigs 68d4505679 LEGO: check in for master to temporary branch. 2020-09-08 18:11:20 +00:00
Wesley Wigham 7838b0172a Add errors when providing type arguments for intrinsic JSX tags (#40293) 2020-09-08 10:29:15 -07:00
Anders Hejlsberg cea1cfb82e Consistently error when rest element isn't last in tuple type (#40254)
* Consistently error when rest element isn't last in tuple type

* Add regression test

* Accept new baselines

* Stricter circular recursion check in type inference

* Revert "Stricter circular recursion check in type inference"

This reverts commit 80e6df6230.

* Revert "Accept new baselines"

This reverts commit 355706dadc.

* Accept new baselines
2020-09-08 07:14:16 -10:00
cherryblossom000 2ef393ba7d Add full stops in diagnostic messages (#40165)
* Add full stops in diagnostic messages (fixes #37753)

* Accept baselines

* Fix whitespace
2020-09-08 08:47:52 -07:00
Wesley Wigham e5fd0dd1e3 Allow private symbols to be control flow narrowed (#39978)
* Allow private symbols to be control flow narrowed

* Add test with narrowing of inferred control flow type for completeness

* Reformat long line
2020-09-05 02:48:45 -07:00
Wesley Wigham 155610e114 Better support class instances assigned to the module object for JS declarations (#40037)
* Better support class instances assigned to the module object for JS declarations

* Extract constant
2020-09-05 02:23:12 -07:00
Alexander T 09d68efae1 fix(28516): forbid using async modifier with the abstract modifier (#39963) 2020-09-04 14:59:53 -07:00
Andrew Branch f6f2d36ee3 Add optionalReplacementSpan to completions response (#40347)
* Add optionalReplacementRange to completions response

* Get the name right

* Fix unit tests

* Fix comment typo

* Fix comment typo

* Baseline
2020-09-04 13:09:52 -07:00
Alexander T 8384018e68 fix(26141): show completions for string parenthesized types (#39697) 2020-09-04 12:15:16 -07:00
Eric Anderson 79f919e8f5 Fixes stack overflow when exporting a lot in commonjs (#38994)
* Fixes stack overflow when exporting a lot in commonjs

Fixes #38691

* Add missing test files
2020-09-04 09:01:59 -07:00
ExE Boss 237b6f61f6 fix(lib/es2015): Remove Reflect.enumerate(…) (#38967) 2020-09-04 08:52:34 -07:00
Ron Buckton d5a646eb66 Remove optionality for Promise resolve callback (#39817) 2020-09-03 17:21:53 -07:00
Andrew Branch 8ffb7f083d Reprioritize cross-project module specifier suggestions for auto-import (#40253)
* Add test

* Suggest `paths` module specifiers even when a node_modules path was available

* Fix some tests

* Fix remaining tests

* Add comments
2020-09-03 14:00:06 -07:00
Alexander T db5f519514 fix(31126): show completions in nested namespace name (#39663) 2020-09-03 13:32:03 -07:00
Ron Buckton d89635381a Add support for vscode-js-debug's customDescriptionGenerators (#40308) 2020-09-02 20:05:50 -07:00
Alexander T 38cedc5b5f fix(39410): don't remove variables with type definition during converting named export to default (#39505) 2020-09-02 17:00:43 -07:00
Andrew Branch 838a5e6044 Fix call hierarchy item serialization and server tests (#40348) 2020-09-02 11:34:14 -07:00
Andrew Casey ef1481c8a4 Correct bottoming-out tracing for recursiveTypeRelatedTo 2020-09-01 16:46:07 -07:00
Nathan Shively-Sanders b0011feee1 Checkjs implies allowjs (#40275)
* Passing --checkJs always sets --allowJS

Even if you have `"allowJs": false`. This is not a useful combination.

Changing this makes the compiler more friendly and easier to describe.

* only set allowjs if not explicitly set

* remove stray newline

* restore bad config error

* use an accessor function instead
2020-09-01 10:16:08 -07:00
Nathan Shively-Sanders d572dcb272 Fix crash intersecting dynamic import w/esModuleInterop (#40249)
* Fix crash intersecting dynamic import w/esModuleInterop

The dynamic import shim creates a symbol without some properties that
the intersection-creating code assumes are present as of #38673.

This PR adds the smallest possible set of properties to avoid the crash.
I'm not sure what others would be good to add.

* Use symbol's declarations instead

* Fix getResolvedMembersOrExportsOfSymbol instead

* comment from code review
2020-09-01 09:10:36 -07:00
Nathan Shively-Sanders 378083fcec Nested assignment to a require alias isn't a declaration (#40186)
This is not something we can type correctly, and doesn't work in
Typescript either. Better to ignore it in JS.
2020-09-01 08:20:56 -07:00
csigs 42164e91d9 LEGO: check in for master to temporary branch. 2020-09-01 06:11:11 +00:00
Andrew Branch 7a0f603b11 Fix extract symbol crash on unterminated literals; don’t offer to extract export = ... (#40272)
* Don’t offer to extract export assignment

* Terminate unterminated literals when extracting them

* Add test with regular expression ending in backslash

* Add test for string literal ending in backslash

* Remove unused parameter default
2020-08-31 14:17:09 -07:00
Andrew Branch bfb00eb164 Fix misplaced comma in auto imported specifier (#40273) 2020-08-31 10:54:53 -07:00
csigs 2faf505cfd LEGO: check in for master to temporary branch. 2020-08-29 18:11:10 +00:00
Alexander T 01362a3ac1 feat(part of 40169): add spelling suggestion/quick fix for module/namespace exported members (#40211) 2020-08-29 01:01:06 -07:00
Andrew Casey 36489ff5c6 Add instantaneous events when depth limits are hit 2020-08-28 15:51:52 -07:00
Ron Buckton 10fb9c9381 Treat trailing 'void' as optional for assignability (#40231) 2020-08-28 09:12:09 -07:00
Ryan Cavanaugh b969b58399 Use a correct Object.entries polyfill (#40268)
* Use a correct Object.entries polyfill

Fixes #40243

* Update src/compiler/core.ts

Co-authored-by: Daniel Rosenwasser <DanielRosenwasser@users.noreply.github.com>

* Added parentheses, DANIEL.

Co-authored-by: Daniel Rosenwasser <DanielRosenwasser@users.noreply.github.com>
2020-08-28 09:09:55 -07:00
Alexander T fa5e9807e8 fix(40010): add outlining for comments before variables statements (#40016) 2020-08-27 16:29:05 -07:00
csigs 3002d694d2 LEGO: check in for master to temporary branch. 2020-08-27 18:11:06 +00:00
Josh Goldberg 0298033db7 Specified error diagnostic for invalid variable names (#40105)
* Specified error diagnostic for invalid variable names

* Use callback directly, and isKeyword
2020-08-27 10:58:12 -07:00
Wesley Wigham 4dd9f69866 Disable diagnostic consistency checking for large tests (#40280) 2020-08-27 00:44:18 -07:00
csigs 67d7ece526 LEGO: check in for master to temporary branch. 2020-08-27 06:11:07 +00:00
csigs 5ee2d52cb3 LEGO: check in for master to temporary branch. 2020-08-27 00:11:33 +00:00
Eli Barzilay 746bdb7946 Fix getContextualTypeForBindingElement for arrays
When handling an array type, the lookup should use the position index
instead of the identifier name.

Also uncomment the tests in the `staticFieldWithInterfaceContext.ts`
test which failed because of this bug.

Fixes #40158.
2020-08-26 16:28:50 -04:00
csigs 669c4153c0 LEGO: check in for master to temporary branch. 2020-08-26 18:11:08 +00:00
csigs 4170007ed3 LEGO: check in for master to temporary branch. 2020-08-26 00:11:49 +00:00
Kyℓe Hensel c5446d1a47 don't emit "unused @ts-expect-error" in unchecked js files (#40046)
* don't emit unused ts-expect-error in unchecked js files

* simplify code
2020-08-25 11:04:23 -07:00
csigs 41349977ea LEGO: check in for master to temporary branch. 2020-08-25 06:11:11 +00:00
Nathan Shively-Sanders 4aadd5af41 Fix commonjs require of ES export (#40221)
The commonjs-specific code for resolving access expressions on `require`
assumes a fake commonjs export. For real exports, it needs to call
resolveSymbol since it's outside the normal alias-resolving
infrastructure.
2020-08-24 12:37:25 -07:00
Alexander T 2dd7a4bf93 fix(31046): add new diagnostic message for incompatible constructor signature (#40073) 2020-08-22 13:26:13 -07:00
Andrew Casey 7b40895b29 Record the recursion ID of each type, if available 2020-08-21 17:39:03 -07:00
Andrew Casey 00804d8aa6 Trace structuredTypeRelatedTo, rather than recursiveTypeRelatedTo 2020-08-21 17:07:13 -07:00
Andrew Casey a0479da1e5 Revert System changes and consume fs directly 2020-08-21 17:07:13 -07:00
Andrew Casey 5d60972ef4 Trace key operations
Produce output in Chrome's event tracing format so that it can be viewed
in Chrome/Edge.
2020-08-21 17:07:12 -07:00
Alexander T 9569198df6 fix(25770): add diagnostic message for the possible mapped type used as an index (#39973) 2020-08-21 10:42:48 -07:00