Commit Graph

26317 Commits

Author SHA1 Message Date
Anders Hejlsberg 5465a5aa72 Check apparent type instead of function type in isUntypedFunctionCall 2017-12-01 16:48:29 -08:00
Mohamed Hegazy 65af685b49 Remove periods from refactor/quickfix messages (#20237)
* Fix #19959 and #19958: Remove un-localizable messages

* Update message

* Reorder error messages

* Fix https://github.com/Microsoft/TypeScript/issues/15399: remove periods at the end of messages

* Accept baselines for error code changes

* accept baselines for removed periods

* Update diagnostic messages
2017-12-01 16:38:59 -08:00
Nathan Shively-Sanders 8d7c2a2a77 Merge pull request #20370 from Microsoft/cutoff-inference-for-recursive-mapped-types
Cut off inference for recursive mapped types
2017-12-01 15:10:06 -08:00
Nathan Shively-Sanders dc24f77741 Limit recursive structured type resolution 2017-12-01 15:00:07 -08:00
Nathan Shively-Sanders 84d747a89c Simplify mappedTypeStack cache key 2017-12-01 14:48:59 -08:00
Nathan Shively-Sanders 0e5b53579d mappedTypeStack uses a string based on symbols
Previously it was a pair of [Type, Symbol].
2017-12-01 14:43:20 -08:00
Anders Hejlsberg bc628bfa29 Merge pull request #20380 from Microsoft/literalContexts
Fewer intermediate object literal and array literal types
2017-12-01 14:12:29 -08:00
Andy fd4d8ab96e Support a 'recommended' completion entry (#20020)
* Support a 'recommended' completion entry

* Code review

* Restore duplicate comments
2017-12-01 13:00:01 -08:00
Mine Starks 973cb767c7 Merge pull request #20369 from minestarks/noemitcos
compileOnSaveAffectedFileList shouldn't return any files for noEmit projects
2017-12-01 11:33:02 -08:00
Mine Starks 1fbe684834 compileOnSaveAffectedFileList shouldn't return any files for noEmit projects 2017-11-30 14:55:41 -08:00
Andrew Casey 8f1cdc9b0c Merge pull request #20373 from amcasey/PropertyUnderscore
Don't offer to prepend an underscore to the name of an unused private property
2017-11-30 13:08:26 -08:00
Nathan Shively-Sanders 2ec2238c1b Merge pull request #20198 from Microsoft/jsdoc-values-as-namespaces
Jsdoc values as namespaces
2017-11-30 12:56:11 -08:00
Nathan Shively-Sanders 7208204877 Don't mutate symbol flags after creation 2017-11-30 12:33:34 -08:00
Andy 75e5b13775 Don't suggest import completions for /a/node_modules if we're in /b (#19928)
* Don't suggest import completions for /a/node_modules if we're in /b

* Remove test for delving into dependencies of dependencies
2017-11-30 11:25:01 -08:00
Anders Hejlsberg 7ccbbfc928 Preserve literal types only when contextual type has literals of same kind 2017-11-30 10:36:07 -08:00
Nathan Shively-Sanders 69bbfedd63 Merge branch 'master' into jsdoc-values-as-namespaces 2017-11-30 10:34:50 -08:00
Nathan Shively-Sanders 665c2ecf91 Add SymbolFlag for containers of JS special decls
And update some doc comments
2017-11-30 10:27:38 -08:00
Nathan Shively-Sanders c7d53f8b70 Fix whitespace lint 2017-11-30 09:41:55 -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 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 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 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 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 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
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
Nathan Shively-Sanders 8bd66a095d JS Object literal assignments are declarations
Previously this only worked cross-file because it was a merge. Now it
works anywhere, and locally it is actually binding a new property on the
object literal symbol.
2017-11-29 11:36:25 -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 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
Nathan Shively-Sanders 098a05268a Remove temporary error-avoidance hack 2017-11-28 15:19:10 -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