6925 Commits

Author SHA1 Message Date
Andy Hanson
9533c0093d Merge branch 'master' into getRootSymbols 2017-12-13 12:26:57 -08:00
Andy
6fbeced025
Simplify test case (#20675) 2017-12-13 11:03:37 -08:00
Wesley Wigham
40029a0523
Use TypeFlags.UnionOrIntersection not TypeFlags.Union (#20662) 2017-12-12 16:32:55 -08:00
Andy
8ad4aeece1
Make ChangeTracker#newLineCharacter public, to avoid having to pass newLineCharacter around as a parameter (#20574)
* Make ChangeTracker#newLineCharacter public, to avoid having to pass newLineCharacter around as a parameter

* Don't require newLineCharacter as input to ChangeTracker methods, and make it private again
2017-12-12 12:23:13 -08:00
Nathan Shively-Sanders
4bc0d85d29 Test:spread object retains lefthandside
1. Make sure that spreading `object` doesn't lose everything to the left.
2. Update baselines to show that `{ ...object }` is now `{}`.
2017-12-12 08:37:34 -08:00
Andy
d53af092c7
Always check a return expression in a generator (#20621) 2017-12-12 07:50:11 -08:00
Wesley Wigham
eba15b5990
Preserve literal types in contextual unions (#19966)
* Cherrypick non-comparability related changes from prolific literals PR

* Renames and other style changes

* Accept changes to new tests

* Exclude the domain root from contextual typing literals except for type variables

* Readd simple preservation fix

* Add huge map test

* Revert changes to widening on destructuring initalizers

* Use tristate for subtype-reduction type

* Rename type and argument

* Move longer-running test to user suite
2017-12-11 18:03:38 -05:00
Wesley Wigham
d01f4d140a
Reimplement #20320 differently to handle multiple check orders better (#20588)
* Reimplement #20320 less elegantly but handle odd check orders better

* Consolidate 2 of 3 conditions
2017-12-11 13:32:16 -05:00
Andy
484758a3d3
Handle ! following a keyword in isClassMemberStart (#20617)
* Handle `!` following a keyword in isClassMemberStart

* Fix test
2017-12-11 09:45:36 -08:00
Andy
b629ff4204
Fix bug: FunctionDeclaration may have missing name (#20618) 2017-12-11 09:45:20 -08:00
andy-ms
b554a3691d Ensure getRootSymbols always works recursively 2017-12-10 17:07:38 -08:00
Wesley Wigham
9e51882d9c
Numeric separators (#20324)
* Add support into octal and binary literals

* Add hex support

* And finally support all numeric literals and fix spelling

* Update error message

* Refactor error in scanner to take a position

* Scan no separators in escape sequences, add escape sequence tests

* More decimal tests from the spec presentation examples

* Permissive scanning of excess separators

* Remove unnecessary assignment

* Make code easier to follow
2017-12-08 20:20:18 -05:00
Daniel Rosenwasser
8d209a3672
Merge pull request #20467 from Kovensky/array-from-union-fix
Accept Iterable|ArrayLike union in Array.from, add tests
2017-12-07 17:22:05 -08:00
Nathan Shively-Sanders
f90943d0d0
Merge pull request #20543 from Microsoft/in-keyword-narrow-string-indexer
Narrowing of `in` handles string index signatures
2017-12-07 15:45:00 -08:00
Andy
5e5b7706e5
Hack to allow concat to work even when an Array isn't assignable to ReadonlyArray (#20455) 2017-12-07 12:15:12 -08:00
Andy
19ea189b42
Support a "getCombinedCodeFix" service (#20338)
* Support a "getCombinedCodeFix" service

* Rename things

* Code review

* Rename things

* Update API baselines

* CodeActionAll -> CombinedCodeActions

* Take a `scope` parameter instead of `fileName` for flexibility

* Renames and bugfixes

* Make API changes internal

* Code review

* Update comment
2017-12-07 12:14:18 -08:00
Nathan Shively-Sanders
3a0ce3435e Test:in doesn't narrow types with string indexers 2017-12-07 10:56:33 -08:00
Andy
18a7c3fb53
For import fix, prefer symlink over a real path (#20395)
* For import fix, prefer symlink over a real path

* fixes

* Use best result from all symlinks

* Make originalPath optional more

* Only include real path if a symlink isn't available
2017-12-06 11:27:38 -08:00
Ryan Cavanaugh
c2fc5eafb5
Merge pull request #15256 from IdeaHunter/in-typeguard
Add type guard for `in` keyword
2017-12-06 10:32:07 -08:00
wenlu.wang
ae25d09761 add supports of completion label list (#20362) 2017-12-06 07:01:37 -08:00
IdeaHunter
069f73d0f2 Change type narrowing for optional properties 2017-12-06 00:02:36 +03:00
IdeaHunter
9c3c2adfb0 Add initial support for 'in' typeguarding 2017-12-06 00:02:36 +03:00
Andy
8f23bf813c
Add textChanges methods to insert nodes at the start of multiline bodies (#20445)
* Add textChanges methods to insert nodes at the start of multiline bodies

* Replace constructor body if not already multiline
2017-12-05 08:33:29 -08:00
Andy
8153397e91
Lazily compute signature type predicates (#17600)
* Lazily compute signature type predicates

* Use an instance of IdentifierTypePredicate to represent an unresolved type predicate

* Simplify `getMaybeTypePredicate`

* Invert representation of `resolvedTypePredicate`

* Remove `__unresolvedTypePredicate` type and remember to use `noTypePredicate` instead of `undefined` when in all `createSignature` calls

* Fix style of getTypePredicateOfSignature

* Use in createGetSymbolWalker

* Fix bugs for unions of type predicates

* Code review

* Make noTypePredicate purely an implementation detail of getTypePredictateOfSignature

* Add test

* Add test for #19642

* Add test with reversed order
2017-12-05 08:32:34 -08:00
Diogo Franco (Kovensky)
c894eebe51 Accept Iterable|ArrayLike union in Array.from, test 2017-12-05 14:37:51 +09:00
Andy
37a40561ac
Support exponentiation operator in const enums (#20424) 2017-12-04 14:32:25 -08:00
Andy
93551ab93b
Update test that import code fix doesn't use node_modules global import if classic resolution is set (#20453) 2017-12-04 13:15:45 -08:00
Andy
334bf4eaf7
Remove 'debugger' statement from test (#20444) 2017-12-04 10:47:50 -08:00
Mohamed Hegazy
59e5bbc393
Make sure autoArrayType is unique, even if no lib is available (#20344)
* Make sure autoArrayType is unique, even if no lib is available

* fix typo
2017-12-01 19:51:14 -08:00
Wesley Wigham
1045d95a44
Always instantiate the extends clause, even in the presence of an error (#20232)
* Still instantiate the extends clause even when theres a noimplicitany error in js

* Only be permissive for JS

* In JS, instantiate classes even when they have too many type arguments, instead of returning unknownType
2017-12-01 21:09:06 -05:00
Anders Hejlsberg
f6b1a1de59
Merge pull request #20404 from Microsoft/fixUntypedFunctionCall
Fix untyped function call on constrained type variable
2017-12-01 17:19:32 -08:00
Anders Hejlsberg
3531bd2b57 Add regression test 2017-12-01 16:54:32 -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
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
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
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
Nathan Shively-Sanders
69bbfedd63 Merge branch 'master' into jsdoc-values-as-namespaces 2017-11-30 10:34:50 -08:00
Andrew Casey
4c7b49156f
Merge pull request #20359 from amcasey/CorrectEnumBaselines
Correct errorForUsingPropertyOfTypeAsType03
2017-11-30 10:09:22 -08:00
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
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
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