Commit graph

20868 commits

Author SHA1 Message Date
Nathan Shively-Sanders 1068ee105d Test:inference to self-referential mapped type
From a self-referential type.
2017-11-30 09:40:43 -08:00
Andy 43a35bad2e
Miscellaneous fixes to avoid duplicate completions (#20349)
* Miscellaneous fixes to avoid duplicate completions

* Move typeHasCallOrConstructSignatures to utility
2017-11-30 09:36:17 -08:00
Nathan Shively-Sanders b1316e589e Cut off inference for recursive mapped types
Previously, when inferring to a self-referential (or otherwise recursive)
homomorphic mapped type from a source type that also has recursive
references, type inference would enter infinite recursion.

Now there is a more complex stack for mapped type inference. It mirrors
the existing symbolStack but (1) includes the source type and (2) is
passed through inferTypeForHomomorphicMappedType, which is actually
called outside of inferTypes, and so restarts the symbolStack cache
every time.
2017-11-30 09:33:05 -08:00
csigs 192fabf89c
LEGO: Merge pull request 20368
LEGO: Merge pull request 20368
2017-11-30 09:10:36 -08:00
csigs 224ffdc092 LEGO: check in for master to temporary branch. 2017-11-30 17:10:15 +00:00
Andy 56a046ddf4
installTypesForPackage refactor: Trigger even if resolved to a ".js" file (#20353)
* installTypesForPackage refactor: Trigger even if resolved to a ".js" file

* Use `extensionIsTypeScript`
2017-11-30 08:41:15 -08:00
Andrew Casey d7da7d48d3 Update affected fourslash test 2017-11-29 18:27:56 -08:00
Andrew Casey 011b567918 Don't offer to prepend an underscore to the name of an unused private property 2017-11-29 18:05:36 -08:00
Andrew Casey 3a05363a29 Correct errorForUsingPropertyOfTypeAsType03
Rename didn't work properly in a file with errors, so the test isn't
testing the right thing.
2017-11-29 17:48:58 -08:00
Andrew Casey cdd3cd4f51
Merge pull request #20335 from amcasey/TS2713
Apply TS2713 to classes
2017-11-29 17:39:32 -08:00
Wesley Wigham a1669bb431
handle multiline jsx strings correctly, emit escapes in jsx attributes correctly (#20309) 2017-11-29 17:08:51 -08:00
Wesley Wigham a625dec58a
Elide import namespace from which only const enums are used (#20320) 2017-11-29 16:36:17 -08:00
Andrew Casey 170cb9c811 Add baselines for the current state of enum members 2017-11-29 15:57:11 -08:00
Andrew Casey 31c4ca5235 Handle all non-namespace types 2017-11-29 15:49:58 -08:00
wenlu.wang 78250ec58f fix noImplicitReturns check when strictNullChecks is false (#20326) 2017-11-29 15:27:32 -08:00
Andy 93dca009f9
In navigation tree, don't merge static with non-static (#20347) 2017-11-29 15:25:06 -08:00
csigs 711d30cb14
LEGO: Merge pull request 20351
LEGO: Merge pull request 20351
2017-11-29 15:10:37 -08:00
csigs 3539aa4041 LEGO: check in for master to temporary branch. 2017-11-29 23:10:20 +00:00
Arthur Ozga e01c0be8e5 prefix top-level describe clauses in tsserverProjectSystem 2017-11-29 14:36:19 -08:00
Arthur Ozga b76ab59666 Merge branch 'master' into dev/aozgaa/tsserverProjectTestOrganization 2017-11-29 14:30:55 -08:00
Arthur Ozga 5dc8708261 revert 0a6a568d and 0e4b8196 2017-11-29 14:29:42 -08:00
Klaus Meinhardt 0b9e4987f4 Make AccessorDeclaration.body optional (#20329)
* Make AccessorDeclaration.body optional

* Accept baselines
2017-11-29 13:59:40 -08:00
Andy b8f22f5144
Enable ban-types lint rule (#19586)
* Enable ban-types lint rule

* Improvements from code review

* More code review fixes

* Use just `void` in place of `{} | null | undefined | void`
2017-11-29 12:54:02 -08:00
Andrew Casey 3dcc064303 Apply TS2713 to classes
Formerly, they were excluded as values, but the error is just as
relevant for classes.

Note that it is not applied to enums since switching to an indexed
access expression will not help for an enum.
2017-11-29 11:32:45 -08:00
Andy 618b6702f0
Remove location of other declaration from "Subsequent x declarations must have same type" errors (#20206) 2017-11-29 10:54:13 -05:00
csigs b6f53eb5a9
LEGO: Merge pull request 20327
LEGO: Merge pull request 20327
2017-11-28 21:10:26 -08:00
csigs 6468b0ca32 LEGO: check in for master to temporary branch. 2017-11-29 05:10:08 +00:00
Wesley Wigham d79a474e6d
Handle parentless nodes in nodeIsDecorated (#20314) 2017-11-28 17:01:19 -08:00
Mohamed Hegazy 433bfc555f Accept baseline changes 2017-11-28 16:36:15 -08:00
Nathan Shively-Sanders 098a05268a Remove temporary error-avoidance hack 2017-11-28 15:19:10 -08:00
Nathan Shively-Sanders 78a0b94a4f Update chrome devtools baseline 2017-11-28 15:12:39 -08:00
csigs af29bd0240
LEGO: Merge pull request 20316
LEGO: Merge pull request 20316
2017-11-28 15:12:27 -08:00
csigs 5d07e5a2b5 LEGO: check in for master to temporary branch. 2017-11-28 23:12:03 +00:00
Nathan Shively-Sanders 341e7029eb JS static prop assignments don't need same type
Don't issue a "multiple declarations must have the same type" error for
JS static property assignments, because these don't appear to have a
type in this case.
2017-11-28 15:11:08 -08:00
Charles Pierce 72da4b8f12 Error when LHS of instanceof is Union of Primitives #18519 (#19063)
* Error when LHS of instanceof is Union of Primitives #18519

* Refactor to allTypesAssignableToKind method and update test

* Use ternary expression instead of if / else blocks
2017-11-28 15:05:06 -08:00
Nathan Shively-Sanders 61fe04ba0d Merge branch 'master' into jsdoc-values-as-namespaces 2017-11-28 15:01:40 -08:00
Andy 94ea38859b
Disable import fix for method of 'export =' value (#20208)
* Disable import fix for method of 'export =' value

* Exclude primitives, but allow other interfaces

* Use type.flags

* Fix comment
2017-11-28 17:46:06 -05:00
Nathan Shively-Sanders e441dd0005 Binder:clean up bindPropertyAssignment and friends 2017-11-28 14:29:39 -08:00
Nathan Shively-Sanders 74faa3d738 JS static properties:fix multi-file references+merging 2017-11-28 13:46:14 -08:00
Wesley Wigham 5ee640d2b6
Move utilities for getting type parameter constraints and defaults from public lazy members to services (#20162) 2017-11-28 13:37:42 -08:00
Andy cb5fd53731
Handle shebang in import code fix (#20306) 2017-11-28 15:41:59 -05:00
Andy bbb56fed11
Support parameter properties in getRelatedSymbol (#20202) 2017-11-28 14:12:28 -05:00
Andy 185f15d2af
Support both baseUrl and relative paths when adding missing import (#19724)
* Support both baseUrl and relative paths when adding missing import

* Code review

* Always use getRelativePathNParents, not getRelativePathLength
2017-11-28 14:01:51 -05:00
Andy 6df0575acd
Remove length limit on spelling suggestions; use levenshteinWithMax for performance (#19937)
* Remove length limit on spelling suggestions; use levenshteinWithMax for performance

* Remove suggestion exceptions

* Move to checker.ts

* Reintroduce candidateName max length
2017-11-28 12:37:30 -05:00
csigs 5b30bef2d1
LEGO: Merge pull request 20303
LEGO: Merge pull request 20303
2017-11-28 09:10:29 -08:00
csigs f43230a122 LEGO: check in for master to temporary branch. 2017-11-28 17:10:08 +00:00
Wesley Wigham 835fae264f
Allow possibly undefined destructuring in ambient parameter declarations (#20230) 2017-11-27 23:16:21 -08:00
csigs d2da58e0ca
LEGO: Merge pull request 20297
LEGO: Merge pull request 20297
2017-11-27 21:10:25 -08:00
csigs 1fe9fc00ab LEGO: check in for master to temporary branch. 2017-11-28 05:10:03 +00:00
Nathan Shively-Sanders 33f3e491c3 Update chrome dev tools definitions
This removes tons of errors.
2017-11-27 16:07:33 -08:00